diff options
author | linencloth <none@none> | 2010-09-14 00:09:58 +0200 |
---|---|---|
committer | linencloth <none@none> | 2010-09-14 00:09:58 +0200 |
commit | 5bd9afb9fae241a72a69547d23525a31cfb914e0 (patch) | |
tree | 619ee86d9c15740f933c5f0a3c3f7ca47d8d04a2 /src | |
parent | a6efc4dad5d9d48b518c9b61704362cc03050f43 (diff) |
Core: Prevent critters from rewarding XP.
Also avoid unnecessary XP rate calculations.
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Miscellaneous/Formulas.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/server/game/Miscellaneous/Formulas.h b/src/server/game/Miscellaneous/Formulas.h index 76f3c4e4d6a..3a88334c110 100644 --- a/src/server/game/Miscellaneous/Formulas.h +++ b/src/server/game/Miscellaneous/Formulas.h @@ -166,7 +166,8 @@ namespace Trinity if (u->GetTypeId() == TYPEID_UNIT && (((Creature*)u)->isTotem() || ((Creature*)u)->isPet() || - (((Creature*)u)->GetCreatureInfo()->flags_extra & CREATURE_FLAG_EXTRA_NO_XP_AT_KILL))) + (((Creature*)u)->GetCreatureInfo()->flags_extra & CREATURE_FLAG_EXTRA_NO_XP_AT_KILL) || + ((Creature*)u)->GetCreatureInfo()->type == CREATURE_TYPE_CRITTER)) gain = 0; else { @@ -180,9 +181,10 @@ namespace Trinity else gain *= 2; } + + gain = uint32(gain * sWorld.getRate(RATE_XP_KILL)); } - gain = uint32(gain * sWorld.getRate(RATE_XP_KILL)); sScriptMgr.OnGainCalculation(gain, pl, u); return gain; } |