« Flash Creative Technique - vol.53
プリントカラーシミュレーターの作成(後編)
| DEEP KICK.com Blog | Flash Creative Technique - vol.55
横スクロールの2Dアクションゲーム(後編) »

2006年10月20日

Flash Creative Technique - vol.54
横スクロールの2Dアクションゲーム(前編)

このエントリーをはてなブックマークに追加

web creators 2006年11月号web creators 2006年11月号の「Flash Creative Technique」は「横スクロールの2Dアクションゲーム」(前編)になります。

サンプルコンテンツできあがりのサンプルはこちらをクリック。

さて今回からは新しいテーマとしてFlashゲームの作成をとりあげてみました。どうしてFlashゲームなのかというと、ハヤシカオルがわりと得意にするという事情もありますが、いかんせんFlash + XML = Flax の話がかなり長く続いたんですね。Flaxネタは旬でもあり、まだまだやりたいことはたくさんあるわけですが、ちょっとこのあたりで一息ついてFlaxのことは忘れて、Flashゲームでもやってみようかなと。そういったわけでして。ただゲームはゲームでなかなか作るのは大変です。ラクじゃない。しかしFlashでなければ実現しにくいジャンルであることも確かなわけで、Flashでゲーム制作にチャレンジしてみたいな、というクリエイターはそこそこいたりするのではないかと想像します。そのようなわけで、連載を読んでいることを前提にちょいちょいとかいつまんでおまけ程度に解説を加えたいと思います。詳細は雑誌の方を買って手元に置きながら、じっくりと読んでくださいね。

「背景の動きをループする」ことは、まあまだわかりやすいかな。ややレベルが高くなるのが「障害物の展開の仕組み」ですね。というのは背景の雲MCは同じものをX座標を変えて何度も移動させるだけだから、話として難しくない。それに対して障害物MCの方はそれぞれ1回ずつしかステージに呼び出されない。だから今どれが呼び出されて、次に呼び出されるのはどれなのかということがSWFに理解できるようにしてやらないといけないわけです。それをActionScript的にどういうふうに表現するかってことが、ミソなわけです。で、ハヤシカオル的にはとりあえず【B-2-3】【B-2-4】のように表現したわけです。おもしろいのは【B-2-3】で_root.move(target); で自分自身のターゲットパスを_targetプロパティから取得し、引数に渡している点かな。つまり「オレが誰であるか」ということを知らせているわけです。でもう1点 変数_root.strucNum の使い方。特にややこしいことをしているわけではないのですが、今何番目の障害物MCが表示されているかということをこの変数でモニタしています。この変数をつかってアタッチする障害物MCのインスタンス名も決まるわけです。で、ある条件が満たされたら eval(target).removeMovieClip(); を実行していらなくなった障害物MCを消す。eval(target)でどのインスタンスかを特定します。便利ですね。

そんなこんなでとりあえず動くところまで前編では作っていますが、ゲームとしてまだ全然おもしろくありません。それを後編では素晴らしいゲームに仕上げてみせたいと思います。では今回はこのへんで。

テクノラティ タグ検索:

投稿者 kaoru : 2006年10月20日 17:11

コメント

Flexではないでしょうか?

私がここで言っているのはFlexという製品についてではなくて、Flash と XMLで構築するアプリケーションをAjaxにちなんでFlaxと私が勝手に呼んでいる次第でして。私の造語(既に誰かがそう言っていなければの話ですが)ですので、気にしないでください。

このエントリーをはてなブックマークに追加

contents
about
contact
Photo Gallery
blog
iPhone/iPad アプリ
Kindle book
portfolio