487 if (!xt002 || !xt002->
AI())
529 me->GetMotionMaster()->MoveFollow(pXT002, 0.0f, 0.0f);
538 if (
me->IsWithinMeleeRange(xt002))
543 me->DespawnOrUnsummon();
593 me->GetMotionMaster()->MovePoint(0, pos);
602 if (
me->IsWithinMeleeRange(
me->GetVictim()))
700 me->GetMotionMaster()->MoveFollow(pXT002, 0.0f, 0.0f);
705 if (damage >= (
me->GetHealth() -
me->GetMaxHealth() * 0.5f) && !
_boomed)
713 me->SendMessageToSet(&data,
false);
778 if (
me->IsWithinMeleeRange(
me->GetVictim()))
960 for (
uint8 i = 0; i < 5; ++i)
962 uint8 a = std::rand() % 4;
963 uint32 spellId = spells[a];
964 toyPile->CastSpell(toyPile, spellId,
true, NULL, NULL, instance->GetData64(
BOSS_XT002));
1088 if (!target || !target->GetAI())
1102 if (!target || !target->GetAI())
1116 if (!target || !target->GetAI())
@ ACHIEVEMENT_TIMED_TYPE_EVENT
@ SPELL_EFFECT_SCRIPT_EFFECT
@ SPELL_EFFECT_SCHOOL_DAMAGE
@ TARGET_UNIT_SRC_AREA_ENEMY
@ SPELL_SCHOOL_MASK_NORMAL
@ SPELL_AURA_PERIODIC_DAMAGE
@ SPELL_AURA_PERIODIC_TRIGGER_SPELL
@ AURA_EFFECT_HANDLE_REAL
#define SpellEffectFn(F, I, N)
#define SpellObjectAreaTargetSelectFn(F, I, N)
#define AuraEffectPeriodicFn(F, I, N)
#define AuraEffectRemoveFn(F, I, N, M)
@ UNIT_STAND_STATE_SUBMERGED
@ UNIT_FLAG_DISABLE_POWERS
@ UNIT_FLAG_NOT_SELECTABLE
@ ACHIEV_MUST_DECONSTRUCT_FASTER
@ DATA_GRAVITY_BOMB_CASUALTY
@ SPELL_SUMMON_LIFE_SPARK
@ SPELL_ACHIEVEMENT_CREDIT_NERF_SCRAPBOTS
@ SPELL_RECHARGE_SCRAPBOT
@ SPELL_RECHARGE_PUMMELER
@ SPELL_HEART_HEAL_TO_FULL
@ SPELL_HEART_RIDE_VEHICLE
@ SPELL_SCRAPBOT_RIDE_VEHICLE
@ SPELL_HEART_LIGHTNING_TETHER
@ SPELL_STATIC_CHARGED_25
@ SPELL_STATIC_CHARGED_10
@ TIMER_TYMPANIC_TANTRUM_MAX
@ TIMER_TYMPANIC_TANTRUM_MIN
@ HEART_VEHICLE_SEAT_NORMAL
@ HEART_VEHICLE_SEAT_EXPOSED
AchievementCriteriaScript(const char *name)
void PreventDefaultAction()
HookList< EffectApplyHandler > AfterEffectRemove
HookList< EffectPeriodicHandler > OnEffectPeriodic
WorldObject * GetOwner() const
bool Execute(uint64, uint32)
InstanceScript *const instance
BossAI(Creature *creature, uint32 bossId)
void Talk(uint8 id, WorldObject const *whisperTarget=NULL)
CreatureScript(const char *name)
static Unit * GetUnit(WorldObject const &, uint64 guid)
void SetByteValue(uint16 index, uint8 offset, uint8 value)
void SetFlag(uint16 index, uint32 newFlag)
void RemoveFlag(uint16 index, uint32 oldFlag)
Creature * GetHitCreature()
HookList< HitHandler > OnHit
HookList< EffectHandler > OnEffectHitTarget
void SetHitDamage(int32 damage)
HookList< ObjectAreaTargetSelectHandler > OnObjectAreaTargetSelect
SpellScriptLoader(const char *name)
virtual void SetData(uint32, uint32)
virtual void DoAction(int32)
void DoMeleeAttackIfReady()
void DoCast(uint32 spellId)
Unit * SelectTarget(SelectAggroTarget targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, int32 aura=0)
void DoCastVictim(uint32 spellId, bool triggered=false)
void CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=NULL, AuraEffect const *triggeredByAura=NULL, uint64 originalCaster=0)
void RemoveAurasDueToSpell(uint32 spellId, uint64 casterGUID=0, uint32 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
Creature * GetVehicleCreatureBase() const
uint32 GetMaxHealth() const
void ChangeSeat(int8 seatId, bool next=true)
InstanceScript * GetInstanceScript()
bool OnCheck(Player *, Unit *target) OVERRIDE
achievement_heartbreaker()
bool OnCheck(Player *, Unit *target) OVERRIDE
achievement_nerf_engineering()
achievement_nerf_gravity_bombs()
bool OnCheck(Player *, Unit *target) 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
CreatureAI * GetAI(Creature *creature) const OVERRIDE
CreatureAI * GetAI(Creature *creature) const OVERRIDE
void OnRemove(AuraEffect const *aurEff, AuraEffectHandleModes)
bool Validate(SpellInfo const *) OVERRIDE
PrepareAuraScript(spell_xt002_gravity_bomb_aura_AuraScript)
void OnPeriodic(AuraEffect const *aurEff)
AuraScript * GetAuraScript() const OVERRIDE
spell_xt002_gravity_bomb_aura()
PrepareSpellScript(spell_xt002_gravity_bomb_damage_SpellScript)
void HandleScript(SpellEffIndex)
SpellScript * GetSpellScript() const OVERRIDE
spell_xt002_gravity_bomb_damage()
void HandlePeriodic(AuraEffect const *)
PrepareAuraScript(spell_xt002_heart_overload_periodic_AuraScript)
bool Validate(SpellInfo const *) OVERRIDE
AuraScript * GetAuraScript() const OVERRIDE
spell_xt002_heart_overload_periodic()
PrepareAuraScript(spell_xt002_searing_light_spawn_life_spark_AuraScript)
bool Validate(SpellInfo const *) OVERRIDE
void OnRemove(AuraEffect const *aurEff, AuraEffectHandleModes)
AuraScript * GetAuraScript() const OVERRIDE
spell_xt002_searing_light_spawn_life_spark()
void HandleScript(SpellEffIndex)
PrepareSpellScript(spell_xt002_stand_SpellScript)
SpellScript * GetSpellScript() const OVERRIDE
PrepareSpellScript(spell_xt002_submerged_SpellScript)
void HandleScript(SpellEffIndex)
SpellScript * GetSpellScript() const OVERRIDE
PrepareSpellScript(spell_xt002_tympanic_tantrum_SpellScript)
void FilterTargets(std::list< WorldObject * > &targets)
SpellScript * GetSpellScript() const OVERRIDE
spell_xt002_tympanic_tantrum()
void GetPosition(float &x, float &y) const
void SetCombatMovement(bool allowMovement)
bool HealthAbovePct(uint32 pct) const
const T & RAID_MODE(const T &normal10, const T &normal25) const
ScriptedAI(Creature *creature)
void DamageTaken(Unit *, uint32 &) OVERRIDE
bool _gravityBombCasualty
void PassengerBoarded(Unit *who, int8, bool apply) OVERRIDE
== Fields =======================================
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
void EnterCombat(Unit *) OVERRIDE
uint32 GetData(uint32 type) const OVERRIDE
void KilledUnit(Unit *who) OVERRIDE
void JustDied(Unit *) OVERRIDE
void DoAction(int32 action) OVERRIDE
boss_xt002_AI(Creature *creature)
void SetData(uint32 type, uint32 data) OVERRIDE
npc_boombotAI(Creature *creature)
void DamageTaken(Unit *, uint32 &damage) OVERRIDE
void UpdateAI(uint32) OVERRIDE
== Triggered Actions Requested ==================
InstanceScript * _instance
npc_life_sparkAI(Creature *creature)
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
InstanceScript * _instance
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
npc_pummellerAI(Creature *creature)
npc_scrapbotAI(Creature *creature)
InstanceScript * _instance
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
InstanceScript * _instance
npc_xt002_heartAI(Creature *creature)
void UpdateAI(uint32) OVERRIDE
== Triggered Actions Requested ==================
void JustDied(Unit *) OVERRIDE