Мне нужно обнаружить столкновения одного и того же типа врагов в XNA.
Если обнаружено столкновение, я хотел, чтобы враги развернулись и пошли в другом направлении.Обнаружение столкновений врагов
Если я сохраню все экземпляры в список, как я могу определить, сталкиваются ли разные (но такие же) типы врагов?
Это в C# XNA.
EDIT: У меня есть враги, которые находятся в классе под названием «Враг», все враги в моей игре созданы из этого класса, мне нужно иметь возможность проверить, не столкнулись ли враги.
EDIT 2:
Вот пример кода:
// Fields.
private List<Enemy> enemies = new List<Enemy>();
// Add our enemies when we need to.
enemies.Add(new Enemy(this, position, spriteSet));
// Here is it's update method.
private void UpdateEnemies(GameTime gameTime)
{
foreach (Enemy enemy in enemies)
{
enemy.Update(gameTime);
// This code works because it's comparing the player.
if (enemy.BoundingRectangle.Intersects(Player.BoundingRectangle))
{
OnPlayerKilled(enemy);
}
// This code is always ture because enemy is enemy I can't figure out how to solve this.
if (enemy.BoundingRectangle.Intersects(enemy.BoundingRectangle))
{
// Make enemies turn... This if statement is the problem.
}
}
By за каждые два врагов проверки, если их расположение такое же, и их typs есть. – Jasper
И я не знаю, но мы не можем дать более полезный ответ unles, который вы дадите нам более подробную информацию о вашем приложении. – Jasper