コード例 #1
0
 private void ProcessChangeForBlessing(int rawDamage)
 {
     foreach (statusEffects effect in GetComponent <Tower>().GetActiveStatusEffects())
     {
         if (effect == statusEffects.Blessing)
         {
             DamageModifier damageModifier = GetComponent <Tower>().GetMyBuffGiver().GetComponent <DamageModifier>();
             foreach (AbilitiesAndStatusEffects ability in damageModifier.GetActiveAbilities())
             {
                 if (ability.GetStatusEffect() == statusEffects.Blessing)
                 {
                     processedDamage += rawDamage * ability.GetDamageMultiplier();
                 }
             }
         }
     }
 }
コード例 #2
0
 public void ApplyStatusEffect(DamageModifier attacker)
 {
     AbilitiesAndStatusEffects[] abilitiesAndEffects = attacker.GetActiveAbilities();
     foreach (AbilitiesAndStatusEffects effects in abilitiesAndEffects)
     {
         if (effects.GetStatusEffect() == statusEffects.None)
         {
             continue;
         }
         if (effects.IsStatusEffectEnemyPassive())
         {
             continue;
         }
         if (!currentStatusEffects.Contains(effects.GetStatusEffect()))
         {
             currentStatusEffects.Add(effects.GetStatusEffect());
             TriggerStatusEffect(effects);
         }
     }
 }