aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/master/2017_03_05_01_world_2016_10_04_00_world.sql45
-rw-r--r--sql/updates/world/master/2017_03_05_02_world_2016_10_04_03_world.sql3
-rw-r--r--src/server/scripts/Northrend/zone_wintergrasp.cpp30
3 files changed, 78 insertions, 0 deletions
diff --git a/sql/updates/world/master/2017_03_05_01_world_2016_10_04_00_world.sql b/sql/updates/world/master/2017_03_05_01_world_2016_10_04_00_world.sql
new file mode 100644
index 00000000000..5558d56650c
--- /dev/null
+++ b/sql/updates/world/master/2017_03_05_01_world_2016_10_04_00_world.sql
@@ -0,0 +1,45 @@
+--
+UPDATE `quest_template_addon` SET `ExclusiveGroup`=236 WHERE `ID` IN (13195, 13156, 13194, 13201, 13154, 13196, 13193, 13199, 236, 13197, 13191, 13200, 13153, 13198, 13202, 13192);
+
+DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` IN (19, 20) AND `SourceEntry` IN (13195, 13156, 13194, 13201, 13154, 13196, 13193, 13199, 236, 13197, 13191, 13200, 13153, 13198, 13202, 13192, 13185, 13186, 13222, 13223);
+INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
+(19, 0, 13195, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Alliance quest 'A Rare Herb' (attackers) is available if Wintergrasp is held by Horde"),
+(20, 0, 13195, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Quest mark for Alliance quest 'A Rare Herb' (attackers) is available if Wintergrasp is held by Horde"),
+(19, 0, 13156, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Alliance quest 'A Rare Herb' (defenders) is available if Wintergrasp is held by Alliance"),
+(20, 0, 13156, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Quest mark for Alliance quest 'A Rare Herb' (defenders) is available if Wintergrasp is held by Alliance"),
+(19, 0, 13194, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Horde quest 'Healing with Roses' (defenders) is available if Wintergrasp is held by Horde"),
+(20, 0, 13194, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Quest mark for Horde quest 'Healing with Roses' (defenders) is available if Wintergrasp is held by Horde"),
+(19, 0, 13201, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Horde quest 'Healing with Roses' (attackers) is available if Wintergrasp is held by Alliance"),
+(20, 0, 13201, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Quest mark for Horde quest 'Healing with Roses' (attackers) is available if Wintergrasp is held by Alliance"),
+(19, 0, 13154, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Alliance quest 'Bones and Arrows' (defenders) is available if Wintergrasp is held by Alliance"),
+(20, 0, 13154, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Quest mark for Alliance quest 'Bones and Arrows' (defenders) is available if Wintergrasp is held by Alliance"),
+(19, 0, 13196, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Alliance quest 'Bones and Arrows' (attackers) is available if Wintergrasp is held by Horde"),
+(20, 0, 13196, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Quest mark for Alliance quest 'Bones and Arrows' (attackers) is available if Wintergrasp is held by Horde"),
+(19, 0, 13193, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Horde quest 'Bones and Arrows' (defenders) is available if Wintergrasp is held by Horde"),
+(20, 0, 13193, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Quest mark for Horde quest 'Bones and Arrows' (defenders) is available if Wintergrasp is held by Horde"),
+(19, 0, 13199, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Horde quest 'Bones and Arrows' (attackers) is available if Wintergrasp is held by Alliance"),
+(20, 0, 13199, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Quest mark for Horde quest 'Bones and Arrows' (attackers) is available if Wintergrasp is held by Alliance"),
+(19, 0, 236, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Alliance quest 'Fueling the Demolishers' (defenders) is available if Wintergrasp is held by Alliance"),
+(20, 0, 236, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Quest mark for Alliance quest 'Fueling the Demolishers' (defenders) is available if Wintergrasp is held by Alliance"),
+(19, 0, 13197, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Alliance quest 'Fueling the Demolishers' (attackers) is available if Wintergrasp is held by Horde"),
+(20, 0, 13197, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Quest mark for Alliance quest 'Fueling the Demolishers' (attackers) is available if Wintergrasp is held by Horde"),
+(19, 0, 13191, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Horde quest 'Fueling the Demolishers' (defenders) is available if Wintergrasp is held by Horde"),
+(20, 0, 13191, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Quest mark for Horde quest 'Fueling the Demolishers' (defenders) is available if Wintergrasp is held by Horde"),
+(19, 0, 13200, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Horde quest 'Fueling the Demolishers' (attackers) is available if Wintergrasp is held by Alliance"),
+(20, 0, 13200, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Quest mark for Horde quest 'Fueling the Demolishers' (attackers) is available if Wintergrasp is held by Alliance"),
+(19, 0, 13153, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Alliance quest 'Warding the Warriors' (defenders) is available if Wintergrasp is held by Alliance"),
+(20, 0, 13153, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Quest mark for Alliance quest 'Warding the Warriors' (defenders) is available if Wintergrasp is held by Alliance"),
+(19, 0, 13198, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Alliance quest 'Warding the Warriors' (attackers) is available if Wintergrasp is held by Horde"),
+(20, 0, 13198, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Quest mark for Alliance quest 'Warding the Warriors' (attackers) is available if Wintergrasp is held by Horde"),
+(19, 0, 13202, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Horde quest 'Jinxing the Walls' (attackers) is available if Wintergrasp is held by Alliance"),
+(20, 0, 13202, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Quest mark for Horde quest 'Jinxing the Walls' (attackers) is available if Wintergrasp is held by Alliance"),
+(19, 0, 13192, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Horde quest 'Warding the Walls' (defenders) is available if Wintergrasp is held by Horde"),
+(20, 0, 13192, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Quest mark for Horde quest 'Warding the Walls' (defenders) is available if Wintergrasp is held by Horde"),
+(19, 0, 13185, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Horde quest 'Stop the Siege' (defenders) is available if Wintergrasp is held by Horde"),
+(20, 0, 13185, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Quest mark for Horde quest 'Stop the Siege' (defenders) is available if Wintergrasp is held by Horde"),
+(19, 0, 13186, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Alliance quest 'Stop the Siege' (defenders) is available if Wintergrasp is held by Alliance"),
+(20, 0, 13186, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Quest mark for Alliance quest 'Stop the Siege' (defenders) is available if Wintergrasp is held by Alliance"),
+(19, 0, 13222, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Alliance quest 'Defend the Siege' (attackers) is available if Wintergrasp is held by Horde"),
+(20, 0, 13222, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, "", "Quest mark for Alliance quest 'Defend the Siege' (attackers) is available if Wintergrasp is held by Horde"),
+(19, 0, 13223, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Horde quest 'Defend the Siege' (attackers) is available if Wintergrasp is held by Alliance"),
+(20, 0, 13223, 0, 0, 48, 0, 0, 0, 0, 1, 0, 0, "", "Quest mark for Horde quest 'Defend the Siege' (attackers) is available if Wintergrasp is held by Alliance");
diff --git a/sql/updates/world/master/2017_03_05_02_world_2016_10_04_03_world.sql b/sql/updates/world/master/2017_03_05_02_world_2016_10_04_03_world.sql
new file mode 100644
index 00000000000..e9e1413252e
--- /dev/null
+++ b/sql/updates/world/master/2017_03_05_02_world_2016_10_04_03_world.sql
@@ -0,0 +1,3 @@
+--
+UPDATE `conditions` SET `ConditionTypeOrReference`=32, `ConditionValue1`=0x90, `ScriptName`="condition_is_wintergrasp_horde" WHERE `ConditionTypeOrReference`=48 AND `NegativeCondition`=0;
+UPDATE `conditions` SET `ConditionTypeOrReference`=32, `ConditionValue1`=0x90, `NegativeCondition`=0, `ScriptName`="condition_is_wintergrasp_alliance" WHERE `ConditionTypeOrReference`=48 AND `NegativeCondition`=1;
diff --git a/src/server/scripts/Northrend/zone_wintergrasp.cpp b/src/server/scripts/Northrend/zone_wintergrasp.cpp
index d53d3931c65..311056a09c2 100644
--- a/src/server/scripts/Northrend/zone_wintergrasp.cpp
+++ b/src/server/scripts/Northrend/zone_wintergrasp.cpp
@@ -629,6 +629,34 @@ public:
}
};
+class condition_is_wintergrasp_horde : public ConditionScript
+{
+public:
+ condition_is_wintergrasp_horde() : ConditionScript("condition_is_wintergrasp_horde") { }
+
+ bool OnConditionCheck(Condition const* /* condition */, ConditionSourceInfo& /* sourceInfo */)
+ {
+ Battlefield* wintergrasp = sBattlefieldMgr->GetBattlefieldByBattleId(BATTLEFIELD_BATTLEID_WG);
+ if (wintergrasp->IsEnabled() && wintergrasp->GetDefenderTeam() == TEAM_HORDE)
+ return true;
+ return false;
+ }
+};
+
+class condition_is_wintergrasp_alliance : public ConditionScript
+{
+public:
+ condition_is_wintergrasp_alliance() : ConditionScript("condition_is_wintergrasp_alliance") { }
+
+ bool OnConditionCheck(Condition const* /* condition */, ConditionSourceInfo& /* sourceInfo */)
+ {
+ Battlefield* wintergrasp = sBattlefieldMgr->GetBattlefieldByBattleId(BATTLEFIELD_BATTLEID_WG);
+ if (wintergrasp->IsEnabled() && wintergrasp->GetDefenderTeam() == TEAM_ALLIANCE)
+ return true;
+ return false;
+ }
+};
+
void AddSC_wintergrasp()
{
new npc_wg_queue();
@@ -641,4 +669,6 @@ void AddSC_wintergrasp()
new achievement_wg_didnt_stand_a_chance();
new spell_wintergrasp_defender_teleport();
new spell_wintergrasp_defender_teleport_trigger();
+ new condition_is_wintergrasp_horde();
+ new condition_is_wintergrasp_alliance();
}