Scripts/ZG: apply updated standards to instance script

This commit is contained in:
Ovahlord
2018-08-30 10:31:12 +02:00
parent a087b7e9a1
commit e6108ea111
5 changed files with 30 additions and 140 deletions

View File

@@ -55,7 +55,7 @@ class boss_jindo_the_godbreaker : public CreatureScript
struct boss_jindo_the_godbreakerAI : public BossAI
{
boss_jindo_the_godbreakerAI(Creature* creature) : BossAI(creature, DATA_JINDO) { }
boss_jindo_the_godbreakerAI(Creature* creature) : BossAI(creature, DATA_JINDO_THE_GODBREAKER) { }
void Reset() override
{

View File

@@ -108,7 +108,7 @@ class boss_mandokir : public CreatureScript
struct boss_mandokirAI : public BossAI
{
boss_mandokirAI(Creature* creature) : BossAI(creature, DATA_MANDOKIR) { }
boss_mandokirAI(Creature* creature) : BossAI(creature, DATA_BLOODLORD_MANDOKIR) { }
void Reset() override
{
@@ -318,7 +318,7 @@ class npc_ohgan : public CreatureScript
DoCast(me, SPELL_CLEAR_ALL, true);
DoCast(me, SPELL_PERMANENT_FEIGN_DEATH);
if (Creature* mandokir = ObjectAccessor::GetCreature(*me, _instance->GetGuidData(DATA_MANDOKIR)))
if (Creature* mandokir = ObjectAccessor::GetCreature(*me, _instance->GetGuidData(DATA_BLOODLORD_MANDOKIR)))
mandokir->AI()->DoAction(ACTION_OHGAN_IS_DEATH);
}
}
@@ -407,7 +407,7 @@ class npc_chained_spirit : public CreatureScript
if (!target || target->IsAlive())
return;
if (Creature* mandokir = ObjectAccessor::GetCreature(*me, _instance->GetGuidData(DATA_MANDOKIR)))
if (Creature* mandokir = ObjectAccessor::GetCreature(*me, _instance->GetGuidData(DATA_BLOODLORD_MANDOKIR)))
{
mandokir->GetAI()->SetGUID(target->GetGUID());
mandokir->GetAI()->DoAction(ACTION_START_REVIVE);

View File

@@ -47,7 +47,7 @@ class boss_venoxis : public CreatureScript
struct boss_venoxisAI : public BossAI
{
boss_venoxisAI(Creature* creature) : BossAI(creature, DATA_VENOXIS) { }
boss_venoxisAI(Creature* creature) : BossAI(creature, DATA_HIGH_PRIEST_VENOXIS) { }
void Reset() override
{

View File

@@ -22,14 +22,23 @@
#include "InstanceScript.h"
#include "zulgurub.h"
ObjectData const creatureData[] =
{
{ BOSS_HIGH_PRIEST_VENOXIS, DATA_HIGH_PRIEST_VENOXIS },
{ BOSS_BLOODLORD_MANDOKIR, DATA_BLOODLORD_MANDOKIR },
{ BOSS_KILNARA, DATA_KILNARA },
{ BOSS_ZANZIL, DATA_ZANZIL },
{ BOSS_JINDO_THE_GODBREAKER, DATA_JINDO_THE_GODBREAKER }
};
DoorData const doorData[] =
{
{ GO_VENOXIS_COIL, DATA_VENOXIS, DOOR_TYPE_ROOM },
{ GO_ARENA_DOOR_1, DATA_MANDOKIR, DOOR_TYPE_ROOM },
{ GO_FORCEFIELD, DATA_KILNARA, DOOR_TYPE_ROOM },
{ GO_ZANZIL_DOOR, DATA_ZANZIL, DOOR_TYPE_ROOM },
{ GO_VENOXIS_COIL, DATA_HIGH_PRIEST_VENOXIS, DOOR_TYPE_ROOM },
{ GO_ARENA_DOOR_1, DATA_BLOODLORD_MANDOKIR, DOOR_TYPE_ROOM },
{ GO_FORCEFIELD, DATA_KILNARA, DOOR_TYPE_ROOM },
{ GO_ZANZIL_DOOR, DATA_ZANZIL, DOOR_TYPE_ROOM },
//{ GO_THE_CACHE_OF_MADNESS_DOOR, DATA_xxxxxxx, DOOR_TYPE_ROOM },
{ 0, 0, DOOR_TYPE_ROOM }
{ 0, 0, DOOR_TYPE_ROOM } // END
};
class instance_zulgurub : public InstanceMapScript
@@ -43,78 +52,18 @@ class instance_zulgurub : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadObjectData(creatureData, nullptr);
LoadDoorData(doorData);
}
void OnCreatureCreate(Creature* creature) override
{
switch (creature->GetEntry())
{
case NPC_VENOXIS:
venoxisGUID = creature->GetGUID();
break;
case NPC_MANDOKIR:
mandokirGUID = creature->GetGUID();
break;
case NPC_KILNARA:
kilnaraGUID = creature->GetGUID();
break;
case NPC_ZANZIL:
zanzilGUID = creature->GetGUID();
break;
case NPC_JINDO:
jindoGUID = creature->GetGUID();
break;
case NPC_HAZZARAH:
hazzarahGUID = creature->GetGUID();
break;
case NPC_RENATAKI:
renatakiGUID = creature->GetGUID();
break;
case NPC_WUSHOOLAY:
wushoolayGUID = creature->GetGUID();
break;
case NPC_GRILEK:
grilekGUID = creature->GetGUID();
break;
case NPC_JINDO_TRIGGER:
jindoTiggerGUID = creature->GetGUID();
break;
default:
break;
}
InstanceScript::OnCreatureCreate(creature);
}
void OnGameObjectCreate(GameObject* go) override
{
switch (go->GetEntry())
{
case GO_VENOXIS_COIL:
case GO_ARENA_DOOR_1:
case GO_FORCEFIELD:
case GO_ZANZIL_DOOR:
case GO_THE_CACHE_OF_MADNESS_DOOR:
AddDoor(go, true);
break;
default:
break;
}
}
void OnGameObjectRemove(GameObject* go) override
{
switch (go->GetEntry())
{
case GO_VENOXIS_COIL:
case GO_ARENA_DOOR_1:
case GO_FORCEFIELD:
case GO_ZANZIL_DOOR:
case GO_THE_CACHE_OF_MADNESS_DOOR:
AddDoor(go, false);
break;
default:
break;
}
InstanceScript::OnGameObjectCreate(go);
}
bool SetBossState(uint32 type, EncounterState state) override
@@ -122,22 +71,6 @@ class instance_zulgurub : public InstanceMapScript
if (!InstanceScript::SetBossState(type, state))
return false;
switch (type)
{
case DATA_VENOXIS:
case DATA_MANDOKIR:
case DATA_KILNARA:
case DATA_ZANZIL:
case DATA_JINDO:
case DATA_HAZZARAH:
case DATA_RENATAKI:
case DATA_WUSHOOLAY:
case DATA_GRILEK:
break;
default:
break;
}
return true;
}
@@ -158,49 +91,6 @@ class instance_zulgurub : public InstanceMapScript
return 0;
}
*/
ObjectGuid GetGuidData(uint32 type) const override
{
switch (type)
{
case DATA_VENOXIS:
return venoxisGUID;
case DATA_MANDOKIR:
return mandokirGUID;
case DATA_KILNARA:
return kilnaraGUID;
case DATA_ZANZIL:
return zanzilGUID;
case DATA_JINDO:
return jindoGUID;
case DATA_HAZZARAH:
return hazzarahGUID;
case DATA_RENATAKI:
return renatakiGUID;
case DATA_WUSHOOLAY:
return wushoolayGUID;
case DATA_GRILEK:
return grilekGUID;
case DATA_JINDOR_TRIGGER:
return jindoTiggerGUID;
default:
break;
}
return ObjectGuid::Empty;
}
protected:
ObjectGuid venoxisGUID;
ObjectGuid mandokirGUID;
ObjectGuid kilnaraGUID;
ObjectGuid zanzilGUID;
ObjectGuid jindoGUID;
ObjectGuid hazzarahGUID;
ObjectGuid renatakiGUID;
ObjectGuid wushoolayGUID;
ObjectGuid grilekGUID;
ObjectGuid jindoTiggerGUID;
};
InstanceScript* GetInstanceScript(InstanceMap* map) const override

View File

@@ -28,11 +28,11 @@ uint32 const EncounterCount = 5;
enum ZGDataTypes
{
DATA_VENOXIS = 0,
DATA_MANDOKIR = 1,
DATA_HIGH_PRIEST_VENOXIS = 0,
DATA_BLOODLORD_MANDOKIR = 1,
DATA_KILNARA = 2,
DATA_ZANZIL = 3,
DATA_JINDO = 4,
DATA_JINDO_THE_GODBREAKER = 4,
// Cache of Madness
DATA_HAZZARAH = 5,
@@ -46,11 +46,11 @@ enum ZGDataTypes
enum ZGCreatureIds
{
NPC_VENOXIS = 52155,
NPC_MANDOKIR = 52151,
NPC_KILNARA = 52059,
NPC_ZANZIL = 52053,
NPC_JINDO = 52148,
BOSS_HIGH_PRIEST_VENOXIS = 52155,
BOSS_BLOODLORD_MANDOKIR = 52151,
BOSS_KILNARA = 52059,
BOSS_ZANZIL = 52053,
BOSS_JINDO_THE_GODBREAKER = 52148,
// Cache of Madness
NPC_HAZZARAH = 52271,