diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/game/Player.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/game/Player.cpp b/src/game/Player.cpp index 58c80f46652..2a3c630bf12 100644 --- a/src/game/Player.cpp +++ b/src/game/Player.cpp @@ -2477,7 +2477,14 @@ void Player::GiveXP(uint32 xp, Unit* victim) return; // XP resting bonus for kill - uint32 rested_bonus_xp = victim ? GetXPRestBonus(xp) : 0; + uint32 rested_bonus_xp = victim ? GetXPRestBonus(xp) : 0; + + // Heirloom Experience Bonus + float heirloomModifier = 1.0f; + for (int i = 0; i < EQUIPMENT_SLOT_END; ++i) + if (m_items[i] && m_items[i]->GetProto()->Spells->SpellId == 57353) + heirloomModifier += 0.1f; + xp = uint32(xp * heirloomModifier); SendLogXPGain(xp,victim,rested_bonus_xp); |