Browse Source

calculate base skill

lakebane-ai
FatBoy-DOTC 3 weeks ago
parent
commit
55d9cf6d26
  1. 32
      src/engine/objects/PlayerCombatStats.java

32
src/engine/objects/PlayerCombatStats.java

@ -705,42 +705,14 @@ public class PlayerCombatStats {
public static int calculateBaseSkillLevel(String skillName, PlayerCharacter pc){ public static int calculateBaseSkillLevel(String skillName, PlayerCharacter pc){
if(pc.skills.containsKey(skillName)) { if(pc.skills.containsKey(skillName)) {
CharacterSkill skill = pc.skills.get(skillName); CharacterSkill skill = pc.skills.get(skillName);
SkillsBase skillsBase = skill.getSkillsBase(); return Math.round(skill.getModifiedAmountBeforeMods());
float statmod = 0.5f;
statmod += pc.statStrBase * (skillsBase.getStrMod() * 0.01f);
statmod += pc.statDexBase * (skillsBase.getDexMod() * 0.01f);
statmod += pc.statConBase * (skillsBase.getConMod() * 0.01f);
statmod += pc.statIntBase * (skillsBase.getIntMod() * 0.01f) ;
statmod += pc.statSpiBase * (skillsBase.getSpiMod() * 0.01f);
float base = statmod < 2 ? 0.0f : (statmod - 2) * 0.2f + (statmod / 10) * 0.1666667f;
int amount;
int trains = skill.getNumTrains();
if (trains < 10)
amount = (trains * 2);
else if (trains < 90)
amount = 10 + trains;
else if (trains < 134)
amount = 100 + ((trains - 90) / 2);
else
amount = 122 + ((trains - 134) / 3);
base += 6.5f;
if(pc.bonuses != null){
amount += pc.bonuses.getSkillBonus(skillsBase.sourceType);
}
return Math.round(base + amount);
}else { }else {
return 0; return 0;
} }
} }
public static int calculateBuffedSkillLevel(String skillName, PlayerCharacter pc){ public static int calculateBuffedSkillLevel(String skillName, PlayerCharacter pc){
if(pc.skills.containsKey(skillName)) { if(pc.skills.containsKey(skillName)) {
return Math.round(pc.skills.get(skillName).getModifiedAmount()); return Math.round(pc.skills.get(skillName).getTotalSkillPercet());
}else { }else {
return 0; return 0;
} }

Loading…
Cancel
Save