Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Aug 1st, 2012  |  syntax: None  |  size: 1.12 KB  |  hits: 7  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Detecting collisions of enemies
  2. // Fields.        
  3.     private List<Enemy> enemies = new List<Enemy>();
  4.  
  5.     // Add our enemies when we need to.
  6.     enemies.Add(new Enemy(this, position, spriteSet));
  7.  
  8.     // Here is it's update method.
  9.     private void UpdateEnemies(GameTime gameTime)
  10.     {
  11.         foreach (Enemy enemy in enemies)
  12.         {
  13.             enemy.Update(gameTime);
  14.  
  15.             // This code works because it's comparing the player.
  16.             if (enemy.BoundingRectangle.Intersects(Player.BoundingRectangle))
  17.             {
  18.                 OnPlayerKilled(enemy);
  19.             }
  20.             // This code is always ture because enemy is enemy I can't figure out how to solve this.
  21.                             if (enemy.BoundingRectangle.Intersects(enemy.BoundingRectangle))
  22.             {
  23.                 // Make enemies turn... This if statement is the problem.
  24.             }
  25.         }
  26.        
  27. foreach (Enemy enemy1 in enemies)
  28. {
  29.     foreach (Enemy enemy2 in enemies)
  30.     {
  31.         if (enemy1 != enemy2 && enemy1.BoundingRectangle.Intersects(enemy2.BoundingRectangle))
  32.         {
  33.             // enemy1 is colliding!
  34.         }
  35.     }
  36. }