Exemplo n.º 1
0
        internal void Detonate(Mine mMine)
        {
            foreach (Bibble b in bibbles)
            {
                float dist = Vector2.Distance(b.Position, mMine.Position);
                //TODO move to model
                if (dist < mMine.Radius)
                    b.Damage(mMine.InnerDamage);
                else if (dist < mMine.OuterRadius)
                    b.Damage(mMine.InnerDamage * (mMine.OuterRadius - dist) / (mMine.OuterRadius - mMine.Radius));
            }
            Explosion(mMine.Position, .7f, false);

            Components.Remove(mMine);
        }
Exemplo n.º 2
0
 internal void MineAction()
 {
     if (mMine == null)
     {
         if (IsDead) return;
         mMine = new Mine(Position, this, BibbleGame.Statics.MineTex, game);
         game.addMine(mMine);
     }
     else
     {
         game.Detonate(mMine);
         mMine = null;
     }
 }
Exemplo n.º 3
0
 public void addMine(Mine m)
 {
     Components.Add(m);
 }