private void onBulletHitEnemy(object sender, EnemyHitEventArgs e)
        {
            ICollidable someEnemy   = e.CollidedEnemy;
            int         pointsToAdd = 0;

            if (someEnemy is MotherShip)
            {
                pointsToAdd = 600;
            }
            else if (someEnemy is Enemy)
            {
                IPlayersManager playersManager = this.Game.Services.GetService(typeof(IPlayersManager)) as IPlayersManager;

                int relativeLevel = (playersManager.CurrentLevel - 1) % 6;

                Enemy enemy = someEnemy as Enemy;
                if (enemy.TintColor == Color.LightPink)
                {
                    pointsToAdd = 220 + (50 * relativeLevel);
                }
                else if (enemy.TintColor == Color.LightBlue)
                {
                    pointsToAdd = 160 + (50 * relativeLevel);
                }
                else
                {
                    pointsToAdd = 90 + (50 * relativeLevel);
                }
            }

            Player.ScoreOfTheGame.AddPoints(pointsToAdd);
        }
Example #2
0
 private void onEnemyKilled(ICollidable i_Collidable)
 {
     if (EnemyKilled != null)
     {
         EnemyHitEventArgs enemyHitEventArgs = new EnemyHitEventArgs(i_Collidable);
         EnemyKilled.Invoke(this, enemyHitEventArgs);
     }
 }
Example #3
0
        private void EnemyHitHandler(EnemyHitEventArgs args)
        {
            if (args.WasPlayer)
            {
                var manaGain = (int)(args.Damage * 0.3f);
                var manaStat = Player.Instance.GetStatObject(Stats.ManaStat.Id);

                manaStat.CurrentValue += manaGain;

                var player = Player.Instance.GameObject;
                Core.DisplayNumberString(manaGain, "mp", Color.RoyalBlue, new Vector2(player.X, player.Bounds.Top - 30));
            }
        }
Example #4
0
        private void EnemyHitHandler(EnemyHitEventArgs args)
        {
            if (args.WasPlayer)
            {
                var manaGain = (int)(args.Damage * 0.3f);
                var manaStat = Player.Instance.GetStatObject(Stats.ManaStat.Id);

                manaStat.CurrentValue += manaGain;

                var player = Player.Instance.GameObject;
                Core.DisplayNumberString(manaGain, "mp", Color.RoyalBlue, new Vector2(player.X, player.Bounds.Top - 30));
            }
        }
Example #5
0
 private void EnemyHitHandler(EnemyHitEventArgs args)
 {
     args.KnockbackForce *= 2;
 }
Example #6
0
 /// <summary>
 /// Linked to EnemyHit event; updates healthbar
 /// </summary>
 public void EnemyHit(object sender, EnemyHitEventArgs args)
 {
     UpdateHealth(args.Health);
 }
Example #7
0
 private void EnemyHitHandler(EnemyHitEventArgs args)
 {
     args.KnockbackForce *= 2;
 }