LUNARAVE WEBクリエーターの仕事と休息

アクセスカウンタ

help リーダーに追加 RSS Flashゲームを作ろう (7)射程内に入ったキャラを攻撃する

<<   作成日時 : 2007/11/06 12:38   >>

トラックバック 0 / コメント 0

Flash防衛ゲーム作成は今回で第七回目となり、前回同様に途中経過のサンプルも掲載する。

マップをクリックすると障害物が設置され、敵キャラが最短ルートで障害物を避けながらゴール地点へ進む。
そして障害物には射程を持った砲台があり、敵キャラが射程内に入ると砲台が方向転換するところまで実装している。

今回は敵キャラの方を向いた砲台から弾を発射して攻撃するという仕組みを作る。


弾は移動する敵キャラめがけて飛ぶのだが、常に敵キャラの位置を確認してその位置に近づくという処理が必要となる。
これはマウスにキャラやシンボルが追従するなど、マウスジェスチャーの演出効果でよく利用される仕組みだ。


新しく弾のシンボルが必要となるのでFlash上で黒い球体シンボルを事前に用意しておく。

そのシンボルの中に弾の処理として、
・敵キャラに近づく
・敵キャラに当ったら自身を消滅させる
というActionScriptを書き込んでおく。


「敵キャラに近づく」ということは、「自分の位置をある特定座標に近づける」ということである。

よって、今の自分の座標に目標座標に対して移動距離分の値を与えればよい。

例えば、自分の位置が座標(0,0)にあるとして、座標(10,0)に移動したいとする。
1フレームたつごとにX座標の位置を+1するとすれば10フレーム目に目標座標に到達する。

このとき、1フレームごとの移動距離を"1"としたが、"2"とすれば移動数が2倍になり5フレーム目で到達するのでFlashの動作確認をしたときは速度があがったように見える。

この移動距離数を設定することで、弾の速度を調整することが可能になる。


次に、砲台のシンボルには射程エリアに敵キャラが入ったら弾のシンボルを呼び出す処理を書き加える。

射程エリアの設置とその判定は前回の「射程に入ったら砲台の向きを変える」のプログラムを流用する。

そして射程に入ったら"attachMovie"で弾を呼び出す。
弾自身には敵キャラに近づく処理を入れているので、ここでは呼び出すだけで良い。


 マップ

->サンプル


次回は敵キャラの耐久度と撃破処理の仕組みを実装する。

設定テーマ

注目テーマ 一覧

月別リンク

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
WEB技術関連
EC-CUBE関連
ソフトウェア関連