aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/2013_08_17_00_world_misc.sql4
-rw-r--r--src/server/game/Scripting/ScriptLoader.cpp2
-rw-r--r--src/server/scripts/EasternKingdoms/CMakeLists.txt1
-rw-r--r--src/server/scripts/EasternKingdoms/TheStockade/instance_the_stockade.cpp46
4 files changed, 53 insertions, 0 deletions
diff --git a/sql/updates/world/2013_08_17_00_world_misc.sql b/sql/updates/world/2013_08_17_00_world_misc.sql
new file mode 100644
index 00000000000..b16f1bb4eb3
--- /dev/null
+++ b/sql/updates/world/2013_08_17_00_world_misc.sql
@@ -0,0 +1,4 @@
+UPDATE `instance_template` SET `script`='instance_the_stockade' WHERE `map`=34;
+-- Bazil Thredd should be the last boss in the instance, not Dextren Ward
+UPDATE `instance_encounters` SET `lastEncounterDungeon`=12 WHERE `entry`=539;
+UPDATE `instance_encounters` SET `lastEncounterDungeon`=0 WHERE `entry`=540;
diff --git a/src/server/game/Scripting/ScriptLoader.cpp b/src/server/game/Scripting/ScriptLoader.cpp
index 76defc03da4..2510cb92f10 100644
--- a/src/server/game/Scripting/ScriptLoader.cpp
+++ b/src/server/game/Scripting/ScriptLoader.cpp
@@ -230,6 +230,7 @@ void AddSC_boss_archaedas(); //Uldaman
void AddSC_boss_ironaya();
void AddSC_uldaman();
void AddSC_instance_uldaman();
+void AddSC_instance_the_stockade(); //The Stockade
void AddSC_boss_akilzon(); //Zul'Aman
void AddSC_boss_halazzi();
void AddSC_boss_hex_lord_malacrass();
@@ -881,6 +882,7 @@ void AddEasternKingdomsScripts()
AddSC_boss_muru();
AddSC_boss_kiljaeden();
AddSC_sunwell_plateau();
+ AddSC_instance_the_stockade(); //The Stockade
AddSC_boss_archaedas(); //Uldaman
AddSC_boss_ironaya();
AddSC_uldaman();
diff --git a/src/server/scripts/EasternKingdoms/CMakeLists.txt b/src/server/scripts/EasternKingdoms/CMakeLists.txt
index 53d37d83610..a0377cea0fd 100644
--- a/src/server/scripts/EasternKingdoms/CMakeLists.txt
+++ b/src/server/scripts/EasternKingdoms/CMakeLists.txt
@@ -207,6 +207,7 @@ set(scripts_STAT_SRCS
EasternKingdoms/Karazhan/boss_moroes.cpp
EasternKingdoms/Karazhan/boss_terestian_illhoof.cpp
EasternKingdoms/Karazhan/karazhan.h
+ EasternKingdoms/TheStockade/instance_the_stockade.cpp
)
message(" -> Prepared: Eastern Kingdoms")
diff --git a/src/server/scripts/EasternKingdoms/TheStockade/instance_the_stockade.cpp b/src/server/scripts/EasternKingdoms/TheStockade/instance_the_stockade.cpp
new file mode 100644
index 00000000000..4bd1dc20dcd
--- /dev/null
+++ b/src/server/scripts/EasternKingdoms/TheStockade/instance_the_stockade.cpp
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2008-2013 TrinityCore <http://www.trinitycore.org/>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+/*
+This placeholder for the instance is needed for dungeon finding to be able
+to give credit after the boss defined in lastEncounterDungeon is killed.
+Without it, the party doing random dungeon won't get satchel of spoils and
+gets instead the deserter debuff.
+*/
+#include "ScriptMgr.h"
+#include "InstanceScript.h"
+
+class instance_the_stockade : public InstanceMapScript
+{
+public:
+ instance_the_stockade() : InstanceMapScript("instance_the_stockade", 34) { }
+
+ InstanceScript* GetInstanceScript(InstanceMap* map) const OVERRIDE
+ {
+ return new instance_the_stockade_InstanceMapScript(map);
+ }
+
+ struct instance_the_stockade_InstanceMapScript : public InstanceScript
+ {
+ instance_the_stockade_InstanceMapScript(Map* map) : InstanceScript(map) {}
+ };
+};
+
+void AddSC_instance_the_stockade()
+{
+ new instance_the_stockade();
+}