FLASHのアクションスクリプトを使ってゲームを作ってみよう!

FLASHでゲーム作成編


FLASH GAME TUTORIAL 02

タチコマでシューティングゲームに挑戦

ムービークリップの入れ子を使って、タチコマをワープさせてみよう!

* タチコマをワープさせたい! の見本

タチコマをスペースキーでワープ!ちょっとのスクリプトとムービークリップの入れ子でタチコマがワープしたような効果を作ってみましょ!
シューティングゲームに果たして必要なのかは謎ですが...

SPACE キーでワープします!
キーボードを押しても反応しない場合はムービーを一度クリックしてから動かしてみてください。

タチコマって??
攻殻機動隊という超かっこよくておもしろいアニメのキャラクターです。


* チュートリアルで使うアクションスクリプト

今回のチュートリアルで使うアクションスクリプトのアクション、イベントハンドラ、メソッド、文法一覧です。以下のアクションスクリプトの要素がわかっていればこのチュートリアルは楽勝です!

では、チュートリアルスタート!

シューティングゲームに挑戦編 チュートリアル01の目標

  1. 簡単にワープ効果を作る!

チュートリアル01の概要

キャラクターを動かす用のムービークリップに

  1. フレームをつかってワープの動きを作る
  2. キーを押した時にワープ部分のフレームが再生されるようなスクリプト作成
  3. ワープ中に移動キーを無効、ワープ中、ダブってワープしないように設定

1.キャラクターのムービークリップをつくる

キャラクターを作って、ムービークリップにしてください。
サンプルファイルでは、インスタンス名tachikomaが、これにあたります。

2.1で作ったムービークリップを入れ子にする

下のような、タチコマがワープしているように見せかけるための、ムービークリップを作ります。
ムービークリップ入れ子の状態

青い四角で囲まれているのが1で作ったムービークリップtachikomaです。
ムービークリップtachikomaを動かすための、ムービークリップtachikoma_managerを
作成して、 ムービークリップtachikomaを ムービークリップtachikoma_managerの中に
入れた状態が上の図になります。

上の図と同じ状態が作れたら、レイヤーを3つ作ってください。

  • レイヤー名、フレームラベル − フレーム操作するためのフレーム名を入れます。
  • レイヤー名、スクリプト − アクションスクリプトを入れます。
  • レイヤー名、キャラクター − ムービークリップtachikoma
レイヤーの内容説明

レイヤーの使い分けの詳細は、上図のようになります。

動きの概要:
ワープしてない時は、フレームstayの部分でストップ。 ワープボタンを押した時にwarp_startフレームの再生が始まり、 warp_stopの最終フレームに到達したら、stay部分のフレームに戻る。

この動きをスクリプトで制御できれば、完成です!

3.必要な動きを考える

なんとなく仕組みがわかった?と思うので、しないといけない操作を考えます。
  • SPACEキーを押したら、warp_startフレームに飛ぶように設定。
  • warp_endの最終フレームにきたら、stayフレームに戻るように設定。
まず、
SPACEキーを押したら、warp_startフレームに飛ぶようにする
は、下のスクリプトを、ムービークリップtachikoma_managerの
ムービークリップアクションにスクリプトを書くことでできます。
//変数定義//
//ワープをするキーコード定義
onClipEvent (load) {
  WARP_KEY_CODE = 32;
}

//キーコードが押されたら、warp_startフレームへ飛ぶ。
onClipEvent (enterFrame) {
  if(Key.isDown(WARP_KEY_CODE)){
      this.gotoAndPlay("warp_start");
  }
}

warp_endの最終フレームにきたら、stayフレームに戻るように設定。
は、warp_end の最終フレームのスクリプトレイヤーに下記のスクリプトを書くとできます。

//stayフレームに飛ぶ
 this.gotoAndStop("stay");