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

java.lang.Object
  extended by cz.cuni.amis.pogamut.base.communication.messages.InfoMessage
      extended by cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.FlagInfoLocal
All Implemented Interfaces:
IWorldObject, ILocalViewable, ILocalWorldObject, ILocalGBViewable, java.lang.Cloneable
Direct Known Subclasses:
FlagInfoLocalImpl, FlagInfoMessage.FlagInfoLocalMessage

public abstract class FlagInfoLocal
extends InfoMessage
implements ILocalWorldObject, ILocalGBViewable

Abstract definition of the local part 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 FlagInfoLocal.ObjectDisappeared
           
 
Field Summary
protected  long SimTime
           
 
Constructor Summary
FlagInfoLocal()
          Parameter-less contructor for the message.
 
Method Summary
abstract  FlagInfoLocal clone()
           
 ILocalWorldObjectUpdatedEvent createDisappearEvent()
          Creates an update event that has to update visibility to false.
 java.lang.Class getCompositeClass()
           
abstract  UnrealId getId()
          An unique Id for this flag, assigned by the game.
 FlagInfoLocal getLocal()
           
 ISharedWorldObject getShared()
           
 long getSimTime()
          Returns world time when the object was seen/updated for the last time.
 IStaticWorldObject getStatic()
           
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
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SimTime

protected long SimTime
Constructor Detail

FlagInfoLocal

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

Method Detail

getSimTime

public long getSimTime()
Description copied from interface: IWorldObject
Returns world time when the object was seen/updated for the last time.

The time suppose to be growing as the simulation carries on.

Always should be actual_timestamp >= any_prevously_recorded_timestamp,

object1.getLastSeenTime() > object2.getLastSeenTime() means that object1 last seen after object2

Specified by:
getSimTime in interface IWorldObject
Returns:

setSimTime

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


clone

public abstract FlagInfoLocal clone()
Specified by:
clone in interface ILocalWorldObject
Overrides:
clone in class java.lang.Object

getCompositeClass

public java.lang.Class getCompositeClass()
Specified by:
getCompositeClass in interface ILocalWorldObject

getId

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

Specified by:
getId in interface IWorldObject
Returns:

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 ILocalViewable
Returns:

getLocal

public FlagInfoLocal getLocal()

getShared

public ISharedWorldObject getShared()

getStatic

public IStaticWorldObject getStatic()

createDisappearEvent

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

Specified by:
createDisappearEvent in interface ILocalGBViewable
Returns:

toString

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

toHtmlString

public java.lang.String toHtmlString()