aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/Player.cpp2
-rw-r--r--src/game/ReputationMgr.cpp4
2 files changed, 5 insertions, 1 deletions
diff --git a/src/game/Player.cpp b/src/game/Player.cpp
index 46975d18fa9..2e96a13dc61 100644
--- a/src/game/Player.cpp
+++ b/src/game/Player.cpp
@@ -5794,7 +5794,7 @@ int32 Player::CalculateReputationGain(uint32 creatureOrQuestLevel, int32 rep, in
if (percent <= 0.0f)
return 0;
- return int32(sWorld.getRate(RATE_REPUTATION_GAIN)*rep*percent/100.0f);
+ return int32(rep*percent*0.01f);
}
//Calculates how many reputation points player gains in victim's enemy factions
diff --git a/src/game/ReputationMgr.cpp b/src/game/ReputationMgr.cpp
index 62b9504daff..5b42e616ac7 100644
--- a/src/game/ReputationMgr.cpp
+++ b/src/game/ReputationMgr.cpp
@@ -20,6 +20,7 @@
#include "DBCStores.h"
#include "Player.h"
#include "WorldPacket.h"
+#include "World.h"
const int32 ReputationMgr::PointsInRank[MAX_REPUTATION_RANK] = {36000, 3000, 3000, 3000, 6000, 12000, 21000, 1000};
@@ -252,7 +253,10 @@ bool ReputationMgr::SetOneFactionReputation(FactionEntry const* factionEntry, in
int32 BaseRep = GetBaseReputation(factionEntry);
if(incremental)
+ {
+ standing *= sWorld.getRate(RATE_REPUTATION_GAIN); //multiply gain by config rate
standing += itr->second.Standing + BaseRep;
+ }
if (standing > Reputation_Cap)
standing = Reputation_Cap;