一番近い敵を見つける

「一番近い敵を見つける」の編集履歴(バックアップ)一覧はこちら

一番近い敵を見つける」(2015/05/24 (日) 17:02:46) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

FindGameObjectsWithTag()は、Enemyのタグが付いているGameObjectを複数返すので、 結果は配列変数で受ける 配列変数を回して、自分との距離を調べて、範囲内でかつ一番近いものを求める ループが終了時に求まっている最短距離の敵に対して、攻撃するなどのアクションを行う GameObject nearestEnemy=null; float minDis=1000f; GameObject[] enemys = GameObject.FindGameObjectsWithTag("Enemy"); foreach(GameObject enemy in enemys) { float dis = Vector3.Distance( transform.position,enemy.transform.position); if( dis<=Range && dis<minDis && enemy.GetComponent<Enemy>().hp>0 ) { minDis=dis; nearestEnemy=enemy; } } if( nearestEnemy!=null && canon ) { }
FindGameObjectsWithTag()は、Enemyのタグが付いているGameObjectを複数返すので、 結果は配列変数で受ける 配列変数を回して、自分との距離を調べて、範囲内でかつ一番近いものを求める ループが終了時に求まっている最短距離の敵に対して、攻撃するなどのアクションを行う GameObject nearestEnemy=null; float minDis=1000f; GameObject[] enemys = GameObject.FindGameObjectsWithTag("Enemy"); foreach(GameObject enemy in enemys) { float dis = Vector3.Distance( transform.position,enemy.transform.position); if( dis<=Range && dis<minDis && enemy.GetComponent<Enemy>().hp>0 ) { minDis=dis; nearestEnemy=enemy; } } if( nearestEnemy!=null && canon ) { }

表示オプション

横に並べて表示:
変化行の前後のみ表示: