public void Cast(bool skipCheck = false) { SpellManager.ApplySpellVisuals(Caster, SpellInfo); SpellManager.ApplySpellCastSound(Caster, SpellInfo); SelectSpellTargets(); Caster.Character.SpellHistory.HandleCooldowns(SpellInfo, this); HandleImmediate(); }