From: Stefan F. <ste...@us...> - 2010-05-18 04:12:30
|
Update of /cvsroot/rails/18xx/rails/game In directory sfp-cvsdas-4.v30.ch3.sourceforge.com:/tmp/cvs-serv19864/rails/game Modified Files: Game.java MapHex.java GameManagerI.java GameManager.java Tile.java ComponentManager.java Log Message: Various updates to revenue calculation, especially RevenueStaticModifier and support for 18Kaas Index: GameManager.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/game/GameManager.java,v retrieving revision 1.101 retrieving revision 1.102 diff -C2 -d -r1.101 -r1.102 *** GameManager.java 15 May 2010 16:36:09 -0000 1.101 --- GameManager.java 18 May 2010 04:12:23 -0000 1.102 *************** *** 11,14 **** --- 11,15 ---- import org.apache.log4j.NDC; + import rails.algorithms.RevenueManager; import rails.common.GuiDef; import rails.common.GuiHints; *************** *** 55,58 **** --- 56,60 ---- protected MapManager mapManager; protected TileManager tileManager; + protected RevenueManager revenueManager; protected Bank bank; *************** *** 446,449 **** --- 448,452 ---- MapManager mapManager, TileManager tileManager, + RevenueManager revenueManager, Bank bank) { this.gameName = gameName; *************** *** 455,458 **** --- 458,462 ---- this.mapManager = mapManager; this.tileManager = tileManager; + this.revenueManager = revenueManager; this.bank = bank; *************** *** 1304,1307 **** --- 1308,1318 ---- } + /** + * The RevenueManager is optional, thus a null reference might be returned + */ + public RevenueManager getRevenueManager() { + return revenueManager; + } + public Bank getBank () { return bank; Index: Game.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/game/Game.java,v retrieving revision 1.53 retrieving revision 1.54 diff -C2 -d -r1.53 -r1.54 *** Game.java 23 Mar 2010 18:44:37 -0000 1.53 --- Game.java 18 May 2010 04:12:23 -0000 1.54 *************** *** 7,10 **** --- 7,11 ---- import org.apache.log4j.Logger; + import rails.algorithms.RevenueManager; import rails.game.action.PossibleAction; import rails.game.special.SpecialProperty; *************** *** 25,28 **** --- 26,30 ---- protected MapManager mapManager; protected TileManager tileManager; + protected RevenueManager revenueManager; protected Bank bank; protected String name; *************** *** 162,165 **** --- 164,176 ---- + GAME_XML_FILE); } + + revenueManager = + (RevenueManager) componentManager.findComponent("RevenueManager"); + // revenueManager is optional so far + // if (revenueManager == null) { + // throw new ConfigurationException( + // "No RevenueManager XML element found in file " + // + GAME_XML_FILE); + // } /* *************** *** 170,174 **** gameManager.init(name, playerManager, companyManager, phaseManager, trainManager, stockMarket, mapManager, ! tileManager, bank); companyManager.finishConfiguration(gameManager); --- 181,185 ---- gameManager.init(name, playerManager, companyManager, phaseManager, trainManager, stockMarket, mapManager, ! tileManager, revenueManager, bank); companyManager.finishConfiguration(gameManager); *************** *** 179,182 **** --- 190,195 ---- stockMarket.finishConfiguration(gameManager); tileManager.finishConfiguration(gameManager); + if (revenueManager != null) + revenueManager.finishConfiguration(gameManager); } catch (Exception e) { String message = Index: MapHex.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/game/MapHex.java,v retrieving revision 1.44 retrieving revision 1.45 diff -C2 -d -r1.44 -r1.45 *** MapHex.java 11 May 2010 21:47:21 -0000 1.44 --- MapHex.java 18 May 2010 04:12:23 -0000 1.45 *************** *** 203,207 **** revenueBonuses = new ArrayList<RevenueBonusTemplate>(); for (Tag bonusTag:bonusTags) { ! revenueBonuses.add(new RevenueBonusTemplate(bonusTag)); } } --- 203,209 ---- revenueBonuses = new ArrayList<RevenueBonusTemplate>(); for (Tag bonusTag:bonusTags) { ! RevenueBonusTemplate bonus = new RevenueBonusTemplate(); ! bonus.configureFromXML(bonusTag); ! revenueBonuses.add(bonus); } } Index: Tile.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/game/Tile.java,v retrieving revision 1.41 retrieving revision 1.42 diff -C2 -d -r1.41 -r1.42 *** Tile.java 15 May 2010 19:05:39 -0000 1.41 --- Tile.java 18 May 2010 04:12:23 -0000 1.42 *************** *** 283,287 **** revenueBonuses = new ArrayList<RevenueBonusTemplate>(); for (Tag bonusTag:bonusTags) { ! revenueBonuses.add(new RevenueBonusTemplate(bonusTag)); } } --- 283,289 ---- revenueBonuses = new ArrayList<RevenueBonusTemplate>(); for (Tag bonusTag:bonusTags) { ! RevenueBonusTemplate bonus = new RevenueBonusTemplate(); ! bonus.configureFromXML(bonusTag); ! revenueBonuses.add(bonus); } } Index: ComponentManager.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/game/ComponentManager.java,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** ComponentManager.java 23 Mar 2010 18:45:16 -0000 1.18 --- ComponentManager.java 18 May 2010 04:12:23 -0000 1.19 *************** *** 86,90 **** } String clazz = componentTag.getAttributeAsString(COMPONENT_CLASS_TAG); ! if (name == null) { throw new ConfigurationException(LocalText.getText( "ComponentHasNoClass", name)); --- 86,90 ---- } String clazz = componentTag.getAttributeAsString(COMPONENT_CLASS_TAG); ! if (clazz == null) { throw new ConfigurationException(LocalText.getText( "ComponentHasNoClass", name)); Index: GameManagerI.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/game/GameManagerI.java,v retrieving revision 1.33 retrieving revision 1.34 diff -C2 -d -r1.33 -r1.34 *** GameManagerI.java 9 Apr 2010 21:26:12 -0000 1.33 --- GameManagerI.java 18 May 2010 04:12:23 -0000 1.34 *************** *** 4,7 **** --- 4,8 ---- import java.util.Map; + import rails.algorithms.RevenueManager; import rails.common.GuiDef; import rails.common.GuiHints; *************** *** 22,26 **** CompanyManagerI companyManager, PhaseManager phaseManager, TrainManager trainManager, StockMarketI stockMarket, ! MapManager mapManager, TileManager tileManager, Bank bank); public abstract void startGame(Map<String, String> gameOptions); --- 23,28 ---- CompanyManagerI companyManager, PhaseManager phaseManager, TrainManager trainManager, StockMarketI stockMarket, ! MapManager mapManager, TileManager tileManager, ! RevenueManager revenueManager, Bank bank); public abstract void startGame(Map<String, String> gameOptions); *************** *** 164,167 **** --- 166,170 ---- public StockMarketI getStockMarket(); public MapManager getMapManager(); + public RevenueManager getRevenueManager(); public Bank getBank (); |