aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSubv <s.v.h21@hotmail.com>2012-10-09 22:59:18 -0500
committerSubv <s.v.h21@hotmail.com>2012-10-09 22:59:18 -0500
commit3e5af53bf75fdacdb8626e4fd95a5c889874a829 (patch)
treec34a3b1bfb725892031546f4bd2b6882586fa58c /src
parentb75b6d33b02120e27b226a65c3d2a0641257cf8e (diff)
Core/Achievements: ACHIEVEMENT_CRITERIA_TYPE_SPECIAL_PVP_KILL doesn't require a killing blow anymore, only a honorable kill.
Author: @tibbi Closes #6224
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Entities/Player/Player.cpp7
-rwxr-xr-xsrc/server/game/Entities/Unit/Unit.cpp6
2 files changed, 7 insertions, 6 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 50f5fd4c978..9b2921b844d 100755
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -598,9 +598,16 @@ void KillRewarder::_RewardGroup()
// 3.1.3. Reward each group member (even dead or corpse) within reward distance.
for (GroupReference* itr = _group->GetFirstMember(); itr != NULL; itr = itr->next())
+ {
if (Player* member = itr->getSource())
+ {
if (member->IsAtGroupRewardDistance(_victim))
+ {
_RewardPlayer(member, isDungeon);
+ member->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_SPECIAL_PVP_KILL, 1, 0, _victim);
+ }
+ }
+ }
}
}
}
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 76b9649f002..8fc519b2f4a 100755
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -703,14 +703,8 @@ uint32 Unit::DealDamage(Unit* victim, uint32 damage, CleanDamage const* cleanDam
sLog->outDebug(LOG_FILTER_UNITS, "DealDamage: victim just died");
if (victim->GetTypeId() == TYPEID_PLAYER && victim != this)
- {
victim->ToPlayer()->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_TOTAL_DAMAGE_RECEIVED, health);
- // call before auras are removed
- if (Player* killer = GetCharmerOrOwnerPlayerOrPlayerItself())
- killer->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_SPECIAL_PVP_KILL, 1, 0, victim);
- }
-
Kill(victim, durabilityLoss);
}
else