cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages
Class FlagInfo

java.lang.Object
  extended by cz.cuni.amis.pogamut.base.communication.messages.InfoMessage
      extended by cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.FlagInfo
All Implemented Interfaces:
IWorldChangeEvent, IWorldEvent, IWorldObject, IViewable, ICompositeWorldObject, IGBViewable, Event
Direct Known Subclasses:
FlagInfoCompositeImpl, FlagInfoMessage

public abstract class FlagInfo
extends InfoMessage
implements IWorldEvent, IWorldChangeEvent, ICompositeWorldObject, IGBViewable

Abstract definition of the GameBots2004 message FLG.

Complete message documentation: Synchronous message. FlagInfo contains all info about the flag in the CTF game mode. Is not sent in other game types.


Nested Class Summary
static class FlagInfo.FlagInfoUpdate
           
static class FlagInfo.ObjectDisappeared
           
 
Field Summary
static java.lang.String PROTOTYPE
          Example how the message looks like - used during parser tests.
protected  long SimTime
           
 
Constructor Summary
FlagInfo()
          Parameter-less contructor for the message.
 
Method Summary
 IWorldObjectUpdatedEvent createDisappearEvent()
          Creates an update event that has to update visibility to false.
abstract  UnrealId getHolder()
          Id of player/bot holding the flag.
abstract  UnrealId getId()
          An unique Id for this flag, assigned by the game.
abstract  Location getLocation()
          An absolute location of the flag (Sent if we can actually see the flag).
 long getSimTime()
          Returns the simulation time when the event has occurred.
abstract  java.lang.String getState()
          Represents the state the flag is in.
abstract  java.lang.Integer getTeam()
          The owner team of this flag.
abstract  boolean isReachable()
          True if the bot can run here directly, false otherwise.
abstract  boolean isVisible()
          True if the bot can see the flag.
protected  void setSimTime(long SimTime)
          Used by Yylex to slip correct time of the object or programmatically.
 java.lang.String toHtmlString()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface cz.cuni.amis.pogamut.multi.communication.worldview.object.ICompositeWorldObject
getLocal, getShared, getStatic
 

Field Detail

PROTOTYPE

public static final java.lang.String PROTOTYPE
Example how the message looks like - used during parser tests.

See Also:
Constant Field Values

SimTime

protected long SimTime
Constructor Detail

FlagInfo

public FlagInfo()
Parameter-less contructor for the message.

Method Detail

getSimTime

public long getSimTime()
Description copied from interface: IWorldEvent
Returns the simulation time when the event has occurred.

Specified by:
getSimTime in interface IWorldChangeEvent
Specified by:
getSimTime in interface IWorldEvent
Specified by:
getSimTime in interface IWorldObject
Returns:
timestamp

setSimTime

protected void setSimTime(long SimTime)
Used by Yylex to slip correct time of the object or programmatically.


getId

public abstract UnrealId getId()
An unique Id for this flag, assigned by the game.

Specified by:
getId in interface IWorldObject
Returns:

getLocation

public abstract Location getLocation()
An absolute location of the flag (Sent if we can actually see the flag).


getHolder

public abstract UnrealId getHolder()
Id of player/bot holding the flag. (Sent if we can actually see the flag and the flag is being carried, or if the flag is being carried by us).


getTeam

public abstract java.lang.Integer getTeam()
The owner team of this flag.


isReachable

public abstract boolean isReachable()
True if the bot can run here directly, false otherwise.


isVisible

public abstract boolean isVisible()
True if the bot can see the flag.

Specified by:
isVisible in interface IViewable
Returns:
True if the object is visible; false otherwise.

getState

public abstract java.lang.String getState()
Represents the state the flag is in. Can be "Held", "Dropped" or "Home" (note that the first letter does not have to be in upper case!).


createDisappearEvent

public IWorldObjectUpdatedEvent createDisappearEvent()
Description copied from interface: IGBViewable
Creates an update event that has to update visibility to false.

Specified by:
createDisappearEvent in interface IGBViewable
Returns:

toString

public java.lang.String toString()
Overrides:
toString in class InfoMessage

toHtmlString

public java.lang.String toHtmlString()