Core/Scripts: Fixed build of boss_* scripts
This commit is contained in:
1 parent
6ce0a3107d
commit
a3d8f1d879
88 files changed
+453
-508
No files matched your search
@@ -107,8 +107,8 @@ public:
|
||||
if (!bFirstTime)
|
||||
instance->SetBossState(DATA_JEDOGA_SHADOWSEEKER, FAIL);
|
||||
|
||||
instance->SetGuidData(DATA_PL_JEDOGA_TARGET, 0);
|
||||
instance->SetGuidData(DATA_ADD_JEDOGA_OPFER, 0);
|
||||
instance->SetGuidData(DATA_PL_JEDOGA_TARGET, ObjectGuid::Empty);
|
||||
instance->SetGuidData(DATA_ADD_JEDOGA_OPFER, ObjectGuid::Empty);
|
||||
instance->SetData(DATA_JEDOGA_RESET_INITIANDS, 0);
|
||||
MoveUp();
|
||||
|
||||
@@ -248,13 +248,14 @@ public:
|
||||
|
||||
void OpferRufen()
|
||||
{
|
||||
uint64 opfer = instance->GetGuidData(DATA_ADD_JEDOGA_INITIAND);
|
||||
ObjectGuid opfer = instance->GetGuidData(DATA_ADD_JEDOGA_INITIAND);
|
||||
|
||||
if (opfer)
|
||||
{
|
||||
Talk(TEXT_SACRIFICE_1);
|
||||
instance->SetGuidData(DATA_ADD_JEDOGA_OPFER, opfer);
|
||||
} else
|
||||
}
|
||||
else
|
||||
bCanDown = true;
|
||||
}
|
||||
|
||||
@@ -389,7 +390,7 @@ public:
|
||||
boss->AI()->DoAction(ACTION_INITIAND_KILLED);
|
||||
}
|
||||
|
||||
instance->SetGuidData(DATA_ADD_JEDOGA_OPFER, 0);
|
||||
instance->SetGuidData(DATA_ADD_JEDOGA_OPFER, ObjectGuid::Empty);
|
||||
|
||||
bWalking = false;
|
||||
}
|
||||
|
||||
@@ -88,16 +88,14 @@ class boss_prince_taldaram : public CreatureScript
|
||||
boss_prince_taldaramAI(Creature* creature) : BossAI(creature, DATA_PRINCE_TALDARAM)
|
||||
{
|
||||
me->SetDisableGravity(true);
|
||||
_flameSphereTargetGUID = 0;
|
||||
_embraceTargetGUID = 0;
|
||||
_embraceTakenDamage = 0;
|
||||
}
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
_Reset();
|
||||
_flameSphereTargetGUID = 0;
|
||||
_embraceTargetGUID = 0;
|
||||
_flameSphereTargetGUID.Clear();
|
||||
_embraceTargetGUID.Clear();
|
||||
_embraceTakenDamage = 0;
|
||||
}
|
||||
|
||||
@@ -194,7 +192,7 @@ class boss_prince_taldaram : public CreatureScript
|
||||
events.ScheduleEvent(EVENT_FEEDING, 20000);
|
||||
break;
|
||||
case EVENT_FEEDING:
|
||||
_embraceTargetGUID = 0;
|
||||
_embraceTargetGUID.Clear();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -213,7 +211,7 @@ class boss_prince_taldaram : public CreatureScript
|
||||
_embraceTakenDamage += damage;
|
||||
if (_embraceTakenDamage > DUNGEON_MODE<uint32>(DATA_EMBRACE_DMG, H_DATA_EMBRACE_DMG))
|
||||
{
|
||||
_embraceTargetGUID = 0;
|
||||
_embraceTargetGUID.Clear();
|
||||
me->CastStop();
|
||||
}
|
||||
}
|
||||
@@ -231,7 +229,7 @@ class boss_prince_taldaram : public CreatureScript
|
||||
return;
|
||||
|
||||
if (victim->GetGUID() == _embraceTargetGUID)
|
||||
_embraceTargetGUID = 0;
|
||||
_embraceTargetGUID.Clear();
|
||||
|
||||
Talk(SAY_SLAY);
|
||||
}
|
||||
@@ -267,8 +265,8 @@ class boss_prince_taldaram : public CreatureScript
|
||||
}
|
||||
|
||||
private:
|
||||
uint64 _flameSphereTargetGUID;
|
||||
uint64 _embraceTargetGUID;
|
||||
ObjectGuid _flameSphereTargetGUID;
|
||||
ObjectGuid _embraceTargetGUID;
|
||||
uint32 _embraceTakenDamage;
|
||||
};
|
||||
|
||||
@@ -288,7 +286,6 @@ class npc_prince_taldaram_flame_sphere : public CreatureScript
|
||||
{
|
||||
npc_prince_taldaram_flame_sphereAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
_flameSphereTargetGUID = 0;
|
||||
}
|
||||
|
||||
void Reset() override
|
||||
@@ -296,7 +293,7 @@ class npc_prince_taldaram_flame_sphere : public CreatureScript
|
||||
DoCast(me, SPELL_FLAME_SPHERE_SPAWN_EFFECT, true);
|
||||
DoCast(me, SPELL_FLAME_SPHERE_VISUAL, true);
|
||||
|
||||
_flameSphereTargetGUID = 0;
|
||||
_flameSphereTargetGUID.Clear();
|
||||
_events.Reset();
|
||||
_events.ScheduleEvent(EVENT_START_MOVE, 3 * IN_MILLISECONDS);
|
||||
_events.ScheduleEvent(EVENT_DESPAWN, 13 * IN_MILLISECONDS);
|
||||
|
||||
@@ -1116,7 +1116,7 @@ class npc_combustion_consumption : public CreatureScript
|
||||
struct npc_combustion_consumptionAI : public ScriptedAI
|
||||
{
|
||||
npc_combustion_consumptionAI(Creature* creature) : ScriptedAI(creature),
|
||||
_instance(creature->GetInstanceScript()), _summonerGuid(0)
|
||||
_instance(creature->GetInstanceScript())
|
||||
{
|
||||
SetCombatMovement(false);
|
||||
|
||||
@@ -1171,7 +1171,7 @@ class npc_combustion_consumption : public CreatureScript
|
||||
InstanceScript* _instance;
|
||||
uint32 _explosionSpell;
|
||||
uint32 _damageSpell;
|
||||
uint64 _summonerGuid;
|
||||
ObjectGuid _summonerGuid;
|
||||
};
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
@@ -1394,7 +1394,7 @@ class spell_halion_combustion_consumption : public SpellScriptLoader
|
||||
return;
|
||||
|
||||
if (GetTarget()->HasAura(_markSpell))
|
||||
GetTarget()->RemoveAurasDueToSpell(_markSpell, 0, 0, AURA_REMOVE_BY_EXPIRE);
|
||||
GetTarget()->RemoveAurasDueToSpell(_markSpell, ObjectGuid::Empty, 0, AURA_REMOVE_BY_EXPIRE);
|
||||
}
|
||||
|
||||
void OnApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
|
||||
@@ -1455,7 +1455,7 @@ class spell_halion_marks : public SpellScriptLoader
|
||||
|
||||
if (Unit* dispelledUnit = GetUnitOwner())
|
||||
if (dispelledUnit->HasAura(_removeSpellId))
|
||||
dispelledUnit->RemoveAurasDueToSpell(_removeSpellId, 0, 0, AURA_REMOVE_BY_EXPIRE);
|
||||
dispelledUnit->RemoveAurasDueToSpell(_removeSpellId, ObjectGuid::Empty, 0, AURA_REMOVE_BY_EXPIRE);
|
||||
}
|
||||
|
||||
void OnRemove(AuraEffect const* aurEff, AuraEffectHandleModes /*mode*/)
|
||||
@@ -1558,7 +1558,7 @@ class spell_halion_twilight_realm_handlers : public SpellScriptLoader
|
||||
if (!target)
|
||||
return;
|
||||
|
||||
target->RemoveAurasDueToSpell(_beforeHitSpellId, 0, 0, AURA_REMOVE_BY_ENEMY_SPELL);
|
||||
target->RemoveAurasDueToSpell(_beforeHitSpellId, ObjectGuid::Empty, 0, AURA_REMOVE_BY_ENEMY_SPELL);
|
||||
if (InstanceScript* instance = target->GetInstanceScript())
|
||||
instance->SendEncounterUnit(ENCOUNTER_FRAME_UNK7);
|
||||
}
|
||||
|
||||
+3
-3
@@ -208,7 +208,7 @@ public:
|
||||
}
|
||||
|
||||
if (uiType <= 3)
|
||||
Start(false, true, 0, NULL);
|
||||
Start(false, true);
|
||||
}
|
||||
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
@@ -769,7 +769,7 @@ public:
|
||||
uiMultiShotTimer = 0;
|
||||
uiLightningArrowsTimer = 7000;
|
||||
|
||||
uiTargetGUID = 0;
|
||||
uiTargetGUID.Clear();
|
||||
|
||||
bShoot = false;
|
||||
}
|
||||
@@ -783,7 +783,7 @@ public:
|
||||
uint32 uiMultiShotTimer;
|
||||
uint32 uiLightningArrowsTimer;
|
||||
|
||||
uint64 uiTargetGUID;
|
||||
ObjectGuid uiTargetGUID;
|
||||
|
||||
bool bShoot;
|
||||
bool bDone;
|
||||
|
||||
+1
-1
@@ -483,7 +483,7 @@ class boss_toc_champion_controller : public CreatureScript
|
||||
SummonChampions((Team)uiData);
|
||||
break;
|
||||
case 1:
|
||||
for (std::list<uint64>::iterator i = _summons.begin(); i != _summons.end(); ++i)
|
||||
for (SummonList::iterator i = _summons.begin(); i != _summons.end(); ++i)
|
||||
{
|
||||
if (Creature* temp = ObjectAccessor::GetCreature(*me, *i))
|
||||
{
|
||||
|
||||
+5
-6
@@ -294,7 +294,6 @@ class npc_snobold_vassal : public CreatureScript
|
||||
{
|
||||
npc_snobold_vassalAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
_targetGUID = 0;
|
||||
_targetDied = false;
|
||||
_instance = creature->GetInstanceScript();
|
||||
_instance->SetData(DATA_SNOBOLD_COUNT, INCREASE);
|
||||
@@ -305,7 +304,7 @@ class npc_snobold_vassal : public CreatureScript
|
||||
_events.ScheduleEvent(EVENT_BATTER, 5*IN_MILLISECONDS);
|
||||
_events.ScheduleEvent(EVENT_HEAD_CRACK, 25*IN_MILLISECONDS);
|
||||
|
||||
_targetGUID = 0;
|
||||
_targetGUID.Clear();
|
||||
_targetDied = false;
|
||||
|
||||
//Workaround for Snobold
|
||||
@@ -442,7 +441,7 @@ class npc_snobold_vassal : public CreatureScript
|
||||
private:
|
||||
EventMap _events;
|
||||
InstanceScript* _instance;
|
||||
uint64 _targetGUID;
|
||||
ObjectGuid _targetGUID;
|
||||
bool _targetDied;
|
||||
};
|
||||
|
||||
@@ -877,7 +876,7 @@ class boss_icehowl : public CreatureScript
|
||||
_movementStarted = false;
|
||||
_movementFinish = false;
|
||||
_trampleCast = false;
|
||||
_trampleTargetGUID = 0;
|
||||
_trampleTargetGUID.Clear();
|
||||
_trampleTargetX = 0;
|
||||
_trampleTargetY = 0;
|
||||
_trampleTargetZ = 0;
|
||||
@@ -1077,7 +1076,7 @@ class boss_icehowl : public CreatureScript
|
||||
if (Player* target = ObjectAccessor::GetPlayer(*me, _trampleTargetGUID))
|
||||
Talk(EMOTE_TRAMPLE_START, target);
|
||||
me->GetMotionMaster()->MoveCharge(_trampleTargetX, _trampleTargetY, _trampleTargetZ, 42, 1);
|
||||
me->SetTarget(0);
|
||||
me->SetTarget(ObjectGuid::Empty);
|
||||
_stage = 5;
|
||||
break;
|
||||
case 5:
|
||||
@@ -1134,7 +1133,7 @@ class boss_icehowl : public CreatureScript
|
||||
|
||||
private:
|
||||
float _trampleTargetX, _trampleTargetY, _trampleTargetZ;
|
||||
uint64 _trampleTargetGUID;
|
||||
ObjectGuid _trampleTargetGUID;
|
||||
bool _movementStarted;
|
||||
bool _movementFinish;
|
||||
bool _trampleCast;
|
||||
|
||||
@@ -216,7 +216,7 @@ public:
|
||||
void SetSummonerStatus(bool active)
|
||||
{
|
||||
for (uint8 i = 0; i < 4; i++)
|
||||
if (uint64 guid = instance->GetGuidData(summoners[i].data))
|
||||
if (ObjectGuid guid = instance->GetGuidData(summoners[i].data))
|
||||
if (Creature* crystalChannelTarget = ObjectAccessor::GetCreature(*me, guid))
|
||||
{
|
||||
if (active)
|
||||
@@ -229,7 +229,7 @@ public:
|
||||
void SetCrystalsStatus(bool active)
|
||||
{
|
||||
for (uint8 i = 0; i < 4; i++)
|
||||
if (uint64 guid = instance->GetGuidData(DATA_NOVOS_CRYSTAL_1 + i))
|
||||
if (ObjectGuid guid = instance->GetGuidData(DATA_NOVOS_CRYSTAL_1 + i))
|
||||
if (GameObject* crystal = ObjectAccessor::GetGameObject(*me, guid))
|
||||
SetCrystalStatus(crystal, active);
|
||||
}
|
||||
@@ -249,7 +249,7 @@ public:
|
||||
void CrystalHandlerDied()
|
||||
{
|
||||
for (uint8 i = 0; i < 4; i++)
|
||||
if (uint64 guid = instance->GetGuidData(DATA_NOVOS_CRYSTAL_1 + i))
|
||||
if (ObjectGuid guid = instance->GetGuidData(DATA_NOVOS_CRYSTAL_1 + i))
|
||||
if (GameObject* crystal = ObjectAccessor::GetGameObject(*me, guid))
|
||||
if (crystal->GetGoState() == GO_STATE_ACTIVE)
|
||||
{
|
||||
@@ -266,7 +266,7 @@ public:
|
||||
if (IsHeroic())
|
||||
events.ScheduleEvent(EVENT_SUMMON_MINIONS, 15000);
|
||||
}
|
||||
else if (uint64 guid = instance->GetGuidData(DATA_NOVOS_SUMMONER_4))
|
||||
else if (ObjectGuid guid = instance->GetGuidData(DATA_NOVOS_SUMMONER_4))
|
||||
if (Creature* crystalChannelTarget = ObjectAccessor::GetCreature(*me, guid))
|
||||
crystalChannelTarget->AI()->SetData(SPELL_SUMMON_CRYSTAL_HANDLER, 15000);
|
||||
}
|
||||
@@ -330,7 +330,7 @@ public:
|
||||
void JustSummoned(Creature* summon) override
|
||||
{
|
||||
if (InstanceScript* instance = me->GetInstanceScript())
|
||||
if (uint64 guid = instance->GetGuidData(DATA_NOVOS))
|
||||
if (ObjectGuid guid = instance->GetGuidData(DATA_NOVOS))
|
||||
if (Creature* novos = ObjectAccessor::GetCreature(*me, guid))
|
||||
novos->AI()->JustSummoned(summon);
|
||||
|
||||
|
||||
@@ -293,8 +293,8 @@ class boss_krick : public CreatureScript
|
||||
void Initialize()
|
||||
{
|
||||
_phase = PHASE_COMBAT;
|
||||
_outroNpcGUID = 0;
|
||||
_tyrannusGUID = 0;
|
||||
_outroNpcGUID.Clear();
|
||||
_tyrannusGUID.Clear();
|
||||
}
|
||||
|
||||
void Reset() override
|
||||
@@ -494,8 +494,8 @@ class boss_krick : public CreatureScript
|
||||
EventMap _events;
|
||||
|
||||
KrickPhase _phase;
|
||||
uint64 _outroNpcGUID;
|
||||
uint64 _tyrannusGUID;
|
||||
ObjectGuid _outroNpcGUID;
|
||||
ObjectGuid _tyrannusGUID;
|
||||
};
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
|
||||
@@ -299,7 +299,7 @@ class boss_rimefang : public CreatureScript
|
||||
void Initialize()
|
||||
{
|
||||
_currentWaypoint = 0;
|
||||
_hoarfrostTargetGUID = 0;
|
||||
_hoarfrostTargetGUID.Clear();
|
||||
}
|
||||
|
||||
void Reset() override
|
||||
@@ -366,7 +366,7 @@ class boss_rimefang : public CreatureScript
|
||||
if (Unit* target = ObjectAccessor::GetUnit(*me, _hoarfrostTargetGUID))
|
||||
{
|
||||
DoCast(target, SPELL_HOARFROST);
|
||||
_hoarfrostTargetGUID = 0;
|
||||
_hoarfrostTargetGUID.Clear();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
@@ -377,7 +377,7 @@ class boss_rimefang : public CreatureScript
|
||||
|
||||
private:
|
||||
Vehicle* _vehicle;
|
||||
uint64 _hoarfrostTargetGUID;
|
||||
ObjectGuid _hoarfrostTargetGUID;
|
||||
EventMap _events;
|
||||
uint8 _currentWaypoint;
|
||||
};
|
||||
@@ -391,7 +391,7 @@ class boss_rimefang : public CreatureScript
|
||||
class player_overlord_brandAI : public PlayerAI
|
||||
{
|
||||
public:
|
||||
player_overlord_brandAI(Player* player, uint64 casterGUID) : PlayerAI(player), _tyrannusGUID(casterGUID) { }
|
||||
player_overlord_brandAI(Player* player, ObjectGuid casterGUID) : PlayerAI(player), _tyrannusGUID(casterGUID) { }
|
||||
|
||||
void DamageDealt(Unit* /*victim*/, uint32& damage, DamageEffectType /*damageType*/) override
|
||||
{
|
||||
@@ -409,7 +409,7 @@ class player_overlord_brandAI : public PlayerAI
|
||||
void UpdateAI(uint32 /*diff*/) override { }
|
||||
|
||||
private:
|
||||
uint64 _tyrannusGUID;
|
||||
ObjectGuid _tyrannusGUID;
|
||||
};
|
||||
|
||||
class spell_tyrannus_overlord_brand : public SpellScriptLoader
|
||||
|
||||
@@ -104,7 +104,7 @@ public:
|
||||
uint32 uiImpalingChargeTimer;
|
||||
uint32 uiStompTimer;
|
||||
uint32 uiTransformationTimer;
|
||||
std::list<uint64> impaledList;
|
||||
GuidList impaledList;
|
||||
uint8 shareTheLove;
|
||||
|
||||
CombatPhase Phase;
|
||||
@@ -247,10 +247,10 @@ public:
|
||||
}
|
||||
|
||||
// 5 UNIQUE party members
|
||||
void CheckAchievement(uint64 guid)
|
||||
void CheckAchievement(ObjectGuid guid)
|
||||
{
|
||||
bool playerExists = false;
|
||||
for (std::list<uint64>::iterator itr = impaledList.begin(); itr != impaledList.end(); ++itr)
|
||||
for (GuidList::iterator itr = impaledList.begin(); itr != impaledList.end(); ++itr)
|
||||
if (guid != *itr)
|
||||
playerExists = true;
|
||||
|
||||
|
||||
@@ -103,7 +103,7 @@ public:
|
||||
|
||||
uint8 uiPhase;
|
||||
|
||||
std::set<uint64> lWrappedPlayers;
|
||||
GuidSet lWrappedPlayers;
|
||||
SummonList lSummons;
|
||||
|
||||
InstanceScript* instance;
|
||||
@@ -205,7 +205,7 @@ public:
|
||||
lWrappedPlayers.insert(guid);
|
||||
}
|
||||
|
||||
bool WasWrapped(uint64 guid)
|
||||
bool WasWrapped(ObjectGuid guid)
|
||||
{
|
||||
return lWrappedPlayers.count(guid) != 0;
|
||||
}
|
||||
|
||||
@@ -88,7 +88,6 @@ class boss_festergut : public CreatureScript
|
||||
{
|
||||
_maxInoculatedStack = 0;
|
||||
_inhaleCounter = 0;
|
||||
_gasDummyGUID = 0;
|
||||
}
|
||||
|
||||
void Reset() override
|
||||
@@ -279,7 +278,7 @@ class boss_festergut : public CreatureScript
|
||||
}
|
||||
|
||||
private:
|
||||
uint64 _gasDummyGUID;
|
||||
ObjectGuid _gasDummyGUID;
|
||||
uint32 _maxInoculatedStack;
|
||||
uint32 _inhaleCounter;
|
||||
};
|
||||
|
||||
@@ -383,7 +383,9 @@ public:
|
||||
void ResetSlots(uint32 team)
|
||||
{
|
||||
_transport = NULL;
|
||||
memset(_controlledSlots, 0, sizeof(uint64)* MAX_SLOTS);
|
||||
for (uint32 i = 0; i < MAX_SLOTS; ++i)
|
||||
_controlledSlots[i].Clear();
|
||||
|
||||
memset(_respawnCooldowns, 0, sizeof(time_t)* MAX_SLOTS);
|
||||
_spawnPoint = team == HORDE ? &OrgrimsHammerAddsSpawnPos : &SkybreakerAddsSpawnPos;
|
||||
_slotInfo = team == HORDE ? OrgrimsHammerSlotInfo : SkybreakerSlotInfo;
|
||||
@@ -422,7 +424,7 @@ public:
|
||||
|
||||
void ClearSlot(PassengerSlots slot)
|
||||
{
|
||||
_controlledSlots[slot] = 0;
|
||||
_controlledSlots[slot].Clear();
|
||||
_respawnCooldowns[slot] = time(NULL) + _slotInfo[slot].Cooldown;
|
||||
}
|
||||
|
||||
@@ -448,7 +450,7 @@ private:
|
||||
}
|
||||
|
||||
Transport* _transport;
|
||||
uint64 _controlledSlots[MAX_SLOTS];
|
||||
ObjectGuid _controlledSlots[MAX_SLOTS];
|
||||
time_t _respawnCooldowns[MAX_SLOTS];
|
||||
Position const* _spawnPoint;
|
||||
SlotInfo const* _slotInfo;
|
||||
@@ -482,7 +484,7 @@ private:
|
||||
class ResetEncounterEvent : public BasicEvent
|
||||
{
|
||||
public:
|
||||
ResetEncounterEvent(Unit* caster, uint32 spellId, uint64 otherTransport) : _caster(caster), _spellId(spellId), _otherTransport(otherTransport) { }
|
||||
ResetEncounterEvent(Unit* caster, uint32 spellId, ObjectGuid otherTransport) : _caster(caster), _spellId(spellId), _otherTransport(otherTransport) { }
|
||||
|
||||
bool Execute(uint64, uint32) override
|
||||
{
|
||||
@@ -498,7 +500,7 @@ public:
|
||||
private:
|
||||
Unit* _caster;
|
||||
uint32 _spellId;
|
||||
uint64 _otherTransport;
|
||||
ObjectGuid _otherTransport;
|
||||
};
|
||||
|
||||
class BattleExperienceEvent : public BasicEvent
|
||||
@@ -801,7 +803,7 @@ class npc_gunship : public CreatureScript
|
||||
if (id != ACTION_SHIP_VISITS)
|
||||
return;
|
||||
|
||||
std::map<uint64, uint32>::iterator itr = _shipVisits.find(guid);
|
||||
std::map<ObjectGuid, uint32>::iterator itr = _shipVisits.find(guid);
|
||||
if (itr == _shipVisits.end())
|
||||
_shipVisits[guid] = 1;
|
||||
else
|
||||
@@ -814,7 +816,7 @@ class npc_gunship : public CreatureScript
|
||||
return 0;
|
||||
|
||||
uint32 max = 0;
|
||||
for (std::map<uint64, uint32>::const_iterator itr = _shipVisits.begin(); itr != _shipVisits.end(); ++itr)
|
||||
for (std::map<ObjectGuid, uint32>::const_iterator itr = _shipVisits.begin(); itr != _shipVisits.end(); ++itr)
|
||||
max = std::max(max, itr->second);
|
||||
|
||||
return max;
|
||||
@@ -822,7 +824,7 @@ class npc_gunship : public CreatureScript
|
||||
|
||||
private:
|
||||
uint32 _teamInInstance;
|
||||
std::map<uint64, uint32> _shipVisits;
|
||||
std::map<ObjectGuid, uint32> _shipVisits;
|
||||
bool _summonedFirstMage;
|
||||
bool _died;
|
||||
};
|
||||
|
||||
@@ -224,8 +224,8 @@ class boss_lady_deathwhisper : public CreatureScript
|
||||
void Initialize()
|
||||
{
|
||||
_waveCounter = 0;
|
||||
_nextVengefulShadeTargetGUID = 0;
|
||||
_darnavanGUID = 0;
|
||||
_nextVengefulShadeTargetGUID.Clear();
|
||||
_darnavanGUID.Clear();
|
||||
}
|
||||
|
||||
void Reset() override
|
||||
@@ -329,10 +329,10 @@ class boss_lady_deathwhisper : public CreatureScript
|
||||
{
|
||||
for (GroupReference* itr = group->GetFirstMember(); itr != NULL; itr = itr->next())
|
||||
if (Player* member = itr->GetSource())
|
||||
member->KilledMonsterCredit(NPC_DARNAVAN_CREDIT, 0);
|
||||
member->KilledMonsterCredit(NPC_DARNAVAN_CREDIT);
|
||||
}
|
||||
else
|
||||
owner->KilledMonsterCredit(NPC_DARNAVAN_CREDIT, 0);
|
||||
owner->KilledMonsterCredit(NPC_DARNAVAN_CREDIT);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -349,7 +349,7 @@ class boss_lady_deathwhisper : public CreatureScript
|
||||
if (Creature* darnavan = ObjectAccessor::GetCreature(*me, _darnavanGUID))
|
||||
{
|
||||
darnavan->DespawnOrUnsummon();
|
||||
_darnavanGUID = 0;
|
||||
_darnavanGUID.Clear();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -396,7 +396,7 @@ class boss_lady_deathwhisper : public CreatureScript
|
||||
if (summon->GetEntry() == NPC_VENGEFUL_SHADE)
|
||||
{
|
||||
target = ObjectAccessor::GetUnit(*me, _nextVengefulShadeTargetGUID); // Vengeful Shade
|
||||
_nextVengefulShadeTargetGUID = 0;
|
||||
_nextVengefulShadeTargetGUID.Clear();
|
||||
}
|
||||
else
|
||||
target = SelectTarget(SELECT_TARGET_RANDOM); // Wave adds
|
||||
@@ -568,7 +568,7 @@ class boss_lady_deathwhisper : public CreatureScript
|
||||
if (_reanimationQueue.empty())
|
||||
return;
|
||||
|
||||
uint64 cultistGUID = _reanimationQueue.front();
|
||||
ObjectGuid cultistGUID = _reanimationQueue.front();
|
||||
Creature* cultist = ObjectAccessor::GetCreature(*me, cultistGUID);
|
||||
_reanimationQueue.pop_front();
|
||||
if (!cultist)
|
||||
@@ -615,9 +615,9 @@ class boss_lady_deathwhisper : public CreatureScript
|
||||
}
|
||||
|
||||
private:
|
||||
uint64 _nextVengefulShadeTargetGUID;
|
||||
uint64 _darnavanGUID;
|
||||
std::deque<uint64> _reanimationQueue;
|
||||
ObjectGuid _nextVengefulShadeTargetGUID;
|
||||
ObjectGuid _darnavanGUID;
|
||||
GuidDeque _reanimationQueue;
|
||||
uint32 _waveCounter;
|
||||
uint8 const _dominateMindCount;
|
||||
bool _introDone;
|
||||
|
||||
@@ -133,7 +133,6 @@ class boss_lord_marrowgar : public CreatureScript
|
||||
_coldflameLastPos.Relocate(creature);
|
||||
_introDone = false;
|
||||
_boneSlice = false;
|
||||
_coldflameTarget = 0;
|
||||
}
|
||||
|
||||
void Reset() override
|
||||
@@ -211,7 +210,7 @@ class boss_lord_marrowgar : public CreatureScript
|
||||
break;
|
||||
case EVENT_COLDFLAME:
|
||||
_coldflameLastPos.Relocate(me);
|
||||
_coldflameTarget = 0LL;
|
||||
_coldflameTarget.Clear();
|
||||
if (!me->HasAura(SPELL_BONE_STORM))
|
||||
DoCastAOE(SPELL_COLDFLAME_NORMAL);
|
||||
else
|
||||
@@ -307,7 +306,7 @@ class boss_lord_marrowgar : public CreatureScript
|
||||
}
|
||||
}
|
||||
|
||||
return 0LL;
|
||||
return ObjectGuid::Empty;
|
||||
}
|
||||
|
||||
void SetGUID(ObjectGuid guid, int32 type /*= 0 */) override
|
||||
@@ -333,8 +332,8 @@ class boss_lord_marrowgar : public CreatureScript
|
||||
|
||||
private:
|
||||
Position _coldflameLastPos;
|
||||
std::vector<uint64> _boneSpikeImmune;
|
||||
uint64 _coldflameTarget;
|
||||
GuidVector _boneSpikeImmune;
|
||||
ObjectGuid _coldflameTarget;
|
||||
uint32 _boneStormDuration;
|
||||
float _baseSpeed;
|
||||
bool _introDone;
|
||||
|
||||
@@ -174,7 +174,7 @@ class AbominationDespawner
|
||||
public:
|
||||
explicit AbominationDespawner(Unit* owner) : _owner(owner) { }
|
||||
|
||||
bool operator()(uint64 guid)
|
||||
bool operator()(ObjectGuid guid)
|
||||
{
|
||||
if (Unit* summon = ObjectAccessor::GetUnit(*_owner, guid))
|
||||
{
|
||||
@@ -702,7 +702,7 @@ class boss_professor_putricide : public CreatureScript
|
||||
events.SetPhase(newPhase);
|
||||
}
|
||||
|
||||
uint64 _oozeFloodDummyGUIDs[4];
|
||||
ObjectGuid _oozeFloodDummyGUIDs[4];
|
||||
Phases _phase; // external of EventMap because event phase gets reset on evade
|
||||
float const _baseSpeed;
|
||||
uint8 _oozeFloodStage;
|
||||
|
||||
@@ -469,7 +469,7 @@ class spell_rotface_ooze_flood : public SpellScriptLoader
|
||||
return;
|
||||
|
||||
triggers.sort(Trinity::ObjectDistanceOrderPred(GetHitUnit()));
|
||||
GetHitUnit()->CastSpell(triggers.back(), uint32(GetEffectValue()), false, NULL, NULL, GetOriginalCaster() ? GetOriginalCaster()->GetGUID() : 0);
|
||||
GetHitUnit()->CastSpell(triggers.back(), uint32(GetEffectValue()), false, NULL, NULL, GetOriginalCaster() ? GetOriginalCaster()->GetGUID() : ObjectGuid::Empty);
|
||||
}
|
||||
|
||||
void FilterTargets(std::list<WorldObject*>& targets)
|
||||
|
||||
@@ -182,7 +182,7 @@ class FrostwyrmLandEvent : public BasicEvent
|
||||
class FrostBombExplosion : public BasicEvent
|
||||
{
|
||||
public:
|
||||
FrostBombExplosion(Creature* owner, uint64 sindragosaGUID) : _owner(owner), _sindragosaGUID(sindragosaGUID) { }
|
||||
FrostBombExplosion(Creature* owner, ObjectGuid sindragosaGUID) : _owner(owner), _sindragosaGUID(sindragosaGUID) { }
|
||||
|
||||
bool Execute(uint64 /*eventTime*/, uint32 /*updateTime*/)
|
||||
{
|
||||
@@ -193,7 +193,7 @@ class FrostBombExplosion : public BasicEvent
|
||||
|
||||
private:
|
||||
Creature* _owner;
|
||||
uint64 _sindragosaGUID;
|
||||
ObjectGuid _sindragosaGUID;
|
||||
};
|
||||
|
||||
class FrostBeaconSelector
|
||||
@@ -563,7 +563,6 @@ class npc_ice_tomb : public CreatureScript
|
||||
{
|
||||
npc_ice_tombAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
_trappedPlayerGUID = 0;
|
||||
_existenceCheckTimer = 0;
|
||||
SetCombatMovement(false);
|
||||
}
|
||||
@@ -595,7 +594,7 @@ class npc_ice_tomb : public CreatureScript
|
||||
|
||||
if (Player* player = ObjectAccessor::GetPlayer(*me, _trappedPlayerGUID))
|
||||
{
|
||||
_trappedPlayerGUID = 0;
|
||||
_trappedPlayerGUID.Clear();
|
||||
player->RemoveAurasDueToSpell(SPELL_ICE_TOMB_DAMAGE);
|
||||
player->RemoveAurasDueToSpell(SPELL_ASPHYXIATION);
|
||||
}
|
||||
@@ -623,7 +622,7 @@ class npc_ice_tomb : public CreatureScript
|
||||
}
|
||||
|
||||
private:
|
||||
uint64 _trappedPlayerGUID;
|
||||
ObjectGuid _trappedPlayerGUID;
|
||||
uint32 _existenceCheckTimer;
|
||||
};
|
||||
|
||||
|
||||
@@ -1433,7 +1433,7 @@ class npc_valkyr_shadowguard : public CreatureScript
|
||||
struct npc_valkyr_shadowguardAI : public ScriptedAI
|
||||
{
|
||||
npc_valkyr_shadowguardAI(Creature* creature) : ScriptedAI(creature),
|
||||
_grabbedPlayer(0), _instance(creature->GetInstanceScript())
|
||||
_instance(creature->GetInstanceScript())
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1563,7 +1563,7 @@ class npc_valkyr_shadowguard : public CreatureScript
|
||||
private:
|
||||
EventMap _events;
|
||||
Position _dropPoint;
|
||||
uint64 _grabbedPlayer;
|
||||
ObjectGuid _grabbedPlayer;
|
||||
InstanceScript* _instance;
|
||||
};
|
||||
|
||||
@@ -1640,7 +1640,7 @@ class npc_strangulate_vehicle : public CreatureScript
|
||||
else
|
||||
{
|
||||
summoner->CastSpell(summoner, SPELL_HARVEST_SOULS_TELEPORT, true);
|
||||
summoner->RemoveAurasDueToSpell(HARVEST_SOUL, 0, 0, AURA_REMOVE_BY_EXPIRE);
|
||||
summoner->RemoveAurasDueToSpell(HARVEST_SOUL, ObjectGuid::Empty, 0, AURA_REMOVE_BY_EXPIRE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -175,7 +175,7 @@ struct ManaVoidSelector : public std::unary_function<Unit*, bool>
|
||||
class DelayedCastEvent : public BasicEvent
|
||||
{
|
||||
public:
|
||||
DelayedCastEvent(Creature* trigger, uint32 spellId, uint64 originalCaster, uint32 despawnTime) : _trigger(trigger), _originalCaster(originalCaster), _spellId(spellId), _despawnTime(despawnTime)
|
||||
DelayedCastEvent(Creature* trigger, uint32 spellId, ObjectGuid originalCaster, uint32 despawnTime) : _trigger(trigger), _originalCaster(originalCaster), _spellId(spellId), _despawnTime(despawnTime)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -189,7 +189,7 @@ class DelayedCastEvent : public BasicEvent
|
||||
|
||||
private:
|
||||
Creature* _trigger;
|
||||
uint64 _originalCaster;
|
||||
ObjectGuid _originalCaster;
|
||||
uint32 _spellId;
|
||||
uint32 _despawnTime;
|
||||
};
|
||||
@@ -742,7 +742,7 @@ class npc_risen_archmage : public CreatureScript
|
||||
void JustSummoned(Creature* summon) override
|
||||
{
|
||||
if (summon->GetEntry() == NPC_COLUMN_OF_FROST)
|
||||
summon->m_Events.AddEvent(new DelayedCastEvent(summon, SPELL_COLUMN_OF_FROST_DAMAGE, 0, 8000), summon->m_Events.CalculateTime(2000));
|
||||
summon->m_Events.AddEvent(new DelayedCastEvent(summon, SPELL_COLUMN_OF_FROST_DAMAGE, ObjectGuid::Empty, 8000), summon->m_Events.CalculateTime(2000));
|
||||
else if (summon->GetEntry() == NPC_MANA_VOID)
|
||||
summon->DespawnOrUnsummon(36000);
|
||||
}
|
||||
|
||||
@@ -106,7 +106,7 @@ public:
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
uiEventStarterGUID = 0;
|
||||
uiEventStarterGUID.Clear();
|
||||
nextWP = 0;
|
||||
punishTimer = 2000;
|
||||
nextMovementStarted = false;
|
||||
@@ -118,7 +118,7 @@ public:
|
||||
}
|
||||
|
||||
Horsemen id;
|
||||
uint64 uiEventStarterGUID;
|
||||
ObjectGuid uiEventStarterGUID;
|
||||
uint8 nextWP;
|
||||
uint32 punishTimer;
|
||||
bool caster;
|
||||
|
||||
@@ -182,8 +182,8 @@ class boss_gothik : public CreatureScript
|
||||
bool phaseTwo;
|
||||
bool thirtyPercentReached;
|
||||
|
||||
std::vector<uint64> LiveTriggerGUID;
|
||||
std::vector<uint64> DeadTriggerGUID;
|
||||
GuidVector LiveTriggerGUID;
|
||||
GuidVector DeadTriggerGUID;
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
|
||||
@@ -135,7 +135,7 @@ public:
|
||||
me->NearTeleportTo(x, y, z, o - (float(M_PI) / 2));
|
||||
me->GetMotionMaster()->Clear();
|
||||
me->GetMotionMaster()->MoveIdle();
|
||||
me->SetTarget(0);
|
||||
me->SetTarget(ObjectGuid::Empty);
|
||||
DoCastAOE(SPELL_PLAGUE_CLOUD);
|
||||
events.ScheduleEvent(EVENT_PHASE, 45000);
|
||||
events.ScheduleEvent(EVENT_ERUPT, 8000);
|
||||
|
||||
@@ -285,13 +285,13 @@ public:
|
||||
uint8 nAbomination;
|
||||
uint8 nWeaver;
|
||||
|
||||
std::map<uint64, float> chained;
|
||||
std::map<ObjectGuid, float> chained;
|
||||
|
||||
SummonList spawns; // adds spawn by the trigger. kept in separated list (i.e. not in summons)
|
||||
|
||||
void ResetPlayerScale()
|
||||
{
|
||||
std::map<uint64, float>::const_iterator itr;
|
||||
std::map<ObjectGuid, float>::const_iterator itr;
|
||||
for (itr = chained.begin(); itr != chained.end(); ++itr)
|
||||
{
|
||||
if (Player* charmed = ObjectAccessor::GetPlayer(*me, itr->first))
|
||||
@@ -495,7 +495,7 @@ public:
|
||||
}
|
||||
case EVENT_CHAINED_SPELL:
|
||||
{
|
||||
std::map<uint64, float>::iterator itr;
|
||||
std::map<ObjectGuid, float>::iterator itr;
|
||||
for (itr = chained.begin(); itr != chained.end();)
|
||||
{
|
||||
if (Unit* player = ObjectAccessor::GetPlayer(*me, itr->first))
|
||||
@@ -503,7 +503,7 @@ public:
|
||||
if (!player->IsCharmed())
|
||||
{
|
||||
player->SetObjectScale(itr->second);
|
||||
std::map<uint64, float>::iterator next = itr;
|
||||
std::map<ObjectGuid, float>::iterator next = itr;
|
||||
++next;
|
||||
chained.erase(itr);
|
||||
itr = next;
|
||||
|
||||
@@ -80,7 +80,7 @@ enum Misc
|
||||
MAX_FROST_RESISTANCE = 100
|
||||
};
|
||||
|
||||
typedef std::map<uint64, uint64> IceBlockMap;
|
||||
typedef std::map<ObjectGuid, ObjectGuid> IceBlockMap;
|
||||
|
||||
class boss_sapphiron : public CreatureScript
|
||||
{
|
||||
@@ -313,7 +313,7 @@ class boss_sapphiron : public CreatureScript
|
||||
{
|
||||
std::vector<Unit*>::const_iterator itr = targets.begin();
|
||||
advance(itr, rand32() % targets.size());
|
||||
_iceblocks.insert(std::make_pair((*itr)->GetGUID(), 0));
|
||||
_iceblocks.insert(std::make_pair((*itr)->GetGUID(), ObjectGuid::Empty));
|
||||
DoCast(*itr, SPELL_ICEBOLT);
|
||||
--_iceboltCount;
|
||||
}
|
||||
|
||||
@@ -354,9 +354,10 @@ public:
|
||||
|
||||
_summonDeaths = 0;
|
||||
_preparingPulsesChecker = 0;
|
||||
_arcaneOverloadGUID = 0;
|
||||
_lastHitByArcaneBarrageGUID = 0;
|
||||
memset(_surgeTargetGUID, 0, sizeof(_surgeTargetGUID));
|
||||
_arcaneOverloadGUID.Clear();
|
||||
_lastHitByArcaneBarrageGUID.Clear();
|
||||
for (ObjectGuid& guid : _surgeTargetGUID)
|
||||
guid.Clear();
|
||||
|
||||
_killSpamFilter = false;
|
||||
_canAttack = false;
|
||||
@@ -424,7 +425,7 @@ public:
|
||||
else if (type == DATA_LAST_TARGET_BARRAGE_GUID)
|
||||
return _lastHitByArcaneBarrageGUID;
|
||||
|
||||
return 0;
|
||||
return ObjectGuid::Empty;
|
||||
}
|
||||
|
||||
void SetGUID(ObjectGuid guid, int32 type) override
|
||||
@@ -441,6 +442,7 @@ public:
|
||||
break;
|
||||
case DATA_LAST_TARGET_BARRAGE_GUID:
|
||||
_lastHitByArcaneBarrageGUID = guid;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1030,9 +1032,9 @@ public:
|
||||
uint8 _phase; // Counter for phases used with a getter.
|
||||
uint8 _summonDeaths; // Keeps count of arcane trash.
|
||||
uint8 _preparingPulsesChecker; // In retail they use 2 preparing pulses with 7 sec CD, after they pass 2 seconds.
|
||||
uint64 _arcaneOverloadGUID; // Last Arcane Overload summoned to know to which should visual be cast to (the purple ball, not bubble).
|
||||
uint64 _lastHitByArcaneBarrageGUID; // Last hit player by Arcane Barrage, will be removed if targets > 1.
|
||||
uint64 _surgeTargetGUID[3]; // All these three are used to keep current tagets to which warning should be sent.
|
||||
ObjectGuid _arcaneOverloadGUID; // Last Arcane Overload summoned to know to which should visual be cast to (the purple ball, not bubble).
|
||||
ObjectGuid _lastHitByArcaneBarrageGUID; // Last hit player by Arcane Barrage, will be removed if targets > 1.
|
||||
ObjectGuid _surgeTargetGUID[3]; // All these three are used to keep current tagets to which warning should be sent.
|
||||
|
||||
bool _killSpamFilter; // Prevent text spamming on killed player by helping implement a CD.
|
||||
bool _canAttack; // Used to control attacking (Move Chase not being applied after Stop Attack, only few times should act like this).
|
||||
|
||||
@@ -73,8 +73,8 @@ public:
|
||||
|
||||
InstanceScript* instance;
|
||||
|
||||
std::list<uint64> intenseColdList;
|
||||
uint64 auiContainmentSphereGUIDs[DATA_CONTAINMENT_SPHERES];
|
||||
GuidList intenseColdList;
|
||||
ObjectGuid auiContainmentSphereGUIDs[DATA_CONTAINMENT_SPHERES];
|
||||
uint32 uiCrystalfireBreathTimer;
|
||||
uint32 uiCrystalChainsCrystalizeTimer;
|
||||
uint32 uiTailSweepTimer;
|
||||
@@ -271,9 +271,9 @@ class achievement_intense_cold : public AchievementCriteriaScript
|
||||
if (!target)
|
||||
return false;
|
||||
|
||||
std::list<uint64> intenseColdList = ENSURE_AI(boss_keristrasza::boss_keristraszaAI, target->ToCreature()->AI())->intenseColdList;
|
||||
GuidList intenseColdList = ENSURE_AI(boss_keristrasza::boss_keristraszaAI, target->ToCreature()->AI())->intenseColdList;
|
||||
if (!intenseColdList.empty())
|
||||
for (std::list<uint64>::iterator itr = intenseColdList.begin(); itr != intenseColdList.end(); ++itr)
|
||||
for (GuidList::iterator itr = intenseColdList.begin(); itr != intenseColdList.end(); ++itr)
|
||||
if (player->GetGUID() == *itr)
|
||||
return false;
|
||||
|
||||
|
||||
@@ -77,9 +77,9 @@ public:
|
||||
|
||||
InstanceScript* instance;
|
||||
|
||||
uint64 uiFireMagusGUID;
|
||||
uint64 uiFrostMagusGUID;
|
||||
uint64 uiArcaneMagusGUID;
|
||||
ObjectGuid uiFireMagusGUID;
|
||||
ObjectGuid uiFrostMagusGUID;
|
||||
ObjectGuid uiArcaneMagusGUID;
|
||||
|
||||
bool bFireMagusDead;
|
||||
bool bFrostMagusDead;
|
||||
@@ -105,9 +105,9 @@ public:
|
||||
uiGravityWellTimer = 15*IN_MILLISECONDS;
|
||||
uiCooldown = 0;
|
||||
|
||||
uiFireMagusGUID = 0;
|
||||
uiFrostMagusGUID = 0;
|
||||
uiArcaneMagusGUID = 0;
|
||||
uiFireMagusGUID.Clear();
|
||||
uiFrostMagusGUID.Clear();
|
||||
uiArcaneMagusGUID.Clear();
|
||||
|
||||
for (uint8 n = 0; n < 3; ++n)
|
||||
time[n] = 0;
|
||||
@@ -163,7 +163,7 @@ public:
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint64 SplitPersonality(uint32 entry)
|
||||
ObjectGuid SplitPersonality(uint32 entry)
|
||||
{
|
||||
if (Creature* Summoned = me->SummonCreature(entry, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), me->GetOrientation(), TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 1*IN_MILLISECONDS))
|
||||
{
|
||||
@@ -189,7 +189,7 @@ public:
|
||||
Summoned->AI()->AttackStart(target);
|
||||
return Summoned->GetGUID();
|
||||
}
|
||||
return 0;
|
||||
return ObjectGuid::Empty;
|
||||
}
|
||||
|
||||
void SummonedCreatureDespawn(Creature* summon) override
|
||||
@@ -246,9 +246,9 @@ public:
|
||||
Phase = 2;
|
||||
if (Phase == 3)
|
||||
Phase = 4;
|
||||
uiFireMagusGUID = 0;
|
||||
uiFrostMagusGUID = 0;
|
||||
uiArcaneMagusGUID = 0;
|
||||
uiFireMagusGUID.Clear();
|
||||
uiFrostMagusGUID.Clear();
|
||||
uiArcaneMagusGUID.Clear();
|
||||
bIsWaitingToAppear = true;
|
||||
uiIsWaitingToAppearTimer = 4*IN_MILLISECONDS;
|
||||
Talk(SAY_MERGE);
|
||||
|
||||
@@ -175,7 +175,7 @@ class npc_azure_ring_captain : public CreatureScript
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
targetGUID = 0;
|
||||
targetGUID.Clear();
|
||||
|
||||
me->SetWalk(true);
|
||||
//! HACK: Creature's can't have MOVEMENTFLAG_FLYING
|
||||
@@ -232,7 +232,7 @@ class npc_azure_ring_captain : public CreatureScript
|
||||
}
|
||||
|
||||
private:
|
||||
uint64 targetGUID;
|
||||
ObjectGuid targetGUID;
|
||||
InstanceScript* instance;
|
||||
};
|
||||
|
||||
|
||||
@@ -162,7 +162,7 @@ public:
|
||||
|
||||
Position pos = me->GetPosition();
|
||||
|
||||
for (uint64 guid : lSparkList)
|
||||
for (ObjectGuid guid : lSparkList)
|
||||
{
|
||||
if (Creature* pSpark = ObjectAccessor::GetCreature(*me, guid))
|
||||
{
|
||||
|
||||
@@ -83,7 +83,7 @@ public:
|
||||
|
||||
InstanceScript* instance;
|
||||
|
||||
std::list<uint64> m_lGolemGUIDList;
|
||||
GuidList m_lGolemGUIDList;
|
||||
|
||||
bool m_bHasTemper;
|
||||
bool m_bIsStriking;
|
||||
@@ -158,7 +158,7 @@ public:
|
||||
if (m_lGolemGUIDList.empty())
|
||||
return;
|
||||
|
||||
for (uint64 guid : m_lGolemGUIDList)
|
||||
for (ObjectGuid guid : m_lGolemGUIDList)
|
||||
{
|
||||
if (Creature* temp = ObjectAccessor::GetCreature(*me, guid))
|
||||
if (temp->IsAlive())
|
||||
@@ -173,7 +173,7 @@ public:
|
||||
if (m_lGolemGUIDList.empty())
|
||||
return;
|
||||
|
||||
for (uint64 guid : m_lGolemGUIDList)
|
||||
for (ObjectGuid guid : m_lGolemGUIDList)
|
||||
{
|
||||
if (Creature* temp = ObjectAccessor::GetCreature(*me, guid))
|
||||
{
|
||||
|
||||
@@ -266,7 +266,7 @@ class boss_flame_leviathan : public CreatureScript
|
||||
_Reset();
|
||||
//resets shutdown counter to 0. 2 or 4 depending on raid mode
|
||||
Shutdown = 0;
|
||||
_pursueTarget = 0;
|
||||
_pursueTarget.Clear();
|
||||
|
||||
me->SetReactState(REACT_DEFENSIVE);
|
||||
}
|
||||
@@ -550,7 +550,7 @@ class boss_flame_leviathan : public CreatureScript
|
||||
}
|
||||
}
|
||||
|
||||
uint64 _pursueTarget;
|
||||
ObjectGuid _pursueTarget;
|
||||
};
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
@@ -978,7 +978,7 @@ public:
|
||||
npc_escortAI::UpdateAI(diff);
|
||||
|
||||
if (!HasEscortState(STATE_ESCORT_ESCORTING))
|
||||
Start(false, true, 0, NULL, false, true);
|
||||
Start(false, true, ObjectGuid::Empty, NULL, false, true);
|
||||
else
|
||||
{
|
||||
if (infernoTimer <= diff)
|
||||
|
||||
@@ -226,7 +226,6 @@ class npc_iron_roots : public CreatureScript
|
||||
me->ApplySpellImmune(0, IMMUNITY_ID, 49560, true); // Death Grip
|
||||
me->setFaction(14);
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
summonerGUID = 0;
|
||||
}
|
||||
|
||||
void IsSummonedBy(Unit* summoner) override
|
||||
@@ -251,7 +250,7 @@ class npc_iron_roots : public CreatureScript
|
||||
}
|
||||
|
||||
private:
|
||||
uint64 summonerGUID;
|
||||
ObjectGuid summonerGUID;
|
||||
};
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
@@ -269,7 +268,7 @@ class boss_freya : public CreatureScript
|
||||
{
|
||||
boss_freyaAI(Creature* creature) : BossAI(creature, BOSS_FREYA) { }
|
||||
|
||||
uint64 ElementalGUID[3][2];
|
||||
ObjectGuid ElementalGUID[3][2];
|
||||
|
||||
uint32 deforestation[6][2];
|
||||
uint32 elementalTimer[2];
|
||||
@@ -294,7 +293,7 @@ class boss_freya : public CreatureScript
|
||||
|
||||
for (uint8 i = 0; i < 3; ++i)
|
||||
for (uint8 n = 0; n < 2; ++n)
|
||||
ElementalGUID[i][n] = 0;
|
||||
ElementalGUID[i][n].Clear();
|
||||
for (uint8 i = 0; i < 6; ++i)
|
||||
for (uint8 n = 0; n < 2; ++n)
|
||||
deforestation[i][n] = 0;
|
||||
@@ -1544,17 +1543,17 @@ class spell_freya_attuned_to_nature_dose_reduction : public SpellScriptLoader
|
||||
case SPELL_ATTUNED_TO_NATURE_2_DOSE_REDUCTION:
|
||||
if (target->HasAura(GetEffectValue()))
|
||||
for (uint8 n = 0; n < 2; ++n)
|
||||
target->RemoveAuraFromStack(GetEffectValue(), 0, AURA_REMOVE_BY_DEFAULT);
|
||||
target->RemoveAuraFromStack(GetEffectValue());
|
||||
break;
|
||||
case SPELL_ATTUNED_TO_NATURE_10_DOSE_REDUCTION:
|
||||
if (target->HasAura(GetEffectValue()))
|
||||
for (uint8 n = 0; n < 10; ++n)
|
||||
target->RemoveAuraFromStack(GetEffectValue(), 0, AURA_REMOVE_BY_DEFAULT);
|
||||
target->RemoveAuraFromStack(GetEffectValue());
|
||||
break;
|
||||
case SPELL_ATTUNED_TO_NATURE_25_DOSE_REDUCTION:
|
||||
if (target->HasAura(GetEffectValue()))
|
||||
for (uint8 n = 0; n < 25; ++n)
|
||||
target->RemoveAuraFromStack(GetEffectValue(), 0, AURA_REMOVE_BY_DEFAULT);
|
||||
target->RemoveAuraFromStack(GetEffectValue());
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
@@ -188,12 +188,12 @@ class npc_flash_freeze : public CreatureScript
|
||||
|
||||
InstanceScript* instance;
|
||||
|
||||
uint64 targetGUID;
|
||||
ObjectGuid targetGUID;
|
||||
uint32 checkDespawnTimer;
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
targetGUID = 0;
|
||||
targetGUID.Clear();
|
||||
checkDespawnTimer = 1000;
|
||||
}
|
||||
|
||||
@@ -254,12 +254,11 @@ class npc_ice_block : public CreatureScript
|
||||
instance = me->GetInstanceScript();
|
||||
me->SetDisplayId(me->GetCreatureTemplate()->Modelid2);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISABLE_MOVE | UNIT_FLAG_STUNNED | UNIT_FLAG_PACIFIED);
|
||||
targetGUID = 0;
|
||||
}
|
||||
|
||||
InstanceScript* instance;
|
||||
|
||||
uint64 targetGUID;
|
||||
ObjectGuid targetGUID;
|
||||
|
||||
void IsSummonedBy(Unit* summoner) override
|
||||
{
|
||||
@@ -966,7 +965,7 @@ class spell_biting_cold : public SpellScriptLoader
|
||||
}
|
||||
|
||||
private:
|
||||
typedef std::list< std::pair<uint64, uint8> > TargetList;
|
||||
typedef std::list<std::pair<ObjectGuid, uint8>> TargetList;
|
||||
TargetList listOfTargets;
|
||||
};
|
||||
|
||||
|
||||
@@ -140,7 +140,7 @@ class boss_ignis : public CreatureScript
|
||||
events.ScheduleEvent(EVENT_CONSTRUCT, 15000);
|
||||
events.ScheduleEvent(EVENT_END_POT, 40000);
|
||||
events.ScheduleEvent(EVENT_BERSERK, 480000);
|
||||
_slagPotGUID = 0;
|
||||
_slagPotGUID.Clear();
|
||||
_shattered = false;
|
||||
_firstConstructKill = 0;
|
||||
instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEVEMENT_IGNIS_START_EVENT);
|
||||
@@ -245,7 +245,7 @@ class boss_ignis : public CreatureScript
|
||||
{
|
||||
slagPotTarget->ExitVehicle();
|
||||
slagPotTarget = NULL;
|
||||
_slagPotGUID = 0;
|
||||
_slagPotGUID.Clear();
|
||||
events.CancelEvent(EVENT_END_POT);
|
||||
}
|
||||
break;
|
||||
@@ -276,7 +276,7 @@ class boss_ignis : public CreatureScript
|
||||
}
|
||||
|
||||
private:
|
||||
uint64 _slagPotGUID;
|
||||
ObjectGuid _slagPotGUID;
|
||||
Vehicle* _vehicle;
|
||||
time_t _firstConstructKill;
|
||||
bool _shattered;
|
||||
@@ -370,7 +370,6 @@ class npc_scorch_ground : public CreatureScript
|
||||
}
|
||||
|
||||
void MoveInLineOfSight(Unit* who) override
|
||||
|
||||
{
|
||||
if (!_heat)
|
||||
{
|
||||
@@ -389,7 +388,7 @@ class npc_scorch_ground : public CreatureScript
|
||||
{
|
||||
_heat = false;
|
||||
DoCast(me, SPELL_GROUND);
|
||||
_constructGUID = 0;
|
||||
_constructGUID.Clear();
|
||||
_heatTimer = 0;
|
||||
}
|
||||
|
||||
@@ -412,7 +411,7 @@ class npc_scorch_ground : public CreatureScript
|
||||
}
|
||||
|
||||
private:
|
||||
uint64 _constructGUID;
|
||||
ObjectGuid _constructGUID;
|
||||
uint32 _heatTimer;
|
||||
bool _heat;
|
||||
};
|
||||
|
||||
@@ -115,7 +115,7 @@ class boss_kologarn : public CreatureScript
|
||||
|
||||
Vehicle* vehicle;
|
||||
bool left, right;
|
||||
uint64 eyebeamTarget;
|
||||
ObjectGuid eyebeamTarget;
|
||||
|
||||
void EnterCombat(Unit* /*who*/) override
|
||||
{
|
||||
@@ -139,7 +139,7 @@ class boss_kologarn : public CreatureScript
|
||||
{
|
||||
_Reset();
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
eyebeamTarget = 0;
|
||||
eyebeamTarget.Clear();
|
||||
}
|
||||
|
||||
void JustDied(Unit* /*killer*/) override
|
||||
@@ -339,7 +339,7 @@ class spell_ulduar_rubble_summon : public SpellScriptLoader
|
||||
if (!caster)
|
||||
return;
|
||||
|
||||
uint64 originalCaster = caster->GetInstanceScript() ? caster->GetInstanceScript()->GetGuidData(BOSS_KOLOGARN) : 0;
|
||||
ObjectGuid originalCaster = caster->GetInstanceScript() ? caster->GetInstanceScript()->GetGuidData(BOSS_KOLOGARN) : ObjectGuid::Empty;
|
||||
uint32 spellId = GetEffectValue();
|
||||
for (uint8 i = 0; i < 5; ++i)
|
||||
caster->CastSpell(caster, spellId, true, NULL, NULL, originalCaster);
|
||||
|
||||
@@ -592,14 +592,14 @@ class npc_expedition_commander : public CreatureScript
|
||||
|
||||
struct npc_expedition_commanderAI : public ScriptedAI
|
||||
{
|
||||
npc_expedition_commanderAI(Creature* creature) : ScriptedAI(creature)
|
||||
npc_expedition_commanderAI(Creature* creature) : ScriptedAI(creature), summons(creature)
|
||||
{
|
||||
instance = me->GetInstanceScript();
|
||||
Greet = false;
|
||||
}
|
||||
|
||||
InstanceScript* instance;
|
||||
std::list<uint64> summons;
|
||||
SummonList summons;
|
||||
|
||||
bool Greet;
|
||||
uint32 AttackStartTimer;
|
||||
@@ -612,7 +612,7 @@ class npc_expedition_commander : public CreatureScript
|
||||
AttackStartTimer = 0;
|
||||
Phase = 0;
|
||||
Greet = false;
|
||||
summons.clear();
|
||||
summons.DespawnAll();
|
||||
}
|
||||
|
||||
void MoveInLineOfSight(Unit* who) override
|
||||
@@ -627,7 +627,7 @@ class npc_expedition_commander : public CreatureScript
|
||||
|
||||
void JustSummoned(Creature* summoned) override
|
||||
{
|
||||
summons.push_back(summoned->GetGUID());
|
||||
summons.Summon(summoned);
|
||||
}
|
||||
|
||||
void DoAction(int32 action) override
|
||||
@@ -638,7 +638,7 @@ class npc_expedition_commander : public CreatureScript
|
||||
Talk(SAY_GROUND_PHASE);
|
||||
break;
|
||||
case ACTION_COMMANDER_RESET:
|
||||
summons.clear();
|
||||
summons.DespawnAll();
|
||||
me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP);
|
||||
break;
|
||||
}
|
||||
@@ -652,7 +652,7 @@ class npc_expedition_commander : public CreatureScript
|
||||
{
|
||||
case 1:
|
||||
instance->SetBossState(BOSS_RAZORSCALE, IN_PROGRESS);
|
||||
summons.clear();
|
||||
summons.DespawnAll();
|
||||
AttackStartTimer = 1000;
|
||||
Phase = 2;
|
||||
break;
|
||||
|
||||
@@ -666,23 +666,23 @@ class boss_sara : public CreatureScript
|
||||
{
|
||||
boss_saraAI(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { }
|
||||
|
||||
uint64 GetLinkedPlayerGUID(uint64 guid) const
|
||||
ObjectGuid GetLinkedPlayerGUID(ObjectGuid guid) const
|
||||
{
|
||||
std::map<uint64, uint64>::const_iterator itr = _linkData.find(guid);
|
||||
std::map<ObjectGuid, ObjectGuid>::const_iterator itr = _linkData.find(guid);
|
||||
if (itr != _linkData.end())
|
||||
return itr->second;
|
||||
|
||||
return 0;
|
||||
return ObjectGuid::Empty;
|
||||
}
|
||||
|
||||
void SetLinkBetween(uint64 player1, uint64 player2)
|
||||
void SetLinkBetween(ObjectGuid player1, ObjectGuid player2)
|
||||
{
|
||||
_linkData[player1] = player2;
|
||||
_linkData[player2] = player1;
|
||||
}
|
||||
|
||||
// called once for each target on aura remove
|
||||
void RemoveLinkFrom(uint64 player1)
|
||||
void RemoveLinkFrom(ObjectGuid player1)
|
||||
{
|
||||
_linkData.erase(player1);
|
||||
}
|
||||
@@ -870,7 +870,7 @@ class boss_sara : public CreatureScript
|
||||
private:
|
||||
EventMap _events;
|
||||
InstanceScript* _instance;
|
||||
std::map<uint64, uint64> _linkData;
|
||||
std::map<ObjectGuid, ObjectGuid> _linkData;
|
||||
};
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
@@ -2782,7 +2782,7 @@ class spell_yogg_saron_induce_madness : public SpellScriptLoader // 64059
|
||||
if (Unit* target = GetHitUnit())
|
||||
{
|
||||
target->CastSpell(target, SPELL_TELEPORT_BACK_TO_MAIN_ROOM);
|
||||
target->RemoveAurasDueToSpell(SPELL_SANITY, 0, 0, AURA_REMOVE_BY_ENEMY_SPELL);
|
||||
target->RemoveAurasDueToSpell(SPELL_SANITY, ObjectGuid::Empty, 0, AURA_REMOVE_BY_ENEMY_SPELL);
|
||||
target->RemoveAurasDueToSpell(uint32(GetEffectValue()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -170,13 +170,11 @@ public:
|
||||
boss_skadiAI(Creature* creature) : ScriptedAI(creature), Summons(me)
|
||||
{
|
||||
instance = creature->GetInstanceScript();
|
||||
m_uiGraufGUID = 0;
|
||||
}
|
||||
|
||||
InstanceScript* instance;
|
||||
SummonList Summons;
|
||||
uint64 m_uiGraufGUID;
|
||||
std::vector<uint64> triggersGUID;
|
||||
ObjectGuid m_uiGraufGUID;
|
||||
|
||||
uint32 m_uiCrushTimer;
|
||||
uint32 m_uiPoisonedSpearTimer;
|
||||
@@ -192,8 +190,6 @@ public:
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
triggersGUID.clear();
|
||||
|
||||
m_uiCrushTimer = 8000;
|
||||
m_uiPoisonedSpearTimer = 10000;
|
||||
m_uiWhirlwindTimer = 20000;
|
||||
@@ -266,7 +262,7 @@ public:
|
||||
void SummonedCreatureDespawn(Creature* summoned) override
|
||||
{
|
||||
if (summoned->GetEntry() == NPC_GRAUF)
|
||||
m_uiGraufGUID = 0;
|
||||
m_uiGraufGUID.Clear();
|
||||
Summons.Despawn(summoned);
|
||||
}
|
||||
|
||||
|
||||
@@ -153,9 +153,9 @@ class boss_svala : public CreatureScript
|
||||
|
||||
me->SetDisableGravity(events.IsInPhase(NORMAL));
|
||||
|
||||
_arthasGUID = 0;
|
||||
_arthasGUID.Clear();
|
||||
|
||||
instance->SetGuidData(DATA_SACRIFICED_PLAYER, 0);
|
||||
instance->SetGuidData(DATA_SACRIFICED_PLAYER, ObjectGuid::Empty);
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* /*who*/) override
|
||||
@@ -181,7 +181,7 @@ class boss_svala : public CreatureScript
|
||||
events.SetPhase(INTRO);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
|
||||
if (GameObject* mirror = ObjectAccessor::GetGameObject(*me, DATA_UTGARDE_MIRROR))
|
||||
if (GameObject* mirror = ObjectAccessor::GetGameObject(*me, instance->GetGuidData(DATA_UTGARDE_MIRROR)))
|
||||
mirror->SetGoState(GO_STATE_READY);
|
||||
|
||||
if (Creature* arthas = me->SummonCreature(NPC_ARTHAS, ArthasPos, TEMPSUMMON_MANUAL_DESPAWN))
|
||||
@@ -324,12 +324,12 @@ class boss_svala : public CreatureScript
|
||||
break;
|
||||
}
|
||||
case EVENT_INTRO_DESPAWN_ARTHAS:
|
||||
if (GameObject* mirror = ObjectAccessor::GetGameObject(*me, DATA_UTGARDE_MIRROR))
|
||||
if (GameObject* mirror = ObjectAccessor::GetGameObject(*me, instance->GetGuidData(DATA_UTGARDE_MIRROR)))
|
||||
mirror->SetGoState(GO_STATE_ACTIVE);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
if (Creature* arthas = ObjectAccessor::GetCreature(*me, _arthasGUID))
|
||||
arthas->DespawnOrUnsummon();
|
||||
_arthasGUID = 0;
|
||||
_arthasGUID.Clear();
|
||||
events.SetPhase(NORMAL);
|
||||
_introCompleted = true;
|
||||
events.ScheduleEvent(EVENT_SINISTER_STRIKE, 7 * IN_MILLISECONDS, 0, NORMAL);
|
||||
@@ -378,7 +378,7 @@ class boss_svala : public CreatureScript
|
||||
}
|
||||
|
||||
private:
|
||||
uint64 _arthasGUID;
|
||||
ObjectGuid _arthasGUID;
|
||||
bool _sacrificed;
|
||||
bool _introCompleted;
|
||||
};
|
||||
|
||||
@@ -138,8 +138,8 @@ public:
|
||||
uint32 m_uiHealthAmountModifier;
|
||||
uint32 m_uiHealthAmountMultipler;
|
||||
|
||||
uint64 m_uiActivedCreatureGUID;
|
||||
uint64 m_uiOrbGUID;
|
||||
ObjectGuid m_uiActivedCreatureGUID;
|
||||
ObjectGuid m_uiOrbGUID;
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
@@ -167,8 +167,8 @@ public:
|
||||
m_uiHealthAmountModifier = 1;
|
||||
m_uiHealthAmountMultipler = DUNGEON_MODE(20, 25);
|
||||
|
||||
m_uiActivedCreatureGUID = 0;
|
||||
m_uiOrbGUID = 0;
|
||||
m_uiActivedCreatureGUID.Clear();
|
||||
m_uiOrbGUID.Clear();
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* /*who*/) override
|
||||
@@ -361,13 +361,13 @@ public:
|
||||
Talk(SAY_SLAY);
|
||||
}
|
||||
|
||||
void DespawnBoatGhosts(uint64& m_uiCreatureGUID)
|
||||
void DespawnBoatGhosts(ObjectGuid& m_uiCreatureGUID)
|
||||
{
|
||||
if (m_uiCreatureGUID)
|
||||
if (Creature* temp = ObjectAccessor::GetCreature(*me, m_uiCreatureGUID))
|
||||
temp->DisappearAndDie();
|
||||
|
||||
m_uiCreatureGUID = 0;
|
||||
m_uiCreatureGUID.Clear();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ class boss_emalon : public CreatureScript
|
||||
{
|
||||
if (!summons.empty())
|
||||
{
|
||||
for (std::list<uint64>::const_iterator itr = summons.begin(); itr != summons.end(); ++itr)
|
||||
for (SummonList::const_iterator itr = summons.begin(); itr != summons.end(); ++itr)
|
||||
{
|
||||
Creature* minion = ObjectAccessor::GetCreature(*me, *itr);
|
||||
if (minion && minion->IsAlive() && !minion->GetVictim() && minion->AI())
|
||||
|
||||
@@ -166,7 +166,7 @@ public:
|
||||
|
||||
if (uiChainHealTimer <= diff)
|
||||
{
|
||||
if (uint64 TargetGUID = GetChainHealTargetGUID())
|
||||
if (ObjectGuid TargetGUID = GetChainHealTargetGUID())
|
||||
{
|
||||
if (Creature* target = ObjectAccessor::GetCreature(*me, TargetGUID))
|
||||
DoCast(target, SPELL_CHAIN_HEAL);
|
||||
@@ -224,7 +224,7 @@ public:
|
||||
Talk(SAY_SLAY);
|
||||
}
|
||||
|
||||
uint64 GetChainHealTargetGUID()
|
||||
ObjectGuid GetChainHealTargetGUID()
|
||||
{
|
||||
if (HealthBelowPct(85))
|
||||
return me->GetGUID();
|
||||
@@ -237,7 +237,7 @@ public:
|
||||
if (pGuard2 && pGuard2->IsAlive() && !pGuard2->HealthAbovePct(75))
|
||||
return pGuard2->GetGUID();
|
||||
|
||||
return 0;
|
||||
return ObjectGuid::Empty;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -221,7 +221,7 @@ public:
|
||||
{
|
||||
if (!bIsExploded)
|
||||
{
|
||||
if (!me->HasAura(SPELL_PROTECTIVE_BUBBLE, 0))
|
||||
if (!me->HasAura(SPELL_PROTECTIVE_BUBBLE))
|
||||
{
|
||||
Talk(SAY_SHATTER);
|
||||
DoCast(me, SPELL_WATER_BLAST);
|
||||
@@ -241,7 +241,7 @@ public:
|
||||
bool bIsWaterElementsAlive = false;
|
||||
if (!m_waterElements.empty())
|
||||
{
|
||||
for (std::list<uint64>::const_iterator itr = m_waterElements.begin(); itr != m_waterElements.end(); ++itr)
|
||||
for (SummonList::const_iterator itr = m_waterElements.begin(); itr != m_waterElements.end(); ++itr)
|
||||
if (Creature* temp = ObjectAccessor::GetCreature(*me, *itr))
|
||||
if (temp->IsAlive())
|
||||
{
|
||||
|
||||
Reference in new issue
Block a user