|
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 |