89 { -5350.0835f, 1089.8976f, 340.5709f, 5.0882f },
90 { -5310.4464f, 1066.8134f, 340.5967f, 3.9184f },
91 { -5350.3934f, 1043.9323f, 340.5894f, 2.0924f }
442 float nearestDist = std::numeric_limits<float>::max();
448 if (dist < nearestDist)
#define RegisterAreaTriggerAI(ai_name)
#define RegisterSpellScript(spell_script)
@ AURA_EFFECT_HANDLE_REAL
@ SPELL_AURA_PERIODIC_DUMMY
#define SpellEffectFn(F, I, N)
#define AuraEffectPeriodicFn(F, I, N)
#define AuraEffectRemoveFn(F, I, N, M)
#define RegisterAzureVaultCreatureAI(ai_name)
void AddSC_boss_telash_greywing()
@ ACTION_RESCHEDULE_SPELLS
@ SAY_ANNOUNCE_ABSOLUTE_ZERO
@ SUMMON_GROUP_TELASH_VAULT_RUNES
Position const TelashJumpBackPositions[]
@ SPELL_ABSOLUTE_ZERO_JUMP_BACK
@ SPELL_FROST_BOMB_DAMAGE
@ SPELL_ABSOLUTE_ZERO_DAMAGE
@ SPELL_ACTIVATE_VAULT_RUNE
@ SPELL_POWER_ENERGIZE_ICE_POWER_PERIODIC
@ SPELL_ABSOLUTE_ZERO_CAST
@ SPELL_TELASH_APPROACH_CONV
@ SPELL_VAULT_RUNE_SHIELD
@ SPELL_INACTIVE_VAULT_RUNE
@ SPELL_ABSOLUTE_ZERO_SHIELD
@ SPELL_VAULT_RUNE_AT_AURA
@ SPELL_ABSOLUTE_ZERO_JUMP
Position const TelashJumpPosition
GuidUnorderedSet const & GetInsideUnits() const
AuraApplication const * GetTargetApplication() const
HookList< EffectPeriodicHandler > OnEffectPeriodic
HookList< EffectApplyHandler > OnEffectRemove
InstanceScript *const instance
void JustEngagedWith(Unit *who) override
void _DespawnAtEvade(Seconds delayToRespawn=30s, Creature *who=nullptr)
void Talk(uint8 id, WorldObject const *whisperTarget=nullptr)
bool _EnterEvadeMode(EvadeReason why=EvadeReason::Other)
void SetReactState(ReactStates st)
void Repeat(Milliseconds time)
void ScheduleEvent(uint32 eventId, Milliseconds time, uint32 group=0, uint8 phase=0)
void CancelEvent(uint32 eventId)
void SendEncounterUnit(EncounterFrameType type, Unit const *unit, Optional< int32 > param1={}, Optional< int32 > param2={})
bool IsMythicPlus() const
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
HookList< CastHandler > AfterCast
Unit * GetHitUnit() const
HookList< EffectHandler > OnEffectHitTarget
TaskScheduler & Update(success_t const &callback=nullptr)
virtual void DoAction(int32)
SpellCastResult DoCastSelf(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 SetPower(Powers power, int32 val, bool withPowerUpdate=true)
Powers GetPowerType() const
bool SetDisableGravity(bool disable, bool updateAnimTier=true)
int32 GetPower(Powers power) const
bool HasUnitState(const uint32 f) 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={ })
float GetDistance(WorldObject const *obj) const
void SummonCreatureGroup(uint8 group, std::list< TempSummon * > *list=nullptr)
void HandleHit(SpellEffIndex)
bool Validate(SpellInfo const *) override
Position const & GetClosestPositionToMaxThreatTarget(Unit *victim)
void HandleHitTarget(SpellEffIndex)
bool Validate(SpellInfo const *) override
void HandleHitTarget(SpellEffIndex)
bool Validate(SpellInfo const *) override
void OnRemove(AuraEffect const *, AuraEffectHandleModes)
bool Validate(SpellInfo const *) override
void HandleHit(SpellEffIndex)
bool Validate(SpellInfo const *) override
void HandlePeriodic(AuraEffect const *)
TC_GAME_API Player * GetPlayer(Map const *, ObjectGuid const &guid)
void OnUnitExit(Unit *unit) override
at_telash_greywing_vault_rune(AreaTrigger *areatrigger)
void OnUnitEnter(Unit *unit) override
void JustEngagedWith(Unit *who) override
void JustDied(Unit *) override
void MovementInform(uint32, uint32 id) override
uint8 _icyDevastatorRemaining
void DoAction(int32 param) override
void UpdateAI(uint32 diff) override
void EnterEvadeMode(EvadeReason) override
void JustAppeared() override
boss_telash_greywing(Creature *creature)
uint8 _frostBombRemaining