Example #1
0
 private void OnModifierChange(AddModifierEffectHandler modifier)
 {
     foreach (var aura in Owner.Auras)
     {
         if (aura.IsActivated && !aura.Spell.IsEnhancer && modifier.SpellEffect.MatchesSpell(aura.Spell))
         {
             // activated, passive Aura, affected by this modifier -> Needs to re-apply
             aura.ReApplyNonPeriodicEffects();
         }
     }
 }
Example #2
0
 public void AddSpellModifierFlat(AddModifierEffectHandler modifier)
 {
     if (modifier.Charges > 0)
     {
         ModifierWithChargesCount++;
     }
     SpellModifiersFlat.Add(modifier);
     OnModifierChange(modifier);
     AuraHandler.SendModifierUpdate((Character)m_owner, modifier.SpellEffect, false);
 }
Example #3
0
 public void RemoveSpellModifierFlat(AddModifierEffectHandler modifier)
 {
     if (modifier.Charges > 0)
     {
         ModifierWithChargesCount--;
     }
     OnModifierChange(modifier);
     AuraHandler.SendModifierUpdate((Character)m_owner, modifier.SpellEffect, false);
     SpellModifiersFlat.Remove(modifier);
 }
Example #4
0
		public void RemoveSpellModifierPercent(AddModifierEffectHandler modifier)
		{
			if (modifier.Charges > 0)
			{
				ModifierWithChargesCount--;
			}
			SpellModifiersPct.Remove(modifier);
			OnModifierChange(modifier);
			AuraHandler.SendModifierUpdate((Character)m_owner, modifier.SpellEffect, true);
		}