162 totem->SetUnkillable(
false);
237 volkaal->AI()->DoZoneInCombat();
271 .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
272 .TriggeringAura = aurEff
380 float range = 100.0f;
@ ENCOUNTER_FRAME_DISENGAGE
#define RegisterAreaTriggerAI(ai_name)
#define RegisterSpellScript(spell_script)
@ TARGET_UNIT_SRC_AREA_ENTRY
@ SPELL_EFFECT_SCHOOL_DAMAGE
@ SPELL_AURA_PERIODIC_DAMAGE
@ SPELL_AURA_PERIODIC_DUMMY
@ TRIGGERED_IGNORE_CAST_IN_PROGRESS
Will not check if a current cast is in progress.
@ TRIGGERED_DONT_REPORT_CAST_ERROR
Will return SPELL_FAILED_DONT_REPORT in CheckCast functions.
#define SpellEffectFn(F, I, N)
#define SpellObjectAreaTargetSelectFn(F, I, N)
#define AuraEffectPeriodicFn(F, I, N)
#define RegisterAtalDazarCreatureAI(ai_name)
@ SUMMON_GROUP_VOLKAAL_TOTEMS
void AddSC_boss_volkaal()
@ SPELL_RAPID_DECAY_RANDOM
@ SPELL_TOXIC_LEAP_DAMAGE
@ SPELL_TOXIC_LEAP_SELECTOR
@ SPELL_RAPID_DECAY_TARGET
int32 GetAmountAsInt() const
HookList< EffectPeriodicHandler > OnEffectPeriodic
InstanceScript *const instance
void JustEngagedWith(Unit *who) override
void _DespawnAtEvade(Seconds delayToRespawn=30s, Creature *who=nullptr)
bool _EnterEvadeMode(EvadeReason why=EvadeReason::Other)
void SetUnkillable(bool unkillable)
void Repeat(Milliseconds time)
void ScheduleEvent(uint32 eventId, Milliseconds time, uint32 group=0, uint8 phase=0)
void CancelEvent(uint32 eventId)
Creature * GetCreature(uint32 type)
void SendEncounterUnit(EncounterFrameType type, Unit const *unit, Optional< int32 > param1={}, Optional< int32 > param2={})
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
Unit * GetHitUnit() const
HookList< EffectHandler > OnEffectHitTarget
HookList< ObjectAreaTargetSelectHandler > OnObjectAreaTargetSelect
SpellCastResult DoCastSelf(uint32 spellId, CastSpellExtraArgs const &args={})
SpellCastResult DoCast(uint32 spellId)
bool HasUnitState(const uint32 f) const
void RemoveAurasDueToSpell(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
InstanceScript * GetInstanceScript() const
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
void SummonCreatureGroup(uint8 group, std::list< TempSummon * > *list=nullptr)
virtual void DoAction(uint32 actionId, WorldObject *source=nullptr, WorldObject *target=nullptr)
void HandlePeriodic(AuraEffect const *aurEff) const
bool Validate(SpellInfo const *) override
void HandleDummy(SpellEffIndex) const
bool Validate(SpellInfo const *) override
void HandleToxicPool(AuraEffect const *aurEff) const
void HandleScript(SpellEffIndex) const
void SelectTotem(std::list< WorldObject * > &targets) const
bool Validate(SpellInfo const *) override
void HandleScript(SpellEffIndex) const
TC_GAME_API Creature * GetCreature(WorldObject const &u, ObjectGuid const &guid)
static void VisitWorldObjects(WorldObject const *obj, T &visitor, float radius, bool dont_load=true)
constexpr void GetPosition(float &x, float &y) const
bool IsHeroicOrHigher() const
at_volkaal_rapid_decay(AreaTrigger *areatrigger)
void OnUnitEnter(Unit *unit) override
void OnUnitExit(Unit *unit, AreaTriggerExitReason) override
boss_volkaal(Creature *creature)
void MovementInform(uint32, uint32 id) override
void JustEngagedWith(Unit *who) override
void KilledUnit(Unit *victim) override
void JustDied(Unit *) override
void SpellHit(WorldObject *, SpellInfo const *spellInfo) override
void EnterEvadeMode(EvadeReason) override
void JustAppeared() override
void DoAction(int32 action) override
void UpdateAI(uint32 diff) override
void JustAppeared() override
void JustEngagedWith(Unit *) override
npc_volkaal_reanimation_totem(Creature *creature)
void DamageTaken(Unit *, uint32 &damage, DamageEffectType, SpellInfo const *) override
void JustDied(Unit *) override