From: Erik V. <ev...@us...> - 2010-01-14 21:02:50
|
Update of /cvsroot/rails/18xx/rails/game In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv7321/rails/game Modified Files: GameManager.java Log Message: Use of GuiDef and GameDef Various minor changes Index: GameManager.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/game/GameManager.java,v retrieving revision 1.74 retrieving revision 1.75 diff -C2 -d -r1.74 -r1.75 *** GameManager.java 1 Jan 2010 18:58:43 -0000 1.74 --- GameManager.java 14 Jan 2010 21:02:39 -0000 1.75 *************** *** 10,14 **** import org.apache.log4j.NDC; ! import rails.common.Defs; import rails.game.action.*; import rails.game.move.*; --- 10,15 ---- import org.apache.log4j.NDC; ! import rails.common.GuiDef; ! import rails.common.GuiHints; import rails.game.action.*; import rails.game.move.*; *************** *** 38,46 **** // Variable UI Class names ! protected String gameUIManagerClassName = Defs.getDefaultClassName(Defs.ClassName.GAME_UI_MANAGER); ! protected String orUIManagerClassName = Defs.getDefaultClassName(Defs.ClassName.OR_UI_MANAGER); ! protected String gameStatusClassName = Defs.getDefaultClassName(Defs.ClassName.GAME_STATUS); ! protected String statusWindowClassName = Defs.getDefaultClassName(Defs.ClassName.STATUS_WINDOW); ! protected String orWindowClassName = Defs.getDefaultClassName(Defs.ClassName.OR_WINDOW); protected PlayerManager playerManager; --- 39,47 ---- // Variable UI Class names ! protected String gameUIManagerClassName = GuiDef.getDefaultClassName(GuiDef.ClassName.GAME_UI_MANAGER); ! protected String orUIManagerClassName = GuiDef.getDefaultClassName(GuiDef.ClassName.OR_UI_MANAGER); ! protected String gameStatusClassName = GuiDef.getDefaultClassName(GuiDef.ClassName.GAME_STATUS); ! protected String statusWindowClassName = GuiDef.getDefaultClassName(GuiDef.ClassName.STATUS_WINDOW); ! protected String orWindowClassName = GuiDef.getDefaultClassName(GuiDef.ClassName.OR_WINDOW); protected PlayerManager playerManager; *************** *** 78,81 **** --- 79,85 ---- protected boolean gameEndsAfterSetOfORs = true; + protected EnumMap<GameDef.Parm, Object> gameParameters + = new EnumMap<GameDef.Parm, Object>(GameDef.Parm.class); + /** * Current round should not be set here but from within the Round classes. *************** *** 99,107 **** protected boolean endedByBankruptcy = false; /** Flags to be passed to the UI, aiding the layout definition */ ! protected EnumMap<Defs.Parm, Boolean> gameParameters = ! new EnumMap<Defs.Parm, Boolean>(Defs.Parm.class); ! protected int stockRoundSequenceRule = StockRound.SELL_BUY_SELL; /** --- 103,114 ---- protected boolean endedByBankruptcy = false; + /** UI display hints */ + protected GuiHints guiHints; + /** Flags to be passed to the UI, aiding the layout definition */ ! protected EnumMap<GuiDef.Parm, Boolean> guiParameters = ! new EnumMap<GuiDef.Parm, Boolean>(GuiDef.Parm.class); ! //protected int stockRoundSequenceRule = StockRound.SELL_BUY_SELL; /** *************** *** 192,195 **** --- 199,203 ---- displayBuffer = new DisplayBuffer(); reportBuffer = new ReportBuffer(); + guiHints = new GuiHints(); } *************** *** 232,236 **** // StockRound class and other properties ! Tag srTag = tag.getChild("StockRound"); if (srTag != null) { String srClassName = --- 240,248 ---- // StockRound class and other properties ! // Set default rule(s) ! gameParameters.put(GameDef.Parm.STOCK_ROUND_SEQUENCE, ! GameDef.Parm.STOCK_ROUND_SEQUENCE.defaultValueAsInt()); ! ! Tag srTag = tag.getChild("StockRound"); if (srTag != null) { String srClassName = *************** *** 247,255 **** if (Util.hasValue(stockRoundSequenceRuleString)) { if (stockRoundSequenceRuleString.equalsIgnoreCase("SellBuySell")) { ! stockRoundSequenceRule = StockRound.SELL_BUY_SELL; } else if (stockRoundSequenceRuleString.equalsIgnoreCase("SellBuy")) { ! stockRoundSequenceRule = StockRound.SELL_BUY; } else if (stockRoundSequenceRuleString.equalsIgnoreCase("SellBuyOrBuySell")) { ! stockRoundSequenceRule = StockRound.SELL_BUY_OR_BUY_SELL; } } --- 259,273 ---- if (Util.hasValue(stockRoundSequenceRuleString)) { if (stockRoundSequenceRuleString.equalsIgnoreCase("SellBuySell")) { ! //stockRoundSequenceRule = StockRound.SELL_BUY_SELL; ! gameParameters.put(GameDef.Parm.STOCK_ROUND_SEQUENCE, ! StockRound.SELL_BUY_SELL); } else if (stockRoundSequenceRuleString.equalsIgnoreCase("SellBuy")) { ! //stockRoundSequenceRule = StockRound.SELL_BUY; ! gameParameters.put(GameDef.Parm.STOCK_ROUND_SEQUENCE, ! StockRound.SELL_BUY); } else if (stockRoundSequenceRuleString.equalsIgnoreCase("SellBuyOrBuySell")) { ! //stockRoundSequenceRule = StockRound.SELL_BUY_OR_BUY_SELL; ! gameParameters.put(GameDef.Parm.STOCK_ROUND_SEQUENCE, ! StockRound.SELL_BUY_OR_BUY_SELL); } } *************** *** 436,443 **** for (PublicCompanyI company : companyManager.getAllPublicCompanies()) { ! if (company.hasParPrice()) gameParameters.put(Defs.Parm.HAS_ANY_PAR_PRICE, true); ! if (company.canBuyPrivates()) gameParameters.put(Defs.Parm.CAN_ANY_COMPANY_BUY_PRIVATES, true); ! if (company.canHoldOwnShares()) gameParameters.put(Defs.Parm.CAN_ANY_COMPANY_HOLD_OWN_SHARES, true); ! if (company.getMaxNumberOfLoans() != 0) gameParameters.put(Defs.Parm.HAS_ANY_COMPANY_LOANS, true); } --- 454,461 ---- for (PublicCompanyI company : companyManager.getAllPublicCompanies()) { ! if (company.hasParPrice()) guiParameters.put(GuiDef.Parm.HAS_ANY_PAR_PRICE, true); ! if (company.canBuyPrivates()) guiParameters.put(GuiDef.Parm.CAN_ANY_COMPANY_BUY_PRIVATES, true); ! if (company.canHoldOwnShares()) guiParameters.put(GuiDef.Parm.CAN_ANY_COMPANY_HOLD_OWN_SHARES, true); ! if (company.getMaxNumberOfLoans() != 0) guiParameters.put(GuiDef.Parm.HAS_ANY_COMPANY_LOANS, true); } *************** *** 446,450 **** if (sp instanceof SpecialTokenLay && ((SpecialTokenLay)sp).getToken() instanceof BonusToken) { ! gameParameters.put(Defs.Parm.DO_BONUS_TOKENS_EXIST, true); break loop; } --- 464,468 ---- if (sp instanceof SpecialTokenLay && ((SpecialTokenLay)sp).getToken() instanceof BonusToken) { ! guiParameters.put(GuiDef.Parm.DO_BONUS_TOKENS_EXIST, true); break loop; } *************** *** 651,654 **** --- 669,673 ---- DisplayBuffer.clear(); + guiHints.clearVisibilityHints(); // The action is null only immediately after Load. *************** *** 783,787 **** if (moveStack.isOpen()) moveStack.finish(); } ! DisplayBuffer.clear(); return true; --- 802,806 ---- if (moveStack.isOpen()) moveStack.finish(); } ! DisplayBuffer.clear(); return true; *************** *** 820,823 **** --- 839,845 ---- public void finishShareSellingRound() { setRound(interruptedRound); + guiHints.setCurrentRoundType(interruptedRound.getClass()); + guiHints.setVisibilityHint(GuiDef.Panel.STOCK_MARKET, false); + guiHints.setActivePanel(GuiDef.Panel.MAP); getCurrentRound().resume(); } *************** *** 828,831 **** --- 850,856 ---- public void finishTreasuryShareRound() { setRound(interruptedRound); + guiHints.setCurrentRoundType(interruptedRound.getClass()); + guiHints.setVisibilityHint(GuiDef.Panel.STOCK_MARKET, false); + guiHints.setActivePanel(GuiDef.Panel.MAP); ((OperatingRound) getCurrentRound()).nextStep(); } *************** *** 1105,1109 **** */ public boolean canAnyCompanyHoldShares() { ! return (Boolean) getGameParameter(Defs.Parm.CAN_ANY_COMPANY_HOLD_OWN_SHARES); } --- 1130,1134 ---- */ public boolean canAnyCompanyHoldShares() { ! return (Boolean) getGuiParameter(GuiDef.Parm.CAN_ANY_COMPANY_HOLD_OWN_SHARES); } *************** *** 1111,1115 **** * @see rails.game.GameManagerI#getClassName(rails.common.Defs.ClassName) */ ! public String getClassName (Defs.ClassName key) { switch (key) { --- 1136,1140 ---- * @see rails.game.GameManagerI#getClassName(rails.common.Defs.ClassName) */ ! public String getClassName (GuiDef.ClassName key) { switch (key) { *************** *** 1136,1140 **** */ public int getStockRoundSequenceRule() { ! return stockRoundSequenceRule; } --- 1161,1165 ---- */ public int getStockRoundSequenceRule() { ! return (Integer) gameParameters.get(GameDef.Parm.STOCK_ROUND_SEQUENCE); } *************** *** 1149,1153 **** * @see rails.game.GameManagerI#getCommonParameter(rails.common.Defs.Parm) */ ! public Object getGameParameter (Defs.Parm key) { if (gameParameters.containsKey(key)) { return gameParameters.get(key); --- 1174,1190 ---- * @see rails.game.GameManagerI#getCommonParameter(rails.common.Defs.Parm) */ ! public Object getGuiParameter (GuiDef.Parm key) { ! if (guiParameters.containsKey(key)) { ! return guiParameters.get(key); ! } else { ! return false; ! } ! } ! ! public void setGameParameter (GameDef.Parm key, Object value) { ! gameParameters.put(key, value); ! } ! ! public Object getGameParameter (GameDef.Parm key) { if (gameParameters.containsKey(key)) { return gameParameters.get(key); *************** *** 1258,1260 **** --- 1295,1301 ---- return reportBuffer; } + + public GuiHints getUIHints() { + return guiHints; + } } |