Esempio n. 1
0
 private static void KillPlayer()
 {
     PlayerShip.Instance.Kill();
     enemies.ForEach(x => x.WasShot());
     blackHoles.ForEach(x => x.Kill());
     EnemySpawner.Reset();
 }
Esempio n. 2
0
 /// <summary>
 /// Manages killing the player
 /// </summary>
 private static void KillPlayer()
 {
     // Kills the player ship and removes each enemy
     PlayerShip.Instance.Kill();
     enemies.ForEach(x => x.KillEnemy(true));
     EnemySpawner.Reset();
 }
Esempio n. 3
0
        static void HandleCollisions()
        {
            // handle collisions between enemies
            for (int i = 0; i < enemies.Count; i++)
            {
                for (int j = i + 1; j < enemies.Count; j++)
                {
                    if (IsColliding(enemies[i], enemies[j]))
                    {
                        enemies[i].HandleCollision(enemies[j]);
                        enemies[j].HandleCollision(enemies[i]);
                    }
                }
            }

            // handle collisions between bullets and enemies
            for (int i = 0; i < enemies.Count; i++)
            {
                for (int j = 0; j < bullets.Count; j++)
                {
                    if (IsColliding(enemies[i], bullets[j]))
                    {
                        enemies[i].WasShot();
                        bullets[j].IsExpired = true;
                    }
                }
            }

            // handle collisions between the player and enemies
            for (int i = 0; i < enemies.Count; i++)
            {
                if (enemies[i].IsActive && IsColliding(PlayerShip.Instance, enemies[i]))
                {
                    PlayerShip.Instance.Kill();
                    enemies.ForEach(x => x.WasShot());
                    EnemySpawner.Reset();
                    break;
                }
            }
        }