「【Unity 入門】全方位シューティングを作る」というサイトのチュートリアルをやってみるシリーズの8回目です。前回は爆発エフェクトを表示させるようにしました
Unity全方位2Dシューティングチュートリアル7回目。爆発エフェクト
今回は敵の種類を追加していきます。
12.敵の種類を追加
ここでやること
今回はコードを記述する作業はないのでひたすら手を動かす作業になります。
- EnemyPrefabを複製する
- 複製したPrefabのパラメーターを調整する
- 複製したPrefabに違う敵の画像をアタッチする
- EnemyManagerにhierarkhyの敵Prefabを登録
敵Prefabの複製
複製をするにはまずPrefabフォルダから敵をhierarkhyにドラッグ&ドロップします。hierarkhyに移した同Prefabを選択した状態でCtrl-dをおすことによって複製することができます。今回3種類追加するので新たに3つ複製しました。
敵パラメーターの調整
複製した敵Prefabのパラメーターを調整します。
– | Enemy1 | Enemy2 | Enemy3 | Enemy4 |
---|---|---|---|---|
Speed | 0.03 | 0.025 | 0.02 | 0.025 |
Hp Max | 1 | 2 | 3 | 4 |
Exp | 2 | 4 | 6 | 8 |
Damage | 5 | 10 | 15 | 20 |
SzieX | 0.27 | 0.46 | 0.56 | 0.64 |
SizeY | 0.25 | 0.45 | 0.51 | 0.47 |
画像のアタッチに関しては好きな画像えらんでアタッチするだけなので省略。アタッチさせるときは「Sprite」という項目にアタッチします。
EnemyManagerに敵Prefabを登録する
この時点で複製したオブジェクトはhierarkhyにありますが、それを登録してしまうとおかしくなるので、ここで一旦Prefabフォルダーに移してやる必要があります。Enemy2,3,4をPrefabフォルダーにうつしたらhiererarkhyにあるEnemyオブジェクトは消します。
Prefabに移したEnemyオブジェクトをEnemyManagerに登録します。
ここまでの状態
いろんな敵を登録したのでいろんな敵がでてくるようになりました。
13.敵の移動パターンの追加
ここでやること
- PlayerScriptに他のところで使えるようにstatic変数を定義
- EnemyScriptにpublicなbool型の変数m_isFollowを追加
- m_isFollowがtrueかfalseかで行動パターンを変える処理を記述
- m_isFollowのパラメーターを変更
敵の移動パターンを追加する処理を追加
まずはPlayerScriptにstatic変数を追加します。
public static PlayerScript m_instance;
同ScriptのAwake関数に以下を追加します。Awakeメソッドはスクリプトのインスタンスがロードされたときに呼び出されます
m_instance = this;
敵の移動パターンを追加する処理に関してはEnemyScriptで行います。変数の追加と行動パターンを記述していきます。
public bool m_isFollow;//プレイヤーを追尾する場合 true / * 省略 * / void Update () { //・・・略 if(m_isFollow){ var angle = UtilsScript.GetAngle( transform.localPosition, PlayerScript.m_instance.transform.localPosition); var direction = UtilsScript.GetDirection(angle); //プレイヤーが存在する方向に移動する transform.localPosition += direction * m_speed; //プレイヤーが存在する方向を向く var angles = transform.localEulerAngles; angles.z = angle - 90; return; } } / * 省略 * /
敵パラメーター変更 isFollowにチェックをいれる
これで敵のパラメーターisFollowをチェックできるようになるので、好きな敵にチェックを入れます。チェックをいれたらtrueになるので上記行動パターンが反映されます。上記行動パターンは自機をおいかけてくる行動パターンになっています。
ここまでの状態
自機に追尾してくる敵ができあがりました。
次の記事
次の記事は宝石アイテムの作成と敵が宝石アイテムをおとすようにする処理を書いてます。
Unity全方位2Dシューティングチュートリアル9回目。宝石アイテムをつくる
コメント