public AbstractExplosion(Game game, Player player, Vector3 position, GameTime gameTime)
     : base(game)
 {
     creationTime = gameTime.TotalGameTime;
     modelPosition = new Vector3(position.X, 0, position.Z);
     range = player.PlayerProfile.BombRange;
     player = player;
     models = ModelList.GetInstance();
     KillingPlayer = false;
 }
        public AbstractBomb(Game game, Vector3 modelPosition, Player player, GameTime gameTime)
            : base(game)
        {
            this.modelPosition = modelPosition;
            this.player = player;
            creationTime = gameTime.TotalGameTime;
            range = player.PlayerProfile.BombRange;
            isCollidable = false;

            boundingSphere = new BoundingSphere(modelPosition, 5.0f);
        }
 public ElectricBomb(Game game, Vector3 modelPosition, Player player, GameTime gameTime)
     : base(game, modelPosition, player, gameTime)
 {
 }
 public MudExplosion(Game game, Player player, Vector3 position, GameTime gameTime)
     : base(game, player, position, gameTime)
 {
     color = new Vector3(128, 0, 128);
     Initialize();
 }
 public MudBombExplosionEvent(AbstractBomb bomb, Player player)
     : base(bomb, player)
 {
 }
 public ElectricBombExplosionEvent(AbstractBomb bomb, Player player)
     : base(bomb, player)
 {
 }
 public ElectricExplosion(Game game, Player player, Vector3 position, GameTime gameTime)
     : base(game, player, position, gameTime)
 {
     color = new Vector3(255, 255, 0);
     Initialize();
 }
 /// <summary>
 /// konstruktor
 /// </summary>
 /// <param name="model">explodujici bomba</param>
 /// <param name="player">hrac ktery bombu polozil</param>
 public AbstractBombExplosionEvent(AbstractBomb model, Player player)
     : base(model)
 {
     this.player = player;
 }
 /// <summary>
 /// konstruktor eventu pro kolize hrace s predmetem
 /// </summary>
 /// <param name="player">kolidujici hrac</param>
 /// <param name="model">kolidujici objekt</param>
 public EnemyCollision(Player player, AbstractGameModel model)
     : base(model)
 {
     Player = player;
 }
 /// <summary>
 /// konstruktor
 /// </summary>
 /// <param name="model">exploze</param>
 /// <param name="player">hrac ktery bombu polozil</param>
 public AbstractExplosionEvent(AbstractExplosion model, Player player)
     : base(model)
 {
     Player = player;
 }
 public ElectricExplosionEvent(AbstractExplosion model, Player player)
     : base(model, player)
 {
 }
 public WaterExplosionEvent(AbstractExplosion model, Player player)
     : base(model, player)
 {
 }
 /// <summary>
 /// konstruktor eventu pro kolize hrace s predmetem
 /// </summary>
 /// <param name="player">kolidujici hrac</param>
 /// <param name="model">kolidujici objekt</param>
 public WallCollisionEvent(Player player, AbstractGameModel model)
     : base(model)
 {
     Player = player;
 }
 public WaterExplosion(Game game, Player player, Vector3 position, GameTime gameTime)
     : base(game, player, position, gameTime)
 {
     color = new Vector3(0, 0, 255);
     Initialize();
 }