160 { -99.1021f, -233.7526f, -1.22307f, 1.588250f },
161 { -98.0151f, -230.4555f, -1.21089f, 1.797689f },
162 { -143.172f, -147.6801f, -3.16113f, 4.852015f },
163 { -134.304f, -145.7803f, -1.70332f, 4.677482f },
164 { -125.036f, -144.2065f, -1.91660f, 4.991642f }
169 { -145.2233f, -137.5543f, -1.59056f, 5.427049f },
170 { -137.4383f, -136.4050f, -1.72384f, 5.336747f },
171 { -129.0413f, -132.1494f, -2.09285f, 5.460842f }
209 if (group->isLFGGroup())
471 flamecaller->AI()->EnterEvadeMode();
522 switch (spellInfo->
Id)
586 bonfireBunny->CastStop();
696 if (!caster || !player)
704 sCreatureTextMgr->SendChat(caster,
SAY_PLAYER_TEXT_1,
nullptr,
CHAT_MSG_SAY,
LANG_UNIVERSAL,
TEXT_RANGE_NORMAL, 0,
SoundKitPlayType::Normal,
TEAM_OTHER,
false, player);
708 sCreatureTextMgr->SendChat(caster,
SAY_PLAYER_TEXT_2,
nullptr,
CHAT_MSG_SAY,
LANG_UNIVERSAL,
TEXT_RANGE_NORMAL, 0,
SoundKitPlayType::Normal,
TEAM_OTHER,
false, player);
711 sCreatureTextMgr->SendChat(caster,
SAY_PLAYER_TEXT_3,
nullptr,
CHAT_MSG_SAY,
LANG_UNIVERSAL,
TEXT_RANGE_NORMAL, 0,
SoundKitPlayType::Normal,
TEAM_OTHER,
false, player);
779 targets.push_back(target);
805 if (target->isMoving())
@ TEMPSUMMON_DEAD_DESPAWN
@ TEMPSUMMON_MANUAL_DESPAWN
@ TEMPSUMMON_CORPSE_DESPAWN
#define RegisterSpellScript(spell_script)
void ClearGossipMenuFor(Player *player)
void CloseGossipMenuFor(Player *player)
@ TARGET_UNIT_SRC_AREA_ENTRY
@ SPELL_EFFECT_SCRIPT_EFFECT
@ SPELL_EFFECT_APPLY_AURA
@ SPELL_AURA_PROC_TRIGGER_SPELL
@ SPELL_AURA_PERIODIC_DUMMY
#define AuraEffectProcFn(F, I, N)
#define SpellEffectFn(F, I, N)
#define SpellObjectAreaTargetSelectFn(F, I, N)
#define AuraEffectPeriodicFn(F, I, N)
Position const SummonPositions[]
@ SPELL_SUMMONING_RHYME_AURA
@ SPELL_SUMMON_LOOT_MISSILE
@ SPELL_FIND_OPENING_BEAM_END
@ SPELL_ICE_SPEAR_CONTROL_AURA
@ SPELL_FROZEN_CORE_GETS_HIT
@ SPELL_SLIPPERY_FLOOR_YOU_SLIPPED
@ SPELL_FIND_OPENING_VISUAL
@ SPELL_SUMMONING_VISUAL_1
@ SPELL_ICE_SPEAR_TARGET_PICKER
@ SPELL_SUMMON_ICE_SPEAR_GO
@ SPELL_SUMMON_ICE_SPEAR_BUNNY
@ SPELL_FIND_OPENING_CHANNEL
@ SPELL_ICE_SPEAR_KNOCKBACK
@ SPELL_SLIPPERY_FLOOR_SLIP
@ SPELL_FORCE_WHISP_FLIGHT
@ SPELL_SUMMONING_RHYME_BONFIRE
@ SPELL_SLIPPERY_FLOOR_PERIODIC
@ SPELL_SHAMANS_LOOK_FOR_OPENING
@ SPELL_SLIPPERY_FLOOR_AMBIENT
@ SPELL_AHUNE_ACHIEVEMENT
@ SPELL_AHUNE_SPANKY_HANDS
@ SPELL_FIND_OPENING_TRIGGER
@ SPELL_ICE_BOMBARDMENT_DEST_PICKER
@ SPELL_CLOSE_OPENING_VISUAL
Position const FlameCallerSpots[]
@ EVENT_STOP_LOOKING_FOR_OPENING
@ EVENT_START_LOOKING_FOR_OPENING
uint32 GetTickNumber() const
void PreventDefaultAction()
HookList< EffectPeriodicHandler > OnEffectPeriodic
void Remove(AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
HookList< EffectProcHandler > OnEffectProc
InstanceScript *const instance
void JustEngagedWith(Unit *who) override
void Talk(uint8 id, WorldObject const *whisperTarget=nullptr)
void SetImmuneToPC(bool apply) override
void SetReactState(ReactStates st)
void DespawnOrUnsummon(Milliseconds timeToDespawn=0s, Seconds forceRespawnTime=0s)
void SetRegenerateHealth(bool value)
void Repeat(Milliseconds time)
void ScheduleEvent(uint32 eventId, Milliseconds time, uint32 group=0, uint8 phase=0)
void SetPhase(uint8 phase)
void UseDoorOrButton(uint32 time_to_restore=0, bool alternative=false, Unit *user=nullptr)
void DespawnOrUnsummon(Milliseconds delay=0ms, Seconds forceRespawnTime=0s)
void DoCastSpellOnPlayers(uint32 spell, bool includePets=false, bool includeControlled=false)
Creature * GetCreature(uint32 type)
virtual ObjectGuid GetGuidData(uint32 type) const override
PlayerList const & GetPlayers() const
void MovePoint(uint32 id, Position const &pos, bool generatePath=true, Optional< float > finalOrient={}, Optional< float > speed={}, MovementWalkRunSpeedSelectionMode speedSelectionMode=MovementWalkRunSpeedSelectionMode::Default, Optional< float > closeEnoughDistance={})
static Creature * ToCreature(Object *o)
static Player * ToPlayer(Object *o)
Group * GetGroup(Optional< uint8 > partyIndex)
Unit * GetProcTarget() const
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
WorldLocation * GetHitDest() const
Creature * GetHitCreature() const
HookList< EffectHandler > OnEffectHit
Unit * GetHitUnit() const
HookList< EffectHandler > OnEffectHitTarget
HookList< ObjectAreaTargetSelectHandler > OnObjectAreaTargetSelect
void Summon(Creature const *summon)
TaskScheduler & Schedule(std::chrono::duration< Rep, Period > time, task_handler_t task)
TaskScheduler & Update(success_t const &callback=nullptr)
SpellCastResult DoCastSelf(uint32 spellId, CastSpellExtraArgs const &args={})
SpellCastResult DoCast(uint32 spellId)
void SetHealth(uint64 val)
void SetControlled(bool apply, UnitState state)
MotionMaster * GetMotionMaster()
void SetUninteractible(bool apply)
void HandleEmoteCommand(Emote emoteId, Player *target=nullptr, Trinity::IteratorPair< int32 const * > spellVisualKitIds={}, int32 sequenceVariation=0)
void RemoveAurasDueToSpell(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
static void Kill(Unit *attacker, Unit *victim, bool durabilityLoss=true, bool skipSettingDeathState=false)
InstanceScript * GetInstanceScript() const
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
TempSummon * SummonCreature(uint32 entry, Position const &pos, TempSummonType despawnType=TEMPSUMMON_MANUAL_DESPAWN, Milliseconds despawnTime=0s, uint32 vehId=0, uint32 spellId=0, ObjectGuid privateObjectOwner=ObjectGuid::Empty)
GameObject * SummonGameObject(uint32 entry, Position const &pos, QuaternionData const &rot, Seconds respawnTime, GOSummonType summonType=GO_SUMMON_TIMED_OR_CORPSE_DESPAWN)
void HandleScript(SpellEffIndex)
bool Validate(SpellInfo const *) override
void HandleProc(AuraEffect *, ProcEventInfo &eventInfo)
void HandleScript(SpellEffIndex)
bool Validate(SpellInfo const *) override
void HandleScriptEffect(SpellEffIndex)
void PeriodicTick(AuraEffect const *)
bool Validate(SpellInfo const *) override
bool Validate(SpellInfo const *) override
void FilterTargets(std::list< WorldObject * > &targets)
void HandleDummy(SpellEffIndex)
bool Validate(SpellInfo const *) override
void HandleScriptEffect(SpellEffIndex)
bool Validate(SpellInfo const *) override
void PeriodicTick(AuraEffect const *)
void PeriodicTick(AuraEffect const *aurEff)
bool Validate(SpellInfo const *) override
TC_GAME_API Creature * GetCreature(WorldObject const &u, ObjectGuid const &guid)
auto SelectRandomContainerElement(C const &container) -> typename std::add_const< decltype(*std::begin(container))>::type &
constexpr void SetOrientation(float orientation)
void EnterEvadeMode(EvadeReason) override
void ExecuteEvent(uint32 eventId) override
void DoAction(int32 action) override
boss_ahune(Creature *creature)
void JustEngagedWith(Unit *who) override
void JustDied(Unit *) override
go_ahune_ice_spear(GameObject *go)
void UpdateAI(uint32 diff) override
bool OnGossipSelect(Player *player, uint32, uint32) override
InstanceScript * _instance
go_ahune_ice_stone(GameObject *go)
void JustSummoned(Creature *summon) override
void JustDied(Unit *) override
InstanceScript * _instance
void UpdateAI(uint32 diff) override
void DoAction(int32 action) override
npc_ahune_bunny(Creature *creature)
void UpdateAI(uint32 diff) override
void JustAppeared() override
npc_ahune_ice_spear_bunny(Creature *creature)
void MovementInform(uint32 motionType, uint32 pointId) override
InstanceScript * _instance
void SpellHit(WorldObject *, SpellInfo const *spellInfo) override
void UpdateAI(uint32 diff) override
npc_earthen_ring_flamecaller(Creature *creature)
void LookOpening(bool activate, uint8 spot)
void DoAction(int action) override
void JustDied(Unit *) override
void DoAction(int32 action) override
InstanceScript * _instance
npc_frozen_core(Creature *creature)
void UpdateAI(uint32 diff) override
@ NPC_SHAMAN_BONFIRE_BUNNY_001
@ NPC_SHAMAN_BONFIRE_BUNNY_002
@ NPC_SHAMAN_BONFIRE_BUNNY_000
#define RegisterSlavePensGameObjectAI(ai_name)
#define RegisterSlavePensCreatureAI(ai_name)