aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorraczman <none@none>2009-03-27 10:59:53 +0100
committerraczman <none@none>2009-03-27 10:59:53 +0100
commit45350f5f5207e4b1cdda37622b44857189490c30 (patch)
treebaebbb8ce4bf8442cbe81884c373b4f47cd13f5d /src
parent52a5c5e8e3534d4c5d33076ab321dc654d77fa85 (diff)
Fixed exploit with summoning Epoch Hunter more than once.
--HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/def_old_hillsbrad.h1
-rw-r--r--src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/instance_old_hillsbrad.cpp8
-rw-r--r--src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/old_hillsbrad.cpp3
3 files changed, 11 insertions, 1 deletions
diff --git a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/def_old_hillsbrad.h b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/def_old_hillsbrad.h
index b49e671339a..01c0e1334ac 100644
--- a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/def_old_hillsbrad.h
+++ b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/def_old_hillsbrad.h
@@ -13,6 +13,7 @@
#define TYPE_THRALL_PART4 6
#define DATA_THRALL 7
#define DATA_TARETHA 8
+#define DATA_EPOCH 9
#define WORLD_STATE_OH 2436
#endif
diff --git a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/instance_old_hillsbrad.cpp b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/instance_old_hillsbrad.cpp
index 9e713cf8fcf..9ec75c06e0c 100644
--- a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/instance_old_hillsbrad.cpp
+++ b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/instance_old_hillsbrad.cpp
@@ -28,6 +28,7 @@ EndScriptData */
#define THRALL_ENTRY 17876
#define TARETHA_ENTRY 18887
+#define EPOCH_ENTRY 18096
#define DRAKE_ENTRY 17848
@@ -44,6 +45,7 @@ struct TRINITY_DLL_DECL instance_old_hillsbrad : public ScriptedInstance
uint64 ThrallGUID;
uint64 TarethaGUID;
+ uint64 EpochGUID;
void Initialize()
{
@@ -51,6 +53,7 @@ struct TRINITY_DLL_DECL instance_old_hillsbrad : public ScriptedInstance
mThrallEventCount = 0;
ThrallGUID = 0;
TarethaGUID = 0;
+ EpochGUID = 0;
for(uint8 i = 0; i < ENCOUNTERS; i++)
Encounter[i] = NOT_STARTED;
@@ -103,6 +106,9 @@ struct TRINITY_DLL_DECL instance_old_hillsbrad : public ScriptedInstance
case TARETHA_ENTRY:
TarethaGUID = creature->GetGUID();
break;
+ case EPOCH_ENTRY:
+ EpochGUID = creature->GetGUID();
+ break;
}
}
@@ -216,6 +222,8 @@ struct TRINITY_DLL_DECL instance_old_hillsbrad : public ScriptedInstance
return ThrallGUID;
case DATA_TARETHA:
return TarethaGUID;
+ case DATA_EPOCH:
+ return EpochGUID;
}
return 0;
}
diff --git a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/old_hillsbrad.cpp b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/old_hillsbrad.cpp
index 675cc78f8a5..3dbed97a084 100644
--- a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/old_hillsbrad.cpp
+++ b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/old_hillsbrad.cpp
@@ -819,7 +819,8 @@ bool GossipSelect_npc_taretha(Player *player, Creature *_Creature, uint32 sender
if( pInstance->GetData(TYPE_THRALL_EVENT) == IN_PROGRESS )
{
pInstance->SetData(TYPE_THRALL_PART4,IN_PROGRESS);
- _Creature->SummonCreature(ENTRY_EPOCH,2639.13,698.55,65.43,4.59,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,120000);
+ if(pInstance->GetData64(DATA_EPOCH) == 0)
+ _Creature->SummonCreature(ENTRY_EPOCH,2639.13,698.55,65.43,4.59,TEMPSUMMON_TIMED_OR_DEAD_DESPAWN,120000);
if (uint64 ThrallGUID = pInstance->GetData64(DATA_THRALL))
{