92 if (
Player* player = i->GetSource())
94 if (player->IsGameMaster())
97 if (player->IsAlive())
102 player->SetInCombatWith(temp);
120 if (pGrandChampion1 && pGrandChampion2 && pGrandChampion3)
192 Start(
false,
true, 0, NULL);
219 for (
uint8 i = 0; i < 3; ++i)
241 if (
me->GetMap()->IsDungeon() && !players.
isEmpty())
245 Player* player = itr->GetSource();
246 if (player && !player->
IsGameMaster() &&
me->IsInRange(player, 8.0f, 25.0f,
false))
249 me->AddThreat(player, 1.0f);
268 if (
me->GetMap()->IsDungeon() && !players.
isEmpty())
272 Player* player = itr->GetSource();
273 if (player && !player->
IsGameMaster() &&
me->IsInRange(player, 10.0f, 30.0f,
false))
357 me->SetHomePosition(739.678f, 662.541f, 412.393f, 4.49f);
359 me->SetHomePosition(746.71f, 661.02f, 411.69f, 4.6f);
361 me->SetHomePosition(754.34f, 660.70f, 412.39f, 4.79f);
382 if (
me->GetMap()->IsDungeon() && !players.
isEmpty())
386 Player* player = itr->GetSource();
387 if (player && !player->
IsGameMaster() &&
me->IsInRange(player, 8.0f, 25.0f,
false))
390 me->AddThreat(player, 5.0f);
491 me->SetHomePosition(739.678f, 662.541f, 412.393f, 4.49f);
493 me->SetHomePosition(746.71f, 661.02f, 411.69f, 4.6f);
495 me->SetHomePosition(754.34f, 660.70f, 412.39f, 4.79f);
544 me->InterruptNonMeleeSpells(
true);
636 me->SetHomePosition(739.678f, 662.541f, 412.393f, 4.49f);
638 me->SetHomePosition(746.71f, 661.02f, 411.69f, 4.6f);
640 me->SetHomePosition(754.34f, 660.70f, 412.39f, 4.79f);
671 bool bChance = std::rand() % 1;
782 me->SetHomePosition(739.678f, 662.541f, 412.393f, 4.49f);
784 me->SetHomePosition(746.71f, 661.02f, 411.69f, 4.6f);
786 me->SetHomePosition(754.34f, 660.70f, 412.39f, 4.79f);
827 me->InterruptNonMeleeSpells(
true);
830 if (target &&
me->IsInRange(target, 5.0f, 30.0f,
false))
837 if (
me->GetMap()->IsDungeon() && !players.
isEmpty())
841 Player* player = itr->GetSource();
842 if (player && !player->
IsGameMaster() &&
me->IsInRange(player, 5.0f, 30.0f,
false))
930 me->SetHomePosition(739.678f, 662.541f, 412.393f, 4.49f);
932 me->SetHomePosition(746.71f, 661.02f, 411.69f, 4.6f);
934 me->SetHomePosition(754.34f, 660.70f, 412.39f, 4.79f);
@ UNIT_FLAG_NON_ATTACKABLE
void AggroAllPlayers(Creature *temp)
@ SPELL_CHAIN_LIGHTNING_H
bool GrandChampionsOutVehicle(Creature *me)
void AddSC_boss_grand_champions()
virtual void JustReachedHome()
virtual void EnterEvadeMode()
void SetReactState(ReactStates st)
CreatureScript(const char *name)
PlayerList const & GetPlayers() const
LinkedListHead::Iterator< MapReference const > const_iterator
void RemoveFlag(uint16 index, uint32 oldFlag)
bool IsGameMaster() const
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 DoCastAOE(uint32 spellId, bool triggered=false)
void AddThreat(Unit *victim, float fThreat, SpellSchoolMask schoolMask=SPELL_SCHOOL_MASK_NORMAL, SpellInfo const *threatSpell=NULL)
static Creature * GetCreature(WorldObject &object, uint64 guid)
static Unit * GetUnit(WorldObject &object, uint64 guid)
void SetInCombatWith(Unit *enemy)
Unit * GetPassenger(int8 seatId) const
Gets a passenger on specified seat.
InstanceScript * GetInstanceScript()
MovementInfo m_movementInfo
virtual uint64 GetData64(uint32) const
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
struct MovementInfo::TransportInfo transport
Unit * DoSelectLowestHpFriendly(float range, uint32 minHPDiff=1)
ScriptedAI(Creature *creature)
void JustDied(Unit *) OVERRIDE
void UpdateAI(uint32 uiDiff) OVERRIDE
== Triggered Actions Requested ==================
uint32 uiLightningArrowsTimer
InstanceScript * instance
void JustReachedHome() OVERRIDE
boss_hunter_toc5AI(Creature *creature)
void JustReachedHome() OVERRIDE
void JustDied(Unit *) OVERRIDE
boss_mage_toc5AI(Creature *creature)
InstanceScript * instance
void UpdateAI(uint32 uiDiff) OVERRIDE
== Triggered Actions Requested ==================
void JustDied(Unit *) OVERRIDE
void JustReachedHome() OVERRIDE
uint32 uiPosionBottleTimer
boss_rouge_toc5AI(Creature *creature)
void UpdateAI(uint32 uiDiff) OVERRIDE
== Triggered Actions Requested ==================
InstanceScript * instance
uint32 uiHealingWaveTimer
uint32 uiChainLightningTimer
void EnterCombat(Unit *who) OVERRIDE
InstanceScript * instance
boss_shaman_toc5AI(Creature *creature)
void JustDied(Unit *) OVERRIDE
void UpdateAI(uint32 uiDiff) OVERRIDE
== Triggered Actions Requested ==================
void JustReachedHome() OVERRIDE
boss_warrior_toc5AI(Creature *creature)
void JustReachedHome() OVERRIDE
InstanceScript * instance
uint32 uiMortalStrikeTimer
void JustDied(Unit *) OVERRIDE
void UpdateAI(uint32 uiDiff) OVERRIDE
== Triggered Actions Requested ==================
void WaypointReached(uint32 waypointId) OVERRIDE
generic_vehicleAI_toc5AI(Creature *creature)
uint32 uiShieldBreakerTimer
void EnterCombat(Unit *) OVERRIDE
InstanceScript * instance
void SetData(uint32 uiType, uint32) OVERRIDE
void UpdateAI(uint32 uiDiff) OVERRIDE
== Triggered Actions Requested ==================
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
npc_escortAI(Creature *creature)
void SetDespawnAtEnd(bool despawn)
void Start(bool isActiveAttacker=true, bool run=false, uint64 playerGUID=0, Quest const *quest=NULL, bool instantRespawn=false, bool canLoopPath=false, bool resetWaypoints=true)
void AddWaypoint(uint32 id, float x, float y, float z, uint32 waitTime=0)