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(); } } } } }
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); } } }