From: <th...@us...> - 2012-03-17 20:03:45
|
Revision: 16526 http://pcgen.svn.sourceforge.net/pcgen/?rev=16526&view=rev Author: thpr Date: 2012-03-17 20:03:38 +0000 (Sat, 17 Mar 2012) Log Message: ----------- Fix: DONOTADD:SKILL being overriden by Houserule "Retro Skill Points From Intelligence' Issue#: CODE-1185 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/PCClass.java Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java Modified: Trunk/pcgen/code/src/java/pcgen/core/PCClass.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PCClass.java 2012-03-17 19:22:55 UTC (rev 16525) +++ Trunk/pcgen/code/src/java/pcgen/core/PCClass.java 2012-03-17 20:03:38 UTC (rev 16526) @@ -1198,14 +1198,7 @@ } } - // Update Skill Points. Modified 20 Nov 2002 by sage_sam - // for bug #629643 - //final int spMod; - int spMod = recalcSkillPointMod(aPC, total); - if (classLevel.get(ObjectKey.DONTADD_SKILLPOINTS) != null) - { - spMod = 0; - } + int spMod = getSkillPointsForLevel(aPC, classLevel, total); PCLevelInfo pcl; @@ -1293,6 +1286,20 @@ return true; } + public int getSkillPointsForLevel(final PlayerCharacter aPC, + PCClassLevel classLevel, int total) + { + // Update Skill Points. Modified 20 Nov 2002 by sage_sam + // for bug #629643 + //final int spMod; + int spMod = recalcSkillPointMod(aPC, total); + if (classLevel.get(ObjectKey.DONTADD_SKILLPOINTS) != null) + { + spMod = 0; + } + return spMod; + } + /* * DELETEMETHOD I hope this can be deleted, since minus level support will not * work the same way in the new PCClass/PCClassLevel world. If nothing else, it Modified: Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2012-03-17 19:22:55 UTC (rev 16525) +++ Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2012-03-17 20:03:38 UTC (rev 16526) @@ -12314,8 +12314,11 @@ { for (PCLevelInfo pi : getLevelInfo()) { + PCClassLevel classLevel = + getActiveClassLevel(pcClass, pi.getClassLevel()); final int newSkillPointsGained = - pcClass.recalcSkillPointMod(this, pi.getClassLevel()); + pcClass.getSkillPointsForLevel(this, classLevel, + getTotalLevels()); if (pi.getClassKeyName().equals(pcClass.getKeyName())) { final int formerGained = pi.getSkillPointsGained(this); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |