乱数で場合分け
HierarchyのEnemyを選択して、Inspector>AddConponent>NewScript>EnemyMove
今作ったEnemyMove.csをAssets>Scriptsの中に入れる
Enemy.csをダブルクリック
Enemyの行動は
5秒間隔で異なる行動を行い
Playerが、SearchAreaに入ると戦闘行動になる
たまに無作為に攻撃を行う
ランダムに動く方向を決めるには
乱数を出して、その出た数字により、行動を決めればいい
Script//乱数
Random.Range(0,5);//0 5までのどれかの数字が出る
また、5秒間隔で乱数が発動するようにするには
Script//時間計算
public float waitingBaseTime = 2.0f;
public float enemyTime;
public int walkMuki;
void Start () {
enemyTime = waitingBaseTime;
}
void Update(){
enemyTime -= Time.deltaTime;
if(enemyTime<=0){
walkMuki = Random.Range(0,5);
enemyTime = waitingBaseTime;
}
}
その出た目に合わせて場合分け
Script//場合分け
walkMuki = Random.Range(0,5);
switch (walkMuki) {
case 0://プレイヤーの方へ向く
break;
case 1://直進
Debug.Log ("case 1");
break;
case 2://正面右30度へ向く
Debug.Log ("case 2");
break;
case 3://正面左30度へ向く
Debug.Log ("case 3");
break;
case 4://あとづさり
Debug.Log ("case 4");
break;
case 5://後ろへ進む
Debug.Log ("case 5");
break;
}
- 関連記事
-
YouTubeで動画を定期的に出しています。ご視聴いただけると嬉しいです。
Reon Labo
- 2016/10/03(月) 18:00:00|
- Unity
-
| トラックバック:0
-
| コメント:0