aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSnapperRy <snapperryen@gmail.com>2016-10-04 17:23:36 +0200
committerSnapperRy <snapperryen@gmail.com>2016-10-04 17:23:36 +0200
commitc22d3886ce9e29941376885b3d814690453a254c (patch)
tree3a60a0093de1d49fa74b020f2c31b2701341ab55 /src
parentdf36e4b95d96732c038ab6a30af2a398e93d4b08 (diff)
Core/Wintergrasp: give quest credit for southern towers destroyed.
Updates #7953.
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Battlefield/Zones/BattlefieldWG.cpp7
-rw-r--r--src/server/game/Battlefield/Zones/BattlefieldWG.h5
2 files changed, 7 insertions, 5 deletions
diff --git a/src/server/game/Battlefield/Zones/BattlefieldWG.cpp b/src/server/game/Battlefield/Zones/BattlefieldWG.cpp
index 4d965eddd8f..cb821d5faa0 100644
--- a/src/server/game/Battlefield/Zones/BattlefieldWG.cpp
+++ b/src/server/game/Battlefield/Zones/BattlefieldWG.cpp
@@ -1341,7 +1341,7 @@ uint32 const WGQuest[2][6] =
// Called when a tower is broke
void BattlefieldWG::UpdatedDestroyedTowerCount(TeamId team)
{
- // Destroy an attack tower
+ // Southern tower
if (team == GetAttackerTeam())
{
// Update counter
@@ -1353,12 +1353,13 @@ void BattlefieldWG::UpdatedDestroyedTowerCount(TeamId team)
if (Player* player = ObjectAccessor::FindPlayer(*itr))
player->RemoveAuraFromStack(SPELL_TOWER_CONTROL);
- // Add buff stack to defenders
+ // Add buff stack to defenders and give achievement/quest credit
for (auto itr = m_PlayersInWar[GetDefenderTeam()].begin(); itr != m_PlayersInWar[GetDefenderTeam()].end(); ++itr)
{
if (Player* player = ObjectAccessor::FindPlayer(*itr))
{
player->CastSpell(player, SPELL_TOWER_CONTROL, true);
+ player->KilledMonsterCredit(QUEST_CREDIT_TOWERS_DESTROYED);
DoCompleteOrIncrementAchievement(ACHIEVEMENTS_WG_TOWER_DESTROY, player);
}
}
@@ -1373,7 +1374,7 @@ void BattlefieldWG::UpdatedDestroyedTowerCount(TeamId team)
SendInitWorldStatesToAll();
}
}
- else
+ else // Keep tower
{
UpdateData(BATTLEFIELD_WG_DATA_DAMAGED_TOWER_DEF, -1);
UpdateData(BATTLEFIELD_WG_DATA_BROKEN_TOWER_DEF, 1);
diff --git a/src/server/game/Battlefield/Zones/BattlefieldWG.h b/src/server/game/Battlefield/Zones/BattlefieldWG.h
index 587b69f5699..8fa72bea8fd 100644
--- a/src/server/game/Battlefield/Zones/BattlefieldWG.h
+++ b/src/server/game/Battlefield/Zones/BattlefieldWG.h
@@ -152,8 +152,9 @@ enum WintergraspAreaIds
enum WintergraspQuests
{
- QUEST_VICTORY_WINTERGRASP_A = 13181,
- QUEST_VICTORY_WINTERGRASP_H = 13183
+ QUEST_VICTORY_WINTERGRASP_A = 13181,
+ QUEST_VICTORY_WINTERGRASP_H = 13183,
+ QUEST_CREDIT_TOWERS_DESTROYED = 35074
};
/*#########################