Core/Players: Added Player::GetPrimaryStat retrieving intended primary stat for current specialization

Port From (https://github.com/TrinityCore/TrinityCore/commit/d889b4b0e8fc082505f6bf70a551ad4b38f3f34c)
This commit is contained in:
hondacrx
2021-03-29 11:56:15 -04:00
parent e85838b4d4
commit b00a895f19
+20
View File
@@ -1851,6 +1851,26 @@ namespace Game.Entities
ModSpellHitChance = 15.0f + GetTotalAuraModifier(AuraType.ModSpellHitChance);
ModSpellHitChance += GetRatingBonusValue(CombatRating.HitSpell);
}
Stats GetPrimaryStat()
{
byte primaryStatPriority;
var specialization = CliDB.ChrSpecializationStorage.LookupByKey(GetPrimarySpecialization());
if (specialization != null)
primaryStatPriority = (byte)specialization.PrimaryStatPriority;
else
primaryStatPriority = CliDB.ChrClassesStorage.LookupByKey(GetClass()).PrimaryStatPriority;
if (primaryStatPriority >= 4)
return Stats.Strength;
if (primaryStatPriority >= 2)
return Stats.Agility;
return Stats.Intellect;
}
public override void UpdateMaxHealth()
{
UnitMods unitMod = UnitMods.Health;