Don't start attack at petai if target is not visible for pet.
Viewpoint should be owner of pet.
Simplify dispel code for dispel and spellsteal. Credits to rowman from b2b.
Fix Pain Suppression not giving dispel resistance.
Apply dispel resistance to EffectDispelMechanic.
Implemented special dodge chance for Shadowfiend and Felguard.
Handle SPELL_AURA_ADD_PCT_MODIFIER | SPELLMOD_CASTING_TIME auras on cast.

Simplify EffectDispelMechanic code.
Also don't consume charges for SPELLMOD_COST if spell has ManaCost% <= 0
Interupt spell casting for TargetedMovementGenerator if target is not within los.
Taking charges for instant cast spells already done in ::cast so return fail at HandleAddPctModifierProc.
Don't let aura break by themself. Example Gauge or Maim
Increase meleerange by 2 yards when target is moving.
TYPO: Increase meleerange by 2 yards when target is moving.
Crystal Spire of Karabor mace no longer procs on hot apply.
Implement spellAttr SPELL_ATTR_EX3_TRIGGERED_CAN_TRIGGER and SPELL_ATTR_EX3_TRIGGERED_CAN_TRIGGER_2. Allowing to trigger procs from triggered spells with this attr.

Fix Evade if no originalCaster
Reset swing timer for charge effects.
TYPO: Implement spellAttr SPELL_ATTR_EX3_TRIGGERED_CAN_TRIGGER and SPELL_ATTR_EX3_TRIGGERED_CAN_TRIGGER_2. Allowing to trigger procs from triggered spells with this attr.

Fix Evade if no originalCaster
Reset swing timer for charge effects.