More SD2 code style. (Merge [SD2] 1237,1238,1239)
--HG-- branch : trunk
This commit is contained in:
+46
-47
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_shadow_labyrinth.h"
|
||||
|
||||
#define ENCOUNTERS 5
|
||||
#define MAX_ENCOUNTER 5
|
||||
|
||||
#define REFECTORY_DOOR 183296 //door opened when blackheart the inciter dies
|
||||
#define SCREAMING_HALL_DOOR 183295 //door opened when grandmaster vorpil dies
|
||||
@@ -40,31 +40,30 @@ struct TRINITY_DLL_DECL instance_shadow_labyrinth : public ScriptedInstance
|
||||
{
|
||||
instance_shadow_labyrinth(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
std::string str_data;
|
||||
|
||||
uint64 RefectoryDoorGUID;
|
||||
uint64 ScreamingHallDoorGUID;
|
||||
uint64 m_uiRefectoryDoorGUID;
|
||||
uint64 m_uiScreamingHallDoorGUID;
|
||||
|
||||
uint64 GrandmasterVorpil;
|
||||
uint32 FelOverseerCount;
|
||||
uint64 m_uiGrandmasterVorpil;
|
||||
uint32 m_uiFelOverseerCount;
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
RefectoryDoorGUID = 0;
|
||||
ScreamingHallDoorGUID = 0;
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
GrandmasterVorpil = 0;
|
||||
FelOverseerCount = 0;
|
||||
m_uiRefectoryDoorGUID = 0;
|
||||
m_uiScreamingHallDoorGUID = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
m_uiGrandmasterVorpil = 0;
|
||||
m_uiFelOverseerCount = 0;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
bool Ism_auiEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounter[i] == IN_PROGRESS) return true;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -74,14 +73,14 @@ struct TRINITY_DLL_DECL instance_shadow_labyrinth : public ScriptedInstance
|
||||
switch(go->GetEntry())
|
||||
{
|
||||
case REFECTORY_DOOR:
|
||||
RefectoryDoorGUID = go->GetGUID();
|
||||
if (Encounter[2] == DONE)
|
||||
DoUseDoorOrButton(RefectoryDoorGUID);
|
||||
m_uiRefectoryDoorGUID = go->GetGUID();
|
||||
if (m_auiEncounter[2] == DONE)
|
||||
DoUseDoorOrButton(m_uiRefectoryDoorGUID);
|
||||
break;
|
||||
case SCREAMING_HALL_DOOR:
|
||||
ScreamingHallDoorGUID = go->GetGUID();
|
||||
if (Encounter[3] == DONE)
|
||||
DoUseDoorOrButton(ScreamingHallDoorGUID);
|
||||
m_uiScreamingHallDoorGUID = go->GetGUID();
|
||||
if (m_auiEncounter[3] == DONE)
|
||||
DoUseDoorOrButton(m_uiScreamingHallDoorGUID);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -91,11 +90,11 @@ struct TRINITY_DLL_DECL instance_shadow_labyrinth : public ScriptedInstance
|
||||
switch(creature->GetEntry())
|
||||
{
|
||||
case 18732:
|
||||
GrandmasterVorpil = creature->GetGUID();
|
||||
m_uiGrandmasterVorpil = creature->GetGUID();
|
||||
break;
|
||||
case 18796:
|
||||
++FelOverseerCount;
|
||||
debug_log("TSCR: Shadow Labyrinth: counting %u Fel Overseers.",FelOverseerCount);
|
||||
++m_uiFelOverseerCount;
|
||||
debug_log("TSCR: Shadow Labyrinth: counting %u Fel Overseers.",m_uiFelOverseerCount);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -105,51 +104,51 @@ struct TRINITY_DLL_DECL instance_shadow_labyrinth : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_HELLMAW:
|
||||
Encounter[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
break;
|
||||
|
||||
case TYPE_OVERSEER:
|
||||
if (data != DONE)
|
||||
error_log("TSCR: Shadow Labyrinth: TYPE_OVERSEER did not expect other data than DONE");
|
||||
if (FelOverseerCount)
|
||||
if (m_uiFelOverseerCount)
|
||||
{
|
||||
--FelOverseerCount;
|
||||
debug_log("TSCR: Shadow Labyrinth: %u Fel Overseers left to kill.",FelOverseerCount);
|
||||
--m_uiFelOverseerCount;
|
||||
debug_log("TSCR: Shadow Labyrinth: %u Fel Overseers left to kill.",m_uiFelOverseerCount);
|
||||
}
|
||||
if (FelOverseerCount == 0)
|
||||
if (m_uiFelOverseerCount == 0)
|
||||
{
|
||||
Encounter[1] = DONE;
|
||||
m_auiEncounter[1] = DONE;
|
||||
debug_log("TSCR: Shadow Labyrinth: TYPE_OVERSEER == DONE");
|
||||
}
|
||||
break;
|
||||
|
||||
case DATA_BLACKHEARTTHEINCITEREVENT:
|
||||
if (data == DONE)
|
||||
DoUseDoorOrButton(RefectoryDoorGUID);
|
||||
Encounter[2] = data;
|
||||
DoUseDoorOrButton(m_uiRefectoryDoorGUID);
|
||||
m_auiEncounter[2] = data;
|
||||
break;
|
||||
|
||||
case DATA_GRANDMASTERVORPILEVENT:
|
||||
if (data == DONE)
|
||||
DoUseDoorOrButton(ScreamingHallDoorGUID);
|
||||
Encounter[3] = data;
|
||||
DoUseDoorOrButton(m_uiScreamingHallDoorGUID);
|
||||
m_auiEncounter[3] = data;
|
||||
break;
|
||||
|
||||
case DATA_MURMUREVENT:
|
||||
Encounter[4] = data;
|
||||
m_auiEncounter[4] = data;
|
||||
break;
|
||||
}
|
||||
|
||||
if (data == DONE)
|
||||
{
|
||||
if (type == TYPE_OVERSEER && FelOverseerCount != 0)
|
||||
if (type == TYPE_OVERSEER && m_uiFelOverseerCount != 0)
|
||||
return;
|
||||
|
||||
OUT_SAVE_INST_DATA;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << Encounter[0] << " " << Encounter[1] << " "
|
||||
<< Encounter[2] << " " << Encounter[3] << " " << Encounter[4];
|
||||
saveStream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " "
|
||||
<< m_auiEncounter[2] << " " << m_auiEncounter[3] << " " << m_auiEncounter[4];
|
||||
|
||||
str_data = saveStream.str();
|
||||
|
||||
@@ -162,10 +161,10 @@ struct TRINITY_DLL_DECL instance_shadow_labyrinth : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_HELLMAW: return Encounter[0];
|
||||
case TYPE_OVERSEER: return Encounter[1];
|
||||
case DATA_GRANDMASTERVORPILEVENT: return Encounter[3];
|
||||
case DATA_MURMUREVENT: return Encounter[4];
|
||||
case TYPE_HELLMAW: return m_auiEncounter[0];
|
||||
case TYPE_OVERSEER: return m_auiEncounter[1];
|
||||
case DATA_GRANDMASTERVORPILEVENT: return m_auiEncounter[3];
|
||||
case DATA_MURMUREVENT: return m_auiEncounter[4];
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -173,7 +172,7 @@ struct TRINITY_DLL_DECL instance_shadow_labyrinth : public ScriptedInstance
|
||||
uint64 GetData64(uint32 identifier)
|
||||
{
|
||||
if (identifier == DATA_GRANDMASTERVORPIL)
|
||||
return GrandmasterVorpil;
|
||||
return m_uiGrandmasterVorpil;
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -194,11 +193,11 @@ struct TRINITY_DLL_DECL instance_shadow_labyrinth : public ScriptedInstance
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
|
||||
std::istringstream loadStream(in);
|
||||
loadStream >> Encounter[0] >> Encounter[1] >> Encounter[2] >> Encounter[3] >> Encounter[4];
|
||||
loadStream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2] >> m_auiEncounter[3] >> m_auiEncounter[4];
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounter[i] == IN_PROGRESS)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_ahnkahet.h"
|
||||
|
||||
#define ENCOUNTERS 5
|
||||
#define MAX_ENCOUNTER 5
|
||||
|
||||
/* Ahn'kahet encounters:
|
||||
0 - Elder Nadox
|
||||
@@ -46,7 +46,7 @@ struct TRINITY_DLL_DECL instance_ahnkahet : public ScriptedInstance
|
||||
uint64 Herald_Volazj;
|
||||
uint64 Amanitar;
|
||||
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
@@ -56,14 +56,14 @@ struct TRINITY_DLL_DECL instance_ahnkahet : public ScriptedInstance
|
||||
Herald_Volazj =0;
|
||||
Amanitar =0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) return true;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -99,15 +99,15 @@ struct TRINITY_DLL_DECL instance_ahnkahet : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case DATA_ELDER_NADOX_EVENT:
|
||||
Encounters[0] = data;break;
|
||||
m_auiEncounter[0] = data;break;
|
||||
case DATA_PRINCE_TALDARAM_EVENT:
|
||||
Encounters[1] = data; break;
|
||||
m_auiEncounter[1] = data; break;
|
||||
case DATA_JEDOGA_SHADOWSEEKER_EVENT:
|
||||
Encounters[2] = data; break;
|
||||
m_auiEncounter[2] = data; break;
|
||||
case DATA_HERALD_VOLAZJ:
|
||||
Encounters[3] = data; break;
|
||||
m_auiEncounter[3] = data; break;
|
||||
case DATA_AMANITAR:
|
||||
Encounters[4] = data; break;
|
||||
m_auiEncounter[4] = data; break;
|
||||
}
|
||||
|
||||
if (data == DONE)
|
||||
@@ -120,11 +120,11 @@ struct TRINITY_DLL_DECL instance_ahnkahet : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_ELDER_NADOX_EVENT: return Encounters[0];
|
||||
case DATA_PRINCE_TALDARAM_EVENT: return Encounters[1];
|
||||
case DATA_JEDOGA_SHADOWSEEKER_EVENT: return Encounters[2];
|
||||
case DATA_HERALD_VOLAZJ: return Encounters[3];
|
||||
case DATA_AMANITAR: return Encounters[4];
|
||||
case DATA_ELDER_NADOX_EVENT: return m_auiEncounter[0];
|
||||
case DATA_PRINCE_TALDARAM_EVENT: return m_auiEncounter[1];
|
||||
case DATA_JEDOGA_SHADOWSEEKER_EVENT: return m_auiEncounter[2];
|
||||
case DATA_HERALD_VOLAZJ: return m_auiEncounter[3];
|
||||
case DATA_AMANITAR: return m_auiEncounter[4];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -136,8 +136,8 @@ struct TRINITY_DLL_DECL instance_ahnkahet : public ScriptedInstance
|
||||
std::string str_data;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << "A K " << Encounters[0] << " " << Encounters[1] << " "
|
||||
<< Encounters[2] << Encounters[3] << Encounters[4];
|
||||
saveStream << "A K " << m_auiEncounter[0] << " " << m_auiEncounter[1] << " "
|
||||
<< m_auiEncounter[2] << m_auiEncounter[3] << m_auiEncounter[4];
|
||||
|
||||
str_data = saveStream.str();
|
||||
|
||||
@@ -163,15 +163,15 @@ struct TRINITY_DLL_DECL instance_ahnkahet : public ScriptedInstance
|
||||
|
||||
if (dataHead1 == 'A' && dataHead2 == 'K')
|
||||
{
|
||||
Encounters[0] = data0;
|
||||
Encounters[1] = data1;
|
||||
Encounters[2] = data2;
|
||||
Encounters[3] = data3;
|
||||
Encounters[4] = data4;
|
||||
m_auiEncounter[0] = data0;
|
||||
m_auiEncounter[1] = data1;
|
||||
m_auiEncounter[2] = data2;
|
||||
m_auiEncounter[3] = data3;
|
||||
m_auiEncounter[4] = data4;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
|
||||
}else OUT_LOAD_INST_DATA_FAIL;
|
||||
|
||||
|
||||
+31
-33
@@ -26,7 +26,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_azjol_nerub.h"
|
||||
|
||||
#define ENCOUNTERS 3
|
||||
#define MAX_ENCOUNTER 3
|
||||
|
||||
/* Azjol Nerub encounters:
|
||||
0 - Krik'thir the Gatewatcher
|
||||
@@ -38,27 +38,25 @@ struct TRINITY_DLL_DECL instance_azjol_nerub : public ScriptedInstance
|
||||
{
|
||||
instance_azjol_nerub(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint64 Krikthir;
|
||||
uint64 Hadronox;
|
||||
uint64 Anubarak;
|
||||
uint64 m_uiKrikthir;
|
||||
uint64 m_uiHadronox;
|
||||
uint64 m_uiAnubarak;
|
||||
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
Krikthir = 0;
|
||||
Hadronox = 0;
|
||||
Anubarak =0;
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
m_uiKrikthir = 0;
|
||||
m_uiHadronox = 0;
|
||||
m_uiAnubarak =0;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) return true;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -68,9 +66,9 @@ struct TRINITY_DLL_DECL instance_azjol_nerub : public ScriptedInstance
|
||||
{
|
||||
switch(creature->GetEntry())
|
||||
{
|
||||
case 28684: Krikthir = creature->GetGUID(); break;
|
||||
case 28921: Hadronox = creature->GetGUID(); break;
|
||||
case 29120: Anubarak = creature->GetGUID(); break;
|
||||
case 28684: m_uiKrikthir = creature->GetGUID(); break;
|
||||
case 28921: m_uiHadronox = creature->GetGUID(); break;
|
||||
case 29120: m_uiAnubarak = creature->GetGUID(); break;
|
||||
|
||||
}
|
||||
}
|
||||
@@ -79,9 +77,9 @@ struct TRINITY_DLL_DECL instance_azjol_nerub : public ScriptedInstance
|
||||
{
|
||||
switch(identifier)
|
||||
{
|
||||
case DATA_KRIKTHIR_THE_GATEWATCHER: return Krikthir;
|
||||
case DATA_HADRONOX: return Hadronox;
|
||||
case DATA_ANUBARAK: return Anubarak;
|
||||
case DATA_KRIKTHIR_THE_GATEWATCHER: return m_uiKrikthir;
|
||||
case DATA_HADRONOX: return m_uiHadronox;
|
||||
case DATA_ANUBARAK: return m_uiAnubarak;
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -92,11 +90,11 @@ struct TRINITY_DLL_DECL instance_azjol_nerub : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case DATA_KRIKTHIR_THE_GATEWATCHER_EVENT:
|
||||
Encounters[0] = data;break;
|
||||
m_auiEncounter[0] = data;break;
|
||||
case DATA_HADRONOX_EVENT:
|
||||
Encounters[1] = data; break;
|
||||
m_auiEncounter[1] = data; break;
|
||||
case DATA_ANUBARAK_EVENT:
|
||||
Encounters[2] = data; break;
|
||||
m_auiEncounter[2] = data; break;
|
||||
}
|
||||
|
||||
if (data == DONE)
|
||||
@@ -109,9 +107,9 @@ struct TRINITY_DLL_DECL instance_azjol_nerub : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_KRIKTHIR_THE_GATEWATCHER_EVENT: return Encounters[0];
|
||||
case DATA_HADRONOX_EVENT: return Encounters[1];
|
||||
case DATA_ANUBARAK_EVENT: return Encounters[2];
|
||||
case DATA_KRIKTHIR_THE_GATEWATCHER_EVENT: return m_auiEncounter[0];
|
||||
case DATA_HADRONOX_EVENT: return m_auiEncounter[1];
|
||||
case DATA_ANUBARAK_EVENT: return m_auiEncounter[2];
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -124,8 +122,8 @@ struct TRINITY_DLL_DECL instance_azjol_nerub : public ScriptedInstance
|
||||
std::string str_data;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << "A N " << Encounters[0] << " " << Encounters[1] << " "
|
||||
<< Encounters[2];
|
||||
saveStream << "A N " << m_auiEncounter[0] << " " << m_auiEncounter[1] << " "
|
||||
<< m_auiEncounter[2];
|
||||
|
||||
str_data = saveStream.str();
|
||||
|
||||
@@ -151,13 +149,13 @@ struct TRINITY_DLL_DECL instance_azjol_nerub : public ScriptedInstance
|
||||
|
||||
if (dataHead1 == 'A' && dataHead2 == 'N')
|
||||
{
|
||||
Encounters[0] = data0;
|
||||
Encounters[1] = data1;
|
||||
Encounters[2] = data2;
|
||||
m_auiEncounter[0] = data0;
|
||||
m_auiEncounter[1] = data1;
|
||||
m_auiEncounter[2] = data2;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
|
||||
}else OUT_LOAD_INST_DATA_FAIL;
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_black_temple.h"
|
||||
|
||||
#define ENCOUNTERS 9
|
||||
#define MAX_ENCOUNTER 9
|
||||
|
||||
/* Black Temple encounters:
|
||||
0 - High Warlord Naj'entus event
|
||||
@@ -42,7 +42,7 @@ struct TRINITY_DLL_DECL instance_black_temple : public ScriptedInstance
|
||||
{
|
||||
instance_black_temple(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
std::string str_data;
|
||||
|
||||
uint64 Najentus;
|
||||
@@ -73,6 +73,8 @@ struct TRINITY_DLL_DECL instance_black_temple : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
Najentus = 0;
|
||||
Akama = 0;
|
||||
Akama_Shade = 0;
|
||||
@@ -99,15 +101,12 @@ struct TRINITY_DLL_DECL instance_black_temple : public ScriptedInstance
|
||||
IllidanGate = 0;
|
||||
IllidanDoor[0] = 0;
|
||||
IllidanDoor[1] = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) return true;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -153,24 +152,24 @@ struct TRINITY_DLL_DECL instance_black_temple : public ScriptedInstance
|
||||
switch(go->GetEntry())
|
||||
{
|
||||
case 185483: NajentusGate = go->GetGUID();// Gate past Naj'entus (at the entrance to Supermoose's courtyards)
|
||||
if (Encounters[0] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
if (m_auiEncounter[0] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
case 185882: MainTempleDoors = go->GetGUID();// Main Temple Doors - right past Supermoose (Supremus)
|
||||
if (Encounters[1] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
if (m_auiEncounter[1] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
case 185478: ShadeOfAkamaDoor = go->GetGUID();break;
|
||||
case 185480: CommonDoor = go->GetGUID();
|
||||
if (Encounters[3] == DONE)HandleGameObject(NULL,true,go);;break;
|
||||
if (m_auiEncounter[3] == DONE)HandleGameObject(NULL,true,go);;break;
|
||||
case 186153: TeronDoor = go->GetGUID();
|
||||
if (Encounters[3] == DONE)HandleGameObject(NULL,true,go);;break;
|
||||
if (m_auiEncounter[3] == DONE)HandleGameObject(NULL,true,go);;break;
|
||||
case 185892: GuurtogDoor = go->GetGUID();
|
||||
if (Encounters[4] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
if (m_auiEncounter[4] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
case 185479: TempleDoor = go->GetGUID();
|
||||
if (Encounters[5] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
if (m_auiEncounter[5] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
case 185482: MotherDoor = go->GetGUID();
|
||||
if (Encounters[6] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
if (m_auiEncounter[6] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
case 185481: CouncilDoor = go->GetGUID();
|
||||
if (Encounters[7] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
if (m_auiEncounter[7] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
case 186152: SimpleDoor = go->GetGUID();
|
||||
if (Encounters[7] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
if (m_auiEncounter[7] == DONE)HandleGameObject(NULL,true,go);break;
|
||||
case 185905: IllidanGate = go->GetGUID(); break; // Gate leading to Temple Summit
|
||||
case 186261: IllidanDoor[0] = go->GetGUID(); break; // Right door at Temple Summit
|
||||
case 186262: IllidanDoor[1] = go->GetGUID(); break; // Left door at Temple Summit
|
||||
@@ -212,19 +211,19 @@ struct TRINITY_DLL_DECL instance_black_temple : public ScriptedInstance
|
||||
{
|
||||
HandleGameObject(NajentusGate, true);
|
||||
}
|
||||
Encounters[0] = data;break;
|
||||
m_auiEncounter[0] = data;break;
|
||||
case DATA_SUPREMUSEVENT:
|
||||
if (data == DONE)
|
||||
{
|
||||
HandleGameObject(NajentusGate, true);
|
||||
}
|
||||
Encounters[1] = data; break;
|
||||
m_auiEncounter[1] = data; break;
|
||||
case DATA_SHADEOFAKAMAEVENT:
|
||||
if (data == IN_PROGRESS)
|
||||
{
|
||||
HandleGameObject(ShadeOfAkamaDoor, false);
|
||||
}else HandleGameObject(ShadeOfAkamaDoor, true);
|
||||
Encounters[2] = data; break;
|
||||
m_auiEncounter[2] = data; break;
|
||||
case DATA_TERONGOREFIENDEVENT:
|
||||
if (data == IN_PROGRESS)
|
||||
{
|
||||
@@ -235,25 +234,25 @@ struct TRINITY_DLL_DECL instance_black_temple : public ScriptedInstance
|
||||
HandleGameObject(TeronDoor, true);
|
||||
HandleGameObject(CommonDoor, true);
|
||||
}
|
||||
Encounters[3] = data; break;
|
||||
m_auiEncounter[3] = data; break;
|
||||
case DATA_GURTOGGBLOODBOILEVENT:
|
||||
if (data == DONE)
|
||||
{
|
||||
HandleGameObject(GuurtogDoor, true);
|
||||
}
|
||||
Encounters[4] = data; break;
|
||||
m_auiEncounter[4] = data; break;
|
||||
case DATA_RELIQUARYOFSOULSEVENT:
|
||||
if (data == DONE)
|
||||
{
|
||||
HandleGameObject(TempleDoor, true);
|
||||
}
|
||||
Encounters[5] = data; break;
|
||||
m_auiEncounter[5] = data; break;
|
||||
case DATA_MOTHERSHAHRAZEVENT:
|
||||
if (data == DONE)
|
||||
{
|
||||
HandleGameObject(MotherDoor, true);
|
||||
}
|
||||
Encounters[6] = data; break;
|
||||
m_auiEncounter[6] = data; break;
|
||||
case DATA_ILLIDARICOUNCILEVENT:
|
||||
if (data == IN_PROGRESS)
|
||||
{
|
||||
@@ -264,8 +263,8 @@ struct TRINITY_DLL_DECL instance_black_temple : public ScriptedInstance
|
||||
HandleGameObject(CouncilDoor, true);
|
||||
HandleGameObject(SimpleDoor, true);
|
||||
}
|
||||
Encounters[7] = data; break;
|
||||
case DATA_ILLIDANSTORMRAGEEVENT: Encounters[8] = data; break;
|
||||
m_auiEncounter[7] = data; break;
|
||||
case DATA_ILLIDANSTORMRAGEEVENT: m_auiEncounter[8] = data; break;
|
||||
}
|
||||
|
||||
if (data == DONE)
|
||||
@@ -273,10 +272,10 @@ struct TRINITY_DLL_DECL instance_black_temple : public ScriptedInstance
|
||||
OUT_SAVE_INST_DATA;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << Encounters[0] << " " << Encounters[1] << " "
|
||||
<< Encounters[2] << " " << Encounters[3] << " " << Encounters[4]
|
||||
<< " " << Encounters[5] << " " << Encounters[6] << " " << Encounters[7]
|
||||
<< " " << Encounters[8];
|
||||
saveStream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " "
|
||||
<< m_auiEncounter[2] << " " << m_auiEncounter[3] << " " << m_auiEncounter[4]
|
||||
<< " " << m_auiEncounter[5] << " " << m_auiEncounter[6] << " " << m_auiEncounter[7]
|
||||
<< " " << m_auiEncounter[8];
|
||||
|
||||
str_data = saveStream.str();
|
||||
|
||||
@@ -289,15 +288,15 @@ struct TRINITY_DLL_DECL instance_black_temple : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_HIGHWARLORDNAJENTUSEVENT: return Encounters[0];
|
||||
case DATA_SUPREMUSEVENT: return Encounters[1];
|
||||
case DATA_SHADEOFAKAMAEVENT: return Encounters[2];
|
||||
case DATA_TERONGOREFIENDEVENT: return Encounters[3];
|
||||
case DATA_GURTOGGBLOODBOILEVENT: return Encounters[4];
|
||||
case DATA_RELIQUARYOFSOULSEVENT: return Encounters[5];
|
||||
case DATA_MOTHERSHAHRAZEVENT: return Encounters[6];
|
||||
case DATA_ILLIDARICOUNCILEVENT: return Encounters[7];
|
||||
case DATA_ILLIDANSTORMRAGEEVENT: return Encounters[8];
|
||||
case DATA_HIGHWARLORDNAJENTUSEVENT: return m_auiEncounter[0];
|
||||
case DATA_SUPREMUSEVENT: return m_auiEncounter[1];
|
||||
case DATA_SHADEOFAKAMAEVENT: return m_auiEncounter[2];
|
||||
case DATA_TERONGOREFIENDEVENT: return m_auiEncounter[3];
|
||||
case DATA_GURTOGGBLOODBOILEVENT: return m_auiEncounter[4];
|
||||
case DATA_RELIQUARYOFSOULSEVENT: return m_auiEncounter[5];
|
||||
case DATA_MOTHERSHAHRAZEVENT: return m_auiEncounter[6];
|
||||
case DATA_ILLIDARICOUNCILEVENT: return m_auiEncounter[7];
|
||||
case DATA_ILLIDANSTORMRAGEEVENT: return m_auiEncounter[8];
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -319,13 +318,13 @@ struct TRINITY_DLL_DECL instance_black_temple : public ScriptedInstance
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
|
||||
std::istringstream loadStream(in);
|
||||
loadStream >> Encounters[0] >> Encounters[1] >> Encounters[2]
|
||||
>> Encounters[3] >> Encounters[4] >> Encounters[5] >> Encounters[6]
|
||||
>> Encounters[7] >> Encounters[8];
|
||||
loadStream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2]
|
||||
>> m_auiEncounter[3] >> m_auiEncounter[4] >> m_auiEncounter[5] >> m_auiEncounter[6]
|
||||
>> m_auiEncounter[7] >> m_auiEncounter[8];
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_blackfathom_deeps.h"
|
||||
|
||||
#define ENCOUNTERS 2
|
||||
#define MAX_ENCOUNTER 2
|
||||
|
||||
/* Encounter 0 = Twilight Lord Kelris
|
||||
Encounter 1 = Shrine event
|
||||
@@ -44,10 +44,12 @@ struct TRINITY_DLL_DECL instance_blackfathom_deeps : public ScriptedInstance
|
||||
uint64 m_uiAltarOfTheDeepsGUID;
|
||||
uint64 m_uiMainDoorGUID;
|
||||
|
||||
uint32 m_uiEncounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
m_uiTwilightLordKelrisGUID = 0;
|
||||
m_uiShrine1GUID = 0;
|
||||
m_uiShrine2GUID = 0;
|
||||
@@ -56,9 +58,6 @@ struct TRINITY_DLL_DECL instance_blackfathom_deeps : public ScriptedInstance
|
||||
m_uiShrineOfGelihastGUID = 0;
|
||||
m_uiAltarOfTheDeepsGUID = 0;
|
||||
m_uiMainDoorGUID = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
m_uiEncounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
void OnCreatureCreate(Creature* pCreature, bool add)
|
||||
@@ -86,10 +85,10 @@ struct TRINITY_DLL_DECL instance_blackfathom_deeps : public ScriptedInstance
|
||||
switch(uiType)
|
||||
{
|
||||
case TYPE_KELRIS:
|
||||
m_uiEncounter[0] = uiData;
|
||||
m_auiEncounter[0] = uiData;
|
||||
break;
|
||||
case TYPE_SHRINE:
|
||||
m_uiEncounter[1] = uiData;
|
||||
m_auiEncounter[1] = uiData;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -99,9 +98,9 @@ struct TRINITY_DLL_DECL instance_blackfathom_deeps : public ScriptedInstance
|
||||
switch(uiType)
|
||||
{
|
||||
case TYPE_KELRIS:
|
||||
return m_uiEncounter[0];
|
||||
return m_auiEncounter[0];
|
||||
case TYPE_SHRINE:
|
||||
return m_uiEncounter[1];
|
||||
return m_auiEncounter[1];
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -36,7 +36,7 @@ update `instance_template` set `script`='instance_blackrock_depths' where `map`=
|
||||
|
||||
enum
|
||||
{
|
||||
ENCOUNTERS = 6,
|
||||
MAX_ENCOUNTER = 6,
|
||||
|
||||
NPC_EMPEROR = 9019,
|
||||
NPC_PHALANX = 9502,
|
||||
@@ -74,7 +74,7 @@ struct TRINITY_DLL_DECL instance_blackrock_depths : public ScriptedInstance
|
||||
{
|
||||
instance_blackrock_depths(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
std::string str_data;
|
||||
|
||||
uint64 EmperorGUID;
|
||||
@@ -108,6 +108,8 @@ struct TRINITY_DLL_DECL instance_blackrock_depths : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
EmperorGUID = 0;
|
||||
PhalanxGUID = 0;
|
||||
|
||||
@@ -136,8 +138,6 @@ struct TRINITY_DLL_DECL instance_blackrock_depths : public ScriptedInstance
|
||||
TombTimer = TIMER_TOMBOFTHESEVEN;
|
||||
TombEventCounter = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
for(uint8 i = 0; i < 7; ++i)
|
||||
TombBossGUIDs[i] = 0;
|
||||
}
|
||||
@@ -212,25 +212,25 @@ struct TRINITY_DLL_DECL instance_blackrock_depths : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_RING_OF_LAW:
|
||||
Encounter[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
break;
|
||||
case TYPE_VAULT:
|
||||
Encounter[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
case TYPE_BAR:
|
||||
if (data == SPECIAL)
|
||||
++BarAleCount;
|
||||
else
|
||||
Encounter[2] = data;
|
||||
m_auiEncounter[2] = data;
|
||||
break;
|
||||
case TYPE_TOMB_OF_SEVEN:
|
||||
Encounter[3] = data;
|
||||
m_auiEncounter[3] = data;
|
||||
break;
|
||||
case TYPE_LYCEUM:
|
||||
Encounter[4] = data;
|
||||
m_auiEncounter[4] = data;
|
||||
break;
|
||||
case TYPE_IRON_HALL:
|
||||
Encounter[5] = data;
|
||||
m_auiEncounter[5] = data;
|
||||
break;
|
||||
case DATA_GHOSTKILL:
|
||||
GhostKillCount += data;
|
||||
@@ -242,8 +242,8 @@ struct TRINITY_DLL_DECL instance_blackrock_depths : public ScriptedInstance
|
||||
OUT_SAVE_INST_DATA;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << Encounter[0] << " " << Encounter[1] << " " << Encounter[2] << " "
|
||||
<< Encounter[3] << " " << Encounter[4] << " " << Encounter[5] << " " << GhostKillCount;
|
||||
saveStream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " " << m_auiEncounter[2] << " "
|
||||
<< m_auiEncounter[3] << " " << m_auiEncounter[4] << " " << m_auiEncounter[5] << " " << GhostKillCount;
|
||||
|
||||
str_data = saveStream.str();
|
||||
|
||||
@@ -257,20 +257,20 @@ struct TRINITY_DLL_DECL instance_blackrock_depths : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_RING_OF_LAW:
|
||||
return Encounter[0];
|
||||
return m_auiEncounter[0];
|
||||
case TYPE_VAULT:
|
||||
return Encounter[1];
|
||||
return m_auiEncounter[1];
|
||||
case TYPE_BAR:
|
||||
if (Encounter[2] == IN_PROGRESS && BarAleCount == 3)
|
||||
if (m_auiEncounter[2] == IN_PROGRESS && BarAleCount == 3)
|
||||
return SPECIAL;
|
||||
else
|
||||
return Encounter[2];
|
||||
return m_auiEncounter[2];
|
||||
case TYPE_TOMB_OF_SEVEN:
|
||||
return Encounter[3];
|
||||
return m_auiEncounter[3];
|
||||
case TYPE_LYCEUM:
|
||||
return Encounter[4];
|
||||
return m_auiEncounter[4];
|
||||
case TYPE_IRON_HALL:
|
||||
return Encounter[5];
|
||||
return m_auiEncounter[5];
|
||||
case DATA_GHOSTKILL:
|
||||
return GhostKillCount;
|
||||
}
|
||||
@@ -321,12 +321,12 @@ struct TRINITY_DLL_DECL instance_blackrock_depths : public ScriptedInstance
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
|
||||
std::istringstream loadStream(in);
|
||||
loadStream >> Encounter[0] >> Encounter[1] >> Encounter[2] >> Encounter[3]
|
||||
>> Encounter[4] >> Encounter[5] >> GhostKillCount;
|
||||
loadStream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2] >> m_auiEncounter[3]
|
||||
>> m_auiEncounter[4] >> m_auiEncounter[5] >> GhostKillCount;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounter[i] == IN_PROGRESS)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
if (GhostKillCount > 0 && GhostKillCount < 7)
|
||||
GhostKillCount = 0;//reset tomb of seven event
|
||||
if (GhostKillCount > 7)
|
||||
|
||||
+12
-13
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_dark_portal.h"
|
||||
|
||||
#define ENCOUNTERS 2
|
||||
#define MAX_ENCOUNTER 2
|
||||
|
||||
#define C_MEDIVH 15608
|
||||
#define C_TIME_RIFT 17838
|
||||
@@ -63,7 +63,7 @@ struct TRINITY_DLL_DECL instance_dark_portal : public ScriptedInstance
|
||||
{
|
||||
instance_dark_portal(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
uint32 mRiftPortalCount;
|
||||
uint32 mShieldPercent;
|
||||
@@ -83,8 +83,7 @@ struct TRINITY_DLL_DECL instance_dark_portal : public ScriptedInstance
|
||||
|
||||
void Clear()
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
mRiftPortalCount = 0;
|
||||
mShieldPercent = 100;
|
||||
@@ -170,7 +169,7 @@ struct TRINITY_DLL_DECL instance_dark_portal : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_MEDIVH:
|
||||
if (data == SPECIAL && Encounter[0] == IN_PROGRESS)
|
||||
if (data == SPECIAL && m_auiEncounter[0] == IN_PROGRESS)
|
||||
{
|
||||
--mShieldPercent;
|
||||
UpdateBMWorldState(WORLD_STATE_BM_SHIELD,mShieldPercent);
|
||||
@@ -182,8 +181,8 @@ struct TRINITY_DLL_DECL instance_dark_portal : public ScriptedInstance
|
||||
if (pMedivh->isAlive())
|
||||
{
|
||||
pMedivh->DealDamage(pMedivh, pMedivh->GetHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false);
|
||||
Encounter[0] = FAIL;
|
||||
Encounter[1] = NOT_STARTED;
|
||||
m_auiEncounter[0] = FAIL;
|
||||
m_auiEncounter[1] = NOT_STARTED;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -194,7 +193,7 @@ struct TRINITY_DLL_DECL instance_dark_portal : public ScriptedInstance
|
||||
{
|
||||
debug_log("TSCR: Instance Dark Portal: Starting event.");
|
||||
InitWorldState();
|
||||
Encounter[1] = IN_PROGRESS;
|
||||
m_auiEncounter[1] = IN_PROGRESS;
|
||||
NextPortal_Timer = 15000;
|
||||
}
|
||||
|
||||
@@ -220,7 +219,7 @@ struct TRINITY_DLL_DECL instance_dark_portal : public ScriptedInstance
|
||||
}
|
||||
}
|
||||
|
||||
Encounter[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
}
|
||||
break;
|
||||
case TYPE_RIFT:
|
||||
@@ -230,7 +229,7 @@ struct TRINITY_DLL_DECL instance_dark_portal : public ScriptedInstance
|
||||
NextPortal_Timer = 5000;
|
||||
}
|
||||
else
|
||||
Encounter[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -240,9 +239,9 @@ struct TRINITY_DLL_DECL instance_dark_portal : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_MEDIVH:
|
||||
return Encounter[0];
|
||||
return m_auiEncounter[0];
|
||||
case TYPE_RIFT:
|
||||
return Encounter[1];
|
||||
return m_auiEncounter[1];
|
||||
case DATA_PORTAL_COUNT:
|
||||
return mRiftPortalCount;
|
||||
case DATA_SHIELD:
|
||||
@@ -323,7 +322,7 @@ struct TRINITY_DLL_DECL instance_dark_portal : public ScriptedInstance
|
||||
|
||||
void Update(uint32 diff)
|
||||
{
|
||||
if (Encounter[1] != IN_PROGRESS)
|
||||
if (m_auiEncounter[1] != IN_PROGRESS)
|
||||
return;
|
||||
|
||||
//add delay timer?
|
||||
|
||||
@@ -27,7 +27,7 @@ EndScriptData */
|
||||
|
||||
enum
|
||||
{
|
||||
ENCOUNTERS = 5,
|
||||
MAX_ENCOUNTER = 5,
|
||||
|
||||
GO_ANCIENT_GEM = 185557
|
||||
};
|
||||
@@ -43,7 +43,7 @@ struct TRINITY_DLL_DECL instance_mount_hyjal : public ScriptedInstance
|
||||
{
|
||||
instance_mount_hyjal(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
std::string str_data;
|
||||
|
||||
std::list<uint64> m_uiAncientGemGUID;
|
||||
@@ -70,6 +70,8 @@ struct TRINITY_DLL_DECL instance_mount_hyjal : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
m_uiAncientGemGUID.clear();
|
||||
|
||||
RageWinterchill = 0;
|
||||
@@ -86,8 +88,6 @@ struct TRINITY_DLL_DECL instance_mount_hyjal : public ScriptedInstance
|
||||
RaidDamage = 0;
|
||||
|
||||
Trash = 0;
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
|
||||
hordeRetreat = 0;
|
||||
allianceRetreat = 0;
|
||||
@@ -95,8 +95,8 @@ struct TRINITY_DLL_DECL instance_mount_hyjal : public ScriptedInstance
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) return true;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -161,14 +161,14 @@ struct TRINITY_DLL_DECL instance_mount_hyjal : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_RAGEWINTERCHILLEVENT: Encounters[0] = data; break;
|
||||
case DATA_RAGEWINTERCHILLEVENT: m_auiEncounter[0] = data; break;
|
||||
case DATA_ANETHERONEVENT:
|
||||
Encounters[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
case DATA_KAZROGALEVENT: Encounters[2] = data; break;
|
||||
case DATA_KAZROGALEVENT: m_auiEncounter[2] = data; break;
|
||||
case DATA_AZGALOREVENT:
|
||||
{
|
||||
Encounters[3] = data;
|
||||
m_auiEncounter[3] = data;
|
||||
if (data==DONE)
|
||||
{
|
||||
if (ArchiYell)break;
|
||||
@@ -205,7 +205,7 @@ struct TRINITY_DLL_DECL instance_mount_hyjal : public ScriptedInstance
|
||||
}
|
||||
}
|
||||
break;
|
||||
case DATA_ARCHIMONDEEVENT: Encounters[4] = data; break;
|
||||
case DATA_ARCHIMONDEEVENT: m_auiEncounter[4] = data; break;
|
||||
case DATA_RESET_TRASH_COUNT: Trash = 0; break;
|
||||
|
||||
case DATA_TRASH:
|
||||
@@ -253,8 +253,8 @@ struct TRINITY_DLL_DECL instance_mount_hyjal : public ScriptedInstance
|
||||
OUT_SAVE_INST_DATA;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << Encounters[0] << " " << Encounters[1] << " " << Encounters[2] << " "
|
||||
<< Encounters[3] << " " << Encounters[4]
|
||||
saveStream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " " << m_auiEncounter[2] << " "
|
||||
<< m_auiEncounter[3] << " " << m_auiEncounter[4]
|
||||
<< " " << allianceRetreat << " " << hordeRetreat
|
||||
<< " " << RaidDamage;
|
||||
|
||||
@@ -270,11 +270,11 @@ struct TRINITY_DLL_DECL instance_mount_hyjal : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_RAGEWINTERCHILLEVENT: return Encounters[0];
|
||||
case DATA_ANETHERONEVENT: return Encounters[1];
|
||||
case DATA_KAZROGALEVENT: return Encounters[2];
|
||||
case DATA_AZGALOREVENT: return Encounters[3];
|
||||
case DATA_ARCHIMONDEEVENT: return Encounters[4];
|
||||
case DATA_RAGEWINTERCHILLEVENT: return m_auiEncounter[0];
|
||||
case DATA_ANETHERONEVENT: return m_auiEncounter[1];
|
||||
case DATA_KAZROGALEVENT: return m_auiEncounter[2];
|
||||
case DATA_AZGALOREVENT: return m_auiEncounter[3];
|
||||
case DATA_ARCHIMONDEEVENT: return m_auiEncounter[4];
|
||||
case DATA_TRASH: return Trash;
|
||||
case DATA_ALLIANCE_RETREAT: return allianceRetreat;
|
||||
case DATA_HORDE_RETREAT: return hordeRetreat;
|
||||
@@ -312,10 +312,10 @@ struct TRINITY_DLL_DECL instance_mount_hyjal : public ScriptedInstance
|
||||
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
std::istringstream loadStream(in);
|
||||
loadStream >> Encounters[0] >> Encounters[1] >> Encounters[2] >> Encounters[3] >> Encounters[4] >> allianceRetreat >> hordeRetreat >> RaidDamage;
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) // Do not load an encounter as IN_PROGRESS - reset it instead.
|
||||
Encounters[i] = NOT_STARTED;
|
||||
loadStream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2] >> m_auiEncounter[3] >> m_auiEncounter[4] >> allianceRetreat >> hordeRetreat >> RaidDamage;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) // Do not load an encounter as IN_PROGRESS - reset it instead.
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
}
|
||||
};
|
||||
|
||||
+27
-28
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_old_hillsbrad.h"
|
||||
|
||||
#define ENCOUNTERS 6
|
||||
#define MAX_ENCOUNTER 6
|
||||
|
||||
#define THRALL_ENTRY 17876
|
||||
#define TARETHA_ENTRY 18887
|
||||
@@ -39,7 +39,7 @@ struct TRINITY_DLL_DECL instance_old_hillsbrad : public ScriptedInstance
|
||||
{
|
||||
instance_old_hillsbrad(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
uint32 mBarrelCount;
|
||||
uint32 mThrallEventCount;
|
||||
|
||||
@@ -49,14 +49,13 @@ struct TRINITY_DLL_DECL instance_old_hillsbrad : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
mBarrelCount = 0;
|
||||
mThrallEventCount = 0;
|
||||
ThrallGUID = 0;
|
||||
TarethaGUID = 0;
|
||||
EpochGUID = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
Player* GetPlayerInMap()
|
||||
@@ -136,12 +135,12 @@ struct TRINITY_DLL_DECL instance_old_hillsbrad : public ScriptedInstance
|
||||
|
||||
debug_log("TSCR: Instance Old Hillsbrad: go_barrel_old_hillsbrad count %u",mBarrelCount);
|
||||
|
||||
Encounter[0] = IN_PROGRESS;
|
||||
m_auiEncounter[0] = IN_PROGRESS;
|
||||
|
||||
if (mBarrelCount == 5)
|
||||
{
|
||||
pPlayer->SummonCreature(DRAKE_ENTRY,2128.43,71.01,64.42,1.74,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,1800000);
|
||||
Encounter[0] = DONE;
|
||||
m_auiEncounter[0] = DONE;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -153,42 +152,42 @@ struct TRINITY_DLL_DECL instance_old_hillsbrad : public ScriptedInstance
|
||||
if (mThrallEventCount <= 20)
|
||||
{
|
||||
mThrallEventCount++;
|
||||
Encounter[1] = NOT_STARTED;
|
||||
m_auiEncounter[1] = NOT_STARTED;
|
||||
debug_log("TSCR: Instance Old Hillsbrad: Thrall event failed %u times. Resetting all sub-events.",mThrallEventCount);
|
||||
Encounter[2] = NOT_STARTED;
|
||||
Encounter[3] = NOT_STARTED;
|
||||
Encounter[4] = NOT_STARTED;
|
||||
Encounter[5] = NOT_STARTED;
|
||||
m_auiEncounter[2] = NOT_STARTED;
|
||||
m_auiEncounter[3] = NOT_STARTED;
|
||||
m_auiEncounter[4] = NOT_STARTED;
|
||||
m_auiEncounter[5] = NOT_STARTED;
|
||||
}
|
||||
else if (mThrallEventCount > 20)
|
||||
{
|
||||
Encounter[1] = data;
|
||||
Encounter[2] = data;
|
||||
Encounter[3] = data;
|
||||
Encounter[4] = data;
|
||||
Encounter[5] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
m_auiEncounter[2] = data;
|
||||
m_auiEncounter[3] = data;
|
||||
m_auiEncounter[4] = data;
|
||||
m_auiEncounter[5] = data;
|
||||
debug_log("TSCR: Instance Old Hillsbrad: Thrall event failed %u times. Resetting all sub-events.",mThrallEventCount);
|
||||
}
|
||||
}
|
||||
else
|
||||
Encounter[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
debug_log("TSCR: Instance Old Hillsbrad: Thrall escort event adjusted to data %u.",data);
|
||||
break;
|
||||
}
|
||||
case TYPE_THRALL_PART1:
|
||||
Encounter[2] = data;
|
||||
m_auiEncounter[2] = data;
|
||||
debug_log("TSCR: Instance Old Hillsbrad: Thrall event part I adjusted to data %u.",data);
|
||||
break;
|
||||
case TYPE_THRALL_PART2:
|
||||
Encounter[3] = data;
|
||||
m_auiEncounter[3] = data;
|
||||
debug_log("TSCR: Instance Old Hillsbrad: Thrall event part II adjusted to data %u.",data);
|
||||
break;
|
||||
case TYPE_THRALL_PART3:
|
||||
Encounter[4] = data;
|
||||
m_auiEncounter[4] = data;
|
||||
debug_log("TSCR: Instance Old Hillsbrad: Thrall event part III adjusted to data %u.",data);
|
||||
break;
|
||||
case TYPE_THRALL_PART4:
|
||||
Encounter[5] = data;
|
||||
m_auiEncounter[5] = data;
|
||||
debug_log("TSCR: Instance Old Hillsbrad: Thrall event part IV adjusted to data %u.",data);
|
||||
break;
|
||||
}
|
||||
@@ -199,17 +198,17 @@ struct TRINITY_DLL_DECL instance_old_hillsbrad : public ScriptedInstance
|
||||
switch(data)
|
||||
{
|
||||
case TYPE_BARREL_DIVERSION:
|
||||
return Encounter[0];
|
||||
return m_auiEncounter[0];
|
||||
case TYPE_THRALL_EVENT:
|
||||
return Encounter[1];
|
||||
return m_auiEncounter[1];
|
||||
case TYPE_THRALL_PART1:
|
||||
return Encounter[2];
|
||||
return m_auiEncounter[2];
|
||||
case TYPE_THRALL_PART2:
|
||||
return Encounter[3];
|
||||
return m_auiEncounter[3];
|
||||
case TYPE_THRALL_PART3:
|
||||
return Encounter[4];
|
||||
return m_auiEncounter[4];
|
||||
case TYPE_THRALL_PART4:
|
||||
return Encounter[5];
|
||||
return m_auiEncounter[5];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
+25
-26
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_serpent_shrine.h"
|
||||
|
||||
#define ENCOUNTERS 6
|
||||
#define MAX_ENCOUNTER 6
|
||||
|
||||
/* Serpentshrine cavern encounters:
|
||||
0 - Hydross The Unstable event
|
||||
@@ -67,10 +67,12 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
|
||||
uint64 StrangePool;
|
||||
|
||||
bool ShieldGeneratorDeactivated[4];
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
LurkerBelow = 0;
|
||||
Sharkkis = 0;
|
||||
Tidalvess = 0;
|
||||
@@ -91,15 +93,12 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
|
||||
ShieldGeneratorDeactivated[1] = false;
|
||||
ShieldGeneratorDeactivated[2] = false;
|
||||
ShieldGeneratorDeactivated[3] = false;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) return true;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -185,11 +184,11 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
|
||||
HandleGameObject(BridgePart[0], true);
|
||||
}
|
||||
ControlConsole = data;
|
||||
case DATA_HYDROSSTHEUNSTABLEEVENT: Encounters[0] = data; break;
|
||||
case DATA_LEOTHERASTHEBLINDEVENT: Encounters[1] = data; break;
|
||||
case DATA_THELURKERBELOWEVENT: Encounters[2] = data; break;
|
||||
case DATA_KARATHRESSEVENT: Encounters[3] = data; break;
|
||||
case DATA_MOROGRIMTIDEWALKEREVENT: Encounters[4] = data; break;
|
||||
case DATA_HYDROSSTHEUNSTABLEEVENT: m_auiEncounter[0] = data; break;
|
||||
case DATA_LEOTHERASTHEBLINDEVENT: m_auiEncounter[1] = data; break;
|
||||
case DATA_THELURKERBELOWEVENT: m_auiEncounter[2] = data; break;
|
||||
case DATA_KARATHRESSEVENT: m_auiEncounter[3] = data; break;
|
||||
case DATA_MOROGRIMTIDEWALKEREVENT: m_auiEncounter[4] = data; break;
|
||||
//Lady Vashj
|
||||
case DATA_LADYVASHJEVENT:
|
||||
if (data == NOT_STARTED)
|
||||
@@ -199,7 +198,7 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
|
||||
ShieldGeneratorDeactivated[2] = false;
|
||||
ShieldGeneratorDeactivated[3] = false;
|
||||
}
|
||||
Encounters[5] = data; break;
|
||||
m_auiEncounter[5] = data; break;
|
||||
case DATA_SHIELDGENERATOR1:ShieldGeneratorDeactivated[0] = (data) ? true : false; break;
|
||||
case DATA_SHIELDGENERATOR2:ShieldGeneratorDeactivated[1] = (data) ? true : false; break;
|
||||
case DATA_SHIELDGENERATOR3:ShieldGeneratorDeactivated[2] = (data) ? true : false; break;
|
||||
@@ -214,13 +213,13 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_HYDROSSTHEUNSTABLEEVENT: return Encounters[0];
|
||||
case DATA_LEOTHERASTHEBLINDEVENT: return Encounters[1];
|
||||
case DATA_THELURKERBELOWEVENT: return Encounters[2];
|
||||
case DATA_KARATHRESSEVENT: return Encounters[3];
|
||||
case DATA_MOROGRIMTIDEWALKEREVENT: return Encounters[4];
|
||||
case DATA_HYDROSSTHEUNSTABLEEVENT: return m_auiEncounter[0];
|
||||
case DATA_LEOTHERASTHEBLINDEVENT: return m_auiEncounter[1];
|
||||
case DATA_THELURKERBELOWEVENT: return m_auiEncounter[2];
|
||||
case DATA_KARATHRESSEVENT: return m_auiEncounter[3];
|
||||
case DATA_MOROGRIMTIDEWALKEREVENT: return m_auiEncounter[4];
|
||||
//Lady Vashj
|
||||
case DATA_LADYVASHJEVENT: return Encounters[5];
|
||||
case DATA_LADYVASHJEVENT: return m_auiEncounter[5];
|
||||
case DATA_SHIELDGENERATOR1: return ShieldGeneratorDeactivated[0];
|
||||
case DATA_SHIELDGENERATOR2: return ShieldGeneratorDeactivated[1];
|
||||
case DATA_SHIELDGENERATOR3: return ShieldGeneratorDeactivated[2];
|
||||
@@ -234,8 +233,8 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
|
||||
{
|
||||
OUT_SAVE_INST_DATA;
|
||||
std::ostringstream stream;
|
||||
stream << Encounters[0] << " " << Encounters[1] << " " << Encounters[2] << " "
|
||||
<< Encounters[3] << " " << Encounters[4] << " " << Encounters[5];
|
||||
stream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " " << m_auiEncounter[2] << " "
|
||||
<< m_auiEncounter[3] << " " << m_auiEncounter[4] << " " << m_auiEncounter[5];
|
||||
char* out = new char[stream.str().length() + 1];
|
||||
strcpy(out, stream.str().c_str());
|
||||
if (out)
|
||||
@@ -255,11 +254,11 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
|
||||
}
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
std::istringstream stream(in);
|
||||
stream >> Encounters[0] >> Encounters[1] >> Encounters[2] >> Encounters[3]
|
||||
>> Encounters[4] >> Encounters[5];
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) // Do not load an encounter as "In Progress" - reset it instead.
|
||||
Encounters[i] = NOT_STARTED;
|
||||
stream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2] >> m_auiEncounter[3]
|
||||
>> m_auiEncounter[4] >> m_auiEncounter[5];
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) // Do not load an encounter as "In Progress" - reset it instead.
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
}
|
||||
};
|
||||
|
||||
+19
-20
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_steam_vault.h"
|
||||
|
||||
#define ENCOUNTERS 4
|
||||
#define MAX_ENCOUNTER 4
|
||||
|
||||
#define MAIN_CHAMBERS_DOOR 183049
|
||||
#define ACCESS_PANEL_HYDRO 184125
|
||||
@@ -56,7 +56,7 @@ struct TRINITY_DLL_DECL instance_steam_vault : public ScriptedInstance
|
||||
{
|
||||
instance_steam_vault(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
uint64 ThespiaGUID;
|
||||
uint64 MekgineerGUID;
|
||||
@@ -68,21 +68,20 @@ struct TRINITY_DLL_DECL instance_steam_vault : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
ThespiaGUID = 0;
|
||||
MekgineerGUID = 0;
|
||||
KalithreshGUID = 0;
|
||||
MainChambersDoor = 0;
|
||||
AccessPanelHydro = 0;
|
||||
AccessPanelMek = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounter[i] == IN_PROGRESS)
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
@@ -122,7 +121,7 @@ struct TRINITY_DLL_DECL instance_steam_vault : public ScriptedInstance
|
||||
|
||||
debug_log("TSCR: Instance Steamvault: Access panel used.");
|
||||
}
|
||||
Encounter[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
break;
|
||||
case TYPE_MEKGINEER_STEAMRIGGER:
|
||||
if (data == SPECIAL)
|
||||
@@ -134,13 +133,13 @@ struct TRINITY_DLL_DECL instance_steam_vault : public ScriptedInstance
|
||||
|
||||
debug_log("TSCR: Instance Steamvault: Access panel used.");
|
||||
}
|
||||
Encounter[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
case TYPE_WARLORD_KALITHRESH:
|
||||
Encounter[2] = data;
|
||||
m_auiEncounter[2] = data;
|
||||
break;
|
||||
case TYPE_DISTILLER:
|
||||
Encounter[3] = data;
|
||||
m_auiEncounter[3] = data;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -153,13 +152,13 @@ struct TRINITY_DLL_DECL instance_steam_vault : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_HYDROMANCER_THESPIA:
|
||||
return Encounter[0];
|
||||
return m_auiEncounter[0];
|
||||
case TYPE_MEKGINEER_STEAMRIGGER:
|
||||
return Encounter[1];
|
||||
return m_auiEncounter[1];
|
||||
case TYPE_WARLORD_KALITHRESH:
|
||||
return Encounter[2];
|
||||
return m_auiEncounter[2];
|
||||
case TYPE_DISTILLER:
|
||||
return Encounter[3];
|
||||
return m_auiEncounter[3];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -182,7 +181,7 @@ struct TRINITY_DLL_DECL instance_steam_vault : public ScriptedInstance
|
||||
{
|
||||
OUT_SAVE_INST_DATA;
|
||||
std::ostringstream stream;
|
||||
stream << Encounter[0] << " " << Encounter[1] << " " << Encounter[2] << " " << Encounter[3];
|
||||
stream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " " << m_auiEncounter[2] << " " << m_auiEncounter[3];
|
||||
char* out = new char[stream.str().length() + 1];
|
||||
strcpy(out, stream.str().c_str());
|
||||
if (out)
|
||||
@@ -202,10 +201,10 @@ struct TRINITY_DLL_DECL instance_steam_vault : public ScriptedInstance
|
||||
}
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
std::istringstream stream(in);
|
||||
stream >> Encounter[0] >> Encounter[1] >> Encounter[2] >> Encounter[3];
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounter[i] == IN_PROGRESS)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
stream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2] >> m_auiEncounter[3];
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_gruuls_lair.h"
|
||||
|
||||
#define ENCOUNTERS 2
|
||||
#define MAX_ENCOUNTER 2
|
||||
|
||||
/* Gruuls Lair encounters:
|
||||
1 - High King Maulgar event
|
||||
@@ -35,7 +35,7 @@ struct TRINITY_DLL_DECL instance_gruuls_lair : public ScriptedInstance
|
||||
{
|
||||
instance_gruuls_lair(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
uint64 MaulgarEvent_Tank;
|
||||
uint64 KigglerTheCrazed;
|
||||
@@ -49,6 +49,8 @@ struct TRINITY_DLL_DECL instance_gruuls_lair : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
MaulgarEvent_Tank = 0;
|
||||
KigglerTheCrazed = 0;
|
||||
BlindeyeTheSeer = 0;
|
||||
@@ -58,15 +60,12 @@ struct TRINITY_DLL_DECL instance_gruuls_lair : public ScriptedInstance
|
||||
|
||||
MaulgarDoor = 0;
|
||||
GruulDoor = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) return true;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -89,7 +88,7 @@ struct TRINITY_DLL_DECL instance_gruuls_lair : public ScriptedInstance
|
||||
{
|
||||
case 184468:
|
||||
MaulgarDoor = go->GetGUID();
|
||||
if (Encounters[0] == DONE) HandleGameObject(NULL, true, go);
|
||||
if (m_auiEncounter[0] == DONE) HandleGameObject(NULL, true, go);
|
||||
break;
|
||||
case 184662: GruulDoor = go->GetGUID(); break;
|
||||
}
|
||||
@@ -123,11 +122,11 @@ struct TRINITY_DLL_DECL instance_gruuls_lair : public ScriptedInstance
|
||||
{
|
||||
case DATA_MAULGAREVENT:
|
||||
if (data == DONE) HandleGameObject(MaulgarDoor, true);
|
||||
Encounters[0] = data; break;
|
||||
m_auiEncounter[0] = data; break;
|
||||
case DATA_GRUULEVENT:
|
||||
if (data == IN_PROGRESS) HandleGameObject(GruulDoor, false);
|
||||
else HandleGameObject(GruulDoor, true);
|
||||
Encounters[1] = data; break;
|
||||
m_auiEncounter[1] = data; break;
|
||||
}
|
||||
|
||||
if (data == DONE)
|
||||
@@ -138,8 +137,8 @@ struct TRINITY_DLL_DECL instance_gruuls_lair : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_MAULGAREVENT: return Encounters[0];
|
||||
case DATA_GRUULEVENT: return Encounters[1];
|
||||
case DATA_MAULGAREVENT: return m_auiEncounter[0];
|
||||
case DATA_GRUULEVENT: return m_auiEncounter[1];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -148,7 +147,7 @@ struct TRINITY_DLL_DECL instance_gruuls_lair : public ScriptedInstance
|
||||
{
|
||||
OUT_SAVE_INST_DATA;
|
||||
std::ostringstream stream;
|
||||
stream << Encounters[0] << " " << Encounters[1];
|
||||
stream << m_auiEncounter[0] << " " << m_auiEncounter[1];
|
||||
char* out = new char[stream.str().length() + 1];
|
||||
strcpy(out, stream.str().c_str());
|
||||
if (out)
|
||||
@@ -170,10 +169,10 @@ struct TRINITY_DLL_DECL instance_gruuls_lair : public ScriptedInstance
|
||||
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
std::istringstream stream(in);
|
||||
stream >> Encounters[0] >> Encounters[1];
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) // Do not load an encounter as "In Progress" - reset it instead.
|
||||
Encounters[i] = NOT_STARTED;
|
||||
stream >> m_auiEncounter[0] >> m_auiEncounter[1];
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) // Do not load an encounter as "In Progress" - reset it instead.
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
}
|
||||
};
|
||||
|
||||
+15
-16
@@ -26,7 +26,7 @@ EndScriptData */
|
||||
|
||||
#define ENTRY_SEWER1 181823
|
||||
#define ENTRY_SEWER2 181766
|
||||
#define ENCOUNTERS 3
|
||||
#define MAX_ENCOUNTER 3
|
||||
|
||||
struct TRINITY_DLL_DECL instance_blood_furnace : public ScriptedInstance
|
||||
{
|
||||
@@ -52,11 +52,13 @@ struct TRINITY_DLL_DECL instance_blood_furnace : public ScriptedInstance
|
||||
uint64 PrisonCell7GUID;
|
||||
uint64 PrisonCell8GUID;
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
std::string str_data;
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
The_MakerGUID = 0;
|
||||
BroggokGUID = 0;
|
||||
Kelidan_The_BreakerGUID = 0;
|
||||
@@ -76,9 +78,6 @@ struct TRINITY_DLL_DECL instance_blood_furnace : public ScriptedInstance
|
||||
PrisonCell6GUID = 0;
|
||||
PrisonCell7GUID = 0;
|
||||
PrisonCell8GUID = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
|
||||
@@ -161,9 +160,9 @@ struct TRINITY_DLL_DECL instance_blood_furnace : public ScriptedInstance
|
||||
{
|
||||
switch(data)
|
||||
{
|
||||
case TYPE_THE_MAKER_EVENT: Encounter[0] = data; break;
|
||||
case TYPE_BROGGOK_EVENT: Encounter[1] = data; break;
|
||||
case TYPE_KELIDAN_THE_BREAKER_EVENT: Encounter[2] = data; break;
|
||||
case TYPE_THE_MAKER_EVENT: m_auiEncounter[0] = data; break;
|
||||
case TYPE_BROGGOK_EVENT: m_auiEncounter[1] = data; break;
|
||||
case TYPE_KELIDAN_THE_BREAKER_EVENT: m_auiEncounter[2] = data; break;
|
||||
}
|
||||
|
||||
if (data == DONE)
|
||||
@@ -171,7 +170,7 @@ struct TRINITY_DLL_DECL instance_blood_furnace : public ScriptedInstance
|
||||
OUT_SAVE_INST_DATA;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << Encounter[0] << " " << Encounter[1] << " " << Encounter[2];
|
||||
saveStream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " " << m_auiEncounter[2];
|
||||
|
||||
str_data = saveStream.str();
|
||||
|
||||
@@ -184,9 +183,9 @@ struct TRINITY_DLL_DECL instance_blood_furnace : public ScriptedInstance
|
||||
{
|
||||
switch(data)
|
||||
{
|
||||
case TYPE_THE_MAKER_EVENT: return Encounter[0];
|
||||
case TYPE_BROGGOK_EVENT: return Encounter[1];
|
||||
case TYPE_KELIDAN_THE_BREAKER_EVENT: return Encounter[2];
|
||||
case TYPE_THE_MAKER_EVENT: return m_auiEncounter[0];
|
||||
case TYPE_BROGGOK_EVENT: return m_auiEncounter[1];
|
||||
case TYPE_KELIDAN_THE_BREAKER_EVENT: return m_auiEncounter[2];
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -208,11 +207,11 @@ struct TRINITY_DLL_DECL instance_blood_furnace : public ScriptedInstance
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
|
||||
std::istringstream loadStream(in);
|
||||
loadStream >> Encounter[0] >> Encounter[1] >> Encounter[2];
|
||||
loadStream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2];
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounter[i] == IN_PROGRESS || Encounter[i] == FAIL)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS || m_auiEncounter[i] == FAIL)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
}
|
||||
|
||||
+1
-1
@@ -5,7 +5,7 @@
|
||||
#ifndef DEF_RAMPARTS_H
|
||||
#define DEF_RAMPARTS_H
|
||||
|
||||
#define ENCOUNTERS 2
|
||||
#define MAX_ENCOUNTER 2
|
||||
|
||||
enum
|
||||
{
|
||||
|
||||
+7
-9
@@ -28,18 +28,16 @@ struct TRINITY_DLL_DECL instance_ramparts : public ScriptedInstance
|
||||
{
|
||||
instance_ramparts(Map* pMap) : ScriptedInstance(pMap) {Initialize();}
|
||||
|
||||
uint32 m_uiEncounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
uint64 m_uiChestNGUID;
|
||||
uint64 m_uiChestHGUID;
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
m_uiChestNGUID = 0;
|
||||
m_uiChestHGUID = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
m_uiEncounter[i] = NOT_STARTED;
|
||||
|
||||
}
|
||||
|
||||
void OnGameObjectCreate(GameObject *go, bool add)
|
||||
@@ -58,14 +56,14 @@ struct TRINITY_DLL_DECL instance_ramparts : public ScriptedInstance
|
||||
switch(uiType)
|
||||
{
|
||||
case TYPE_VAZRUDEN:
|
||||
if (uiData == DONE && m_uiEncounter[1] == DONE)
|
||||
if (uiData == DONE && m_auiEncounter[1] == DONE)
|
||||
DoRespawnGameObject(instance->IsHeroic() ? m_uiChestHGUID : m_uiChestNGUID, HOUR*IN_MILISECONDS);
|
||||
m_uiEncounter[0] = uiData;
|
||||
m_auiEncounter[0] = uiData;
|
||||
break;
|
||||
case TYPE_NAZAN:
|
||||
if (uiData == DONE && m_uiEncounter[0] == DONE)
|
||||
if (uiData == DONE && m_auiEncounter[0] == DONE)
|
||||
DoRespawnGameObject(instance->IsHeroic() ? m_uiChestHGUID : m_uiChestNGUID, HOUR*IN_MILISECONDS);
|
||||
m_uiEncounter[1] = uiData;
|
||||
m_auiEncounter[1] = uiData;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
+12
-13
@@ -31,7 +31,7 @@ EndScriptData */
|
||||
#define CHAMBER_CENTER_Y 1.8
|
||||
#define CHAMBER_CENTER_Z -0.4
|
||||
|
||||
#define ENCOUNTERS 2
|
||||
#define MAX_ENCOUNTER 2
|
||||
|
||||
struct TRINITY_DLL_DECL instance_magtheridons_lair : public ScriptedInstance
|
||||
{
|
||||
@@ -40,7 +40,7 @@ struct TRINITY_DLL_DECL instance_magtheridons_lair : public ScriptedInstance
|
||||
Initialize();
|
||||
}
|
||||
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
uint64 MagtheridonGUID;
|
||||
std::set<uint64> ChannelerGUID;
|
||||
@@ -52,8 +52,7 @@ struct TRINITY_DLL_DECL instance_magtheridons_lair : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
MagtheridonGUID = 0;
|
||||
ChannelerGUID.clear();
|
||||
@@ -66,8 +65,8 @@ struct TRINITY_DLL_DECL instance_magtheridons_lair : public ScriptedInstance
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) return true;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -121,7 +120,7 @@ struct TRINITY_DLL_DECL instance_magtheridons_lair : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case DATA_MAGTHERIDON_EVENT:
|
||||
Encounters[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
if (data == NOT_STARTED)
|
||||
RespawnTimer = 10000;
|
||||
if (data != IN_PROGRESS)
|
||||
@@ -131,9 +130,9 @@ struct TRINITY_DLL_DECL instance_magtheridons_lair : public ScriptedInstance
|
||||
switch(data)
|
||||
{
|
||||
case NOT_STARTED: // Reset all channelers once one is reset.
|
||||
if (Encounters[1] != NOT_STARTED)
|
||||
if (m_auiEncounter[1] != NOT_STARTED)
|
||||
{
|
||||
Encounters[1] = NOT_STARTED;
|
||||
m_auiEncounter[1] = NOT_STARTED;
|
||||
for(std::set<uint64>::iterator i = ChannelerGUID.begin(); i != ChannelerGUID.end(); ++i)
|
||||
{
|
||||
if (Creature *Channeler = instance->GetCreature(*i))
|
||||
@@ -148,9 +147,9 @@ struct TRINITY_DLL_DECL instance_magtheridons_lair : public ScriptedInstance
|
||||
HandleGameObject(DoorGUID, true);
|
||||
}break;
|
||||
case IN_PROGRESS: // Event start.
|
||||
if (Encounters[1] != IN_PROGRESS)
|
||||
if (m_auiEncounter[1] != IN_PROGRESS)
|
||||
{
|
||||
Encounters[1] = IN_PROGRESS;
|
||||
m_auiEncounter[1] = IN_PROGRESS;
|
||||
// Let all five channelers aggro.
|
||||
for(std::set<uint64>::iterator i = ChannelerGUID.begin(); i != ChannelerGUID.end(); ++i)
|
||||
{
|
||||
@@ -179,7 +178,7 @@ struct TRINITY_DLL_DECL instance_magtheridons_lair : public ScriptedInstance
|
||||
}
|
||||
}break;
|
||||
}
|
||||
Encounters[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
case DATA_COLLAPSE:
|
||||
// true - collapse / false - reset
|
||||
@@ -194,7 +193,7 @@ struct TRINITY_DLL_DECL instance_magtheridons_lair : public ScriptedInstance
|
||||
uint32 GetData(uint32 type)
|
||||
{
|
||||
if (type == DATA_MAGTHERIDON_EVENT)
|
||||
return Encounters[0];
|
||||
return m_auiEncounter[0];
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
+8
-9
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_shattered_halls.h"
|
||||
|
||||
#define ENCOUNTERS 2
|
||||
#define MAX_ENCOUNTER 2
|
||||
|
||||
#define DOOR_NETHEKURSE 1
|
||||
|
||||
@@ -32,17 +32,16 @@ struct TRINITY_DLL_DECL instance_shattered_halls : public ScriptedInstance
|
||||
{
|
||||
instance_shattered_halls(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
uint64 nethekurseGUID;
|
||||
uint64 nethekurseDoorGUID;
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
nethekurseGUID = 0;
|
||||
nethekurseDoorGUID = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
void OnGameObjectCreate(GameObject *go, bool add)
|
||||
@@ -66,10 +65,10 @@ struct TRINITY_DLL_DECL instance_shattered_halls : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_NETHEKURSE:
|
||||
Encounter[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
break;
|
||||
case TYPE_OMROGG:
|
||||
Encounter[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -79,9 +78,9 @@ struct TRINITY_DLL_DECL instance_shattered_halls : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_NETHEKURSE:
|
||||
return Encounter[0];
|
||||
return m_auiEncounter[0];
|
||||
case TYPE_OMROGG:
|
||||
return Encounter[1];
|
||||
return m_auiEncounter[1];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -211,7 +211,7 @@ struct TRINITY_DLL_DECL boss_aranAI : public ScriptedAI
|
||||
FWTargPosX[i] = (*itr)->GetPositionX();
|
||||
FWTargPosY[i] = (*itr)->GetPositionY();
|
||||
m_creature->CastSpell((*itr), SPELL_FLAME_WREATH, true);
|
||||
i++;
|
||||
++i;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_karazhan.h"
|
||||
|
||||
#define ENCOUNTERS 12
|
||||
#define MAX_ENCOUNTER 12
|
||||
|
||||
/*
|
||||
0 - Attumen + Midnight (optional)
|
||||
@@ -45,7 +45,7 @@ struct TRINITY_DLL_DECL instance_karazhan : public ScriptedInstance
|
||||
{
|
||||
instance_karazhan(Map* pMap) : ScriptedInstance(pMap) {Initialize();}
|
||||
|
||||
uint32 m_auiEncounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
std::string strSaveData;
|
||||
|
||||
uint32 m_uiOperaEvent;
|
||||
@@ -69,8 +69,7 @@ struct TRINITY_DLL_DECL instance_karazhan : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
for (uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
// 1 - OZ, 2 - HOOD, 3 - RAJ, this never gets altered.
|
||||
m_uiOperaEvent = urand(1,3);
|
||||
@@ -98,7 +97,7 @@ struct TRINITY_DLL_DECL instance_karazhan : public ScriptedInstance
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for (uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
for (uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
return true;
|
||||
|
||||
@@ -287,7 +286,7 @@ struct TRINITY_DLL_DECL instance_karazhan : public ScriptedInstance
|
||||
loadStream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2] >> m_auiEncounter[3]
|
||||
>> m_auiEncounter[4] >> m_auiEncounter[5] >> m_auiEncounter[6] >> m_auiEncounter[7]
|
||||
>> m_auiEncounter[8] >> m_auiEncounter[9] >> m_auiEncounter[10] >> m_auiEncounter[11];
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) // Do not load an encounter as "In Progress" - reset it instead.
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
|
||||
+13
-14
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_magisters_terrace.h"
|
||||
|
||||
#define NUMBER_OF_ENCOUNTERS 4
|
||||
#define MAX_ENCOUNTER 4
|
||||
|
||||
/*
|
||||
0 - Selin Fireheart
|
||||
@@ -37,7 +37,7 @@ struct TRINITY_DLL_DECL instance_magisters_terrace : public ScriptedInstance
|
||||
{
|
||||
instance_magisters_terrace(Map* pMap) : ScriptedInstance(pMap) {Initialize();}
|
||||
|
||||
uint32 Encounters[NUMBER_OF_ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
uint32 DelrissaDeathCount;
|
||||
|
||||
std::list<uint64> FelCrystals;
|
||||
@@ -56,8 +56,7 @@ struct TRINITY_DLL_DECL instance_magisters_terrace : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
for(uint8 i = 0; i < NUMBER_OF_ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
FelCrystals.clear();
|
||||
|
||||
@@ -78,8 +77,8 @@ struct TRINITY_DLL_DECL instance_magisters_terrace : public ScriptedInstance
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < NUMBER_OF_ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS)
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
@@ -88,10 +87,10 @@ struct TRINITY_DLL_DECL instance_magisters_terrace : public ScriptedInstance
|
||||
{
|
||||
switch(identifier)
|
||||
{
|
||||
case DATA_SELIN_EVENT: return Encounters[0];
|
||||
case DATA_VEXALLUS_EVENT: return Encounters[1];
|
||||
case DATA_DELRISSA_EVENT: return Encounters[2];
|
||||
case DATA_KAELTHAS_EVENT: return Encounters[3];
|
||||
case DATA_SELIN_EVENT: return m_auiEncounter[0];
|
||||
case DATA_VEXALLUS_EVENT: return m_auiEncounter[1];
|
||||
case DATA_DELRISSA_EVENT: return m_auiEncounter[2];
|
||||
case DATA_KAELTHAS_EVENT: return m_auiEncounter[3];
|
||||
case DATA_DELRISSA_DEATH_COUNT: return DelrissaDeathCount;
|
||||
case DATA_FEL_CRYSTAL_SIZE: return FelCrystals.size();
|
||||
}
|
||||
@@ -102,20 +101,20 @@ struct TRINITY_DLL_DECL instance_magisters_terrace : public ScriptedInstance
|
||||
{
|
||||
switch(identifier)
|
||||
{
|
||||
case DATA_SELIN_EVENT: Encounters[0] = data; break;
|
||||
case DATA_SELIN_EVENT: m_auiEncounter[0] = data; break;
|
||||
case DATA_VEXALLUS_EVENT:
|
||||
if (data == DONE)
|
||||
DoUseDoorOrButton(VexallusDoorGUID);
|
||||
Encounters[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
case DATA_DELRISSA_EVENT:
|
||||
if (data == DONE)
|
||||
DoUseDoorOrButton(DelrissaDoorGUID);
|
||||
if (data == IN_PROGRESS)
|
||||
DelrissaDeathCount = 0;
|
||||
Encounters[2] = data;
|
||||
m_auiEncounter[2] = data;
|
||||
break;
|
||||
case DATA_KAELTHAS_EVENT: Encounters[3] = data; break;
|
||||
case DATA_KAELTHAS_EVENT: m_auiEncounter[3] = data; break;
|
||||
|
||||
case DATA_DELRISSA_DEATH_COUNT:
|
||||
if (data == SPECIAL)
|
||||
|
||||
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_molten_core.h"
|
||||
|
||||
#define ENCOUNTERS 9
|
||||
#define MAX_ENCOUNTER 9
|
||||
|
||||
#define ID_LUCIFRON 12118
|
||||
#define ID_MAGMADAR 11982
|
||||
@@ -48,10 +48,12 @@ struct TRINITY_DLL_DECL instance_molten_core : public ScriptedInstance
|
||||
//If all Bosses are dead.
|
||||
bool IsBossDied[9];
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
Lucifron = 0;
|
||||
Magmadar = 0;
|
||||
Gehennas = 0;
|
||||
@@ -84,12 +86,9 @@ struct TRINITY_DLL_DECL instance_molten_core : public ScriptedInstance
|
||||
|
||||
IsBossDied[7] = false;
|
||||
IsBossDied[8] = false;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
bool Ism_auiEncounterInProgress() const
|
||||
{
|
||||
return false;
|
||||
};
|
||||
|
||||
@@ -30,7 +30,7 @@ struct TRINITY_DLL_DECL instance_nexus : public ScriptedInstance
|
||||
{
|
||||
instance_nexus(Map* pMap) : ScriptedInstance(pMap) { Initialize(); }
|
||||
|
||||
uint32 Encounters[NUMBER_OF_ENCOUNTERS];
|
||||
uint32 m_auiEncounter[NUMBER_OF_ENCOUNTERS];
|
||||
|
||||
uint64 Anomalus;
|
||||
uint64 Keristrasza;
|
||||
@@ -43,9 +43,9 @@ struct TRINITY_DLL_DECL instance_nexus : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
Anomalus = 0;
|
||||
for(uint8 i = 0; i < NUMBER_OF_ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
void OnCreatureCreate(Creature* pCreature, bool add)
|
||||
@@ -114,21 +114,21 @@ struct TRINITY_DLL_DECL instance_nexus : public ScriptedInstance
|
||||
case 188527:
|
||||
{
|
||||
AnomalusContainmentSphere = go->GetGUID();
|
||||
if (Encounters[1] == DONE)
|
||||
if (m_auiEncounter[1] == DONE)
|
||||
go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_UNK1);
|
||||
break;
|
||||
}
|
||||
case 188528:
|
||||
{
|
||||
OrmoroksContainmentSphere = go->GetGUID();
|
||||
if (Encounters[2] == DONE)
|
||||
if (m_auiEncounter[2] == DONE)
|
||||
go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_UNK1);
|
||||
break;
|
||||
}
|
||||
case 188526:
|
||||
{
|
||||
TelestrasContainmentSphere = go->GetGUID();
|
||||
if (Encounters[0] == DONE)
|
||||
if (m_auiEncounter[0] == DONE)
|
||||
go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_UNK1);
|
||||
break;
|
||||
}
|
||||
@@ -139,10 +139,10 @@ struct TRINITY_DLL_DECL instance_nexus : public ScriptedInstance
|
||||
{
|
||||
switch(identifier)
|
||||
{
|
||||
case DATA_MAGUS_TELESTRA_EVENT: return Encounters[0];
|
||||
case DATA_ANOMALUS_EVENT: return Encounters[1];
|
||||
case DATA_ORMOROK_EVENT: return Encounters[2];
|
||||
case DATA_KERISTRASZA_EVENT: return Encounters[3];
|
||||
case DATA_MAGUS_TELESTRA_EVENT: return m_auiEncounter[0];
|
||||
case DATA_ANOMALUS_EVENT: return m_auiEncounter[1];
|
||||
case DATA_ORMOROK_EVENT: return m_auiEncounter[2];
|
||||
case DATA_KERISTRASZA_EVENT: return m_auiEncounter[3];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -159,7 +159,7 @@ struct TRINITY_DLL_DECL instance_nexus : public ScriptedInstance
|
||||
if (Sphere)
|
||||
Sphere->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_UNK1);
|
||||
}
|
||||
Encounters[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
break;
|
||||
}
|
||||
case DATA_ANOMALUS_EVENT:
|
||||
@@ -170,7 +170,7 @@ struct TRINITY_DLL_DECL instance_nexus : public ScriptedInstance
|
||||
if (Sphere)
|
||||
Sphere->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_UNK1);
|
||||
}
|
||||
Encounters[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
}
|
||||
case DATA_ORMOROK_EVENT:
|
||||
@@ -181,10 +181,10 @@ struct TRINITY_DLL_DECL instance_nexus : public ScriptedInstance
|
||||
if (Sphere)
|
||||
Sphere->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_UNK1);
|
||||
}
|
||||
Encounters[2] = data;
|
||||
m_auiEncounter[2] = data;
|
||||
break;
|
||||
}
|
||||
case DATA_KERISTRASZA_EVENT: Encounters[3] = data; break;
|
||||
case DATA_KERISTRASZA_EVENT: m_auiEncounter[3] = data; break;
|
||||
}
|
||||
|
||||
if (data == DONE)
|
||||
@@ -192,8 +192,8 @@ struct TRINITY_DLL_DECL instance_nexus : public ScriptedInstance
|
||||
OUT_SAVE_INST_DATA;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << Encounters[0] << " " << Encounters[1] << " " << Encounters[2] << " "
|
||||
<< Encounters[3];
|
||||
saveStream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " " << m_auiEncounter[2] << " "
|
||||
<< m_auiEncounter[3];
|
||||
|
||||
strInstData = saveStream.str();
|
||||
|
||||
@@ -231,12 +231,12 @@ struct TRINITY_DLL_DECL instance_nexus : public ScriptedInstance
|
||||
OUT_LOAD_INST_DATA(chrIn);
|
||||
|
||||
std::istringstream loadStream(chrIn);
|
||||
loadStream >> Encounters[0] >> Encounters[1] >> Encounters[2] >> Encounters[3];
|
||||
loadStream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2] >> m_auiEncounter[3];
|
||||
|
||||
for(uint8 i = 1; i < NUMBER_OF_ENCOUNTERS; ++i)
|
||||
{
|
||||
if (Encounters[i] == IN_PROGRESS)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#include "precompiled.h"
|
||||
#include "def_obsidian_sanctum.h"
|
||||
|
||||
#define ENCOUNTERS 1
|
||||
#define MAX_ENCOUNTER 1
|
||||
|
||||
/* Obsidian Sanctum encounters:
|
||||
0 - Sartharion
|
||||
@@ -11,7 +11,7 @@ struct TRINITY_DLL_DECL instance_obsidian_sanctum : public ScriptedInstance
|
||||
{
|
||||
instance_obsidian_sanctum(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 m_uiEncounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
uint64 m_uiSartharionGUID;
|
||||
uint64 m_uiTenebronGUID;
|
||||
uint64 m_uiShadronGUID;
|
||||
@@ -19,13 +19,12 @@ struct TRINITY_DLL_DECL instance_obsidian_sanctum : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
m_uiSartharionGUID = 0;
|
||||
m_uiTenebronGUID = 0;
|
||||
m_uiShadronGUID = 0;
|
||||
m_uiVesperonGUID = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
m_uiEncounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
void OnCreatureCreate(Creature* pCreature, bool add)
|
||||
@@ -55,13 +54,13 @@ struct TRINITY_DLL_DECL instance_obsidian_sanctum : public ScriptedInstance
|
||||
void SetData(uint32 uiType, uint32 uiData)
|
||||
{
|
||||
if (uiType == TYPE_SARTHARION_EVENT)
|
||||
m_uiEncounter[0] = uiData;
|
||||
m_auiEncounter[0] = uiData;
|
||||
}
|
||||
|
||||
uint32 GetData(uint32 uiType)
|
||||
{
|
||||
if (uiType == TYPE_SARTHARION_EVENT)
|
||||
return m_uiEncounter[0];
|
||||
return m_auiEncounter[0];
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ EndScriptData */
|
||||
#define ENTRY_HEAD 23775
|
||||
#define ENTRY_PUMPKIN 23694
|
||||
|
||||
#define ENCOUNTERS 1
|
||||
#define MAX_ENCOUNTER 1
|
||||
|
||||
struct TRINITY_DLL_DECL instance_scarlet_monastery : public ScriptedInstance
|
||||
{
|
||||
@@ -46,10 +46,12 @@ struct TRINITY_DLL_DECL instance_scarlet_monastery : public ScriptedInstance
|
||||
uint64 VorrelGUID;
|
||||
uint64 DoorHighInquisitorGUID;
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
PumpkinShrineGUID = 0;
|
||||
HorsemanGUID = 0;
|
||||
HeadGUID = 0;
|
||||
@@ -59,9 +61,6 @@ struct TRINITY_DLL_DECL instance_scarlet_monastery : public ScriptedInstance
|
||||
WhitemaneGUID = 0;
|
||||
VorrelGUID = 0;
|
||||
DoorHighInquisitorGUID = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
void OnGameObjectCreate(GameObject *go, bool add)
|
||||
@@ -96,7 +95,7 @@ struct TRINITY_DLL_DECL instance_scarlet_monastery : public ScriptedInstance
|
||||
if (data == FAIL)
|
||||
DoUseDoorOrButton(DoorHighInquisitorGUID);
|
||||
|
||||
Encounter[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
break;
|
||||
case GAMEOBJECT_PUMPKIN_SHRINE:
|
||||
HandleGameObject(PumpkinShrineGUID, false);
|
||||
@@ -135,7 +134,7 @@ struct TRINITY_DLL_DECL instance_scarlet_monastery : public ScriptedInstance
|
||||
uint32 GetData(uint32 type)
|
||||
{
|
||||
if (type == TYPE_MOGRAINE_AND_WHITE_EVENT)
|
||||
return Encounter[0];
|
||||
return m_auiEncounter[0];
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ EndScriptData */
|
||||
#define GO_GATE_BAROV 177373
|
||||
#define GO_GATE_ILLUCIA 177371
|
||||
|
||||
#define ENCOUNTERS 2
|
||||
#define MAX_ENCOUNTER 2
|
||||
|
||||
struct TRINITY_DLL_DECL instance_scholomance : public ScriptedInstance
|
||||
{
|
||||
@@ -41,7 +41,7 @@ struct TRINITY_DLL_DECL instance_scholomance : public ScriptedInstance
|
||||
|
||||
//Lord Alexei Barov, Doctor Theolen Krastinov, The Ravenian, Lorekeeper Polkelt, Instructor Malicia and the Lady Illucia Barov.
|
||||
bool IsBossDied[6];
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
uint64 GateKirtonosGUID;
|
||||
uint64 GateGandlingGUID;
|
||||
@@ -54,6 +54,8 @@ struct TRINITY_DLL_DECL instance_scholomance : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
GateKirtonosGUID = 0;
|
||||
GateGandlingGUID = 0;
|
||||
GateMiliciaGUID = 0;
|
||||
@@ -65,9 +67,6 @@ struct TRINITY_DLL_DECL instance_scholomance : public ScriptedInstance
|
||||
|
||||
for(uint8 i = 0; i < 6; ++i)
|
||||
IsBossDied[i] = false;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
void OnGameObjectCreate(GameObject *go, bool add)
|
||||
@@ -108,10 +107,10 @@ struct TRINITY_DLL_DECL instance_scholomance : public ScriptedInstance
|
||||
IsBossDied[5] = true;
|
||||
break;
|
||||
case TYPE_GANDLING:
|
||||
Encounter[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
break;
|
||||
case TYPE_KIRTONOS:
|
||||
Encounter[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -122,7 +121,7 @@ struct TRINITY_DLL_DECL instance_scholomance : public ScriptedInstance
|
||||
{
|
||||
if (IsBossDied[0] && IsBossDied[1] && IsBossDied[2] && IsBossDied[3] && IsBossDied[4] && IsBossDied[5])
|
||||
{
|
||||
Encounter[0] = IN_PROGRESS;
|
||||
m_auiEncounter[0] = IN_PROGRESS;
|
||||
return IN_PROGRESS;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_shadowfang_keep.h"
|
||||
|
||||
#define ENCOUNTERS 4
|
||||
#define MAX_ENCOUNTER 4
|
||||
|
||||
enum
|
||||
{
|
||||
@@ -43,7 +43,7 @@ struct TRINITY_DLL_DECL instance_shadowfang_keep : public ScriptedInstance
|
||||
{
|
||||
instance_shadowfang_keep(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
std::string str_data;
|
||||
|
||||
uint64 uiAshGUID;
|
||||
@@ -55,15 +55,14 @@ struct TRINITY_DLL_DECL instance_shadowfang_keep : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
uiAshGUID = 0;
|
||||
uiAdaGUID = 0;
|
||||
|
||||
DoorCourtyardGUID = 0;
|
||||
DoorSorcererGUID = 0;
|
||||
DoorArugalGUID = 0;
|
||||
|
||||
for(uint8 i=0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
void OnCreatureCreate(Creature* pCreature, bool add)
|
||||
@@ -81,17 +80,17 @@ struct TRINITY_DLL_DECL instance_shadowfang_keep : public ScriptedInstance
|
||||
{
|
||||
case GO_COURTYARD_DOOR:
|
||||
DoorCourtyardGUID = go->GetGUID();
|
||||
if (Encounter[0] == DONE)
|
||||
if (m_auiEncounter[0] == DONE)
|
||||
DoUseDoorOrButton(DoorCourtyardGUID);
|
||||
break;
|
||||
case GO_SORCERER_DOOR:
|
||||
DoorSorcererGUID = go->GetGUID();
|
||||
if (Encounter[2] == DONE)
|
||||
if (m_auiEncounter[2] == DONE)
|
||||
DoUseDoorOrButton(DoorSorcererGUID);
|
||||
break;
|
||||
case GO_ARUGAL_DOOR:
|
||||
DoorArugalGUID = go->GetGUID();
|
||||
if (Encounter[3] == DONE)
|
||||
if (m_auiEncounter[3] == DONE)
|
||||
DoUseDoorOrButton(DoorArugalGUID);
|
||||
break;
|
||||
}
|
||||
@@ -116,22 +115,22 @@ struct TRINITY_DLL_DECL instance_shadowfang_keep : public ScriptedInstance
|
||||
case TYPE_FREE_NPC:
|
||||
if (data == DONE)
|
||||
DoUseDoorOrButton(DoorCourtyardGUID);
|
||||
Encounter[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
break;
|
||||
case TYPE_RETHILGORE:
|
||||
if (data == DONE)
|
||||
DoSpeech();
|
||||
Encounter[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
case TYPE_FENRUS:
|
||||
if (data == DONE)
|
||||
DoUseDoorOrButton(DoorSorcererGUID);
|
||||
Encounter[2] = data;
|
||||
m_auiEncounter[2] = data;
|
||||
break;
|
||||
case TYPE_NANDOS:
|
||||
if (data == DONE)
|
||||
DoUseDoorOrButton(DoorArugalGUID);
|
||||
Encounter[3] = data;
|
||||
m_auiEncounter[3] = data;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -140,7 +139,7 @@ struct TRINITY_DLL_DECL instance_shadowfang_keep : public ScriptedInstance
|
||||
OUT_SAVE_INST_DATA;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << Encounter[0] << " " << Encounter[1] << " " << Encounter[2] << " " << Encounter[3];
|
||||
saveStream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " " << m_auiEncounter[2] << " " << m_auiEncounter[3];
|
||||
|
||||
str_data = saveStream.str();
|
||||
|
||||
@@ -154,13 +153,13 @@ struct TRINITY_DLL_DECL instance_shadowfang_keep : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_FREE_NPC:
|
||||
return Encounter[0];
|
||||
return m_auiEncounter[0];
|
||||
case TYPE_RETHILGORE:
|
||||
return Encounter[1];
|
||||
return m_auiEncounter[1];
|
||||
case TYPE_FENRUS:
|
||||
return Encounter[2];
|
||||
return m_auiEncounter[2];
|
||||
case TYPE_NANDOS:
|
||||
return Encounter[3];
|
||||
return m_auiEncounter[3];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -181,12 +180,12 @@ struct TRINITY_DLL_DECL instance_shadowfang_keep : public ScriptedInstance
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
|
||||
std::istringstream loadStream(in);
|
||||
loadStream >> Encounter[0] >> Encounter[1] >> Encounter[2] >> Encounter[3];
|
||||
loadStream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2] >> m_auiEncounter[3];
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
{
|
||||
if (Encounter[i] == IN_PROGRESS)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
|
||||
@@ -45,13 +45,13 @@ EndScriptData */
|
||||
#define C_BLACK_GUARD 10394
|
||||
#define C_YSIDA 16031
|
||||
|
||||
#define ENCOUNTERS 6
|
||||
#define MAX_ENCOUNTER 6
|
||||
|
||||
struct TRINITY_DLL_DECL instance_stratholme : public ScriptedInstance
|
||||
{
|
||||
instance_stratholme(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 Encounter[MAX_ENCOUNTER];
|
||||
|
||||
bool IsSilverHandDead[5];
|
||||
|
||||
@@ -76,7 +76,7 @@ struct TRINITY_DLL_DECL instance_stratholme : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
|
||||
for(uint8 i = 0; i < 5; ++i)
|
||||
@@ -332,7 +332,7 @@ struct TRINITY_DLL_DECL instance_stratholme : public ScriptedInstance
|
||||
loadStream >> Encounter[0] >> Encounter[1] >> Encounter[2] >> Encounter[3]
|
||||
>> Encounter[4] >> Encounter[5];
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (Encounter[i] == IN_PROGRESS)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_sunwell_plateau.h"
|
||||
|
||||
#define ENCOUNTERS 6
|
||||
#define MAX_ENCOUNTER 6
|
||||
|
||||
/* Sunwell Plateau:
|
||||
0 - Kalecgos and Sathrovarr
|
||||
@@ -27,7 +27,7 @@ struct TRINITY_DLL_DECL instance_sunwell_plateau : public ScriptedInstance
|
||||
{
|
||||
instance_sunwell_plateau(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
/** Creatures **/
|
||||
uint64 Kalecgos_Dragon;
|
||||
@@ -55,6 +55,8 @@ struct TRINITY_DLL_DECL instance_sunwell_plateau : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
/*** Creatures ***/
|
||||
Kalecgos_Dragon = 0;
|
||||
Kalecgos_Human = 0;
|
||||
@@ -76,18 +78,14 @@ struct TRINITY_DLL_DECL instance_sunwell_plateau : public ScriptedInstance
|
||||
MurusGate[0] = 0;
|
||||
MurusGate[1] = 0;
|
||||
|
||||
/*** Encounters ***/
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
|
||||
/*** Misc ***/
|
||||
SpectralRealmTimer = 5000;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS)
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
@@ -137,13 +135,13 @@ struct TRINITY_DLL_DECL instance_sunwell_plateau : public ScriptedInstance
|
||||
{
|
||||
case 188421: ForceField = go->GetGUID(); break;
|
||||
case 188075:
|
||||
if (Encounters[2] == DONE)
|
||||
if (m_auiEncounter[2] == DONE)
|
||||
HandleGameObject(NULL, true, go);
|
||||
FireBarrier = go->GetGUID();
|
||||
break;
|
||||
case 187990: MurusGate[0] = go->GetGUID(); break;
|
||||
case 188118:
|
||||
if (Encounters[4] == DONE)
|
||||
if (m_auiEncounter[4] == DONE)
|
||||
HandleGameObject(NULL, true, go);
|
||||
MurusGate[1]= go->GetGUID();
|
||||
break;
|
||||
@@ -154,12 +152,12 @@ struct TRINITY_DLL_DECL instance_sunwell_plateau : public ScriptedInstance
|
||||
{
|
||||
switch(id)
|
||||
{
|
||||
case DATA_KALECGOS_EVENT: return Encounters[0];
|
||||
case DATA_BRUTALLUS_EVENT: return Encounters[1];
|
||||
case DATA_FELMYST_EVENT: return Encounters[2];
|
||||
case DATA_EREDAR_TWINS_EVENT: return Encounters[3];
|
||||
case DATA_MURU_EVENT: return Encounters[4];
|
||||
case DATA_KILJAEDEN_EVENT: return Encounters[5];
|
||||
case DATA_KALECGOS_EVENT: return m_auiEncounter[0];
|
||||
case DATA_BRUTALLUS_EVENT: return m_auiEncounter[1];
|
||||
case DATA_FELMYST_EVENT: return m_auiEncounter[2];
|
||||
case DATA_EREDAR_TWINS_EVENT: return m_auiEncounter[3];
|
||||
case DATA_MURU_EVENT: return m_auiEncounter[4];
|
||||
case DATA_KILJAEDEN_EVENT: return m_auiEncounter[5];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -193,13 +191,13 @@ struct TRINITY_DLL_DECL instance_sunwell_plateau : public ScriptedInstance
|
||||
{
|
||||
switch(id)
|
||||
{
|
||||
case DATA_KALECGOS_EVENT: Encounters[0] = data; break;
|
||||
case DATA_BRUTALLUS_EVENT: Encounters[1] = data; break;
|
||||
case DATA_KALECGOS_EVENT: m_auiEncounter[0] = data; break;
|
||||
case DATA_BRUTALLUS_EVENT: m_auiEncounter[1] = data; break;
|
||||
case DATA_FELMYST_EVENT:
|
||||
if (data == DONE)
|
||||
HandleGameObject(FireBarrier, true);
|
||||
Encounters[2] = data; break;
|
||||
case DATA_EREDAR_TWINS_EVENT: Encounters[3] = data; break;
|
||||
m_auiEncounter[2] = data; break;
|
||||
case DATA_EREDAR_TWINS_EVENT: m_auiEncounter[3] = data; break;
|
||||
case DATA_MURU_EVENT:
|
||||
switch(data)
|
||||
{
|
||||
@@ -216,8 +214,8 @@ struct TRINITY_DLL_DECL instance_sunwell_plateau : public ScriptedInstance
|
||||
HandleGameObject(MurusGate[1], false);
|
||||
break;
|
||||
}
|
||||
Encounters[4] = data; break;
|
||||
case DATA_KILJAEDEN_EVENT: Encounters[5] = data; break;
|
||||
m_auiEncounter[4] = data; break;
|
||||
case DATA_KILJAEDEN_EVENT: m_auiEncounter[5] = data; break;
|
||||
}
|
||||
|
||||
if (data == DONE)
|
||||
@@ -228,8 +226,8 @@ struct TRINITY_DLL_DECL instance_sunwell_plateau : public ScriptedInstance
|
||||
{
|
||||
OUT_SAVE_INST_DATA;
|
||||
std::ostringstream stream;
|
||||
stream << Encounters[0] << " " << Encounters[1] << " " << Encounters[2] << " " << Encounters[3] << " "
|
||||
<< Encounters[4] << " " << Encounters[5];
|
||||
stream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " " << m_auiEncounter[2] << " " << m_auiEncounter[3] << " "
|
||||
<< m_auiEncounter[4] << " " << m_auiEncounter[5];
|
||||
char* out = new char[stream.str().length() + 1];
|
||||
strcpy(out, stream.str().c_str());
|
||||
if (out)
|
||||
@@ -250,11 +248,11 @@ struct TRINITY_DLL_DECL instance_sunwell_plateau : public ScriptedInstance
|
||||
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
std::istringstream stream(in);
|
||||
stream >> Encounters[0] >> Encounters[1] >> Encounters[2] >> Encounters[3]
|
||||
>> Encounters[4] >> Encounters[5];
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) // Do not load an encounter as "In Progress" - reset it instead.
|
||||
Encounters[i] = NOT_STARTED;
|
||||
stream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2] >> m_auiEncounter[3]
|
||||
>> m_auiEncounter[4] >> m_auiEncounter[5];
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) // Do not load an encounter as "In Progress" - reset it instead.
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_arcatraz.h"
|
||||
|
||||
#define ENCOUNTERS 9
|
||||
#define MAX_ENCOUNTER 9
|
||||
|
||||
#define CONTAINMENT_CORE_SECURITY_FIELD_ALPHA 184318 //door opened when Wrath-Scryer Soccothrates dies
|
||||
#define CONTAINMENT_CORE_SECURITY_FIELD_BETA 184319 //door opened when Dalliah the Doomsayer dies
|
||||
@@ -50,7 +50,7 @@ struct TRINITY_DLL_DECL instance_arcatraz : public ScriptedInstance
|
||||
{
|
||||
instance_arcatraz(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
GameObject *Containment_Core_Security_Field_Alpha;
|
||||
GameObject *Containment_Core_Security_Field_Beta;
|
||||
@@ -66,6 +66,8 @@ struct TRINITY_DLL_DECL instance_arcatraz : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
Containment_Core_Security_Field_Alpha = NULL;
|
||||
Containment_Core_Security_Field_Beta = NULL;
|
||||
Pod_Alpha = NULL;
|
||||
@@ -77,15 +79,12 @@ struct TRINITY_DLL_DECL instance_arcatraz : public ScriptedInstance
|
||||
|
||||
GoSphereGUID = 0;
|
||||
MellicharGUID = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounter[i] == IN_PROGRESS)
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
@@ -118,68 +117,68 @@ struct TRINITY_DLL_DECL instance_arcatraz : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_ZEREKETH:
|
||||
Encounter[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
break;
|
||||
|
||||
case TYPE_DALLIAH:
|
||||
if (data == DONE)
|
||||
if (Containment_Core_Security_Field_Beta)
|
||||
Containment_Core_Security_Field_Beta->UseDoorOrButton();
|
||||
Encounter[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
|
||||
case TYPE_SOCCOTHRATES:
|
||||
if (data == DONE)
|
||||
if (Containment_Core_Security_Field_Alpha)
|
||||
Containment_Core_Security_Field_Alpha->UseDoorOrButton();
|
||||
Encounter[2] = data;
|
||||
m_auiEncounter[2] = data;
|
||||
break;
|
||||
|
||||
case TYPE_HARBINGERSKYRISS:
|
||||
if (data == NOT_STARTED || data == FAIL)
|
||||
{
|
||||
Encounter[4] = NOT_STARTED;
|
||||
Encounter[5] = NOT_STARTED;
|
||||
Encounter[6] = NOT_STARTED;
|
||||
Encounter[7] = NOT_STARTED;
|
||||
Encounter[8] = NOT_STARTED;
|
||||
m_auiEncounter[4] = NOT_STARTED;
|
||||
m_auiEncounter[5] = NOT_STARTED;
|
||||
m_auiEncounter[6] = NOT_STARTED;
|
||||
m_auiEncounter[7] = NOT_STARTED;
|
||||
m_auiEncounter[8] = NOT_STARTED;
|
||||
}
|
||||
Encounter[3] = data;
|
||||
m_auiEncounter[3] = data;
|
||||
break;
|
||||
|
||||
case TYPE_WARDEN_1:
|
||||
if (data == IN_PROGRESS)
|
||||
if (Pod_Alpha)
|
||||
Pod_Alpha->UseDoorOrButton();
|
||||
Encounter[4] = data;
|
||||
m_auiEncounter[4] = data;
|
||||
break;
|
||||
|
||||
case TYPE_WARDEN_2:
|
||||
if (data == IN_PROGRESS)
|
||||
if (Pod_Beta)
|
||||
Pod_Beta->UseDoorOrButton();
|
||||
Encounter[5] = data;
|
||||
m_auiEncounter[5] = data;
|
||||
break;
|
||||
|
||||
case TYPE_WARDEN_3:
|
||||
if (data == IN_PROGRESS)
|
||||
if (Pod_Delta)
|
||||
Pod_Delta->UseDoorOrButton();
|
||||
Encounter[6] = data;
|
||||
m_auiEncounter[6] = data;
|
||||
break;
|
||||
|
||||
case TYPE_WARDEN_4:
|
||||
if (data == IN_PROGRESS)
|
||||
if (Pod_Gamma)
|
||||
Pod_Gamma->UseDoorOrButton();
|
||||
Encounter[7] = data;
|
||||
m_auiEncounter[7] = data;
|
||||
break;
|
||||
|
||||
case TYPE_WARDEN_5:
|
||||
if (data == IN_PROGRESS)
|
||||
if (Pod_Omega)
|
||||
Pod_Omega->UseDoorOrButton();
|
||||
Encounter[8] = data;
|
||||
m_auiEncounter[8] = data;
|
||||
break;
|
||||
|
||||
case TYPE_SHIELD_OPEN:
|
||||
@@ -195,17 +194,17 @@ struct TRINITY_DLL_DECL instance_arcatraz : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case TYPE_HARBINGERSKYRISS:
|
||||
return Encounter[3];
|
||||
return m_auiEncounter[3];
|
||||
case TYPE_WARDEN_1:
|
||||
return Encounter[4];
|
||||
return m_auiEncounter[4];
|
||||
case TYPE_WARDEN_2:
|
||||
return Encounter[5];
|
||||
return m_auiEncounter[5];
|
||||
case TYPE_WARDEN_3:
|
||||
return Encounter[6];
|
||||
return m_auiEncounter[6];
|
||||
case TYPE_WARDEN_4:
|
||||
return Encounter[7];
|
||||
return m_auiEncounter[7];
|
||||
case TYPE_WARDEN_5:
|
||||
return Encounter[8];
|
||||
return m_auiEncounter[8];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_the_eye.h"
|
||||
|
||||
#define ENCOUNTERS 5
|
||||
#define MAX_ENCOUNTER 5
|
||||
|
||||
/* The Eye encounters:
|
||||
0 - Kael'thas event
|
||||
@@ -48,10 +48,12 @@ struct TRINITY_DLL_DECL instance_the_eye : public ScriptedInstance
|
||||
uint8 KaelthasEventPhase;
|
||||
uint8 AlarEventPhase;
|
||||
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
ThaladredTheDarkener = 0;
|
||||
LordSanguinar = 0;
|
||||
GrandAstromancerCapernian = 0;
|
||||
@@ -62,15 +64,12 @@ struct TRINITY_DLL_DECL instance_the_eye : public ScriptedInstance
|
||||
|
||||
KaelthasEventPhase = 0;
|
||||
AlarEventPhase = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) return true;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -108,10 +107,10 @@ struct TRINITY_DLL_DECL instance_the_eye : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_ALAREVENT: AlarEventPhase = data; Encounters[0] = data; break;
|
||||
case DATA_HIGHASTROMANCERSOLARIANEVENT: Encounters[1] = data; break;
|
||||
case DATA_VOIDREAVEREVENT: Encounters[2] = data; break;
|
||||
case DATA_KAELTHASEVENT: KaelthasEventPhase = data; Encounters[3] = data; break;
|
||||
case DATA_ALAREVENT: AlarEventPhase = data; m_auiEncounter[0] = data; break;
|
||||
case DATA_HIGHASTROMANCERSOLARIANEVENT: m_auiEncounter[1] = data; break;
|
||||
case DATA_VOIDREAVEREVENT: m_auiEncounter[2] = data; break;
|
||||
case DATA_KAELTHASEVENT: KaelthasEventPhase = data; m_auiEncounter[3] = data; break;
|
||||
}
|
||||
if (data == DONE)
|
||||
SaveToDB();
|
||||
@@ -122,8 +121,8 @@ struct TRINITY_DLL_DECL instance_the_eye : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case DATA_ALAREVENT: return AlarEventPhase;
|
||||
case DATA_HIGHASTROMANCERSOLARIANEVENT: return Encounters[1];
|
||||
case DATA_VOIDREAVEREVENT: return Encounters[2];
|
||||
case DATA_HIGHASTROMANCERSOLARIANEVENT: return m_auiEncounter[1];
|
||||
case DATA_VOIDREAVEREVENT: return m_auiEncounter[2];
|
||||
case DATA_KAELTHASEVENT: return KaelthasEventPhase;
|
||||
}
|
||||
return 0;
|
||||
@@ -133,7 +132,7 @@ struct TRINITY_DLL_DECL instance_the_eye : public ScriptedInstance
|
||||
{
|
||||
OUT_SAVE_INST_DATA;
|
||||
std::ostringstream stream;
|
||||
stream << Encounters[0] << " " << Encounters[1] << " " << Encounters[2] << " " << Encounters[3];
|
||||
stream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " " << m_auiEncounter[2] << " " << m_auiEncounter[3];
|
||||
char* out = new char[stream.str().length() + 1];
|
||||
strcpy(out, stream.str().c_str());
|
||||
if (out)
|
||||
@@ -153,10 +152,10 @@ struct TRINITY_DLL_DECL instance_the_eye : public ScriptedInstance
|
||||
}
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
std::istringstream stream(in);
|
||||
stream >> Encounters[0] >> Encounters[1] >> Encounters[2] >> Encounters[3];
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) // Do not load an encounter as "In Progress" - reset it instead.
|
||||
Encounters[i] = NOT_STARTED;
|
||||
stream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2] >> m_auiEncounter[3];
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) // Do not load an encounter as "In Progress" - reset it instead.
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -24,25 +24,24 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_mechanar.h"
|
||||
|
||||
#define ENCOUNTERS 1
|
||||
#define MAX_ENCOUNTER 1
|
||||
|
||||
struct TRINITY_DLL_DECL instance_mechanar : public ScriptedInstance
|
||||
{
|
||||
instance_mechanar(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS)
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
@@ -52,7 +51,7 @@ struct TRINITY_DLL_DECL instance_mechanar : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_NETHERMANCER_EVENT: return Encounters[0];
|
||||
case DATA_NETHERMANCER_EVENT: return m_auiEncounter[0];
|
||||
}
|
||||
|
||||
return false;
|
||||
@@ -67,7 +66,7 @@ struct TRINITY_DLL_DECL instance_mechanar : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_NETHERMANCER_EVENT: Encounters[0] = data; break;
|
||||
case DATA_NETHERMANCER_EVENT: m_auiEncounter[0] = data; break;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -246,7 +246,7 @@ struct TRINITY_DLL_DECL boss_skeramAI : public ScriptedAI
|
||||
Group *grp = CAST_PLR(targetpl)->GetGroup();
|
||||
if (grp)
|
||||
{
|
||||
for (int ici = 0; ici < TARGETICONCOUNT; ici++)
|
||||
for (int ici = 0; ici < TARGETICONCOUNT; ++ici)
|
||||
{
|
||||
//if (grp ->m_targetIcons[ici] == m_creature->GetGUID()) -- private member:(
|
||||
grp->SetTargetIcon(ici, 0);
|
||||
|
||||
@@ -186,7 +186,7 @@ struct TRINITY_DLL_DECL aqsentinelAI : public ScriptedAI
|
||||
ClearBudyList();
|
||||
AddSentinelsNear(m_creature);
|
||||
int bli;
|
||||
for (bli = 0; bli < 3;bli++)
|
||||
for (bli = 0; bli < 3; ++bli)
|
||||
{
|
||||
if (!nearby[bli])
|
||||
break;
|
||||
@@ -245,7 +245,7 @@ struct TRINITY_DLL_DECL aqsentinelAI : public ScriptedAI
|
||||
|
||||
void JustDied(Unit* who)
|
||||
{
|
||||
for (int ni=0; ni<3; ni++)
|
||||
for (int ni=0; ni<3; ++ni)
|
||||
{
|
||||
Creature *sent = nearby[ni];
|
||||
if (!sent)
|
||||
|
||||
+20
-21
@@ -26,7 +26,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_utgarde_keep.h"
|
||||
|
||||
#define ENCOUNTERS 3
|
||||
#define MAX_ENCOUNTER 3
|
||||
|
||||
#define ENTRY_BELLOW_1 186688
|
||||
#define ENTRY_BELLOW_2 186689
|
||||
@@ -59,11 +59,13 @@ struct TRINITY_DLL_DECL instance_utgarde_keep : public ScriptedInstance
|
||||
uint64 forge_fire[3];
|
||||
uint64 forge_anvil[3];
|
||||
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
std::string str_data;
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
Keleseth = 0;
|
||||
Skarvald = 0;
|
||||
Dalronn =0;
|
||||
@@ -75,15 +77,12 @@ struct TRINITY_DLL_DECL instance_utgarde_keep : public ScriptedInstance
|
||||
forge_fire[i] = 0;
|
||||
forge_anvil[i] = 0;
|
||||
}
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) return true;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -155,21 +154,21 @@ struct TRINITY_DLL_DECL instance_utgarde_keep : public ScriptedInstance
|
||||
{
|
||||
//HandleGameObject(doorname, 0);
|
||||
}
|
||||
Encounters[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
break;
|
||||
case DATA_SKARVALD_DALRONN_EVENT:
|
||||
if (data == DONE)
|
||||
{
|
||||
//HandleGameObject(doorname, 0);
|
||||
}
|
||||
Encounters[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
break;
|
||||
case DATA_INGVAR_EVENT:
|
||||
if (data == DONE)
|
||||
{
|
||||
//HandleGameObject(doorname, 0);
|
||||
}
|
||||
Encounters[2] = data;
|
||||
m_auiEncounter[2] = data;
|
||||
break;
|
||||
case EVENT_FORGE_1:
|
||||
if (data == NOT_STARTED)
|
||||
@@ -223,9 +222,9 @@ struct TRINITY_DLL_DECL instance_utgarde_keep : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_PRINCEKELESETH_EVENT: return Encounters[0];
|
||||
case DATA_SKARVALD_DALRONN_EVENT: return Encounters[1];
|
||||
case DATA_INGVAR_EVENT: return Encounters[2];
|
||||
case DATA_PRINCEKELESETH_EVENT: return m_auiEncounter[0];
|
||||
case DATA_SKARVALD_DALRONN_EVENT: return m_auiEncounter[1];
|
||||
case DATA_INGVAR_EVENT: return m_auiEncounter[2];
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -236,8 +235,8 @@ struct TRINITY_DLL_DECL instance_utgarde_keep : public ScriptedInstance
|
||||
OUT_SAVE_INST_DATA;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << "U K " << Encounters[0] << " " << Encounters[1] << " "
|
||||
<< Encounters[2];
|
||||
saveStream << "U K " << m_auiEncounter[0] << " " << m_auiEncounter[1] << " "
|
||||
<< m_auiEncounter[2];
|
||||
|
||||
str_data = saveStream.str();
|
||||
|
||||
@@ -263,13 +262,13 @@ struct TRINITY_DLL_DECL instance_utgarde_keep : public ScriptedInstance
|
||||
|
||||
if (dataHead1 == 'U' && dataHead2 == 'K')
|
||||
{
|
||||
Encounters[0] = data0;
|
||||
Encounters[1] = data1;
|
||||
Encounters[2] = data2;
|
||||
m_auiEncounter[0] = data0;
|
||||
m_auiEncounter[1] = data1;
|
||||
m_auiEncounter[2] = data2;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
|
||||
}else OUT_LOAD_INST_DATA_FAIL;
|
||||
|
||||
|
||||
+12
-13
@@ -10,21 +10,20 @@ struct TRINITY_DLL_DECL instance_archavon : public ScriptedInstance
|
||||
std::string strInstData;
|
||||
uint64 Archavon;
|
||||
uint64 Emalon;
|
||||
uint32 Encounters[NUMBER_OF_ENCOUNTERS];
|
||||
uint32 m_auiEncounter[NUMBER_OF_ENCOUNTERS];
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
Archavon = 0;
|
||||
Emalon = 0;
|
||||
|
||||
for(uint8 i = 0; i < NUMBER_OF_ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < NUMBER_OF_ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
@@ -53,8 +52,8 @@ struct TRINITY_DLL_DECL instance_archavon : public ScriptedInstance
|
||||
{
|
||||
switch(identifier)
|
||||
{
|
||||
case DATA_ARCHAVON_EVENT: return Encounters[0];
|
||||
case DATA_EMALON_EVENT: return Encounters[1];
|
||||
case DATA_ARCHAVON_EVENT: return m_auiEncounter[0];
|
||||
case DATA_EMALON_EVENT: return m_auiEncounter[1];
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -63,8 +62,8 @@ struct TRINITY_DLL_DECL instance_archavon : public ScriptedInstance
|
||||
{
|
||||
switch(identifier)
|
||||
{
|
||||
case DATA_ARCHAVON_EVENT: Encounters[0] = data; break;
|
||||
case DATA_EMALON_EVENT: Encounters[1] = data; break;
|
||||
case DATA_ARCHAVON_EVENT: m_auiEncounter[0] = data; break;
|
||||
case DATA_EMALON_EVENT: m_auiEncounter[1] = data; break;
|
||||
}
|
||||
|
||||
if (data == DONE)
|
||||
@@ -72,7 +71,7 @@ struct TRINITY_DLL_DECL instance_archavon : public ScriptedInstance
|
||||
OUT_SAVE_INST_DATA;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << Encounters[0] << " " << Encounters[1];
|
||||
saveStream << m_auiEncounter[0] << " " << m_auiEncounter[1];
|
||||
|
||||
strInstData = saveStream.str();
|
||||
|
||||
@@ -97,12 +96,12 @@ struct TRINITY_DLL_DECL instance_archavon : public ScriptedInstance
|
||||
OUT_LOAD_INST_DATA(chrIn);
|
||||
|
||||
std::istringstream loadStream(chrIn);
|
||||
loadStream >> Encounters[0] >> Encounters[1];
|
||||
loadStream >> m_auiEncounter[0] >> m_auiEncounter[1];
|
||||
|
||||
for(uint8 i = 1; i < NUMBER_OF_ENCOUNTERS; ++i)
|
||||
{
|
||||
if (Encounters[i] == IN_PROGRESS)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
if (m_auiEncounter[i] == IN_PROGRESS)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
|
||||
@@ -24,24 +24,23 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_wailing_caverns.h"
|
||||
|
||||
#define ENCOUNTERS 9
|
||||
#define MAX_ENCOUNTER 9
|
||||
|
||||
struct TRINITY_DLL_DECL instance_wailing_caverns : public ScriptedInstance
|
||||
{
|
||||
instance_wailing_caverns(Map* pMap) : ScriptedInstance(pMap) {Initialize();};
|
||||
|
||||
uint32 Encounter[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
|
||||
bool yelled;
|
||||
uint64 NaralexGUID;
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
yelled = false;
|
||||
NaralexGUID = 0;
|
||||
|
||||
for (uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
void OnCreatureCreate(Creature *creature, bool add)
|
||||
@@ -54,15 +53,15 @@ struct TRINITY_DLL_DECL instance_wailing_caverns : public ScriptedInstance
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
case TYPE_LORD_COBRAHN: Encounter[0] = data;break;
|
||||
case TYPE_LORD_PYTHAS: Encounter[1] = data;break;
|
||||
case TYPE_LADY_ANACONDRA: Encounter[2] = data;break;
|
||||
case TYPE_LORD_SERPENTIS: Encounter[3] = data;break;
|
||||
case TYPE_NARALEX_EVENT: Encounter[4] = data;break;
|
||||
case TYPE_NARALEX_PART1: Encounter[5] = data;break;
|
||||
case TYPE_NARALEX_PART2: Encounter[6] = data;break;
|
||||
case TYPE_NARALEX_PART3: Encounter[7] = data;break;
|
||||
case TYPE_MUTANUS_THE_DEVOURER: Encounter[8] = data;break;
|
||||
case TYPE_LORD_COBRAHN: m_auiEncounter[0] = data;break;
|
||||
case TYPE_LORD_PYTHAS: m_auiEncounter[1] = data;break;
|
||||
case TYPE_LADY_ANACONDRA: m_auiEncounter[2] = data;break;
|
||||
case TYPE_LORD_SERPENTIS: m_auiEncounter[3] = data;break;
|
||||
case TYPE_NARALEX_EVENT: m_auiEncounter[4] = data;break;
|
||||
case TYPE_NARALEX_PART1: m_auiEncounter[5] = data;break;
|
||||
case TYPE_NARALEX_PART2: m_auiEncounter[6] = data;break;
|
||||
case TYPE_NARALEX_PART3: m_auiEncounter[7] = data;break;
|
||||
case TYPE_MUTANUS_THE_DEVOURER: m_auiEncounter[8] = data;break;
|
||||
case TYPE_NARALEX_YELLED: yelled = true; break;
|
||||
}
|
||||
if (data == DONE)SaveToDB();
|
||||
@@ -72,15 +71,15 @@ struct TRINITY_DLL_DECL instance_wailing_caverns : public ScriptedInstance
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
case TYPE_LORD_COBRAHN: return Encounter[0];
|
||||
case TYPE_LORD_PYTHAS: return Encounter[1];
|
||||
case TYPE_LADY_ANACONDRA: return Encounter[2];
|
||||
case TYPE_LORD_SERPENTIS: return Encounter[3];
|
||||
case TYPE_NARALEX_EVENT: return Encounter[4];
|
||||
case TYPE_NARALEX_PART1: return Encounter[5];
|
||||
case TYPE_NARALEX_PART2: return Encounter[6];
|
||||
case TYPE_NARALEX_PART3: return Encounter[7];
|
||||
case TYPE_MUTANUS_THE_DEVOURER: return Encounter[8];
|
||||
case TYPE_LORD_COBRAHN: return m_auiEncounter[0];
|
||||
case TYPE_LORD_PYTHAS: return m_auiEncounter[1];
|
||||
case TYPE_LADY_ANACONDRA: return m_auiEncounter[2];
|
||||
case TYPE_LORD_SERPENTIS: return m_auiEncounter[3];
|
||||
case TYPE_NARALEX_EVENT: return m_auiEncounter[4];
|
||||
case TYPE_NARALEX_PART1: return m_auiEncounter[5];
|
||||
case TYPE_NARALEX_PART2: return m_auiEncounter[6];
|
||||
case TYPE_NARALEX_PART3: return m_auiEncounter[7];
|
||||
case TYPE_MUTANUS_THE_DEVOURER: return m_auiEncounter[8];
|
||||
case TYPE_NARALEX_YELLED: return yelled;
|
||||
}
|
||||
return 0;
|
||||
@@ -97,9 +96,9 @@ struct TRINITY_DLL_DECL instance_wailing_caverns : public ScriptedInstance
|
||||
OUT_SAVE_INST_DATA;
|
||||
|
||||
std::ostringstream saveStream;
|
||||
saveStream << Encounter[0] << " " << Encounter[1] << " " << Encounter[2] << " "
|
||||
<< Encounter[3] << " " << Encounter[4] << " " << Encounter[5] << " "
|
||||
<< Encounter[6] << " " << Encounter[7] << " " << Encounter[8];
|
||||
saveStream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " " << m_auiEncounter[2] << " "
|
||||
<< m_auiEncounter[3] << " " << m_auiEncounter[4] << " " << m_auiEncounter[5] << " "
|
||||
<< m_auiEncounter[6] << " " << m_auiEncounter[7] << " " << m_auiEncounter[8];
|
||||
|
||||
OUT_SAVE_INST_DATA_COMPLETE;
|
||||
return saveStream.str();
|
||||
@@ -116,12 +115,12 @@ struct TRINITY_DLL_DECL instance_wailing_caverns : public ScriptedInstance
|
||||
OUT_LOAD_INST_DATA(in);
|
||||
|
||||
std::istringstream loadStream(in);
|
||||
loadStream >> Encounter[0] >> Encounter[1] >> Encounter[2] >> Encounter[3]
|
||||
>> Encounter[4] >> Encounter[5] >> Encounter[6] >> Encounter[7] >> Encounter[8];
|
||||
loadStream >> m_auiEncounter[0] >> m_auiEncounter[1] >> m_auiEncounter[2] >> m_auiEncounter[3]
|
||||
>> m_auiEncounter[4] >> m_auiEncounter[5] >> m_auiEncounter[6] >> m_auiEncounter[7] >> m_auiEncounter[8];
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounter[i] != DONE)
|
||||
Encounter[i] = NOT_STARTED;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] != DONE)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
|
||||
OUT_LOAD_INST_DATA_COMPLETE;
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ EndScriptData */
|
||||
#include "precompiled.h"
|
||||
#include "def_zulaman.h"
|
||||
|
||||
#define ENCOUNTERS 6
|
||||
#define MAX_ENCOUNTER 6
|
||||
#define RAND_VENDOR 2
|
||||
|
||||
//187021 //Harkor's Satchel
|
||||
@@ -69,11 +69,13 @@ struct TRINITY_DLL_DECL instance_zulaman : public ScriptedInstance
|
||||
uint16 QuestMinute;
|
||||
uint16 ChestLooted;
|
||||
|
||||
uint32 Encounters[ENCOUNTERS];
|
||||
uint32 m_auiEncounter[MAX_ENCOUNTER];
|
||||
uint32 RandVendor[RAND_VENDOR];
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
HarkorsSatchelGUID = 0;
|
||||
TanzarsTrunkGUID = 0;
|
||||
AshlisBagGUID = 0;
|
||||
@@ -90,16 +92,14 @@ struct TRINITY_DLL_DECL instance_zulaman : public ScriptedInstance
|
||||
BossKilled = 0;
|
||||
ChestLooted = 0;
|
||||
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
Encounters[i] = NOT_STARTED;
|
||||
for(uint8 i = 0; i < RAND_VENDOR; ++i)
|
||||
RandVendor[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
{
|
||||
for(uint8 i = 0; i < ENCOUNTERS; ++i)
|
||||
if (Encounters[i] == IN_PROGRESS) return true;
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTER; ++i)
|
||||
if (m_auiEncounter[i] == IN_PROGRESS) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -205,7 +205,7 @@ struct TRINITY_DLL_DECL instance_zulaman : public ScriptedInstance
|
||||
switch(type)
|
||||
{
|
||||
case DATA_NALORAKKEVENT:
|
||||
Encounters[0] = data;
|
||||
m_auiEncounter[0] = data;
|
||||
if (data == DONE)
|
||||
{
|
||||
if (QuestMinute)
|
||||
@@ -217,7 +217,7 @@ struct TRINITY_DLL_DECL instance_zulaman : public ScriptedInstance
|
||||
}
|
||||
break;
|
||||
case DATA_AKILZONEVENT:
|
||||
Encounters[1] = data;
|
||||
m_auiEncounter[1] = data;
|
||||
HandleGameObject(AkilzonDoorGUID, data != IN_PROGRESS);
|
||||
if (data == DONE)
|
||||
{
|
||||
@@ -230,23 +230,23 @@ struct TRINITY_DLL_DECL instance_zulaman : public ScriptedInstance
|
||||
}
|
||||
break;
|
||||
case DATA_JANALAIEVENT:
|
||||
Encounters[2] = data;
|
||||
m_auiEncounter[2] = data;
|
||||
if (data == DONE) SummonHostage(2);
|
||||
break;
|
||||
case DATA_HALAZZIEVENT:
|
||||
Encounters[3] = data;
|
||||
m_auiEncounter[3] = data;
|
||||
HandleGameObject(HalazziDoorGUID, data != IN_PROGRESS);
|
||||
if (data == DONE) SummonHostage(3);
|
||||
break;
|
||||
case DATA_HEXLORDEVENT:
|
||||
Encounters[4] = data;
|
||||
m_auiEncounter[4] = data;
|
||||
if (data == IN_PROGRESS)
|
||||
HandleGameObject(HexLordGateGUID, false);
|
||||
else if (data == NOT_STARTED)
|
||||
CheckInstanceStatus();
|
||||
break;
|
||||
case DATA_ZULJINEVENT:
|
||||
Encounters[5] = data;
|
||||
m_auiEncounter[5] = data;
|
||||
HandleGameObject(ZulJinDoorGUID, data != IN_PROGRESS);
|
||||
break;
|
||||
case DATA_CHESTLOOTED:
|
||||
@@ -278,12 +278,12 @@ struct TRINITY_DLL_DECL instance_zulaman : public ScriptedInstance
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case DATA_NALORAKKEVENT: return Encounters[0];
|
||||
case DATA_AKILZONEVENT: return Encounters[1];
|
||||
case DATA_JANALAIEVENT: return Encounters[2];
|
||||
case DATA_HALAZZIEVENT: return Encounters[3];
|
||||
case DATA_HEXLORDEVENT: return Encounters[4];
|
||||
case DATA_ZULJINEVENT: return Encounters[5];
|
||||
case DATA_NALORAKKEVENT: return m_auiEncounter[0];
|
||||
case DATA_AKILZONEVENT: return m_auiEncounter[1];
|
||||
case DATA_JANALAIEVENT: return m_auiEncounter[2];
|
||||
case DATA_HALAZZIEVENT: return m_auiEncounter[3];
|
||||
case DATA_HEXLORDEVENT: return m_auiEncounter[4];
|
||||
case DATA_ZULJINEVENT: return m_auiEncounter[5];
|
||||
case DATA_CHESTLOOTED: return ChestLooted;
|
||||
case TYPE_RAND_VENDOR_1: return RandVendor[0];
|
||||
case TYPE_RAND_VENDOR_2: return RandVendor[1];
|
||||
|
||||
@@ -39,13 +39,12 @@ struct TRINITY_DLL_DECL instance_zulgurub : public ScriptedInstance
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
memset(&m_auiEncounter, 0, sizeof(m_auiEncounter));
|
||||
|
||||
m_uiLorKhanGUID = 0;
|
||||
m_uiZathGUID = 0;
|
||||
m_uiThekalGUID = 0;
|
||||
m_uiJindoGUID = 0;
|
||||
|
||||
for(uint8 i = 0; i < MAX_ENCOUNTERS; ++i)
|
||||
m_auiEncounter[i] = NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsEncounterInProgress() const
|
||||
|
||||
Reference in New Issue
Block a user