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

java.lang.Object
  extended by cz.cuni.amis.pogamut.base.communication.messages.InfoMessage
      extended by cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.PlayerLocal
All Implemented Interfaces:
IWorldObject, ILocalViewable, ILocalWorldObject, ILocalGBViewable, java.lang.Cloneable
Direct Known Subclasses:
PlayerLocalImpl, PlayerMessage.PlayerLocalMessage

public abstract class PlayerLocal
extends InfoMessage
implements ILocalWorldObject, ILocalGBViewable

Abstract definition of the local part of the GameBots2004 message PLR.

Complete message documentation: Synchronous message. Contains information about other players in the game, like their current velocity, position, weapon and reachability. Only reports those players that are visible. (within field of view and not occluded).


Nested Class Summary
static class PlayerLocal.ObjectDisappeared
           
 
Field Summary
protected  long SimTime
           
 
Constructor Summary
PlayerLocal()
          Parameter-less contructor for the message.
 
Method Summary
abstract  PlayerLocal clone()
           
 ILocalWorldObjectUpdatedEvent createDisappearEvent()
          Creates an update event that has to update visibility to false.
 java.lang.Class getCompositeClass()
           
abstract  UnrealId getId()
          Unique Id of the player.
abstract  java.lang.String getJmx()
          Exported just for control server.
 PlayerLocal 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 to this other player directly, false otherwise.
abstract  boolean isVisible()
          If the player is in the field of view of the bot.
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

PlayerLocal

public PlayerLocal()
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 PlayerLocal 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()
Unique Id of the player.

Specified by:
getId in interface IWorldObject
Returns:

getJmx

public abstract java.lang.String getJmx()
Exported just for control server. Holds jmx address we need to connect to when we want to debug our bot.


isVisible

public abstract boolean isVisible()
If the player is in the field of view of the bot.

Specified by:
isVisible in interface ILocalViewable
Returns:

isReachable

public abstract boolean isReachable()
True if the bot can run to this other player directly, false otherwise. Possible reasons for false: pit or obstacle between the two characters.


getLocal

public PlayerLocal 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()