MCPcopy Create free account
hub / github.com/PCGen/pcgen / recalculateSkillPoints

Method recalculateSkillPoints

code/src/java/pcgen/core/kit/KitStat.java:90–117  ·  view source on GitHub ↗
(PlayerCharacter aPC)

Source from the content-addressed store, hash-verified

88 }
89
90 private void recalculateSkillPoints(PlayerCharacter aPC)
91 {
92 final Collection<PCClass> classes = aPC.getClassSet();
93 aPC.calcActiveBonuses();
94 if (classes != null && !classes.isEmpty())
95 {
96 for (PCClass pcClass : classes)
97 {
98 aPC.setSkillPool(pcClass, 0);
99 // We don't limit this to MOD_TO_SKILLS classes as they may manually include the INT bonus in the
100 // skills.
101 for (int j = 0; j < aPC.getLevelInfoSize(); j++)
102 {
103 final PCLevelInfo pcl = aPC.getLevelInfo(j);
104 if (pcl.getClassKeyName().equals(pcClass.getKeyName()))
105 {
106 final int spMod = aPC.recalcSkillPointMod(pcClass, j + 1);
107 int alreadySpent = pcl.getSkillPointsGained(aPC) - pcl.getSkillPointsRemaining();
108 pcl.setSkillPointsGained(aPC, spMod);
109 pcl.setSkillPointsRemaining(pcl.getSkillPointsGained(aPC) - alreadySpent);
110 Integer currentPool = aPC.getSkillPool(pcClass);
111 int newSkillPool = (currentPool == null ? 0 : currentPool) + spMod;
112 aPC.setSkillPool(pcClass, newSkillPool);
113 }
114 }
115 }
116 }
117 }
118
119 public void addStat(CDOMSingleRef<PCStat> stat, Formula statValue)
120 {

Callers 1

testApplyMethod · 0.95

Calls 15

getClassKeyNameMethod · 0.95
getSkillPointsGainedMethod · 0.95
setSkillPointsGainedMethod · 0.95
calcActiveBonusesMethod · 0.80
setSkillPoolMethod · 0.80
recalcSkillPointModMethod · 0.80
isEmptyMethod · 0.65
equalsMethod · 0.65
getKeyNameMethod · 0.65
getClassSetMethod · 0.45

Tested by

no test coverage detected