52 { 3270.132f, -3169.948f, 297.5891f, 5.88176f },
53 { 3307.298f, -3183.449f, 297.5891f, 5.742133f },
54 { 3255.708f, -3135.677f, 297.5891f, 1.867502f }
166 for (
int i = 1; i <= 20; i++)
278 if (zombie && zombie->
IsAlive())
300 int32 damage =
int32(unit->GetHealth()) -
int32(unit->CountPctFromMaxHealth(5));
std::chrono::seconds Seconds
Seconds shorthand typedef.
std::chrono::minutes Minutes
Minutes shorthand typedef.
Milliseconds randtime(Milliseconds min, Milliseconds max)
#define RegisterSpellScript(spell_script)
@ SPELL_EFFECT_SCRIPT_EFFECT
@ SPELL_EFFECT_SEND_EVENT
@ TRIGGERED_FULL_MASK
Will return SPELL_FAILED_DONT_REPORT in CheckCast functions.
#define SpellEffectFn(F, I, N)
@ SUMMON_GROUP_CHOW_25MAN
@ SUMMON_GROUP_CHOW_10MAN
Position const PosSummon[3]
@ EVENT_GLUTH_ZOMBIE_BEHAVIOR
@ SPELL_ZOMBIE_CHOW_SEARCH_MULTI
@ SPELL_ZOMBIE_CHOW_SEARCH_SINGLE
@ STATE_ZOMBIE_TOBE_EATEN
@ EVENT_SEARCH_ZOMBIE_SINGLE
@ EVENT_SEARCH_ZOMBIE_MULTI
@ EVENT_KILL_ZOMBIE_SINGLE
void JustEngagedWith(Unit *who) override
virtual bool CheckInRoom()
void SetReactState(ReactStates st)
void SetTarget(ObjectGuid guid) override
void Repeat(Milliseconds time)
void ScheduleEvent(EventId eventId, Milliseconds time, GroupIndex group=0u, PhaseIndex phase=0u)
virtual ObjectGuid GetGuidData(uint32 type) const override
void MovePoint(uint32 id, Position const &pos, bool generatePath=true, Optional< float > finalOrient={})
void MoveCloserAndStop(uint32 id, Unit *target, float distance)
static ObjectGuid const Empty
static ObjectGuid GetGUID(Object const *o)
HookList< HitHandler > AfterHit
HookList< EffectHandler > OnEffectHit
Unit * GetHitUnit() const
HookList< EffectHandler > OnEffectHitTarget
void Despawn(Creature const *summon)
StorageType::const_iterator const_iterator
virtual void SetData(uint32, uint32)
virtual void DoAction(int32)
void DoMeleeAttackIfReady()
SpellCastResult DoCastVictim(uint32 spellId, CastSpellExtraArgs const &args={})
SpellCastResult DoCastAOE(uint32 spellId, CastSpellExtraArgs const &args={})
SpellCastResult DoCast(uint32 spellId)
int32 ModifyHealth(int32 val)
void StopMoving(bool force=false)
void SetSpeed(UnitMoveType mtype, float newValue)
MotionMaster * GetMotionMaster()
bool SetWalk(bool enable)
bool HasUnitState(const uint32 f) const
void ApplySpellImmune(uint32 spellId, uint32 op, uint32 type, bool apply)
InstanceScript * GetInstanceScript() const
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
bool IsWithinDistInMap(WorldObject const *obj, float dist2compare, bool is3D=true, bool incOwnRadius=true, bool incTargetRadius=true) const
void SummonCreatureGroup(uint8 group, std::list< TempSummon * > *list=nullptr)
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
PrepareSpellScript(spell_gluth_decimate)
bool Validate(SpellInfo const *) override
void HandleEvent(SpellEffIndex)
void HandleScriptEffect(SpellEffIndex)
PrepareSpellScript(spell_gluth_zombiechow_search)
void HealForEachTargetHit()
TC_GAME_API Creature * GetCreature(WorldObject const &u, ObjectGuid const &guid)
#define RegisterNaxxramasCreatureAI(ai_name)
float GetExactDist2d(const float x, const float y) const
T const & RAID_MODE(T const &normal10, T const &normal25) const
void UpdateAI(uint32 diff) override
boss_gluth(Creature *creature)
void JustEngagedWith(Unit *who) override
ObjectGuid zombieToBeEatenGUID
void DoAction(int32 action) override
void SummonedCreatureDies(Creature *summoned, Unit *) override
void MovementInform(uint32, uint32 id) override
npc_zombie_chow(Creature *creature)
void UpdateAI(uint32 diff) override
void SetData(uint32 id, uint32 value) override
uint32 GetData(uint32 index) const override