
Untitled
By: a guest on
Aug 1st, 2012 | syntax:
None | size: 1.12 KB | hits: 7 | expires: Never
Detecting collisions of enemies
// 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.
}
}
foreach (Enemy enemy1 in enemies)
{
foreach (Enemy enemy2 in enemies)
{
if (enemy1 != enemy2 && enemy1.BoundingRectangle.Intersects(enemy2.BoundingRectangle))
{
// enemy1 is colliding!
}
}
}