aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSupabad <none@none>2010-05-26 00:07:46 +0200
committerSupabad <none@none>2010-05-26 00:07:46 +0200
commit7556bb80a7726b549c9e83e67a901263d8cb96d2 (patch)
tree38a42c9d1b667540acd73ad7d58597074101320c /src
parent6ba14cbc9e3cbceb65af16a95608e0f5e8664cee (diff)
open door when Rhakzor dies. patch made by antihrists
requires db support --HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/scripts/eastern_kingdoms/deadmines/deadmines.h4
-rw-r--r--src/scripts/eastern_kingdoms/deadmines/instance_deadmines.cpp12
2 files changed, 14 insertions, 2 deletions
diff --git a/src/scripts/eastern_kingdoms/deadmines/deadmines.h b/src/scripts/eastern_kingdoms/deadmines/deadmines.h
index f8ea790add1..203494ad5b7 100644
--- a/src/scripts/eastern_kingdoms/deadmines/deadmines.h
+++ b/src/scripts/eastern_kingdoms/deadmines/deadmines.h
@@ -14,7 +14,8 @@ enum CannonState
enum Data
{
- EVENT_STATE
+ EVENT_STATE,
+ EVENT_RHAHKZOR
};
enum Data64
@@ -24,6 +25,7 @@ enum Data64
enum GameObjects
{
+ GO_FACTORY_DOOR = 13965,
GO_IRONCLAD_DOOR = 16397,
GO_DEFIAS_CANNON = 16398,
GO_DOOR_LEVER = 101833,
diff --git a/src/scripts/eastern_kingdoms/deadmines/instance_deadmines.cpp b/src/scripts/eastern_kingdoms/deadmines/instance_deadmines.cpp
index e5a87d978ec..f1aa0c62b8a 100644
--- a/src/scripts/eastern_kingdoms/deadmines/instance_deadmines.cpp
+++ b/src/scripts/eastern_kingdoms/deadmines/instance_deadmines.cpp
@@ -45,6 +45,7 @@ struct instance_deadmines : public ScriptedInstance
{
instance_deadmines(Map* pMap) : ScriptedInstance(pMap) { Initialize(); };
+ uint64 FactoryDoorGUID;
uint64 IronCladDoorGUID;
uint64 DefiasCannonGUID;
uint64 DoorLeverGUID;
@@ -59,6 +60,7 @@ struct instance_deadmines : public ScriptedInstance
void Initialize()
{
+ FactoryDoorGUID = 0;
IronCladDoorGUID = 0;
DefiasCannonGUID = 0;
DoorLeverGUID = 0;
@@ -176,6 +178,7 @@ struct instance_deadmines : public ScriptedInstance
{
switch(pGo->GetEntry())
{
+ case GO_FACTORY_DOOR: FactoryDoorGUID = pGo->GetGUID(); break;
case GO_IRONCLAD_DOOR: IronCladDoorGUID = pGo->GetGUID(); break;
case GO_DEFIAS_CANNON: DefiasCannonGUID = pGo->GetGUID(); break;
case GO_DOOR_LEVER: DoorLeverGUID = pGo->GetGUID(); break;
@@ -185,10 +188,17 @@ struct instance_deadmines : public ScriptedInstance
void SetData(uint32 type, uint32 data)
{
- if (type == EVENT_STATE)
+ switch (type)
{
+ case EVENT_STATE:
if (DefiasCannonGUID && IronCladDoorGUID)
State=data;
+ break;
+ case EVENT_RHAHKZOR:
+ if (data == DONE)
+ if (GameObject* pGo = instance->GetGameObject(FactoryDoorGUID))
+ pGo->SetGoState(GO_STATE_ACTIVE);
+ break;
}
}