From: <th...@us...> - 2009-05-02 00:20:55
|
Revision: 9889 http://pcgen.svn.sourceforge.net/pcgen/?rev=9889&view=rev Author: thpr Date: 2009-05-02 00:20:52 +0000 (Sat, 02 May 2009) Log Message: ----------- Single step as part of: Eliminate Key/ABB comparison of PCStat objects Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/PCClass.java Trunk/pcgen/code/src/java/pcgen/core/StatList.java Trunk/pcgen/code/src/java/pcgen/core/term/PCStatBaseTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSummary.java Trunk/pcgen/code/src/java/pcgen/io/exporttoken/StatToken.java Trunk/pcgen/code/src/test/pcgen/AbstractCharacterTestCase.java Trunk/pcgen/code/src/test/pcgen/core/StatListTest.java Modified: Trunk/pcgen/code/src/java/pcgen/core/PCClass.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PCClass.java 2009-05-01 23:48:32 UTC (rev 9888) +++ Trunk/pcgen/code/src/java/pcgen/core/PCClass.java 2009-05-02 00:20:52 UTC (rev 9889) @@ -3230,7 +3230,7 @@ final int iAdjStat = aPC.getStatList().getTotalStatFor(aStat); final int iCurStat = - aPC.getStatList().getBaseStatFor(aStat.getAbb()); + aPC.getStatList().getBaseStatFor(aStat); sStats.append(aStat.getAbb()).append(": ").append(iCurStat); if (iCurStat != iAdjStat) Modified: Trunk/pcgen/code/src/java/pcgen/core/StatList.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/StatList.java 2009-05-01 23:48:32 UTC (rev 9888) +++ Trunk/pcgen/code/src/java/pcgen/core/StatList.java 2009-05-02 00:20:52 UTC (rev 9889) @@ -52,16 +52,8 @@ ownerPC = pc; } - public int getBaseStatFor(final String aStat) + public int getBaseStatFor(final PCStat stat) { - final int x = getIndexOfStatFor(aStat); - - if (x == -1) - { - return 0; - } - - final PCStat stat = stats.get(x); final PlayerCharacter aPC = ownerPC; // Only check for a lock if the stat hasn't been unlocked if (!aPC.hasUnlockedStat(stat)) @@ -79,7 +71,6 @@ { return z; } - Integer score = aPC.getAssoc(stat, AssociationKey.STAT_SCORE); return score == null ? 0 : score; } @@ -188,7 +179,7 @@ */ public int getTotalStatFor(final PCStat stat) { - int y = getBaseStatFor(stat.getAbb()); + int y = getBaseStatFor(stat); final PlayerCharacter aPC = ownerPC; // Only check for a lock if the stat hasn't been unlocked @@ -236,8 +227,7 @@ */ public int getPartialStatFor(PCStat stat, boolean useTemp, boolean useEquip) { - String aStat = stat.getAbb(); - int y = getBaseStatFor(aStat); + int y = getBaseStatFor(stat); final PlayerCharacter aPC = ownerPC; Number val = aPC.getLockedStat(stat); Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCStatBaseTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCStatBaseTermEvaluator.java 2009-05-01 23:48:32 UTC (rev 9888) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCStatBaseTermEvaluator.java 2009-05-02 00:20:52 UTC (rev 9889) @@ -26,6 +26,8 @@ package pcgen.core.term; +import pcgen.core.Globals; +import pcgen.core.PCStat; import pcgen.core.PlayerCharacter; public class PCStatBaseTermEvaluator @@ -42,7 +44,9 @@ @Override public Float resolve(PlayerCharacter pc) { - return (float) pc.getStatList().getBaseStatFor(statAbbrev); + PCStat stat = Globals.getContext().ref.getAbbreviatedObject( + PCStat.class, statAbbrev); + return (float) pc.getStatList().getBaseStatFor(stat); } public boolean isSourceDependant() Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSummary.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSummary.java 2009-05-01 23:48:32 UTC (rev 9888) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSummary.java 2009-05-02 00:20:52 UTC (rev 9889) @@ -839,9 +839,7 @@ continue; } - final int statValue = - pc.getStatList().getBaseStatFor( - SettingsHandler.getGame().s_ATTRIBSHORT[stat]); + final int statValue = pc.getStatList().getBaseStatFor(aStat); i += getPurchaseCostForStat(pc, statValue); } i += (int) pc.getTotalBonusTo("POINTBUY", "SPENT"); //$NON-NLS-1$ //$NON-NLS-2$ @@ -2359,16 +2357,14 @@ return; } - int stat = - pc.getStatList().getBaseStatFor( - SettingsHandler.getGame().s_ATTRIBSHORT[selectedStat]); + final PCStat aStat = pc.getStatList().getStatAt(selectedStat); + int stat = pc.getStatList().getBaseStatFor(aStat); + boolean makeChange = false; // boolean checkPurchase = false; int increment = 0; int poolMod = 0; - final PCStat aStat = pc.getStatList().getStatAt(selectedStat); - final int column = statTable.columnAtPoint(evt.getPoint()); switch (column) @@ -2841,9 +2837,7 @@ continue; } - final int currentStat = - statList - .getBaseStatFor(SettingsHandler.getGame().s_ATTRIBSHORT[i]); + final int currentStat = statList.getBaseStatFor(aStat); final int currentMod = statList .getStatModFor(SettingsHandler.getGame().s_ATTRIBSHORT[i]); @@ -3451,7 +3445,7 @@ } return Integer.valueOf(pc.getStatList().getBaseStatFor( - aStat)); + activeStat)); case RACE_COLUMN: @@ -3476,7 +3470,7 @@ return Integer.valueOf(pc.getStatList().getTotalStatFor( activeStat) - - pc.getStatList().getBaseStatFor(aStat) - iRace); + - pc.getStatList().getBaseStatFor(activeStat) - iRace); case TOTAL_COLUMN: Modified: Trunk/pcgen/code/src/java/pcgen/io/exporttoken/StatToken.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/io/exporttoken/StatToken.java 2009-05-01 23:48:32 UTC (rev 9888) +++ Trunk/pcgen/code/src/java/pcgen/io/exporttoken/StatToken.java 2009-05-02 00:20:52 UTC (rev 9889) @@ -261,7 +261,7 @@ { return "*"; } - return pc.getStatList().getBaseStatFor(stat.getAbb()) + ""; + return Integer.toString(pc.getStatList().getBaseStatFor(stat)); } public static String getBaseModToken(PlayerCharacter pc, int index) Modified: Trunk/pcgen/code/src/test/pcgen/AbstractCharacterTestCase.java =================================================================== --- Trunk/pcgen/code/src/test/pcgen/AbstractCharacterTestCase.java 2009-05-01 23:48:32 UTC (rev 9888) +++ Trunk/pcgen/code/src/test/pcgen/AbstractCharacterTestCase.java 2009-05-02 00:20:52 UTC (rev 9889) @@ -45,7 +45,8 @@ Globals.setUseGUI(false); Globals.emptyLists(); final GameMode gamemode = SettingsHandler.getGame(); - + gamemode.clearStatList(); + gamemode.setAttribLong(new String[]{"Strength", "Dexterity", "Constitution", "Intelligence", "Wisdom", "Charisma"}); gamemode.setAttribShort(new String[]{"STR", "DEX", "CON", "INT", "WIS", Modified: Trunk/pcgen/code/src/test/pcgen/core/StatListTest.java =================================================================== --- Trunk/pcgen/code/src/test/pcgen/core/StatListTest.java 2009-05-01 23:48:32 UTC (rev 9888) +++ Trunk/pcgen/code/src/test/pcgen/core/StatListTest.java 2009-05-02 00:20:52 UTC (rev 9889) @@ -82,18 +82,18 @@ public void testGetBaseStatFor() { PlayerCharacter pc = getCharacter(); - assertEquals("Starting STR should be 6", 6, pc.getStatList().getBaseStatFor("STR")); + assertEquals("Starting STR should be 6", 6, pc.getStatList().getBaseStatFor(str)); // Bonus should not affect base stat pc.addAbility(AbilityCategory.FEAT, bonus, null); pc.calcActiveBonuses(); - assertEquals("Stat should still be locked", 6, pc.getStatList().getBaseStatFor("STR")); + assertEquals("Stat should still be locked", 6, pc.getStatList().getBaseStatFor(str)); pc.addTemplate(locker); - assertEquals("Stat should now be locked", 12, pc.getStatList().getBaseStatFor("STR")); + assertEquals("Stat should now be locked", 12, pc.getStatList().getBaseStatFor(str)); pc.addTemplate(unlocker); - assertEquals("Stat should now be unlocked", 6, pc.getStatList().getBaseStatFor("STR")); + assertEquals("Stat should now be unlocked", 6, pc.getStatList().getBaseStatFor(str)); } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |