Exemple #1
0
 private void HandleCollisions()
 {
     //intersections
     foreach (Box2D enemy in enemies)
     {
         if (enemy.Y < -0.8f)
         {
             //game lost
             Lost = true;
             if (!ReferenceEquals(null, OnLost))
             {
                 OnLost(this, null);
             }
         }
         foreach (Box2D bullet in bullets)
         {
             if (bullet.Intersects(enemy))
             {
                 //delete bullet and enemy
                 OnEnemyDestroy?.Invoke(this, null);
                 bullets.Remove(bullet);
                 enemies.Remove(enemy);
                 return;
             }
         }
     }
 }
Exemple #2
0
 private void HandleCollisions()
 {
     //intersections
     foreach (var enemy in enemies)
     {
         if (enemy.MinY < -0.8f)
         {
             //game lost
             Lost = true;
             OnLost?.Invoke(this, null);
         }
         foreach (var bullet in bullets)
         {
             if (bullet.Intersects(enemy))
             {
                 //delete bullet and enemy
                 OnEnemyDestroy?.Invoke(this, null);
                 bullets.Remove(bullet);
                 enemies.Remove(enemy);
                 return;
             }
         }
     }
 }