147 std::list<Creature*> catList;
149 for (std::list<Creature*>::const_iterator itr = catList.begin(); itr != catList.end(); ++itr)
152 (*itr)->DespawnOrUnsummon();
153 else if (!(*itr)->IsAlive())
154 (*itr)->Respawn(
true);
356 auriaya->AI()->JustSummoned(
me);
387 if (distance > 5.0f && distance <= 45.0f)
484 auriaya->AI()->JustSummoned(
me);
507 auriaya->AI()->JustSummoned(
me);
541 return !creature->IsPet();
593 essence->ModStackAmount(-1);
@ ENCOUNTER_FRAME_DISENGAGE
bool roll_chance_i(int chance)
if(posix_memalign(&__mallocedMemory, __align, __size)) return NULL
#define RegisterSpellScript(spell_script)
@ TARGET_UNIT_SRC_AREA_ALLY
@ TARGET_UNIT_SRC_AREA_ENEMY
@ SPELL_EFFECT_SCRIPT_EFFECT
@ SPELL_EFFECT_SCHOOL_DAMAGE
#define SpellEffectFn(F, I, N)
#define SpellObjectAreaTargetSelectFn(F, I, N)
@ SPELL_CLEAR_ALL_DEBUFFS
@ SPELL_RANDOM_AGRO_PERIODIC
@ SPELL_FERAL_ESSENCE_APPLICATION_REMOVAL
@ SPELL_SUMMON_SWARMING_GUARDIAN
@ SPELL_STRENGHT_OF_THE_PACK
@ SPELL_INSTAKILL_ARACHNOPOD
@ SPELL_ACTIVATE_DEFENDER
@ SPELL_TERRIFYING_SCREECH
@ SPELL_PERMANENT_FEIGN_DEATH
@ EVENT_ACTIVATE_DEFENDER
@ EVENT_RESPAWN_DEFENDER_3
@ EVENT_TERRIFYING_SCREECH
@ EVENT_SWARNING_GUARDIAN
@ EVENT_RESPAWN_DEFENDER_2
void AddSC_boss_auriaya()
InstanceScript *const instance
void JustEngagedWith(Unit *who) override
CatsTargetSelector(Unit const *unit, float minDist, float maxDist)
bool operator()(Unit *unit) const
virtual void EnterEvadeMode(EvadeReason why=EvadeReason::Other)
void Talk(uint8 id, WorldObject const *whisperTarget=nullptr)
void AttackStart(Unit *victim) override
== Triggered Actions Requested ==================
bool HasReactState(ReactStates state) const
void SetReactState(ReactStates st)
ReactStates GetReactState() const
void Repeat(Milliseconds time)
void ScheduleEvent(uint32 eventId, Milliseconds time, uint32 group=0, uint8 phase=0)
bool IsInPhase(uint8 phase) const
void CancelEvent(uint32 eventId)
void SetPhase(uint8 phase)
Creature * GetCreature(uint32 type)
void SendEncounterUnit(EncounterFrameType type, Unit const *unit, Optional< int32 > param1={}, Optional< int32 > param2={})
static Creature * ToCreature(Object *o)
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
HookList< EffectHandler > OnEffectHitTarget
HookList< ObjectAreaTargetSelectHandler > OnObjectAreaTargetSelect
TaskScheduler & Schedule(std::chrono::duration< Rep, Period > time, task_handler_t task)
TaskScheduler & Update(success_t const &callback=nullptr)
void AddThreat(Unit *target, float amount, SpellInfo const *spell=nullptr, bool ignoreModifiers=false, bool ignoreRedirects=false)
== AFFECT MY THREAT LIST ==
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 DoCastAOE(uint32 spellId, CastSpellExtraArgs const &args={})
SpellCastResult DoCast(uint32 spellId)
ThreatManager & GetThreatManager()
void SetAuraStack(uint32 spellId, Unit *target, uint32 stack)
bool SetHover(bool enable, bool updateAnimTier=true)
bool SetDisableGravity(bool disable, bool updateAnimTier=true)
void SetUninteractible(bool apply)
bool SetWalk(bool enable)
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)
void GetCreatureListWithEntryInGrid(Container &creatureContainer, uint32 entry, float maxSearchRange=250.0f) const
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
float GetDistance2d(WorldObject const *obj) const
bool IsWithinLOSInMap(WorldObject const *obj, LineOfSightChecks checks=LINEOFSIGHT_ALL_CHECKS, VMAP::ModelIgnoreFlags ignoreFlags=VMAP::ModelIgnoreFlags::Nothing) const
float GetDistance(WorldObject const *obj) const
bool OnCheck(Player *, Unit *target) override
achievement_crazy_cat_lady()
bool OnCheck(Player *, Unit *target) override
void HandleDummyEffect(SpellEffIndex)
bool Validate(SpellInfo const *) override
bool Validate(SpellInfo const *) override
void HandleScriptEffect(SpellEffIndex)
void HandleOnHit(SpellEffIndex)
bool Validate(SpellInfo const *) override
void FilterTargets(std::list< WorldObject * > &targets)
void FilterTargets(std::list< WorldObject * > &unitList)
void AttackStart(Unit *) override
== Triggered Actions Requested ==================
void ResetThreatList(Unit *who=nullptr)
void DoPlaySoundToSet(WorldObject *source, uint32 soundId)
void EnterEvadeMode(EvadeReason why) override
void DoAction(int32 action) override
void HandleCats(bool isResetting)
boss_auriaya(Creature *creature)
void KilledUnit(Unit *who) override
void UpdateAI(uint32 diff) override
void JustDied(Unit *) override
void JustEngagedWith(Unit *who) override
uint32 GetData(uint32 type) const override
void JustDied(Unit *) override
npc_feral_defender(Creature *creature)
void DamageTaken(Unit *, uint32 &damage, DamageEffectType, SpellInfo const *) override
void UpdateAI(uint32 diff) override
InstanceScript * _instance
void JustEngagedWith(Unit *) override
InstanceScript * _instance
void JustDied(Unit *) override
void UpdateAI(uint32 diff) override
npc_sanctum_sentry(Creature *creature)
InstanceScript * _instance
void UpdateAI(uint32) override
npc_seeping_essence_stalker(Creature *creature)
void UpdateAI(uint32 diff) override
InstanceScript * _instance
npc_swarming_guardian(Creature *creature)
#define RegisterUlduarCreatureAI(ai_name)