From f72cff430d5ca0585489e11c2db7b9e26e1fbe8d Mon Sep 17 00:00:00 2001 From: Lopin Date: Wed, 24 Aug 2011 22:56:36 +0200 Subject: Core/Achievements: Added also check for player's team. Only defenders should get this achievement --- src/server/game/Battlegrounds/Zones/BattlegroundSA.h | 5 +++-- src/server/scripts/World/achievement_scripts.cpp | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/server/game/Battlegrounds/Zones/BattlegroundSA.h b/src/server/game/Battlegrounds/Zones/BattlegroundSA.h index 660e1327df5..1bc00459cd5 100755 --- a/src/server/game/Battlegrounds/Zones/BattlegroundSA.h +++ b/src/server/game/Battlegrounds/Zones/BattlegroundSA.h @@ -487,6 +487,9 @@ class BattlegroundSA : public Battleground // Achievement Defense of the Ancients bool gateDestroyed; + /// Id of attacker team + TeamId Attackers; + private: /** @@ -539,8 +542,6 @@ class BattlegroundSA : public Battleground /// Send packet to player for destroy boats (client part) void SendTransportsRemove(Player* player); - /// Id of attacker team - TeamId Attackers; /// Totale elapsed time of current round uint32 TotalTime; /// Max time of round diff --git a/src/server/scripts/World/achievement_scripts.cpp b/src/server/scripts/World/achievement_scripts.cpp index ed49f9a7978..0699cc1b937 100755 --- a/src/server/scripts/World/achievement_scripts.cpp +++ b/src/server/scripts/World/achievement_scripts.cpp @@ -247,6 +247,9 @@ class achievement_bg_sa_defense_of_ancients : public AchievementCriteriaScript if (!battleground) return false; + if (player->GetTeamId() == static_cast(battleground)->Attackers) + return false; + if (!static_cast(battleground)->gateDestroyed); return true; -- cgit v1.2.3