346 { 2792.070f, 2596.320f, 364.3136f },
347 { 2765.945f, 2571.095f, 364.0636f },
348 { 2768.195f, 2573.095f, 364.0636f },
349 { 2763.820f, 2568.870f, 364.3136f },
350 { 2761.215f, 2568.875f, 364.0636f },
351 { 2744.610f, 2569.380f, 364.3136f },
352 { 2744.62f, 2569.41f, 382.0f, 3.054326f }
365 if (!mkii || !vx001 || !aerial)
379 mimiron->AI()->JustDied(who);
463 aerial->AI()->EnterEvadeMode();
526 mkii->SetFacingTo(3.686f);
598 mkii->SetFacingTo(
float(
M_PI));
654 me->
SummonGameObject(
RAID_MODE(
GO_CACHE_OF_INNOVATION_FIREFIGHTER,
GO_CACHE_OF_INNOVATION_FIREFIGHTER_HERO), 2744.040f, 2569.352f, 364.3135f, 3.124123f,
QuaternionData(0.f, 0.f, 0.9999619f, 0.008734641f), 420_days);
657 me->
SummonGameObject(
RAID_MODE(
GO_CACHE_OF_INNOVATION,
GO_CACHE_OF_INNOVATION_HERO), 2744.040f, 2569.352f, 364.3135f, 3.124123f,
QuaternionData(0.f, 0.f, 0.9999619f, 0.008734641f), 420_days);
680 return GetUlduarAI<boss_mimironAI>(creature);
723 Unit* ref = who ? who :
me;
926 return GetUlduarAI<boss_leviathan_mk_iiAI>(creature);
969 Unit* ref = who ? who :
me;
1076 rocket->SetDisplayId(rocket->GetNativeDisplayId());
1111 return GetUlduarAI<boss_vx_001AI>(creature);
1150 Unit* ref = who ? who :
me;
1281 return GetUlduarAI<boss_aerial_command_unitAI>(creature);
1339 return GetUlduarAI<npc_mimiron_assault_botAI>(creature);
1371 moveNew = data ? true :
false;
1408 return GetUlduarAI<npc_mimiron_emergency_fire_botAI>(creature);
1514 return GetUlduarAI<npc_mimiron_computerAI>(creature);
1562 return GetUlduarAI<npc_mimiron_flamesAI>(creature);
1610 return GetUlduarAI<npc_mimiron_frost_bombAI>(creature);
1659 return GetUlduarAI<npc_mimiron_proximity_mineAI>(creature);
1701 return GetUlduarAI<go_mimiron_hardmode_buttonAI>(go);
1728 target->DespawnOrUnsummon(1s);
1831 targets.push_back(target);
1953 summ->DespawnOrUnsummon();
1987 if (targets.empty())
1994 if (!targets.empty())
1998 targets.push_back(target);
2068 if (
Unit* caster =
GetCaster()->GetVehicleKit()->GetPassenger(3))
2137 for (
uint8 i = 0; i < 10; ++i)
2172 if (targets.empty())
2212 summ->DespawnOrUnsummon();
2251 if (targets.empty())
2258 targets.push_back(target);
2298 summ->DespawnOrUnsummon();
2345 if (targets.empty())
2352 if (!targets.empty())
2356 targets.push_back(target);
2582 if (targets.empty())
2588 for (std::list<WorldObject*>::const_iterator iter = targets.begin(); iter != targets.end(); ++iter)
2593 targets.push_back(target);
2659 if (targets.empty())
2664 if (targets.empty())
2670 targets.push_back(target);
First const & RAND(First const &first, Second const &second, Rest const &... rest)
@ TEMPSUMMON_MANUAL_DESPAWN
@ TEMPSUMMON_CORPSE_TIMED_DESPAWN
uint32 urand(uint32 min, uint32 max)
#define RegisterSpellScript(spell_script)
@ SPELL_EFFECT_SCRIPT_EFFECT
@ SPELL_EFFECT_SCHOOL_DAMAGE
@ SPELL_EFFECT_APPLY_AURA
@ TARGET_UNIT_SRC_AREA_ENTRY
@ TARGET_DEST_NEARBY_ENTRY
@ TARGET_UNIT_SRC_AREA_ENEMY
@ EMOTE_STATE_SPECIAL_UNARMED
@ SPELL_FAILED_NO_VALID_TARGETS
@ AURA_EFFECT_HANDLE_REAL
@ SPELL_AURA_CONTROL_VEHICLE
@ SPELL_AURA_MOD_DAMAGE_PERCENT_TAKEN
@ SPELL_AURA_PERIODIC_DUMMY
@ SPELL_AURA_PERIODIC_TRIGGER_SPELL
@ SPELL_AURA_MOD_INCREASE_HEALTH_PERCENT
@ TRIGGERED_FULL_MASK
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 SpellDestinationTargetSelectFn(F, I, N)
#define AuraEffectApplyFn(F, I, N, M)
#define AuraEffectRemoveFn(F, I, N, M)
@ UNIT_FLAG_NON_ATTACKABLE
@ UNIT_FLAG_UNINTERACTIBLE
static bool IsEncounterFinished(Unit *who)
Position const VehicleRelocation[]
void AddSC_boss_mimiron()
@ DO_ACTIVATE_SELF_DESTRUCT
Position const ACUSummonPos
@ SPELL_PROXIMITY_MINE_EXPLOSION
@ SPELL_CLEAR_ALL_DEBUFFS
@ SPELL_SUMMON_ROCKET_STRIKE
@ SPELL_PERIODIC_PROXIMITY_AURA
@ SPELL_SCRIPT_EFFECT_PLASMA_BLAST
@ SPELL_PROXIMITY_MINE_PERIODIC_TRIGGER
@ SPELL_SUMMON_FLAMES_SPREAD
@ SPELL_RAPID_BURST_RIGHT
@ SPELL_NOT_SO_FRIENDLY_FIRE
@ SPELL_ELEVATOR_KNOCKBACK
@ SPELL_SELF_DESTRUCTION_AURA
@ SPELL_SCRIPT_EFFECT_FROST_BOMB
@ SPELL_FLAMES_PERIODIC_TRIGGER
@ SPELL_SUMMON_ASSAULT_BOT_TRIGGER
@ SPELL_SUMMON_ASSAULT_BOT_DUMMY
@ SPELL_SUMMON_FIRE_BOT_DUMMY
@ SPELL_FROST_BOMB_LINKED
@ SPELL_SUMMON_JUNK_BOT_TRIGGER
@ SPELL_ROCKET_STRIKE_SINGLE
@ SPELL_EMERGENCY_MODE_TURRET
@ SPELL_SCRIPT_EFFECT_ROCKET_STRIKE
@ SPELL_SUMMON_PROXIMITY_MINE
@ SPELL_PROXIMITY_MINE_TRIGGER
@ SPELL_SUMMON_FLAMES_INITIAL
@ SPELL_RAPID_BURST_TARGET_ME
@ SPELL_MAGNETIC_CORE_VISUAL
@ SPELL_SUMMON_FIRE_BOT_TRIGGER
@ SPELL_SCRIPT_EFFECT_SUMMON_FLAMES_INITIAL
@ SPELL_SUMMON_FLAMES_SPREAD_TRIGGER
@ SPELL_FORCE_CAST_NAPALM_SHELL
@ SPELL_ROCKET_STRIKE_BOTH
@ SPELL_SUMMON_BURST_TARGET
@ SPELL_FLAME_SUPPRESSANT_MK
@ SPELL_SUMMON_FROST_BOMB
@ SPELL_SUMMON_JUNK_BOT_DUMMY
@ SPELL_SUMMON_ASSAULT_BOT
@ SPELL_FLAME_SUPPRESSANT_VX
@ SPELL_FROST_BOMB_EXPLOSION
@ SPELL_SELF_DESTRUCTION_VISUAL
@ SPELL_DESPAWN_ASSAULT_BOTS
@ PHASE_AERIAL_COMMAND_UNIT
@ SAY_SELF_DESTRUCT_TERMINATED
@ SAY_SELF_DESTRUCT_FINALIZED
@ SAY_SELF_DESTRUCT_INITIATED
uint32 const RepairSpells[4]
Position const VX001SummonPos
@ DATA_NOT_SO_FRIENDLY_FIRE
@ EVENT_FROST_BOMB_CLEAR_FIRES
@ EVENT_VX001_ACTIVATION_3
@ EVENT_VX001_ACTIVATION_7
@ EVENT_VX001_ACTIVATION_9
@ EVENT_VOL7RON_ACTIVATION_7
@ EVENT_AERIAL_ACTIVATION_5
@ EVENT_VOL7RON_ACTIVATION_5
@ EVENT_VX001_ACTIVATION_5
@ EVENT_VOL7RON_ACTIVATION_6
@ EVENT_SELF_DESTRUCT_FINALIZED
@ EVENT_VOL7RON_ACTIVATION_1
@ EVENT_FLAME_SUPPRESSANT_VX
@ EVENT_FLAME_SUPPRESSANT_MK
@ EVENT_AERIAL_ACTIVATION_6
@ EVENT_VOL7RON_ACTIVATION_3
@ EVENT_AERIAL_ACTIVATION_1
@ EVENT_VX001_ACTIVATION_1
@ EVENT_VX001_ACTIVATION_2
@ EVENT_AERIAL_ACTIVATION_4
@ EVENT_FROST_BOMB_EXPLOSION
@ EVENT_PROXIMITY_MINE_DETONATION
@ EVENT_SUMMON_ASSAULT_BOT
@ EVENT_VOL7RON_ACTIVATION_2
@ EVENT_VX001_ACTIVATION_8
@ EVENT_VX001_ACTIVATION_4
@ EVENT_AERIAL_ACTIVATION_2
@ EVENT_VX001_ACTIVATION_6
@ EVENT_PROXIMITY_MINE_ARM
@ EVENT_AERIAL_ACTIVATION_3
@ EVENT_VOL7RON_ACTIVATION_4
uint32 GetTickNumber() const
void PreventDefaultAction()
HookList< EffectApplyHandler > AfterEffectRemove
HookList< EffectPeriodicHandler > OnEffectPeriodic
HookList< EffectApplyHandler > AfterEffectApply
HookList< EffectApplyHandler > OnEffectRemove
InstanceScript *const instance
void JustEngagedWith(Unit *who) override
void JustSummoned(Creature *summon) override
void DoZoneInCombat(Creature *creature=nullptr)
void SetImmuneToPC(bool apply) override
void SetReactState(ReactStates st)
void DespawnOrUnsummon(Milliseconds timeToDespawn=0s, Seconds forceRespawnTime=0s)
void ExitVehicle(Position const *exitPosition=nullptr) override
Milliseconds GetTimeUntilEvent(EventId eventId) const
void DelayEvents(Milliseconds delay)
bool IsInPhase(PhaseIndex phase) const
void RescheduleEvent(EventId eventId, Milliseconds time, GroupIndex group=0u, PhaseIndex phase=0u)
void SetPhase(PhaseIndex phase)
void ScheduleEvent(EventId eventId, Milliseconds time, GroupIndex group=0u, PhaseIndex phase=0u)
void SetGoState(GOState state)
bool HasFlag(GameObjectFlags flags) const
void SetFlag(GameObjectFlags flags)
virtual bool SetBossState(uint32 id, EncounterState state)
Creature * GetCreature(uint32 type)
virtual ObjectGuid GetGuidData(uint32 type) const override
EncounterState GetBossState(uint32 id) const
GameObject * GetGameObject(uint32 type)
float GetHeight(float x, float y, float z, bool checkVMap=true, float maxSearchDist=DEFAULT_HEIGHT_SEARCH) const
void MoveJump(Position const &pos, float speedXY, float speedZ, uint32 id=EVENT_JUMP, bool hasOrientation=false)
void MoveChase(Unit *target, Optional< ChaseRange > dist={}, Optional< ChaseAngle > angle={})
void MovePoint(uint32 id, Position const &pos, bool generatePath=true, Optional< float > finalOrient={})
void MoveFall(uint32 id=0)
void MoveRandom(float wanderDistance=0.0f)
static Unit * ToUnit(Object *o)
static ObjectGuid GetGUID(Object const *o)
HookList< CastHandler > AfterCast
Creature * GetHitCreature() const
Player * GetHitPlayer() const
HookList< HitHandler > AfterHit
HookList< DestinationTargetSelectHandler > OnDestinationTargetSelect
HookList< HitHandler > OnHit
HookList< EffectHandler > OnEffectHit
Unit * GetHitUnit() const
HookList< EffectHandler > OnEffectHitTarget
WorldObject * GetExplTargetWorldObject() const
void FinishCast(SpellCastResult result, uint32 *param1=nullptr, uint32 *param2=nullptr)
HookList< ObjectAreaTargetSelectHandler > OnObjectAreaTargetSelect
void Summon(Creature const *summon)
virtual void DoAction(int32)
void DoMeleeAttackIfReady()
SpellCastResult DoCastSelf(uint32 spellId, CastSpellExtraArgs const &args={})
virtual uint32 GetData(uint32) const
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)
bool DoSpellAttackIfReady(uint32 spell)
SpellCastResult DoCastAOE(uint32 spellId, CastSpellExtraArgs const &args={})
SpellCastResult DoCast(uint32 spellId)
void CastStop(uint32 except_spellid=0)
void SetAnimTier(AnimTier animTier)
void SetChannelObjectGuid(ObjectGuid guid)
ThreatManager & GetThreatManager()
Creature * GetVehicleCreatureBase() const
void SetFaction(uint32 faction) override
void RemoveAllAurasExceptType(AuraType type)
Unit * GetVehicleBase() const
MotionMaster * GetMotionMaster()
bool HasUnitFlag(UnitFlags flags) const
bool SetHover(bool enable, bool updateAnimTier=true)
bool HasAura(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint8 reqEffMask=0) const
bool SetDisableGravity(bool disable, bool updateAnimTier=true)
void SetFacingToObject(WorldObject const *object, bool force=true, uint32 movementId=EVENT_FACE)
void SetEmoteState(Emote emote)
virtual void SetDisplayId(uint32 modelId)
void RemoveAurasDueToSpell(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint8 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
void SetSpeedRate(UnitMoveType mtype, float rate)
ObjectGuid GetChannelObjectGuid() const
bool HasUnitState(const uint32 f) const
void SetFacingTo(float ori, bool force=true, uint32 movementId=EVENT_FACE)
void SetStandState(UnitStandStateType state)
UnitStandStateType GetStandState() const
static void Kill(Unit *attacker, Unit *victim, bool durabilityLoss=true)
void CombatStop(bool includingCast=false, bool mutualPvP=true)
void SetUnitFlag(UnitFlags flags)
void SetInFront(WorldObject const *target)
Vehicle * GetVehicleKit() const
void RemoveUnitFlag(UnitFlags flags)
Unit * GetPassenger(int8 seatId) const
Gets a passenger on specified seat.
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)
float GetDistance2d(WorldObject const *obj) const
GameObject * SummonGameObject(uint32 entry, Position const &pos, QuaternionData const &rot, Seconds respawnTime, GOSummonType summonType=GO_SUMMON_TIMED_OR_CORPSE_DESPAWN)
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
achievement_firefighter()
bool OnCheck(Player *, Unit *target) override
bool OnCheck(Player *, Unit *target) override
bool OnCheck(Player *, Unit *target) override
bool OnCheck(Player *, Unit *target) override
achievement_setup_rocket()
boss_aerial_command_unit()
CreatureAI * GetAI(Creature *creature) const override
CreatureAI * GetAI(Creature *creature) const override
CreatureAI * GetAI(Creature *creature) const override
CreatureAI * GetAI(Creature *creature) const override
CreatureAI * GetAI(Creature *creature) const override
npc_mimiron_assault_bot()
CreatureAI * GetAI(Creature *creature) const override
npc_mimiron_emergency_fire_bot()
CreatureAI * GetAI(Creature *creature) const override
CreatureAI * GetAI(Creature *creature) const override
CreatureAI * GetAI(Creature *creature) const override
CreatureAI * GetAI(Creature *creature) const override
npc_mimiron_proximity_mine()
void HandleDespawn(SpellEffIndex)
void HandleScript(SpellEffIndex)
PrepareSpellScript(spell_mimiron_bomb_bot_SpellScript)
SpellScript * GetSpellScript() const override
void HandleDummy(SpellEffIndex)
PrepareSpellScript(spell_mimiron_clear_fires_SpellScript)
spell_mimiron_clear_fires()
SpellScript * GetSpellScript() const override
void HandleScript(SpellEffIndex)
PrepareSpellScript(spell_mimiron_despawn_assault_bots_SpellScript)
spell_mimiron_despawn_assault_bots()
SpellScript * GetSpellScript() const override
void HandleScript(SpellEffIndex)
void FilterTargets(std::list< WorldObject * > &targets)
spell_mimiron_fire_search_SpellScript()
PrepareSpellScript(spell_mimiron_fire_search_SpellScript)
bool Validate(SpellInfo const *) override
SpellScript * GetSpellScript() const override
spell_mimiron_fire_search()
bool Validate(SpellInfo const *) override
PrepareAuraScript(spell_mimiron_magnetic_core_AuraScript)
void OnApply(AuraEffect const *, AuraEffectHandleModes)
void OnRemove(AuraEffect const *, AuraEffectHandleModes)
void OnRemoveSelf(AuraEffect const *, AuraEffectHandleModes)
void FilterTargets(std::list< WorldObject * > &targets)
PrepareSpellScript(spell_mimiron_magnetic_core_SpellScript)
PrepareSpellScript(spell_mimiron_magnetic_core_summon)
void ModDest(SpellDestination &dest)
SpellScript * GetSpellScript() const override
spell_mimiron_magnetic_core()
AuraScript * GetAuraScript() const override
PrepareSpellScript(spell_mimiron_napalm_shell_SpellScript)
void HandleScript(SpellEffIndex)
void FilterTargets(std::list< WorldObject * > &targets)
bool Validate(SpellInfo const *) override
spell_mimiron_napalm_shell()
SpellScript * GetSpellScript() const override
PrepareSpellScript(spell_mimiron_p3wx2_laser_barrage_SpellScript)
void OnHit(SpellEffIndex)
SpellScript * GetSpellScript() const override
spell_mimiron_p3wx2_laser_barrage()
PrepareSpellScript(spell_mimiron_plasma_blast_SpellScript)
void HandleScript(SpellEffIndex)
bool Validate(SpellInfo const *) override
SpellScript * GetSpellScript() const override
spell_mimiron_plasma_blast()
void HandleAura(SpellEffIndex)
PrepareSpellScript(spell_mimiron_proximity_explosion_SpellScript)
void OnHit(SpellEffIndex)
SpellScript * GetSpellScript() const override
spell_mimiron_proximity_explosion()
PrepareSpellScript(spell_mimiron_proximity_mines_SpellScript)
void HandleScript(SpellEffIndex)
bool Validate(SpellInfo const *) override
spell_mimiron_proximity_mines()
SpellScript * GetSpellScript() const override
void FilterTargets(std::list< WorldObject * > &targets)
PrepareSpellScript(spell_mimiron_proximity_trigger_SpellScript)
bool Validate(SpellInfo const *) override
void HandleDummy(SpellEffIndex)
SpellScript * GetSpellScript() const override
spell_mimiron_proximity_trigger()
bool Validate(SpellInfo const *) override
void AfterRemove(AuraEffect const *, AuraEffectHandleModes)
void HandleDummyTick(AuraEffect const *aurEff)
PrepareAuraScript(spell_mimiron_rapid_burst_AuraScript)
spell_mimiron_rapid_burst()
AuraScript * GetAuraScript() const override
bool Validate(SpellInfo const *) override
PrepareSpellScript(spell_mimiron_rocket_strike_SpellScript)
void HandleDummy(SpellEffIndex)
void FilterTargets(std::list< WorldObject * > &targets)
PrepareSpellScript(spell_mimiron_rocket_strike_damage_SpellScript)
void HandleScript(SpellEffIndex)
void HandleFriendlyFire(SpellEffIndex)
bool Validate(SpellInfo const *) override
SpellScript * GetSpellScript() const override
spell_mimiron_rocket_strike_damage()
bool Validate(SpellInfo const *) override
void FilterTargets(std::list< WorldObject * > &targets)
PrepareSpellScript(spell_mimiron_rocket_strike_target_select_SpellScript)
void HandleScript(SpellEffIndex)
spell_mimiron_rocket_strike_target_select()
SpellScript * GetSpellScript() const override
SpellScript * GetSpellScript() const override
spell_mimiron_rocket_strike()
PrepareSpellScript(spell_mimiron_self_repair_SpellScript)
SpellScript * GetSpellScript() const override
spell_mimiron_self_repair()
void OnHit(SpellEffIndex)
PrepareSpellScript(spell_mimiron_spinning_up_SpellScript)
spell_mimiron_spinning_up()
SpellScript * GetSpellScript() const override
void OnRemove(AuraEffect const *aurEff, AuraEffectHandleModes)
PrepareAuraScript(spell_mimiron_summon_assault_bot_AuraScript)
bool Validate(SpellInfo const *) override
bool Validate(SpellInfo const *) override
void HandleDummy(SpellEffIndex)
PrepareSpellScript(spell_mimiron_summon_assault_bot_target_SpellScript)
spell_mimiron_summon_assault_bot_target()
SpellScript * GetSpellScript() const override
AuraScript * GetAuraScript() const override
spell_mimiron_summon_assault_bot()
void OnRemove(AuraEffect const *aurEff, AuraEffectHandleModes)
bool Validate(SpellInfo const *) override
PrepareAuraScript(spell_mimiron_summon_fire_bot_AuraScript)
PrepareSpellScript(spell_mimiron_summon_fire_bot_target_SpellScript)
void HandleDummy(SpellEffIndex)
bool Validate(SpellInfo const *) override
SpellScript * GetSpellScript() const override
spell_mimiron_summon_fire_bot_target()
AuraScript * GetAuraScript() const override
spell_mimiron_summon_fire_bot()
bool Validate(SpellInfo const *) override
PrepareAuraScript(spell_mimiron_summon_flames_spread_AuraScript)
void HandleTick(AuraEffect const *)
void OnHit(SpellEffIndex)
PrepareSpellScript(spell_mimiron_summon_flames_spread_SpellScript)
void FilterTargets(std::list< WorldObject * > &targets)
spell_mimiron_summon_flames_spread()
AuraScript * GetAuraScript() const override
SpellScript * GetSpellScript() const override
PrepareSpellScript(spell_mimiron_summon_frost_bomb_target_SpellScript)
void HandleScript(SpellEffIndex)
void FilterTargets(std::list< WorldObject * > &targets)
bool Validate(SpellInfo const *) override
SpellScript * GetSpellScript() const override
spell_mimiron_summon_frost_bomb_target()
void OnRemove(AuraEffect const *aurEff, AuraEffectHandleModes)
PrepareAuraScript(spell_mimiron_summon_junk_bot_AuraScript)
bool Validate(SpellInfo const *) override
void HandleDummy(SpellEffIndex)
PrepareSpellScript(spell_mimiron_summon_junk_bot_target_SpellScript)
bool Validate(SpellInfo const *) override
SpellScript * GetSpellScript() const override
spell_mimiron_summon_junk_bot_target()
spell_mimiron_summon_junk_bot()
AuraScript * GetAuraScript() const override
void HandleTick(AuraEffect const *aurEff)
PrepareAuraScript(spell_mimiron_weld_AuraScript)
AuraScript * GetAuraScript() const override
TC_GAME_API Unit * GetUnit(WorldObject const &, ObjectGuid const &guid)
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 &
float GetPositionZ() const
float GetOrientation() const
float GetPositionX() const
void GetPosition(float &x, float &y) const
float GetPositionY() const
void AttackStart(Unit *) override
T const & RAID_MODE(T const &normal10, T const &normal25) const
void Relocate(Position const &pos)
void DamageTaken(Unit *who, uint32 &damage, DamageEffectType, SpellInfo const *) override
void DoAction(int32 action) override
void KilledUnit(Unit *victim) override
void MovementInform(uint32 type, uint32 point) override
boss_aerial_command_unitAI(Creature *creature)
void UpdateAI(uint32 diff) override
void JustSummoned(Creature *summon) override
void EnterEvadeMode(EvadeReason) override
void MovementInform(uint32 type, uint32 point) override
uint32 GetData(uint32 type) const override
void DamageTaken(Unit *who, uint32 &damage, DamageEffectType, SpellInfo const *) override
void UpdateAI(uint32 diff) override
boss_leviathan_mk_iiAI(Creature *creature)
void KilledUnit(Unit *victim) override
void JustSummoned(Creature *summon) override
void DoAction(int32 action) override
void SetData(uint32 id, uint32 data) override
void UpdateAI(uint32 diff) override
void JustDied(Unit *) override
void DoAction(int32 action) override
void JustEngagedWith(Unit *who) override
boss_mimironAI(Creature *creature)
void EnterEvadeMode(EvadeReason) override
void KilledUnit(Unit *victim) override
void DamageTaken(Unit *who, uint32 &damage, DamageEffectType, SpellInfo const *) override
void SpellHit(WorldObject *caster, SpellInfo const *) override
void UpdateAI(uint32 diff) override
void DoAction(int32 action) override
void JustSummoned(Creature *summon) override
boss_vx_001AI(Creature *creature)
void UpdateAI(uint32 diff) override
npc_mimiron_assault_botAI(Creature *creature)
void JustEngagedWith(Unit *) override
InstanceScript * instance
void DoAction(int32 action) override
void UpdateAI(uint32 diff) override
npc_mimiron_computerAI(Creature *creature)
uint32 GetData(uint32 id) const override
void UpdateAI(uint32 diff) override
void SetData(uint32 id, uint32 data) override
npc_mimiron_emergency_fire_botAI(Creature *creature)
npc_mimiron_flamesAI(Creature *creature)
InstanceScript * instance
void UpdateAI(uint32 diff) override
void UpdateAI(uint32 diff) override
npc_mimiron_frost_bombAI(Creature *creature)
npc_mimiron_magnetic_core(Creature *creature)
npc_mimiron_proximity_mineAI(Creature *creature)
void UpdateAI(uint32 diff) override
@ DATA_MIMIRON_WORLD_TRIGGER
@ DATA_AERIAL_COMMAND_UNIT
@ GO_CACHE_OF_INNOVATION_FIREFIGHTER
@ GO_CACHE_OF_INNOVATION_FIREFIGHTER_HERO
@ GO_CACHE_OF_INNOVATION_HERO
#define RegisterUlduarCreatureAI(ai_name)
@ NPC_AERIAL_COMMAND_UNIT