【Unity2D 入門】横スクロールアクションゲームを作ってみたい -攻撃アクションを作る1回目
前回ダメージを受けて点滅したり後ろにノックバックしたりできる処理をかきましたが、
今回はこっちから攻撃してやんよ!という事で攻撃処理を作りたいと思います。
長いので2回位に分けます。
攻撃Sprite画像を用意する
毎回の事ながらN氏にお願いしてまた攻撃画像を用意してもらいました!N氏GJ!ww
攻撃アニメーションの作成
キャラクターがエンターキーを押したら口を開けるというアニメーションを作成します。
N氏に作ってもらった画像をSptite化してスライスしておきます。
口を開けるアニメーションを長めに作成します。
名前はplayer@attackとでもしておきましょう。
この状態からAnimetorタグを開いて、アニメーションに対してフラグを指定します。
isAttackフラグを作成して
Walk > Attack は isAttack = true;
Attack > Walk は isAttack = false
指定します。
ここまでできたらisAttackフラグでモーションを移動できるようになりました。
プレイヤーにアタッチされているplayer.csを編集します。
player.cs
これでプレイヤーがエンターキーを押すと口を開けるというモーションができあがりました。
攻撃本体のSprite作成
Spriteのオブジェクトを作成してfireとでも名付けておきます。
※この際にOrder In Layer を11にセットしておきます(プレイヤーより前面に出すため)
オブジェクトを選択した状態でAnimationを作成します
今回はattack@fireと名付けておきます。
これで一応ゲーム画面上ではアニメーションすると思います。
これを飛ばすように見せたいので
スクリプトを作成します。
moveattack.cs
これで炎は右に飛んでいき1秒後にかってに消えるという処理ができました。
これをfireオブジェクトにアタッチしておきます。
ここまでできたらfireをPrefab化しておきましょう。
ここまでやると。
- プレイヤーはエンターを押すと口を開ける
- 炎はエミュレートすると勝手に右に飛んでいく
という別々の動きができあがりました。
次回はこれを繋げます。
なかなかこの処理つくるの大変ですね、最近風邪が流行っていますので皆さん気をつけましょう!