148 uint8 gender = target->GetNativeGender();
171 caster->
CastSpell(target, spellId,
true);
299 caster->
CastSpell(target, spellId,
true);
First const & RAND(First const &first, Second const &second, Rest const &... rest)
uint32 urand(uint32 min, uint32 max)
bool roll_chance_i(int chance)
#define RegisterSpellScript(spell_script)
@ SPELL_EFFECT_SCRIPT_EFFECT
@ AURA_EFFECT_HANDLE_REAL
@ SPELL_AURA_PROC_TRIGGER_SPELL
@ SPELL_AURA_MOD_INCREASE_SWIM_SPEED
@ SPELL_AURA_PERIODIC_DUMMY
#define AuraEffectProcFn(F, I, N)
#define SpellEffectFn(F, I, N)
#define AuraEffectPeriodicFn(F, I, N)
#define AuraEffectApplyFn(F, I, N, M)
#define AuraEffectRemoveFn(F, I, N, M)
HookList< EffectApplyHandler > AfterEffectRemove
HookList< EffectPeriodicHandler > OnEffectPeriodic
HookList< EffectApplyHandler > AfterEffectApply
HookList< EffectProcHandler > OnEffectProc
Unit * GetProcTarget() const
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
Player * GetHitPlayer() const
HookList< HitHandler > AfterHit
HookList< EffectHandler > OnEffectHit
Unit * GetHitUnit() const
HookList< EffectHandler > OnEffectHitTarget
SpellInfo const * GetSpellInfo() const
void RemoveAura(AuraApplicationMap::iterator &i, AuraRemoveMode mode=AURA_REMOVE_BY_DEFAULT)
virtual Gender GetNativeGender() const
uint32 GetAuraCount(uint32 spellId) const
bool HasAura(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint32 reqEffMask=0) const
void RemoveAurasDueToSpell(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
void HandleApply(AuraEffect const *, AuraEffectHandleModes)
void HandleRemove(AuraEffect const *, AuraEffectHandleModes)
bool Validate(SpellInfo const *) override
bool Validate(SpellInfo const *) override
void HandleDummy(SpellEffIndex)
bool Validate(SpellInfo const *) override
void HandleScript(SpellEffIndex)
bool Validate(SpellInfo const *) override
void HandleScript(SpellEffIndex)
void HandleScript(SpellEffIndex)
bool Validate(SpellInfo const *) override
void HandleScriptEffect()
bool Validate(SpellInfo const *) override
void HandleAfterApply(AuraEffect const *aurEff, AuraEffectHandleModes)
static constexpr std::array< uint32, 5 > ChildrensCustomeSpells
void HandlePeriodic(AuraEffect const *aurEff)
bool Validate(SpellInfo const *) override
void HandleProc(AuraEffect *, ProcEventInfo &eventInfo)
bool Validate(SpellInfo const *) override
@ SPELL_LEPER_GNOME_COSTUME_MALE
@ SPELL_NINJA_COSTUME_MALE
@ SPELL_NINJA_COSTUME_FEMALE
@ SPELL_GHOST_COSTUME_FEMALE
@ SPELL_PIRATE_COSTUME_MALE
@ SPELL_PIRATE_COSTUME_FEMALE
@ SPELL_LEPER_GNOME_COSTUME_FEMALE
@ SPELL_GHOST_COSTUME_MALE
HallowsEndChildrensCustomeSpells
@ SPELL_HALLOWS_END_SCARY_PUMPKIN_MASK
@ SPELL_HALLOWS_END_FANCY_TOP_HAT
@ SPELL_HALLOWS_END_SCARY_TIKI_MASK
@ SPELL_HALLOWS_END_SCARY_WITCH_HAT
@ SPELL_HALLOWS_END_SCARY_TIKI_MASK_2
@ SPELL_HALLOWED_WAND_NINJA
@ SPELL_HALLOWED_WAND_WISP
@ SPELL_HALLOWED_WAND_SKELETON
@ SPELL_HALLOWED_WAND_BAT
@ SPELL_HALLOWED_WAND_LEPER_GNOME
@ SPELL_HALLOWED_WAND_RANDOM
@ SPELL_HALLOWED_WAND_GHOST
@ SPELL_HALLOWED_WAND_PIRATE
@ SPELL_HALLOWS_END_DUMMY_NUKE
@ SPELL_HALLOWS_END_DREAD_FERTILIZER
void AddSC_event_hallows_end()
@ SPELL_HALLOWS_END_CANDY_ORANGE_GIANT
@ SPELL_HALLOWS_END_CANDY_GHOST
@ SPELL_HALLOWS_END_CANDY_SKELETON
@ SPELL_HALLOWS_END_CANDY_MALE_DEFIAS_PIRATE
@ SPELL_HALLOWS_END_CANDY_PIRATE
@ SPELL_HALLOWS_END_CANDY_FEMALE_DEFIAS_PIRATE
@ SPELL_TRICKED_OR_TREATED
@ SPELL_TRICKY_TREAT_TRIGGER
@ SPELL_TRICKY_TREAT_SPEED
std::array< uint32, 4 > const CandysSpells
auto SelectRandomContainerElement(C const &container) -> typename std::add_const< decltype(*std::begin(container))>::type &