Unity ロックマン風2Dアクションの作り方7 ショット攻撃・敵エネミー・被ダメージ処理の実装 | Unity入門の森 ゲームの作り方

Unity ロックマン風2Dアクションの作り方7 ショット攻撃・敵エネミー・被ダメージ処理の実装

Unity 2Dアクションの作り方 ロックマン風横スクロールアクションゲームを作る


Unity入門の森オリジナル本格ゲーム制作講座はこちら
11種類の本格ゲームの全ソースコード公開・画像&動画による解説付き

この記事はロックマン風2Dアクションゲームの作り方講座の第7回です。

ここまででスクロールやマップ切り替えしながら分割されたステージ全体をプレイヤーキャラクターが進めるようになりました。

前回の記事:

Unity ロックマン風2Dアクションの作り方6 ステージを複数エリアに分割管理・画面のスクロール処理を実装
この記事はロックマン風2D横スクロールアクションゲームの作り方講座の第6回です。 前回まででカメラをプレイヤーキャラに追尾して移動させる処理や背景画像の表示・スクロール処理等を実装しました。 前回の記事: 今回は1つのステージを複数のエリア...

ここからはメイン要素の1つでもある2D横スクロールの戦闘システムを実装していきます。この章を最後まで進めれば一気にアクションゲームらしさが増していくので頑張っていきましょう!

 


【Line登録者限定のプレゼントもあるよ!】

プレイヤーキャラクターのバスター攻撃(ショット機能)を実装

プレイヤーの攻撃手段については最終的に多くの種類を実装予定で、それらをゲーム中に切り替えて撃ち分ける形にしていきます。

まず最初は初期武器である「弾丸を真っすぐ飛ばす」、いわゆるロックバスター風のショット攻撃のみを実装していきます。

 

ショット弾丸プレハブ作成

弾丸は発射されたタイミングでオブジェクト生成され、壁や敵にぶつかる(もしくは発射から一定時間経過する)と破壊されてオブジェクトが消去されます。

ゲーム中のオブジェクト生成には普通プレハブが用いられます。元となる1発分の弾丸をSpriteオブジェクトとして作成し、それをプレハブにしてスクリプトから生成していきましょう。

 

シーン上にSpriteオブジェクトActorShot_Normalを作成します(ヒエラルキー画面で右クリックして2D Object > Sprites > Squareなどで作成)。StageManagerの子じゃなくても大丈夫です。

画像はTextures/Attacks/Actor/ActorShot_Normal.pngを使用します。

 

続いて弾丸の当たり判定を設定していきます。

弾の見た目が円形なので当たり判定も円形で設定したいと思います。ここで使用するコンポーネントはCircle Collider 2Dです。

Radius(半径)のパラメータを変更する事で判定の大きさを変更できますが、初期設定で問題ないはずです。

物理演算を使用しないのでIs Triggerパラメータはオンにしておきましょう。

 

そして弾丸の移動や接触判定などを処理するスクリプトとしてActorNormalShotクラスを新規作成します。

スクリプトの中身はこの後実装します。まずActorShot_Normalオブジェクトへのアタッチを済ませておきましょう。

 

次に、このActorShot_Normalオブジェクトをプレハブ化します。.prefabファイルの保存場所はAssets/Prefabs以下ですが、この後も弾のプレハブを複数作成するのでAttack_Actorフォルダ等を作ってまとめておくと良いでしょう。

最後にシーン上に残っているActorShot_Normalインスタンスは消去しておきます。

 

プレイヤーのバスターショット攻撃処理の実装

Zキーを押したら弾丸を発射し、その弾丸が真っすぐ進んでいく処理までをスクリプトで実装していきます。

ActorNormalShot.cs

今回は弾の移動に物理演算は使用しません。弾発射時に弾速や角度などの情報を与え、それを基にして毎フレームごとに移動量・進行方向を計算して反映しています。

本講座のようにスクリプトで直接弾道を実装する方がUnityの物理演算を使うより応用が効き、開発しやすくなることも多いです。

また、Enemyタグを持つオブジェクトに触れた時ダメージを与える処理に関しては今後追加予定です。

 

ActorController.csを修正

Zキー押下時に弾丸インスタンスを作成し、上記の弾速や角度などの情報を渡すようにします。

続きを読む

このコンテンツはパスワードで保護されています。 コンテンツを読みたい方はUnity入門の森ショップ(https://unityforest.shop/)で講座閲覧権を取得してね。

まとめ

ザコ敵や戦闘周りの最低限のシステムを実装できました。ヘビの動作などが未実装ですので、次の章で引き続きザコ敵の実装を進めていきます。

今回からDOTweenを各所に使用していきます。スプライトの色を徐々に変更したり、少し時間を置いてから処理を実行するなどしたい時に便利ですので是非覚えておきましょう。

 

次の記事:

Unity ロックマン風2Dアクションの作り方8 敵キャラを増やす 7種類の行動パターンを実装する
この講座はロックマン風2Dアクションの作り方講座の第8回です。 前回はショットや敵キャラクターや被弾処理などの戦闘システムの実装を開始しました。 前回の記事: 今回は様々な行動パターンを持つザコ敵を増やしていきます。多くの種類の敵を作成して...

Unity 2Dアクションゲームの作り方講座に戻る>>



Unity入門の森オリジナル本格ゲーム制作講座はこちら
11種類の本格ゲームの全ソースコード公開・画像&動画による解説付き

コメント

タイトルとURLをコピーしました