|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object jfreerails.client.renderer.BuildTrackController
public class BuildTrackController
This class provides methods to change the proposed track and save it to the real world. TODO jfreerails.client.renderer is not the most logical place for this class.
Field Summary | |
---|---|
private boolean |
buildNewTrack
|
private java.util.List<ImPoint> |
builtTrack
|
private boolean |
isBuildTrackSuccessful
|
private static java.util.logging.Logger |
LOGGER
|
private ModelRoot |
modelRoot
|
private Step[] |
path
|
private TrackPathFinder |
path4newTrackFinder
|
private PathOnTrackFinder |
pathOnExistingTrackFinder
|
private FreerailsPrincipal |
principal
|
private ReadOnlyWorld |
realWorld
|
private SoundManager |
soundManager
|
private ImPoint |
startPoint
|
private ImPoint |
targetPoint
|
private boolean |
visible
|
private WorldDiffs |
worldDiffs
|
Constructor Summary | |
---|---|
BuildTrackController(ReadOnlyWorld readOnlyWorld,
ModelRoot modelRoot)
BuildTrackRenderer |
Method Summary | |
---|---|
private BuildTrackStrategy |
getBts()
Utility method that gets the BuildTrackStrategy from the model root. |
private TrackMoveProducer.BuildMode |
getBuildMode()
|
private ImPoint |
getCursorPosition()
Utility method that gets the cursor position from the model root. |
void |
hide()
Hides and cancels any proposed track. |
boolean |
isBuilding()
returns true if the track is being build - it is iff the
build track is shown |
boolean |
isBuildTrackSuccessful()
Returns true if all the track pieces can be successfully built. |
private void |
moveCursorMoreTiles(java.util.List<ImPoint> track)
Moves cursor which causes track to be built on the worldDiff object. |
private MoveStatus |
moveCursorMoreTiles(java.util.List<ImPoint> track,
TrackMoveProducer trackBuilder)
uses trackBuilder if not null -- otherwise uses own
buildTrack method - that is applied on
worldDifferences |
private MoveStatus |
planBuildingTrack(ImPoint point,
Step vector)
Attempts to building track from the specified point in the specified direction on the worldDiff object. |
private void |
reset()
Cancels any proposed track and resets the path finder. |
(package private) int |
searchStatus()
|
private void |
setCursorMessage(java.lang.String s)
Utility method that sets the CURSOR_MESSAGE property on the model root. |
void |
setProposedTrack(ImPoint to,
TrackMoveProducer trackBuilder)
Sets the proposed track: from the current cursor position to the specified point. |
private void |
setTargetPoint(ImPoint newTargetPoint)
|
private void |
setVisible(boolean show)
|
private void |
setWorldDiffs(WorldDiffs worldDiffs)
|
void |
show()
|
void |
update()
|
private void |
updateSearch()
Updates the search, if the search is completed, the proposed track is shown. |
void |
updateUntilComplete()
|
ImPoint |
updateWorld(TrackMoveProducer trackBuilder)
Saves track into real world |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final java.util.logging.Logger LOGGER
private boolean buildNewTrack
private java.util.List<ImPoint> builtTrack
private boolean isBuildTrackSuccessful
private final ModelRoot modelRoot
private Step[] path
private TrackPathFinder path4newTrackFinder
private PathOnTrackFinder pathOnExistingTrackFinder
private FreerailsPrincipal principal
private ReadOnlyWorld realWorld
private SoundManager soundManager
private ImPoint startPoint
private ImPoint targetPoint
private boolean visible
private WorldDiffs worldDiffs
Constructor Detail |
---|
public BuildTrackController(ReadOnlyWorld readOnlyWorld, ModelRoot modelRoot)
readOnlyWorld
- ReadOnlyWorldMethod Detail |
---|
private BuildTrackStrategy getBts()
private ImPoint getCursorPosition()
public void hide()
public boolean isBuilding()
true
if the track is being build - it is iff the
build track is shown
public boolean isBuildTrackSuccessful()
private void moveCursorMoreTiles(java.util.List<ImPoint> track)
private MoveStatus moveCursorMoreTiles(java.util.List<ImPoint> track, TrackMoveProducer trackBuilder)
trackBuilder
if not null -- otherwise uses own
buildTrack
method - that is applied on
worldDifferences
track
- ListtrackBuilder
- TrackMoveProducerprivate MoveStatus planBuildingTrack(ImPoint point, Step vector)
private void reset()
int searchStatus()
private void setCursorMessage(java.lang.String s)
public void setProposedTrack(ImPoint to, TrackMoveProducer trackBuilder)
private void setTargetPoint(ImPoint newTargetPoint)
newTargetPoint
- The m_targetPoint to set.private void setVisible(boolean show)
private void setWorldDiffs(WorldDiffs worldDiffs)
public void show()
public void update()
update
in interface GameModel
public void updateUntilComplete()
private void updateSearch()
private TrackMoveProducer.BuildMode getBuildMode()
public ImPoint updateWorld(TrackMoveProducer trackBuilder)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |