Esempio n. 1
0
 public bool DamageTarget(BaseCard card, DamageMultipleTimesEffect damageMultipleTimesEffect, List <IEnemyInstance> targets)
 {
     //TODO add calculation based on other variables
     foreach (var target in targets)
     {
         for (int i = 0; i < damageMultipleTimesEffect.HitTimes; i++)
         {
             var damage = card.CalculateDamage(_gameWorldManager, damageMultipleTimesEffect.DamageAmount, target);
             Logger.Log($"Damaging target: {target.Name}({target.UniqueId}) for {damage} damage");
             target.ActualHealth = target.ActualHealth - damage;
             _gameWorldManager.EventManager.EnemyDamageTaken(damage, target);
         }
     }
     return(true);
 }
Esempio n. 2
0
 public bool DamageRandomsTarget(BaseCard baseCard, DamageMultipleTimesEffect damageMultipleTimesEffect, List <IEnemyInstance> gameWorldEnemies)
 {
     for (int i = 0; i < damageMultipleTimesEffect.HitTimes; i++)
     {
         Random rnd = new Random();
         int    r   = rnd.Next(gameWorldEnemies.Count);
         DamageTarget(baseCard, new DamageMultipleTimesEffect()
         {
             HitTimes = 1, DamageAmount = damageMultipleTimesEffect.DamageAmount
         },
                      new List <IEnemyInstance>()
         {
             gameWorldEnemies[r]
         });
     }
     return(true);
 }