net.sf.freecol.server.control
Class ChangeSet.MoveChange

java.lang.Object
  extended by net.sf.freecol.server.control.ChangeSet.Change
      extended by net.sf.freecol.server.control.ChangeSet.MoveChange
Enclosing class:
ChangeSet

private static class ChangeSet.MoveChange
extends ChangeSet.Change

Encapsulate a move.


Field Summary
private  Tile newTile
           
private  Location oldLocation
           
private  Unit unit
           
 
Fields inherited from class net.sf.freecol.server.control.ChangeSet.Change
see
 
Constructor Summary
ChangeSet.MoveChange(ChangeSet.See see, Unit unit, Location oldLocation, Tile newTile)
          Build a new MoveChange.
 
Method Summary
 java.util.List<ChangeSet.Change> consequences(ServerPlayer serverPlayer)
          There are consequences to a move.
 boolean isPerhapsNotifiable(ServerPlayer serverPlayer)
          Should a player perhaps be notified of this move?
private  boolean seeNew(ServerPlayer serverPlayer)
           
private  boolean seeOld(ServerPlayer serverPlayer)
           
 int sortPriority()
          The sort priority.
 org.w3c.dom.Element toElement(ServerPlayer serverPlayer, org.w3c.dom.Document doc)
          Specialize a MoveChange into an "animateMove" element for a particular player.
 
Methods inherited from class net.sf.freecol.server.control.ChangeSet.Change
attachToElement, convertsToElement, isNotifiable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

unit

private Unit unit

oldLocation

private Location oldLocation

newTile

private Tile newTile
Constructor Detail

ChangeSet.MoveChange

ChangeSet.MoveChange(ChangeSet.See see,
                     Unit unit,
                     Location oldLocation,
                     Tile newTile)
Build a new MoveChange.

Parameters:
see - The visibility of this change.
unit - The Unit that is moving.
oldLocation - The location from which the unit is moving.
newTile - The Tile to which the unit is moving.
Method Detail

seeOld

private boolean seeOld(ServerPlayer serverPlayer)

seeNew

private boolean seeNew(ServerPlayer serverPlayer)

sortPriority

public int sortPriority()
The sort priority.

Specified by:
sortPriority in class ChangeSet.Change
Returns:
"CHANGE_ANIMATION"

isPerhapsNotifiable

public boolean isPerhapsNotifiable(ServerPlayer serverPlayer)
Should a player perhaps be notified of this move?

Overrides:
isPerhapsNotifiable in class ChangeSet.Change
Parameters:
serverPlayer - The ServerPlayer to notify.
Returns:
True if the player should be notified.

consequences

public java.util.List<ChangeSet.Change> consequences(ServerPlayer serverPlayer)
There are consequences to a move. If the player can not see the unit after the move, it should be removed.

Overrides:
consequences in class ChangeSet.Change
Parameters:
serverPlayer - The ServerPlayer to notify.
Returns:
A RemoveChange if the unit disappears.

toElement

public org.w3c.dom.Element toElement(ServerPlayer serverPlayer,
                                     org.w3c.dom.Document doc)
Specialize a MoveChange into an "animateMove" element for a particular player.

Specified by:
toElement in class ChangeSet.Change
Parameters:
serverPlayer - The ServerPlayer to update.
doc - The owner Document.
Returns:
An "animateMove" element.