jfreerails.move
Class ChangeTrackPieceCompositeMove
java.lang.Object
jfreerails.move.CompositeMove
jfreerails.move.ChangeTrackPieceCompositeMove
- All Implemented Interfaces:
- java.io.Serializable, MapUpdateMove, Move, TrackMove, FreerailsSerializable
public final class ChangeTrackPieceCompositeMove
- extends CompositeMove
- implements TrackMove, MapUpdateMove
This Move changes adds, removes, or upgrades the track between two tiles.
- Author:
- lindsal
- See Also:
- Serialized Form
Method Summary |
protected MoveStatus |
compositeTest(World world,
FreerailsPrincipal p)
Subclasses may override this method to perform tests which pass or fail
depending on the combination of moves making up this composite move. |
static int |
findRuleID(TrackRule r,
ReadOnlyWorld w)
|
static ChangeTrackPieceCompositeMove |
generateBuildTrackMove(ImPoint from,
Step direction,
TrackRule ruleA,
TrackRule ruleB,
ReadOnlyWorld w,
FreerailsPrincipal principal)
|
static ChangeTrackPieceCompositeMove |
generateRemoveTrackMove(ImPoint from,
Step direction,
ReadOnlyWorld w,
FreerailsPrincipal principal)
|
private static ChangeTrackPieceMove |
getBuildTrackChangeTrackPieceMove(ImPoint p,
Step direction,
TrackRule trackRule,
ReadOnlyWorld w,
FreerailsPrincipal principle)
|
static int |
getOwner(FreerailsPrincipal p,
ReadOnlyWorld w)
|
private static TrackMove |
getRemoveTrackChangeTrackPieceMove(ImPoint p,
Step direction,
ReadOnlyWorld w,
FreerailsPrincipal principal)
|
private static TrackPiece |
getTrackPieceWhenOldTrackPieceIsNull(Step direction,
TrackRule trackRule,
int owner,
int ruleNumber)
|
java.awt.Rectangle |
getUpdatedTiles()
|
(package private) static boolean |
hasAnyTrackBeenBuilt(ReadOnlyWorld world,
FreerailsPrincipal principal)
Returns true if some track has been built. |
private static boolean |
mustConnectToExistingTrack(ReadOnlyWorld world)
|
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
x
private final int x
y
private final int y
w
private final int w
h
private final int h
builder
private final FreerailsPrincipal builder
ChangeTrackPieceCompositeMove
private ChangeTrackPieceCompositeMove(TrackMove a,
TrackMove b,
FreerailsPrincipal fp)
generateBuildTrackMove
public static ChangeTrackPieceCompositeMove generateBuildTrackMove(ImPoint from,
Step direction,
TrackRule ruleA,
TrackRule ruleB,
ReadOnlyWorld w,
FreerailsPrincipal principal)
generateRemoveTrackMove
public static ChangeTrackPieceCompositeMove generateRemoveTrackMove(ImPoint from,
Step direction,
ReadOnlyWorld w,
FreerailsPrincipal principal)
throws java.lang.Exception
- Throws:
java.lang.Exception
getBuildTrackChangeTrackPieceMove
private static ChangeTrackPieceMove getBuildTrackChangeTrackPieceMove(ImPoint p,
Step direction,
TrackRule trackRule,
ReadOnlyWorld w,
FreerailsPrincipal principle)
getRemoveTrackChangeTrackPieceMove
private static TrackMove getRemoveTrackChangeTrackPieceMove(ImPoint p,
Step direction,
ReadOnlyWorld w,
FreerailsPrincipal principal)
throws java.lang.Exception
- Throws:
java.lang.Exception
getTrackPieceWhenOldTrackPieceIsNull
private static TrackPiece getTrackPieceWhenOldTrackPieceIsNull(Step direction,
TrackRule trackRule,
int owner,
int ruleNumber)
getUpdatedTiles
public java.awt.Rectangle getUpdatedTiles()
- Specified by:
getUpdatedTiles
in interface MapUpdateMove
getOwner
public static int getOwner(FreerailsPrincipal p,
ReadOnlyWorld w)
hasAnyTrackBeenBuilt
static boolean hasAnyTrackBeenBuilt(ReadOnlyWorld world,
FreerailsPrincipal principal)
- Returns true if some track has been built.
mustConnectToExistingTrack
private static boolean mustConnectToExistingTrack(ReadOnlyWorld world)
compositeTest
protected MoveStatus compositeTest(World world,
FreerailsPrincipal p)
- Description copied from class:
CompositeMove
- Subclasses may override this method to perform tests which pass or fail
depending on the combination of moves making up this composite move.
- Overrides:
compositeTest
in class CompositeMove
findRuleID
public static int findRuleID(TrackRule r,
ReadOnlyWorld w)