コード例 #1
0
ファイル: EnemyManager.cs プロジェクト: kozupi/--
 public void getClosestEnemy()
 {
     targetingDistance = float.MaxValue;
     float lastEnemy = float.MaxValue;
     Enemy enemy = null;
     foreach (Enemy m in enemies)
     {
         Vector3 mPos = m.getComponent<Spatial>().position;
         Vector3 pPos = ((Game1)Game).getPlayerSpatial().position;
         Vector3 pFoc = Vector3.Normalize(((Game1)Game).getPlayerSpatial().focus - pPos);
         float checkDistance = (mPos - (pPos + (Vector3.Dot(mPos - pPos, pFoc) * pFoc))).Length();
         float ship = checkDistance;
         if (ship < lastEnemy && Vector3.Dot(Vector3.Normalize(mPos - pPos), pFoc) >= 0)
         {
             targetingDistance = ship;
             lastEnemy = ship;
             enemy = m;
         }
     }
     closestEnemy = enemy;
 }
コード例 #2
0
ファイル: EnemyManager.cs プロジェクト: kozupi/--
 public void removeEnemy(Enemy enemy)
 {
     for (int i = 0; i < enemies.Count; i++)
     {
         if (enemies[i] == enemy)
         {
             enemies.Remove(enemy);
             break;
         }
     }
 }
コード例 #3
0
ファイル: EnemyManager.cs プロジェクト: kozupi/--
 public void add(Enemy enemy)
 {
     enemies.Add(enemy);
 }