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

java.lang.Object
  extended by cz.cuni.amis.pogamut.base.communication.messages.InfoMessage
      extended by cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.BombInfoShared
All Implemented Interfaces:
IWorldObject, ISharedWorldObject, java.lang.Cloneable
Direct Known Subclasses:
BombInfoMessage.BombInfoSharedMessage, BombInfoSharedImpl

public abstract class BombInfoShared
extends InfoMessage
implements ISharedWorldObject

Abstract definition of the shared part of the GameBots2004 message BOM.

Complete message documentation: Synchronous message. BombInfo contains all info about the bomb in the BotBombingRun game mode. Is not sent in other game types.


Field Summary
static Token HolderPropertyToken
           
static Token HolderTeamPropertyToken
           
static Token LocationPropertyToken
           
static java.util.Set<Token> SharedPropertyTokens
           
protected  long SimTime
           
static Token StatePropertyToken
           
static Token VelocityPropertyToken
           
 
Constructor Summary
BombInfoShared()
          Parameter-less contructor for the message.
 
Method Summary
abstract  BombInfoShared clone()
           
 java.lang.Class getCompositeClass()
           
abstract  UnrealId getHolder()
          Id of player/bot holding the bomb.
abstract  java.lang.Integer getHolderTeam()
          The team of the current holder (if any).
abstract  UnrealId getId()
          An unique Id for this bomb, assigned by the game.
abstract  Location getLocation()
          An absolute location of the bomb (Sent if we can actually see the flag).
 long getSimTime()
          Returns world time when the object was seen/updated for the last time.
abstract  java.lang.String getState()
          Represents the state the bomb is in.
abstract  Velocity getVelocity()
          Current velocity of the bomb.
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
 
Methods inherited from interface cz.cuni.amis.pogamut.multi.communication.worldview.object.ISharedWorldObject
getProperties, getProperty
 

Field Detail

SimTime

protected long SimTime

VelocityPropertyToken

public static final Token VelocityPropertyToken

LocationPropertyToken

public static final Token LocationPropertyToken

HolderPropertyToken

public static final Token HolderPropertyToken

HolderTeamPropertyToken

public static final Token HolderTeamPropertyToken

StatePropertyToken

public static final Token StatePropertyToken

SharedPropertyTokens

public static final java.util.Set<Token> SharedPropertyTokens
Constructor Detail

BombInfoShared

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

Method Detail

getSimTime

public long getSimTime()
Description copied from interface: ISharedWorldObject
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
Specified by:
getSimTime in interface ISharedWorldObject
Returns:

setSimTime

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


clone

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

getCompositeClass

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

getId

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

Specified by:
getId in interface IWorldObject
Returns:

getVelocity

public abstract Velocity getVelocity()
Current velocity of the bomb. TODO not sure if this actually does smthing


getLocation

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


getHolder

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


getHolderTeam

public abstract java.lang.Integer getHolderTeam()
The team of the current holder (if any).


getState

public abstract java.lang.String getState()
Represents the state the bomb is in. Can be "Held", "Dropped" or "Home".


toString

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

toHtmlString

public java.lang.String toHtmlString()