mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-16 10:30:27 +00:00
feat(Core/Scripts): implemented a guid map in InstanceScript, this wa… (#8781)
Co-authored-by: joschiwald <joschiwald.trinity@gmail.com>
This commit is contained in:
@@ -28,6 +28,12 @@ DoorData const doorData[] =
|
||||
{ 0, 0, DOOR_TYPE_ROOM, BOUNDARY_NONE }
|
||||
};
|
||||
|
||||
ObjectData const creatureData[] =
|
||||
{
|
||||
{ NPC_KRIKTHIR_THE_GATEWATCHER, DATA_KRIKTHIR_THE_GATEWATCHER_EVENT },
|
||||
{ NPC_HADRONOX, DATA_HADRONOX_EVENT }
|
||||
};
|
||||
|
||||
class instance_azjol_nerub : public InstanceMapScript
|
||||
{
|
||||
public:
|
||||
@@ -39,30 +45,27 @@ public:
|
||||
{
|
||||
SetBossNumber(MAX_ENCOUNTERS);
|
||||
LoadDoorData(doorData);
|
||||
LoadObjectData(creatureData, nullptr);
|
||||
};
|
||||
|
||||
void OnCreatureCreate(Creature* creature) override
|
||||
{
|
||||
switch (creature->GetEntry())
|
||||
{
|
||||
case NPC_KRIKTHIR_THE_GATEWATCHER:
|
||||
_krikthirGUID = creature->GetGUID();
|
||||
break;
|
||||
case NPC_HADRONOX:
|
||||
_hadronoxGUID = creature->GetGUID();
|
||||
break;
|
||||
case NPC_SKITTERING_SWARMER:
|
||||
case NPC_SKITTERING_INFECTIOR:
|
||||
if (Creature* krikthir = instance->GetCreature(_krikthirGUID))
|
||||
if (Creature* krikthir = GetCreature((DATA_KRIKTHIR_THE_GATEWATCHER_EVENT)))
|
||||
krikthir->AI()->JustSummoned(creature);
|
||||
break;
|
||||
case NPC_ANUB_AR_CHAMPION:
|
||||
case NPC_ANUB_AR_NECROMANCER:
|
||||
case NPC_ANUB_AR_CRYPTFIEND:
|
||||
if (Creature* hadronox = instance->GetCreature(_hadronoxGUID))
|
||||
if (Creature* hadronox = GetCreature(DATA_HADRONOX_EVENT))
|
||||
hadronox->AI()->JustSummoned(creature);
|
||||
break;
|
||||
}
|
||||
|
||||
InstanceScript::OnCreatureCreate(creature);
|
||||
}
|
||||
|
||||
void OnGameObjectCreate(GameObject* go) override
|
||||
@@ -123,10 +126,6 @@ public:
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private:
|
||||
ObjectGuid _krikthirGUID;
|
||||
ObjectGuid _hadronoxGUID;
|
||||
};
|
||||
|
||||
InstanceScript* GetInstanceScript(InstanceMap* map) const override
|
||||
|
||||
Reference in New Issue
Block a user