初心者が征く!オリジナルゲーム作成道 day9

こんにちは!インターン生の内村です!

今回もシューティングゲームの作成を行っていきたいと思いますが、残念なお知らせがあります。
この度、企画していたシューティングゲームですが、弾幕ゲームのようなものに変えたいと思います。
理由としては、私のJavaScript及びCocos2dへの知識・経験不足によって技術的な問題が生じ、インターン期間内に解決できないと考えたからです。
解決できなかった問題は、弾と敵キャラクターとの間の衝突判定を設定することができなかったというものです。
この度は誠に申し訳ありませんでした。

気を取り直して、今回から弾幕ゲームを作成していきたいと思います。
今回までに行ってきた制作は弾の発射以外はすべて再利用します。

簡単な想像図としては、操作キャラクターめがけて飛んでくる敵キャラクターをタップによる左右への移動で避け続けるというものです。
これだけでは退屈なのでスコアなどによって生成される敵キャラクターの傾向が変わるなどの要素を追加したいと思います。

今回は、敵キャラクターを避けるための移動の機能を作ります。

以下の手順で行います。
①操作キャラクターの移動速度に使う変数を宣言
②プレイヤーの移動を反映する関数movePlayerを作成
③プレイヤーの移動方向を逆にする関数changePlayerDirectionを作成
④movePlayerをupdataに書く
⑤changePlayerDirectionをタッチ操作処理に書く

【解説】
①そのままのため割愛します
②プレイヤーの移動を反映する関数movePlayerを作成③プレイヤーの移動方向を逆にする関数changePlayerDirectionを作成
以下のように書きます。(移動速度に使う変数はvar gameの初めの方に書いてください。下のコードでは「_dx」と設定)

まずは、getPositionで操作キャラクター_playerのX座標を読み取ります。
次に、読み取ったX座標を先ほど操作キャラクターの移動速度として宣言した変数_dxと足して新しい変数newXに代入します。
そして、画面サイズを読み取りちょうど画面からプレイヤーが見えなくなるくらいでchangePlayerDirectionで反転するように設定します。
changePlayerDirectionについては_dxに入っている値の正負を入れ替え逆に移動するようにします。

④これもそのままなので割愛します。
⑤changePlayerDirectionをタッチ操作処理に書く

以下のように書きます。

前回までにコーディングしたタッチ処理の動作する部分のみを書き換えるだけです。
弾の発射を操作キャラクターの移動方向変更に書き換えます。

今回は以上です。

次回はスコアの追加、敵キャラクターの種類の追加、クリア画面の追加を行いたいと思います。
次回で最後ですがなんとか完成するようにベストを尽くしたいと思います。

興味を持たれた方はお気軽にお問い合わせください。

インターンシップへの申し込み・お問い合わせ先

インターンシップへの申し込み・お問い合わせ先
メールでのお問い合わせは、下記フォームに入力して送信してください。
ご氏名 (例)山田 太郎
メールアドレス 半角英数字:ご入力間違いのないようにご注意ください
メールアドレス(確認用) 半角英数字:ご入力間違いのないようにご注意ください
電話番号 (例)0354339211 ※ハイフン抜きで入力してください
題名
お問合わせ内容

アーカイブ

カテゴリー