Flashを学習する(2) シューティングゲームを作成

Flashでゲームを作りたかったのだが、一般的なFlashの本はパラパラアニメやWebパーツを作らせるのが多い。 ゲーム作る本を探したら、以下の本があった。


itemオレ流Flashゲーム作成術 実践ActionScriptゲームテクニック

作者:ババラ
出版社/メーカー:技術評論社
発売日:2005-03
メディア:単行本

おすすめ度の平均:
この本はとてもいいです!


この本の対応するバージョンは、Flash 5/MX/MX 2004 となっている。


この本のメインは、シューティングゲームを作成することだ。STGについては最初から完成まで詳しく作り方を説明している。 あとはアクションゲームやRPGAVGなどの説明がほんの少しあるだけだ。


Flash5にも対応しているということで、Flash5形式の「個々のMovieClipもActionScriptを持っていて」「タイムラインも使った」形式で書かれている。 個々のMovieClip(MC)がそれぞれスクリプトで通信しあって、ゲームが動くなんて 「分散オブジェクト環境って感じ? すごいじゃない」という印象を最初はもっていたんだけど、 やってみると「これはソース読んだり保守するのがたいへんだ」と、わかった。途中からはMovieClipの階層構造もわけわからなくなってきたし、動いているけどMovieClipとActionScriptがごちゃごちゃしてる。 丁寧に手順が書いてあったので最後まで作れてよかった。


以下はそのサンプルに私のほうですこし変更を加えたもの。



サンプルのシューティングゲーム。タイトルは STAR FIXFIX
https://sites.google.com/site/itouhiro/2008/starfixfix.swf


マウスで自機をコントロールする。ショットは自動で連射される。敵機1機破壊するごとに1点入る。 勉強用サンプルなので凝らなかったけど、敵機の動きが単調だ。


画像や音声素材は、本の付属のCD-ROMのものはひとつも使わず、こちらで用意した。 背景の土星の写真はNASA/JPL/Space Science Institute提供。 自機や敵機・爆発パターン・敵弾などはずっと前に私が作ったものを再利用。


ActionScript (AS) はようするに JavaScriptと同じなので特にむずかしくはなかったが、 この Flash5形式のASの書き方ではゲームの拡張も難しいので、次はFlashMX以降のオブジェクト指向形式(「ActionScriptは一つにまとまっている」「タイムラインを使わない」らしい)を試す。
AS 3.0も興味があるが、もう少しAS 1.0をやってみるつもり。