public void Execute(IGameObject gameObject1, IGameObject gameObject2) { FireBallProjectile fireBall = (FireBallProjectile)gameObject1; IEnemy enemy = (IEnemy)gameObject2; if (enemy.State.GetType() != typeof(KoopaSideDeathState)) { fireBall.Terminate(); ScoringSystem.AddPointsForFireballKoopaHit(gameObject2, fireBall.InitiatingPlayer); enemy.Terminate("DOWN"); SoundManager.Instance.PlayKickSound(); } }