Exemplo n.º 1
0
 private void RemoveAllBullets()
 {
     foreach (BulletModel bullet in MainContent.EnemyBulletList.ToList())
     {
         MainContent.RemoveBullet(bullet);
         MainContent.DrawBigExplosion(bullet.GetLocation());
     }
 }
Exemplo n.º 2
0
 public object TimeToLiveTagged(double startLife, double endLife, object tag, BaseModel model)
 {
     if (startLife > endLife)
     {
         return(null);
     }
     if (model is EnemyModel enemyModel)
     {
         MainContent.Events.AddSingleTaggedEvent(startLife, tag,
                                                 () => MainContent.EnemyShipList.Add(enemyModel));
         MainContent.Events.AddSingleTaggedEvent(endLife, tag,
                                                 () => MainContent.EnemyShipList.Remove(enemyModel));
     }
     else if (model is BulletModel bullet)
     {
         if (bullet.Texture == MainContent.Textures[TextureNames.GoodBullet])
         {
             MainContent.Events.AddSingleTaggedEvent(startLife, tag,
                                                     () => MainContent.GoodBulletList.Add(bullet));
             MainContent.Events.AddSingleTaggedEvent(endLife, tag,
                                                     () => MainContent.GoodBulletList.Remove(bullet));
         }
         else
         {
             MainContent.Events.AddSingleTaggedEvent(startLife, tag,
                                                     () => MainContent.EnemyBulletList.Add((BulletModel)model));
             MainContent.Events.AddSingleTaggedEvent(endLife, tag,
                                                     () => MainContent.RemoveBullet((BulletModel)model));
         }
     }
     else if (model.Texture == MainContent.Textures[TextureNames.Bomb])
     {
         MainContent.PowerUpList.Add(model);
     }
     else
     {
         MainContent.Events.AddSingleEvent(startLife, () => MainContent.MiscModelList.Add(model));
         MainContent.Events.AddSingleEvent(endLife, () => MainContent.MiscModelList.Remove(model));
     }
     return(model);
 }