public void ActivateFan(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     FanActivated(this, effectEventArgs);
     return;
 }
 public void SplashLava(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     LavaSplash(this, effectEventArgs);
     return;
 }
 public void ThrowSnowball(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     SnowballThrown(this, effectEventArgs);
     return;
 }
 public void FireShot(Vector2 location, Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(location, sprite);
     ShotFired(this, effectEventArgs);
     return;
 }
 public void ShootTower(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     TowerSawShot(this, effectEventArgs);
     return;
 }
 public void ExplodeCreature(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     CreatureExploded(this, effectEventArgs);
     return;
 }
 public void ExplodeLitShot(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     LitShotExploded(this, effectEventArgs);
     return;
 }
 public void CollectStar(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     StarCollected(this, effectEventArgs);
     return;
 }
 public void CreateDrop(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     DropCreated(this, effectEventArgs);
     return;
 }
 public void ActivateWindDeflection(Sprite wind, Sprite deflectedObject)
 {
     //sprite a is the wind, sprite b is being deflected.  This is not a damage event, it is for sound and effect triggering
     EffectEventArgs effectEventArgs = new EffectEventArgs(wind, deflectedObject);
     WindDeflection(this, effectEventArgs);
     return;
 }
 public void AddThisPowerBarrel(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     AddPowerBarrel(this, effectEventArgs);
     return;
 }
 public void ActivateSpring(Sprite spring, Sprite deflectedObject)
 {
     //sprite a is the spring, sprite b is being deflected.  This is not the damage event, it is for sound and effect triggering
     EffectEventArgs effectEventArgs = new EffectEventArgs(spring, deflectedObject);
     SpringDeflection(this, effectEventArgs);
     return;
 }
 public void ActivatePowerUp(Sprite spriteA, Sprite spriteB)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(spriteA, spriteB);
     PowerUpActivated(this, effectEventArgs);
     return;
 }
 public void ActivateLemon(Sprite lemon)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(lemon);
     LemonActivated(this, effectEventArgs);
     return;
 }
 public void DoSmallPoof(Vector2 location, Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(location, sprite);
     SmallPoof(this, effectEventArgs);
     return;
 }
 public void CreateEmber(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     EmberCreated(this, effectEventArgs);
     return;
 }
 public void ExplodeBomb(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     BombExploded(this, effectEventArgs);
     return;
 }
 public void CreateFruitMotionBlur(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     FruitMotionBlur(this, effectEventArgs);
     return;
 }
 public void ExplodeFruit(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     FruitExploded(this, effectEventArgs);
     return;
 }
 public void CreateSpiderThread(Sprite spider)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(spider);
     NewSpiderThread(this, effectEventArgs);
     return;
 }
 public void ExplodeVeggie(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     VeggieExploded(this, effectEventArgs);
     return;
 }
 public void CreateWindParticle(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     WindParticleCreated(this, effectEventArgs);
     return;
 }
 public void SawIsCutting(Sprite saw, Sprite beingCut)
 {
     //sprite a is the saw, sprite b is being cut.  This is not the damage event, it is for sound or visual effect triggering
     EffectEventArgs effectEventArgs = new EffectEventArgs(saw,beingCut);
     SawCutting(this, effectEventArgs);
     return;
 }
 public void DoCreateTNTBarrel(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     CreateTNTBarrel(this, effectEventArgs);
     return;
 }
 public void ShotWasPerfect(Sprite shot, Sprite barrel)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(shot, barrel);
     PerfectShot(this, effectEventArgs);
     return;
 }
 public void DoImpactPoofs(Vector2 location, Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(location, sprite);
     ImpactPoofs(this, effectEventArgs);
     return;
 }
 public void SplashWater(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     WaterSplash(this, effectEventArgs);
     return;
 }
 public void DoPoof(Sprite sprite)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(sprite);
     Poof(this, effectEventArgs);
     return;
 }
        void contactListener_PowerUpActivated(object sender, EffectEventArgs e)
        {
            //sprite a is shot, sprite b is barrel
            if (e.spriteB == shotManager.ActivePowerUpBarrel) return; //cant go in barrel shot from
            //if (e.spriteA.TextureID == 20 && e.spriteA.TextureIndex > 62) return; //cherry already split, cancel contact
            if (shotManager.isSplit) return;//cherry already split, cancel contact
            if (e.spriteB.TextureIndex == 5) return; //teleport barrel does not change fire state or reset shot

            levelState = LevelState.PowerUpAim;
            firingLocation = e.spriteB.SpriteCenterInWorld;
            shotManager.shot.Location = firingLocation - shotManager.shot.SpriteOrigin;
            shotManager.shot.spriteBody.Position = ConvertUnits.ToSimUnits(shotManager.shot.SpriteCenterInWorld);
            shotManager.shot.spriteBody.ResetDynamics();
            shotManager.shot.spriteBody.IgnoreGravity = true;
            shotManager.shot.IsVisible = false;
        }
 public void ActivateBanana(Sprite banana)
 {
     EffectEventArgs effectEventArgs = new EffectEventArgs(banana);
     BananaActivated(this, effectEventArgs);
     return;
 }