aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSnapperRy <snapperryen@gmail.com>2016-10-04 11:29:02 +0200
committerjoschiwald <joschiwald.trinity@gmail.com>2017-03-05 01:28:45 +0100
commitb84d0e9fd47975b0c78ed3d67df2f5d867964307 (patch)
treef0dba597d1c8ae3ee9f9e63d5cadfa4086a3eaf8 /src
parentc00df00cecff9dac3230b14051977c126aa08d88 (diff)
Core/Conditions: implement CONDITION_WINTERGRASP_HORDE to check if Wintergrasp is held by Horde.
Use negative condition to check if it is held by Alliance instead. Use this condition to fix availability of the Wintergrasp item-gathering weekly quests. (cherry picked from commit 723c253f8f09d773cd0fd47615c9f424b5c51d9d) Make travis happy and fix codestyle for previous commit. (cherry picked from commit 7267a414183fce4e146d464e0a2124f617da9648) Core/Conditions: partially revert 723c253, replacing CONDITION_WINTERGRASP_HORDE with a ConditionScript. (cherry picked from commit fd620ca7d620f72276e00be3906da145bdd4a9fd) Update 2016_10_04_03_world.sql (cherry picked from commit 4891db4a4fb04c221a5223938741f981f1b7ddbc)
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Northrend/zone_wintergrasp.cpp30
1 files changed, 30 insertions, 0 deletions
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();
}