365 switch (spellInfo->
Id)
478 targets.push_back(target);
uint32 urand(uint32 min, uint32 max)
bool roll_chance_i(int chance)
#define RegisterSpellScript(spell_script)
@ SPELL_EFFECT_SCRIPT_EFFECT
@ TARGET_UNIT_SRC_AREA_ENTRY
#define SpellEffectFn(F, I, N)
#define SpellObjectAreaTargetSelectFn(F, I, N)
@ SAY_PEON_SHADOW_FISSURE
@ SAY_TAUNT_SHADOW_FISSURE
@ SPELL_PEON_TARGET_FISSURES
@ EVENT_INTERNAL_COOLDOWN
@ EVENT_CLEAR_EMOTE_STATE
void AddSC_boss_grand_warlock_nethekurse()
void JustEngagedWith(Unit *who) override
void DoZoneInCombat(Creature *creature=nullptr)
void SetReactState(ReactStates st)
bool HasStringId(std::string_view id) const
void Repeat(Milliseconds time)
void CancelEvent(EventId eventId)
void ScheduleEvent(EventId eventId, Milliseconds time, GroupIndex group=0u, PhaseIndex phase=0u)
Creature * GetCreature(uint32 type)
Unit * GetHitUnit() const
HookList< EffectHandler > OnEffectHitTarget
HookList< ObjectAreaTargetSelectHandler > OnObjectAreaTargetSelect
TaskContext & Repeat(std::chrono::duration< _Rep, _Period > const &duration)
TaskScheduler & CancelAll()
TaskScheduler & Schedule(std::chrono::duration< _Rep, _Period > const &time, task_handler_t const &task)
TaskScheduler & Update(success_t const &callback=EmptyCallback)
void DoMeleeAttackIfReady()
SpellCastResult DoCastSelf(uint32 spellId, CastSpellExtraArgs const &args={})
SpellCastResult DoCastVictim(uint32 spellId, CastSpellExtraArgs const &args={})
Unit * SelectTarget(SelectTargetMethod targetType, uint32 offset=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
SpellCastResult DoCast(uint32 spellId)
void PauseMovement(uint32 timer=0, uint8 slot=0, bool forced=true)
void SetEmoteState(Emote emote)
bool HasUnitState(const uint32 f) const
void SetFacingTo(float ori, bool force=true, uint32 movementId=EVENT_FACE)
bool HealthBelowPctDamaged(int32 pct, uint32 damage) const
InstanceScript * GetInstanceScript() const
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
bool OnTrigger(Player *player, AreaTriggerEntry const *) override
at_shattered_halls_the_sewer()
void FilterTargets(std::list< WorldObject * > &targets)
PrepareSpellScript(spell_grand_warlock_nethekurse_target_fissures)
bool Validate(SpellInfo const *) override
void HandleScript(SpellEffIndex)
auto SelectRandomContainerElement(C const &container) -> typename std::add_const< decltype(*std::begin(container))>::type &
#define RegisterShatteredHallsGameObjectAI(ai_name)
#define RegisterShatteredHallsCreatureAI(ai_name)
void DoPlaySoundToSet(WorldObject *source, uint32 soundId)
void UpdateOutOfCombatEvents(uint32 diff)
void JustEngagedWith(Unit *who) override
void JustDied(Unit *) override
boss_grand_warlock_nethekurse(Creature *creature)
void DoAction(int32 action) override
void KilledUnit(Unit *) override
void UpdateAI(uint32 diff) override
void DamageTaken(Unit *, uint32 &damage, DamageEffectType, SpellInfo const *) override
bool OnGossipHello(Player *) override
go_grand_warlock_chamber_door(GameObject *go)
InstanceScript * _instance
void JustDied(Unit *) override
npc_fel_orc_convert(Creature *creature)
void SpellHit(WorldObject *, SpellInfo const *spellInfo) override
void UpdateAI(uint32 diff) override
InstanceScript * _instance
void JustEngagedWith(Unit *) override
npc_lesser_shadow_fissure(Creature *creature)
void InitializeAI() override
void JustAppeared() override
void JustAppeared() override
npc_wild_shadow_fissure(Creature *creature)
void InitializeAI() override