mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-02-06 12:27:48 +00:00
feat(Core/Misc): implement ObjectGuid class (port from TC) (#4885)
This commit is contained in:
@@ -26,8 +26,6 @@ public:
|
||||
{
|
||||
SetBossNumber(MAX_ENCOUNTERS);
|
||||
LoadDoorData(doorData);
|
||||
_krikthirGUID = 0;
|
||||
_hadronoxGUID = 0;
|
||||
};
|
||||
|
||||
void OnCreatureCreate(Creature* creature) override
|
||||
@@ -114,8 +112,8 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
uint64 _krikthirGUID;
|
||||
uint64 _hadronoxGUID;
|
||||
ObjectGuid _krikthirGUID;
|
||||
ObjectGuid _hadronoxGUID;
|
||||
};
|
||||
|
||||
InstanceScript* GetInstanceScript(InstanceMap* map) const override
|
||||
|
||||
@@ -253,7 +253,7 @@ public:
|
||||
if (me->GetEntry() == NPC_AHNKAHAR_GUARDIAN_ENTRY)
|
||||
{
|
||||
if (InstanceScript* pInstance = me->GetInstanceScript())
|
||||
if (Creature* nadox = ObjectAccessor::GetCreature(*me, pInstance->GetData64(DATA_ELDER_NADOX)))
|
||||
if (Creature* nadox = ObjectAccessor::GetCreature(*me, pInstance->GetGuidData(DATA_ELDER_NADOX)))
|
||||
nadox->AI()->DoAction(ACTION_GUARDIAN_DIED);
|
||||
|
||||
me->RemoveAllAuras();
|
||||
|
||||
@@ -200,9 +200,9 @@ public:
|
||||
}
|
||||
|
||||
uint16 phase = 1;
|
||||
for (std::list<uint64>::iterator itr = summons.begin(); itr != summons.end(); ++itr)
|
||||
for (ObjectGuid guid : summons)
|
||||
{
|
||||
if (Creature* summon = ObjectAccessor::GetCreature(*me, *itr))
|
||||
if (Creature* summon = ObjectAccessor::GetCreature(*me, guid))
|
||||
phase |= summon->GetPhaseMask();
|
||||
}
|
||||
|
||||
|
||||
@@ -144,7 +144,7 @@ public:
|
||||
|
||||
uint8 rnd = urand(0, summons.size() - 1);
|
||||
uint8 loop = 0;
|
||||
for (std::list<uint64>::iterator i = summons.begin(); i != summons.end();)
|
||||
for (GuidList::iterator i = summons.begin(); i != summons.end();)
|
||||
{
|
||||
Creature* summon = ObjectAccessor::GetCreature(*me, *i);
|
||||
if (summon && summon->GetEntry() == NPC_INITIATE && loop >= rnd)
|
||||
@@ -450,7 +450,7 @@ public:
|
||||
if (!pInstance || Killer == me)
|
||||
return;
|
||||
|
||||
Creature* boss = me->GetMap()->GetCreature(pInstance->GetData64(DATA_JEDOGA_SHADOWSEEKER));
|
||||
Creature* boss = me->GetMap()->GetCreature(pInstance->GetGuidData(DATA_JEDOGA_SHADOWSEEKER));
|
||||
if (boss)
|
||||
{
|
||||
if (Timer)
|
||||
@@ -475,7 +475,7 @@ public:
|
||||
{
|
||||
Unit::Kill(me, me);
|
||||
me->DespawnOrUnsummon(5000);
|
||||
Creature* boss = me->GetMap()->GetCreature(pInstance->GetData64(DATA_JEDOGA_SHADOWSEEKER));
|
||||
Creature* boss = me->GetMap()->GetCreature(pInstance->GetGuidData(DATA_JEDOGA_SHADOWSEEKER));
|
||||
if (boss)
|
||||
boss->AI()->DoAction(ACTION_HERALD);
|
||||
}
|
||||
|
||||
@@ -70,7 +70,7 @@ public:
|
||||
InstanceScript* pInstance;
|
||||
EventMap events;
|
||||
SummonList summons;
|
||||
uint64 vanishTarget;
|
||||
ObjectGuid vanishTarget;
|
||||
uint32 vanishDamage;
|
||||
|
||||
void Reset() override
|
||||
@@ -81,7 +81,7 @@ public:
|
||||
events.Reset();
|
||||
summons.DespawnAll();
|
||||
vanishDamage = 0;
|
||||
vanishTarget = 0;
|
||||
vanishTarget.Clear();
|
||||
|
||||
if (pInstance)
|
||||
{
|
||||
@@ -105,7 +105,7 @@ public:
|
||||
me->UpdatePosition(me->GetPositionX(), me->GetPositionY(), DATA_GROUND_POSITION_Z, me->GetOrientation(), true);
|
||||
|
||||
if (pInstance)
|
||||
pInstance->HandleGameObject(pInstance->GetData64(DATA_PRINCE_TALDARAM_PLATFORM), true);
|
||||
pInstance->HandleGameObject(pInstance->GetGuidData(DATA_PRINCE_TALDARAM_PLATFORM), true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -126,7 +126,7 @@ public:
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_PRINCE_FLAME_SPHERES, 10000);
|
||||
events.ScheduleEvent(EVENT_PRINCE_BLOODTHIRST, 10000);
|
||||
vanishTarget = 0;
|
||||
vanishTarget.Clear();
|
||||
vanishDamage = 0;
|
||||
}
|
||||
|
||||
@@ -334,7 +334,7 @@ public:
|
||||
if (!pInstance)
|
||||
return false;
|
||||
|
||||
Creature* pPrinceTaldaram = ObjectAccessor::GetCreature(*go, pInstance->GetData64(DATA_PRINCE_TALDARAM));
|
||||
Creature* pPrinceTaldaram = ObjectAccessor::GetCreature(*go, pInstance->GetGuidData(DATA_PRINCE_TALDARAM));
|
||||
if (pPrinceTaldaram && pPrinceTaldaram->IsAlive())
|
||||
{
|
||||
go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
|
||||
@@ -17,14 +17,14 @@ public:
|
||||
{
|
||||
instance_ahnkahet_InstanceScript(Map* pMap) : InstanceScript(pMap) {Initialize();};
|
||||
|
||||
uint64 Elder_Nadox;
|
||||
uint64 Prince_Taldaram;
|
||||
uint64 Jedoga_Shadowseeker;
|
||||
uint64 Herald_Volazj;
|
||||
uint64 Amanitar;
|
||||
ObjectGuid Elder_Nadox;
|
||||
ObjectGuid Prince_Taldaram;
|
||||
ObjectGuid Jedoga_Shadowseeker;
|
||||
ObjectGuid Herald_Volazj;
|
||||
ObjectGuid Amanitar;
|
||||
|
||||
uint64 Prince_TaldaramPlatform;
|
||||
uint64 Prince_TaldaramGate;
|
||||
ObjectGuid Prince_TaldaramPlatform;
|
||||
ObjectGuid Prince_TaldaramGate;
|
||||
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
uint32 spheres;
|
||||
@@ -36,14 +36,6 @@ public:
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
Elder_Nadox = 0;
|
||||
Prince_Taldaram = 0;
|
||||
Jedoga_Shadowseeker = 0;
|
||||
Herald_Volazj = 0;
|
||||
Amanitar = 0;
|
||||
|
||||
Prince_TaldaramPlatform = 0;
|
||||
Prince_TaldaramGate = 0;
|
||||
spheres = NOT_STARTED;
|
||||
|
||||
nadoxAchievement = false;
|
||||
@@ -87,7 +79,7 @@ public:
|
||||
case 193564:
|
||||
Prince_TaldaramPlatform = pGo->GetGUID();
|
||||
if (m_auiEncounter[1] == DONE)
|
||||
HandleGameObject(0, true, pGo);
|
||||
HandleGameObject(ObjectGuid::Empty, true, pGo);
|
||||
|
||||
break;
|
||||
case 193093:
|
||||
@@ -113,13 +105,13 @@ public:
|
||||
case 192236:
|
||||
Prince_TaldaramGate = pGo->GetGUID(); // Web gate past Prince Taldaram
|
||||
if (m_auiEncounter[1] == DONE)
|
||||
HandleGameObject(0, true, pGo);
|
||||
HandleGameObject(ObjectGuid::Empty, true, pGo);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
uint64 GetData64(uint32 identifier) const override
|
||||
ObjectGuid GetGuidData(uint32 identifier) const override
|
||||
{
|
||||
switch(identifier)
|
||||
{
|
||||
@@ -137,7 +129,7 @@ public:
|
||||
return Prince_TaldaramPlatform;
|
||||
}
|
||||
|
||||
return 0;
|
||||
return ObjectGuid::Empty;
|
||||
}
|
||||
|
||||
bool CheckAchievementCriteriaMeet(uint32 criteria_id, Player const* /*source*/, Unit const* /*target*/, uint32 /*miscvalue1*/) override
|
||||
|
||||
Reference in New Issue
Block a user