public static void BetweenPlayerAndInvaders(Player player, List<Invader> invaders) { Rectangle playerRec = player.GetRectangle(); for (int i = invaders.Count - 1; i >= 0; i--) { if (playerRec.Intersects(invaders[i].GetRectangle())) { player.Health -= invaders[i].Damage; player.Score += invaders[i].ScoreValue; invaders[i].Health = 0; // Explosion? invaders.RemoveAt(i); } } }
public static void BetweenPlayerAndInvadersBullets(Player player, List<Bullet> bullets) { Rectangle playerRec = player.GetRectangle(); for (int i = bullets.Count - 1; i >= 0; i--) { if (playerRec.Intersects(bullets[i].GetRectangle())) { player.Health -= bullets[i].Damage; bullets[i].Active = false; bullets.RemoveAt(i); } } }