From: Erik V. <ev...@us...> - 2009-05-04 20:29:32
|
Update of /cvsroot/rails/18xx/rails/game/action In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv29969/rails/game/action Modified Files: DiscardTrain.java RepayLoans.java Added Files: ExchangeableToken.java ExchangeTokens.java Log Message: 1856 CGR formation round Index: RepayLoans.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/game/action/RepayLoans.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** RepayLoans.java 4 Feb 2009 20:36:40 -0000 1.3 --- RepayLoans.java 4 May 2009 20:29:15 -0000 1.4 *************** *** 96,100 **** .append(" maxNumber=").append(maxNumber) .append(" value=").append(price); ! if (numberRepaid != 0) { b.append(" numberRepaid="+numberRepaid); } --- 96,100 ---- .append(" maxNumber=").append(maxNumber) .append(" value=").append(price); ! if (acted) { b.append(" numberRepaid="+numberRepaid); } --- NEW FILE: ExchangeableToken.java --- /* $Header: /cvsroot/rails/18xx/rails/game/action/ExchangeableToken.java,v 1.1 2009/05/04 20:29:15 evos Exp $ * * Created on 20-May-2006 * Change Log: */ package rails.game.action; import java.io.Serializable; /** * A simple, serializable class that holds the <i>original</i> location * of a Base token, to facilitate its replacement even after its company * has been closed and all its tokens removed. This class is used in * the ExchangeTokens action class. * @author Erik Vos */ public class ExchangeableToken implements Serializable { private String cityName; private String oldCompanyName; private boolean selected = false; public static final long serialVersionUID = 1L; public ExchangeableToken (String cityName, String oldCompanyName) { this.cityName = cityName; this.oldCompanyName = oldCompanyName; } public String getCityName() { return cityName; } public String getOldCompanyName() { return oldCompanyName; } public boolean isSelected() { return selected; } public void setSelected(boolean selected) { this.selected = selected; } public String toString() { return cityName+"["+oldCompanyName+"]" + (selected ? "*" : ""); } } --- NEW FILE: ExchangeTokens.java --- /* $Header: /cvsroot/rails/18xx/rails/game/action/ExchangeTokens.java,v 1.1 2009/05/04 20:29:15 evos Exp $ * * Created on 20-May-2006 * Change Log: */ package rails.game.action; import java.io.IOException; import java.io.ObjectInputStream; import java.io.Serializable; import java.util.ArrayList; import java.util.List; import rails.game.*; /** * @author Erik Vos */ public class ExchangeTokens extends PossibleORAction { // Server settings private List<ExchangeableToken> tokensToExchange = new ArrayList<ExchangeableToken>(); private int minNumberToExchange = 0; private int maxNumberToExchange = 0; // Client settings public static final long serialVersionUID = 1L; public ExchangeTokens(List<ExchangeableToken> tokensToSelectFrom, int minNumberToExchange, int maxNumberToExchange) { super(); this.tokensToExchange = tokensToSelectFrom; this.minNumberToExchange = minNumberToExchange; this.maxNumberToExchange = maxNumberToExchange; } public void setExchangedTokens(List<ExchangeableToken> exchangedTokens) { for (ExchangeableToken t : exchangedTokens) { t.setSelected(true); } } public int getMaxNumberToExchange() { return maxNumberToExchange; } public int getMinNumberToExchange() { return minNumberToExchange; } public List<ExchangeableToken> getTokensToExchange() { return tokensToExchange; } @Override public String toString() { StringBuffer b = new StringBuffer(); b.append("ExchangeTokens for "+companyName+":"); for (ExchangeableToken token : tokensToExchange) { b.append(" ").append(token.toString()); } b.append(" min=").append (minNumberToExchange); b.append(" max=").append (maxNumberToExchange); return b.toString(); } @Override public boolean equals(PossibleAction action) { if (!(action instanceof ExchangeTokens)) return false; ExchangeTokens a = (ExchangeTokens) action; return a.tokensToExchange == tokensToExchange && a.company == company; } /** Deserialize */ private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); } } Index: DiscardTrain.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/game/action/DiscardTrain.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** DiscardTrain.java 4 Jun 2008 19:00:29 -0000 1.8 --- DiscardTrain.java 4 May 2009 20:29:15 -0000 1.9 *************** *** 71,80 **** StringBuffer b = new StringBuffer(); b.append("Discard train: ").append(company.getName()); ! b.append(" has"); for (TrainI train : ownedTrains) { b.append(" ").append(train.getName()); } if (discardedTrain != null) { ! b.append(" discards ").append(discardedTrain.getName()); } return b.toString(); --- 71,81 ---- StringBuffer b = new StringBuffer(); b.append("Discard train: ").append(company.getName()); ! b.append(" one of"); for (TrainI train : ownedTrains) { b.append(" ").append(train.getName()); } + b.append(forced ? "," : ", not").append (" forced,"); if (discardedTrain != null) { ! b.append(" and discards ").append(discardedTrain.getName()); } return b.toString(); |