ほぼ0からのunityゲーム制作雑記【33日目】敵の負けアニメーション
■プレイヤーが勝ったときの敵の挙動を変えたい
前回は、格闘モードのバトルで、カウンター可能かどうかをわかりやすいようにUIに手を加えました。昨日の記事はこちら。
今回は、手をつけるところを変更してプレイヤーが勝利したときの敵の動きを変えていきたいと思います。
現在、敵はライフが0になっても、それまでとかわらずプレイヤーに向かってきます。プレイヤーがゴールをしても、あきらめずにがしがし蹴りを入れてきます。
これを、プレイヤーがゴールしたらあきらめてしょんぼりするようなモーションにしたい。イメージとしてはこんな感じ。
早速アニメーションから作っていきます。
■しょんぼりアニメーションとその切り替え
動きとしては、足は普通に立っており、肩をがっくり下げうつむいた感じをイメージして作ります。
このアニメーションをanimatorの歩きアニメーションから状態遷移を伸ばしてやり、BOOL型のフラグで遷移を管理します。
アニメーションの切り替えは、敵のスクリプトの方に書きます。条件は「カメラの位置」です。プレイヤーがゴールしたとき、カメラはゴール上のプレイヤーに近づきます。これをスイッチにすれば、ゴールしたら「あきらめアニメーション」に切り替わるというのができそうな気がします。
また、カメラの位置を条件にすることで、後にプレイヤー敗北時の、敵の勝ちモーションを管理するのも楽になりそうな気がします。
実際に試したのが以下になります。
将来的にバトル中にカメラを動かす方向性に変わるかもしれませんが、現在のところはこれでよしとします。
■次回の目標は?
今度はプレイヤーが負けた場合の各アニメーションをつけていこうと思います。まずは、プレイヤーか、敵かどちらか片方の実装を目指します。