aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Player/Player.cpp8
-rwxr-xr-xsrc/server/game/Entities/Unit/StatSystem.cpp13
2 files changed, 14 insertions, 7 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 947c8dab2c9..d6f148104b2 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -5820,13 +5820,13 @@ float Player::GetSpellCritFromIntellect()
if (level > GT_MAX_LEVEL)
level = GT_MAX_LEVEL;
- GtChanceToSpellCritBaseEntry const* critBase = sGtChanceToSpellCritBaseStore.LookupEntry(pclass-1);
- GtChanceToSpellCritEntry const* critRatio = sGtChanceToSpellCritStore.LookupEntry((pclass-1)*GT_MAX_LEVEL + level-1);
+ GtChanceToSpellCritBaseEntry const* critBase = sGtChanceToSpellCritBaseStore.LookupEntry(pclass - 1);
+ GtChanceToSpellCritEntry const* critRatio = sGtChanceToSpellCritStore.LookupEntry((pclass - 1) * GT_MAX_LEVEL + level - 1);
if (critBase == NULL || critRatio == NULL)
return 0.0f;
- float crit=critBase->base + GetStat(STAT_INTELLECT)*critRatio->ratio;
- return crit*100.0f;
+ float crit = critBase->base + GetStat(STAT_INTELLECT) * critRatio->ratio;
+ return crit * 100.0f;
}
float Player::GetRatingMultiplier(CombatRating cr) const
diff --git a/src/server/game/Entities/Unit/StatSystem.cpp b/src/server/game/Entities/Unit/StatSystem.cpp
index bee6ae39a35..9fc0ce049e5 100755
--- a/src/server/game/Entities/Unit/StatSystem.cpp
+++ b/src/server/game/Entities/Unit/StatSystem.cpp
@@ -225,18 +225,25 @@ void Player::UpdateArmor()
float Player::GetHealthBonusFromStamina()
{
+ // Taken from PaperDollFrame.lua - 4.3.4.15595
gtOCTHpPerStaminaEntry const* hpBase = sGtOCTHpPerStaminaStore.LookupEntry((getClass() - 1) * GT_MAX_LEVEL + getLevel() - 1);
- return GetStat(STAT_STAMINA) * hpBase->ratio;
+
+ float stamina = GetStat(STAT_STAMINA);
+ float baseStam = std::min(20, stamina);
+ float moreStam = stamina - baseStam;
+
+ return baseStam + moreStam * hpBase->ratio;
}
float Player::GetManaBonusFromIntellect()
{
+ // Taken from PaperDollFrame.lua - 4.3.4.15595
float intellect = GetStat(STAT_INTELLECT);
- float baseInt = intellect < 20 ? intellect : 20;
+ float baseInt = std::min(20, intellect);
float moreInt = intellect - baseInt;
- return baseInt + (moreInt*15.0f);
+ return baseInt + (moreInt * 15.0f);
}
void Player::UpdateMaxHealth()