ケータイFlashゲーム制作レクチャー

第12回 マップ冒険ゲームレクチャー(2) PCの移動とマップスクロールを作る!

この記事を読むのに必要な時間:およそ 3 分

(2)ボタンに記述したボタンアクションの解説

前のフローに記したように,プレイヤーから移動キーが入力されると,まずはボタンに記述した次のスクリプトが処理される。

//8キー(↓へ移動)が入力された場合
on (keyPress "8") {
 if (ido_wait == 1) {
 } else {
  tellTarget ("pc") {
   gotoAndPlay ("F");
  }
 }
}                     ┛①
//2キー(↑へ移動)が入力された場合
on (keyPress "2") {  
 if (ido_wait == 1) {
 } else {
  tellTarget ("pc") {
   gotoAndPlay ("B");
  }
 }
}                      ┛②
    ・
    ・
    ・
4キーと6キーの処理は省略

 8キーが入力されると,⁠ido_wait」フラグをチェックし,PCが移動中かどうか確認する。これは重ねて移動処理をしないためである。その結果,PCが移動中でなければ「PCクリップ」内の「F(↓向き)」をgotoAndPlayする。
⁠ido_wait」フラグの値は,PCクリップ内でON/OFFしている。

 2キーが入力された場合も同様に処理している。もちろん,4キーも6キーも同様に処理している。

(3)PCクリップ内解説

次に,キー入力されボタンアクションによってPCクリップ内にgotoAndPlayされてくると,入力されたキーによって,PCの各向き「正面(フレーム名 F⁠⁠後ろ(フレーム名 B⁠⁠左(フレーム名 L⁠⁠右(フレーム名 R⁠⁠」のフレームが再生され,各処理が実行される。

Fla画面2 PCクリップ内

Fla画面2 PCクリップ内

(4)タイムライン解説・正面向き「F」の場合

PCの各向きでの処理は,移動方向や飛び先のフレームなどの違いはあれど,行っていることは同じなので,ここでは8キーが入力された場合に実行される正面向きを解説する。

Fla画面3 タイムライン正面向き「F」のアップ

Fla画面3 タイムライン正面向き「F」のアップ

【スクリプト①】の解説

8キーが入力されて「F」フレームへ飛んできたら,一歩先へ移動可能かどうか「マップ移動データ」をチェックし処理分岐させる。次の4つのパターンがある。

著者プロフィール

西村直樹(にしむらなおき)

クリエイティブスタジオ Studio無限界 代表。アニメーターを経て,ゲームクリエイターとなる。ゲーム制作では,企画シナリオ,ディレクション,絵関連など幅広くこなし,ゲームクリエイターとして現在で19年となる。また,ゲームスクール,アミューズメントメディア総合学院にて,創立年から企画系講師を行い,クリエイター育成にも携わっている。現在は,マネジメントを行いつつ,コンシューマゲーム,ケータイコンテンツ,書籍執筆,その他様々なプロジェクトを進めている。

Studio無限界
URLhttp://www.mugenkai.com/


藤田和久(ふじたかずひさ)

プログラマ/テクニカルスーパーバイザー。メインフレームと呼ばれる大型コンピュータのシステム開発から,WebサイトのCGI,そしてケータイFlashに至るまで様々な環境のプログラミングに携わる。現在はStudio無限界の活動の傍ら,都内複数の専門学校において講師として,ゲーム制作,Webサイト制作,システムエンジニアリングなどの授業を担当。 また,Studio無限界とは別にFMS(個人)として,システムエンジニアリングの分野でも 活動している。

Studio無限界
URLhttp://www.mugenkai.com/