From: Erik V. <ev...@us...> - 2011-10-12 17:54:29
|
data/1825/CompanyManager.xml | 4 - data/1825/Game.xml | 4 + data/1835/Game.xml | 8 ++- data/1851/CompanyManager.xml | 4 - data/1851/Game.xml | 4 + data/1880/CompanyManager.xml | 4 - data/1880/Game.xml | 4 + data/18EU/CompanyManager.xml | 4 - data/18EU/Game.xml | 7 ++ data/18TN/CompanyManager.xml | 4 - data/18TN/Game.xml | 4 + rails/game/CompanyManager.java | 2 rails/game/CompanyManagerI.java | 3 + rails/game/OperatingRound.java | 6 +- rails/game/Phase.java | 100 +++++++++++++++++++++++++++++++------- rails/game/PhaseI.java | 11 ++-- rails/game/PublicCompany.java | 87 ++++++++++++++++++--------------- rails/game/PublicCompanyI.java | 5 + rails/ui/swing/UpgradesPanel.java | 4 - 19 files changed, 185 insertions(+), 84 deletions(-) New commits: commit 8d2469c1076b10c883cc6cd1c21f78f8bb668df1 Author: Erik Vos <eri...@xs...> Date: Wed Oct 12 00:37:21 2011 +0200 Phase management upgrade step 5: extra tile lays Extra tile lays are now registered in <Phase> rather than <CompanyType>. Affects Game.xml and CompanyManager.xml of the following games: 1825, 1835,1851, 1880, 18EU, 18TN. Additional fix: In 18EU, minors can no longer select yellow tiles for upgrading. Green tiles will no longer be displayed in this case. diff --git a/data/1825/CompanyManager.xml b/data/1825/CompanyManager.xml index 3785510..1493f2e 100644 --- a/data/1825/CompanyManager.xml +++ b/data/1825/CompanyManager.xml @@ -15,8 +15,8 @@ <Certificate type="President" shares="2"/> <Certificate shares="1" number="8"/> <Trains limit="4,3"/> - <TileLays> - <Number colour="yellow" number="2" phase="1,2,3,4"></Number></TileLays></CompanyType> + <!--TileLays> + <Number colour="yellow" number="2" phase="1,2,3,4"></Number></TileLays--></CompanyType> <Company name="S&M" type="Private" basePrice="30" revenue="5" longname="Swansea and Mumbles"> </Company> <Company name="CHP" type="Private" basePrice="75" revenue="12" diff --git a/data/1825/Game.xml b/data/1825/Game.xml index 608dad5..545a562 100644 --- a/data/1825/Game.xml +++ b/data/1825/Game.xml @@ -73,7 +73,9 @@ but could as well be moved here. To be sorted out when we do 18US. --> <!-- Each Phase's defaults are the previous one's values --> <Phase name="1" > - <Tiles colour="yellow"/> + <Tiles colour="yellow"> + <Lays companyType="Public" colour="yellow" number="2"/> + </Tiles> <Privates sellingAllowed="no"/> <OperatingRounds number="1"/> <Trains tradingAllowed="yes"/> diff --git a/data/1835/Game.xml b/data/1835/Game.xml index cc54f5b..6a7f7b7 100644 --- a/data/1835/Game.xml +++ b/data/1835/Game.xml @@ -80,11 +80,15 @@ </Component> <Component name="PhaseManager" class="rails.game.PhaseManager"> <Phase name="2" realName="1"> - <Tiles colour="yellow"/> + <Tiles colour="yellow"> + <Lays companyType="Major" colour="yellow" number="2"/> + </Tiles> <OperatingRounds number="1"/> </Phase> <Phase name="3" realName="2"> - <Tiles colour="yellow,green"/> + <Tiles colour="yellow,green"> + <Lays companyType="Major" colour="yellow" number="1"/> + </Tiles> <OperatingRounds number="2"/> <OffBoardRevenue step="2"/> <Trains tradingAllowed="yes"/> diff --git a/data/1851/CompanyManager.xml b/data/1851/CompanyManager.xml index 5673c23..058a94a 100644 --- a/data/1851/CompanyManager.xml +++ b/data/1851/CompanyManager.xml @@ -17,9 +17,9 @@ </BaseTokens> <Payout split="allowed" mustExceedPriceToMove="yes"/> <!--NumberOfTileLays colour="yellow" phase="3,4,5,6,8" number="2"/--> - <TileLays> + <!--TileLays> <Number colour="yellow" phase="3,4,5,6,8" number="2"/> - </TileLays> + </TileLays--> <TradeShares mustHaveOperated="yes"/> </CompanyType> <Company name="L&O" type="Private" basePrice="200" revenue="5" longname="Lexington & Ohio Railroad"> diff --git a/data/1851/Game.xml b/data/1851/Game.xml index bba23f2..936cf95 100644 --- a/data/1851/Game.xml +++ b/data/1851/Game.xml @@ -91,7 +91,9 @@ <Trains tradingAllowed="yes"/> </Phase> <Phase name="3"> - <Tiles colour="yellow,green"/> + <Tiles colour="yellow,green"> + <Lays companyType="Public" colour="yellow" number="2"/> + </Tiles> <OperatingRounds number="2"/> </Phase> <Phase name="4"> diff --git a/data/1880/CompanyManager.xml b/data/1880/CompanyManager.xml index cd8dc10..ecaea80 100644 --- a/data/1880/CompanyManager.xml +++ b/data/1880/CompanyManager.xml @@ -28,10 +28,10 @@ <CompanyType name="Major" class="rails.game.PublicCompany" capitalisation="incremental"> <Capitalisation Type="incremental"/> - <TileLays> + <!--TileLays> <Number colour="yellow" phase="2+2,3,3+3,4,4+4,6,6e,8,8e,10" number="2"/> - </TileLays> + </TileLays--> <Float percentage="60"/> <StockPrice par="yes"/> <ShareUnit percentage="10"/> diff --git a/data/1880/Game.xml b/data/1880/Game.xml index 8695192..9123c88 100644 --- a/data/1880/Game.xml +++ b/data/1880/Game.xml @@ -91,7 +91,9 @@ </Component> <Component name="PhaseManager" class="rails.game.PhaseManager"> <Phase name="2" realName="A1"> - <Tiles colour="yellow"/> + <Tiles colour="yellow"> + <Lays companyType="Major" colour="yellow" number="2"/> + </Tiles> <OperatingRounds number="-1"/> <Float percentage="20"/> <Trains tradingAllowed="yes"/> diff --git a/data/18EU/CompanyManager.xml b/data/18EU/CompanyManager.xml index 34cfd3a..c5f5791 100644 --- a/data/18EU/CompanyManager.xml +++ b/data/18EU/CompanyManager.xml @@ -6,12 +6,12 @@ <Certificate type="President" shares="1"/> <StockPrice market="no"/> <Payout split="always"/> - <TileLays> + <!--TileLays> <Number colour="yellow" phase="2" number="2" occurrences="1"/> <Number colour="green" phase="3,4,5,6,8" number="0"/> <Number colour="brown" phase="5,6,8" number="0"/> <Number colour="grey" phase="8" number="0"/> - </TileLays> + </TileLays--> <BaseTokens> <HomeBase lay="whenStarted"/> </BaseTokens> diff --git a/data/18EU/Game.xml b/data/18EU/Game.xml index 6a3af0f..54aff6c 100644 --- a/data/18EU/Game.xml +++ b/data/18EU/Game.xml @@ -101,7 +101,12 @@ </Component> <Component name="PhaseManager" class="rails.game.PhaseManager"> <Phase name="2"> - <Tiles colour="yellow"/> + <Tiles colour="yellow"> + <Lays companyType="Minor" colour="yellow" number="2" occurrences="1"/> + <Lays companyType="Minor" colour="green" number="0"/> + <Lays companyType="Minor" colour="brown" number="0"/> + <Lays companyType="Minor" colour="grey" number="0"/> + </Tiles> <OperatingRounds number="2"/> <Trains tradingAllowed="yes"/> </Phase> diff --git a/data/18TN/CompanyManager.xml b/data/18TN/CompanyManager.xml index b08c3fb..564257c 100644 --- a/data/18TN/CompanyManager.xml +++ b/data/18TN/CompanyManager.xml @@ -20,9 +20,9 @@ <Certificate shares="1" number="8"/> <Trains limit="4,3,2"/> <CanUseSpecialProperties/> - <TileLays> + <!--TileLays> <Number colour="yellow" phase="2,3,3½,4,5,6,6½,8" number="2"/> - </TileLays> + </TileLays--> </CompanyType> <Company name="TCC" type="Private" basePrice="20" revenue="5" diff --git a/data/18TN/Game.xml b/data/18TN/Game.xml index 0a19ccc..7d4d118 100644 --- a/data/18TN/Game.xml +++ b/data/18TN/Game.xml @@ -90,7 +90,9 @@ <Component name="PhaseManager" class="rails.game.PhaseManager"> <!-- Each Phase's defaults are the previous one's values --> <Phase name="2" > - <Tiles colour="yellow"/> + <Tiles colour="yellow"> + <Lays companyType="Public" colour="yellow" number="2"/> + </Tiles> <Privates sellingAllowed="no"/> <OperatingRounds number="1"/> <Trains onePerTurn="yes" tradingAllowed="yes"/> diff --git a/rails/game/CompanyManager.java b/rails/game/CompanyManager.java index 002d54f..7e60f9f 100644 --- a/rails/game/CompanyManager.java +++ b/rails/game/CompanyManager.java @@ -1 +1 @@ -/* $Header: /Users/blentz/rails_rcs/cvs/18xx/rails/game/CompanyManager.java,v 1.24 2010/04/15 19:49:50 evos Exp $ */ package rails.game; import java.util.*; import org.apache.log4j.Logger; import rails.common.LocalText; import rails.common.parser.ConfigurableComponentI; import rails.common.parser.ConfigurationException; import rails.common.parser.Tag; public class CompanyManager implements CompanyManagerI, ConfigurableComponentI { /** A List with all private companies */ private List<PrivateCompanyI> lPrivateCompanies = new ArrayList<PrivateCompanyI>(); /** A List with all public companies */ private List<PublicCompanyI> lPublicCompanies = new ArrayList<PublicCompanyI>(); /** A map with all private companies by name */ private Map<String, PrivateCompanyI> mPrivateCompanies = new HashMap<String, PrivateCompanyI>(); /** A map with all public (i.e. non-private) companies by name */ private Map<String, PublicCompanyI> mPublicCompanies = new HashMap<String, PublicCompanyI>(); /** A map of all type names to maps of companies of that type by name */ // TODO Redundant, current usage can be replaced. private Map<String, Map<String, CompanyI>> mCompaniesByTypeAndName = new HashMap<String, Map<String, CompanyI>>(); /** A list of all company types */ private List<CompanyTypeI> lCompanyTypes = new ArrayList<CompanyTypeI>(); /** A list of all start packets (usually one) */ private List<StartPacket> startPackets = new ArrayList<StartPacket>(); /** A map of all start packets, keyed by name. Default name is "Initial" */ private Map<String, StartPacket> startPacketMap = new HashMap<String, StartPacket>(); /** A map to enable translating aliases to names */ protected Map<String, String> aliases = null; private int numberOfPublicCompanies = 0; protected static Logger log = Logger.getLogger(CompanyManager.class.getPackage().getName()); protected GameMan |