feat(Core/Misc): implement ObjectGuid class (port from TC) (#4885)

This commit is contained in:
UltraNix
2021-04-25 22:18:03 +02:00
committed by GitHub
parent 91081f4ad8
commit f4c226423d
568 changed files with 10655 additions and 11019 deletions

View File

@@ -314,7 +314,7 @@ struct boss_priestess_lackey_commonAI : public ScriptedAI
void EnterEvadeMode() override
{
if (Creature* delrissa = ObjectAccessor::GetCreature(*me, instance->GetData64(NPC_DELRISSA)))
if (Creature* delrissa = ObjectAccessor::GetCreature(*me, instance->GetGuidData(NPC_DELRISSA)))
if (!delrissa->IsAlive())
{
delrissa->Respawn();
@@ -325,7 +325,7 @@ struct boss_priestess_lackey_commonAI : public ScriptedAI
void EnterCombat(Unit* who) override
{
if (Creature* delrissa = ObjectAccessor::GetCreature(*me, instance->GetData64(NPC_DELRISSA)))
if (Creature* delrissa = ObjectAccessor::GetCreature(*me, instance->GetGuidData(NPC_DELRISSA)))
if (delrissa->IsAlive() && !delrissa->IsInCombat())
delrissa->AI()->AttackStart(who);
@@ -344,7 +344,7 @@ struct boss_priestess_lackey_commonAI : public ScriptedAI
void KilledUnit(Unit* victim) override
{
if (Creature* delrissa = ObjectAccessor::GetCreature(*me, instance->GetData64(NPC_DELRISSA)))
if (Creature* delrissa = ObjectAccessor::GetCreature(*me, instance->GetGuidData(NPC_DELRISSA)))
delrissa->AI()->KilledUnit(victim);
}

View File

@@ -59,7 +59,7 @@ public:
InstanceScript* instance;
EventMap events;
SummonList summons;
uint64 CrystalGUID;
ObjectGuid CrystalGUID;
bool CanAIAttack(const Unit* who) const override
{
@@ -94,7 +94,7 @@ public:
summons.DespawnAll();
SpawnCrystals();
instance->SetData(DATA_SELIN_EVENT, NOT_STARTED);
CrystalGUID = 0;
CrystalGUID.Clear();
me->SetPower(POWER_MANA, 0);
}
@@ -130,7 +130,7 @@ public:
if (summons.empty())
return;
CrystalGUID = 0;
CrystalGUID.Clear();
Unit* crystal = nullptr;
for (SummonList::const_iterator i = summons.begin(); i != summons.end(); )
if (Creature* summon = ObjectAccessor::GetCreature(*me, *i++))

View File

@@ -17,29 +17,19 @@ public:
uint32 Encounter[MAX_ENCOUNTER];
uint64 VexallusDoorGUID;
uint64 SelinDoorGUID;
uint64 SelinEncounterDoorGUID;
uint64 DelrissaDoorGUID;
uint64 KaelDoorGUID;
uint64 EscapeOrbGUID;
ObjectGuid VexallusDoorGUID;
ObjectGuid SelinDoorGUID;
ObjectGuid SelinEncounterDoorGUID;
ObjectGuid DelrissaDoorGUID;
ObjectGuid KaelDoorGUID;
ObjectGuid EscapeOrbGUID;
uint64 DelrissaGUID;
uint64 KaelGUID;
ObjectGuid DelrissaGUID;
ObjectGuid KaelGUID;
void Initialize() override
{
memset(&Encounter, 0, sizeof(Encounter));
VexallusDoorGUID = 0;
SelinDoorGUID = 0;
SelinEncounterDoorGUID = 0;
DelrissaDoorGUID = 0;
KaelDoorGUID = 0;
EscapeOrbGUID = 0;
DelrissaGUID = 0;
KaelGUID = 0;
}
bool IsEncounterInProgress() const override
@@ -118,7 +108,7 @@ public:
{
case GO_SELIN_DOOR:
if (GetData(DATA_SELIN_EVENT) == DONE)
HandleGameObject(0, true, go);
HandleGameObject(ObjectGuid::Empty, true, go);
SelinDoorGUID = go->GetGUID();
break;
case GO_SELIN_ENCOUNTER_DOOR:
@@ -127,13 +117,13 @@ public:
case GO_VEXALLUS_DOOR:
if (GetData(DATA_VEXALLUS_EVENT) == DONE)
HandleGameObject(0, true, go);
HandleGameObject(ObjectGuid::Empty, true, go);
VexallusDoorGUID = go->GetGUID();
break;
case GO_DELRISSA_DOOR:
if (GetData(DATA_DELRISSA_EVENT) == DONE)
HandleGameObject(0, true, go);
HandleGameObject(ObjectGuid::Empty, true, go);
DelrissaDoorGUID = go->GetGUID();
break;
case GO_KAEL_DOOR:
@@ -182,14 +172,15 @@ public:
OUT_LOAD_INST_DATA_COMPLETE;
}
uint64 GetData64(uint32 identifier) const override
ObjectGuid GetGuidData(uint32 identifier) const override
{
switch (identifier)
{
case NPC_DELRISSA:
return DelrissaGUID;
}
return 0;
return ObjectGuid::Empty;
}
};