rails.game.action
Class BuyTrain
java.lang.Object
rails.game.action.PossibleAction
rails.game.action.PossibleORAction
rails.game.action.BuyTrain
- All Implemented Interfaces:
- java.io.Serializable
public class BuyTrain
- extends PossibleORAction
- Author:
- Erik Vos
- See Also:
- Serialized Form
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
serialVersionUID
public static final long serialVersionUID
- See Also:
- Constant Field Values
BuyTrain
public BuyTrain(TrainI train,
Portfolio from,
int fixedCost)
setTrainsForExchange
public BuyTrain setTrainsForExchange(java.util.List<TrainI> trains)
setPresidentMustAddCash
public BuyTrain setPresidentMustAddCash(int amount)
setPresidentMayAddCash
public BuyTrain setPresidentMayAddCash(int amount)
setForcedBuyIfNoRoute
public void setForcedBuyIfNoRoute(boolean hasNoTrains)
setExtraMessage
public void setExtraMessage(java.lang.String message)
getExtraMessage
public java.lang.String getExtraMessage()
getSpecialProperty
public SpecialTrainBuy getSpecialProperty()
- Returns:
- Returns the specialProperty.
setSpecialProperty
public void setSpecialProperty(SpecialTrainBuy specialProperty)
- Parameters:
specialProperty
- The specialProperty to set.
hasSpecialProperty
public boolean hasSpecialProperty()
getTrain
public TrainI getTrain()
- To be used for all usage of train, also within this class.
After reloading the 2nd copy etc. of a train with unlimited quantity,
the train attribute will be null (because readObject() is called and the
train is initiated before the actions have been executed - the second
train is in this case only created after buying the first one).
- Returns:
getFromPortfolio
public Portfolio getFromPortfolio()
getFixedCost
public int getFixedCost()
isForExchange
public boolean isForExchange()
getTrainsForExchange
public java.util.List<TrainI> getTrainsForExchange()
mustPresidentAddCash
public boolean mustPresidentAddCash()
mayPresidentAddCash
public boolean mayPresidentAddCash()
getPresidentCashToAdd
public int getPresidentCashToAdd()
isForcedBuyIfNoRoute
public boolean isForcedBuyIfNoRoute()
getHolder
public Portfolio getHolder()
getOwner
public CashHolder getOwner()
getAddedCash
public int getAddedCash()
setAddedCash
public void setAddedCash(int addedCash)
getPricePaid
public int getPricePaid()
setPricePaid
public void setPricePaid(int pricePaid)
getExchangedTrain
public TrainI getExchangedTrain()
setExchangedTrain
public void setExchangedTrain(TrainI exchangedTrain)
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
equalsAsOption
public boolean equalsAsOption(PossibleAction action)
- Description copied from class:
PossibleAction
- Compare the choice options of two action objects, without regard to whatever choice has been made, if any.
In other words: only the server-set (prior) attributes must be compared.
This method is used by the server (engine) to validate
the incoming action that has actually been chosen in the client (GUI),
but only for the purpose to check if the chosen option was really on offer,
not to check if the chosen action is actually valid.
These perspectives could give different results in cases where
the PossibleAction does not fully restrict choices to valid values only
(such as the blanket LayTile that does no restrict the hex to lay a tile on,
or the SetDividend that will accept any revenue value).
- Specified by:
equalsAsOption
in class PossibleAction
- Parameters:
action
- Another PossibleAction to compare with.
- Returns:
- True if the compared PossibleAction object has equal choice options.
equalsAsAction
public boolean equalsAsAction(PossibleAction action)
- Description copied from class:
PossibleAction
- Compare the chosen actions of two action objects.
In other words: the client-set (posterior) attributes must be compared,
in addition to those server-set (prior) attributes that sufficiently identify the action.
This method is used by the server (engine) to check if two action
objects represent the same actual action, as is done when reloading a saved file
(i.e. loading a later stage of the same game).
- Specified by:
equalsAsAction
in class PossibleAction
- Parameters:
action
- Another PossibleAction to compare with.
- Returns:
- True if the compared PossibleAction object has equal selected action values.