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

Package class diagram package NavPointShared
java.lang.Object
  extended by cz.cuni.amis.pogamut.base.communication.messages.InfoMessage
      extended by cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.NavPointShared
All Implemented Interfaces:
IWorldObject, ILocated, ILocomotive, ISharedWorldObject, Cloneable
Direct Known Subclasses:
NavPointMessage.NavPointSharedMessage, NavPointSharedImpl

public abstract class NavPointShared
extends InfoMessage
implements ISharedWorldObject, ILocated, ILocomotive

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

Complete message documentation: Synchronous message - however only NavPoints marking item pickup locations are exported synchronously. Other NavPoints are not exported synchronously at all, even if the bot can actually see them (but note that ALL NavPoints are exported in the handshake between bot and the server). Exporting NavPoints synchronously took a lot of UT server resources with limited information gain (in Pogamut there is now available visibility matrix holding static information which points can be seen from other points). NavPoint carries information about UT navigation point - location, paths and some additional information are stored there (if it is an ambush point, or sniper point, etc.).


Field Summary
static cz.cuni.amis.utils.token.Token DomPointControllerPropertyToken
           
static cz.cuni.amis.utils.token.Token DoorOpenedPropertyToken
           
static cz.cuni.amis.utils.token.Token ItemSpawnedPropertyToken
           
static cz.cuni.amis.utils.token.Token LocationPropertyToken
           
static Set<cz.cuni.amis.utils.token.Token> SharedPropertyTokens
           
protected  long SimTime
           
static cz.cuni.amis.utils.token.Token VelocityPropertyToken
           
 
Constructor Summary
NavPointShared()
          Parameter-less contructor for the message.
 
Method Summary
abstract  NavPointShared clone()
           
 Class getCompositeClass()
           
abstract  int getDomPointController()
          Exported if this NavPoint is a DominationPoint (for BotDoubleDomination game) - which team controls this point.
abstract  UnrealId getId()
          A unique Id of this navigation point assigned by the game.
abstract  Location getLocation()
          Location of navigation point.
 long getSimTime()
          Simulation time in MILLI SECONDS !!!
abstract  Velocity getVelocity()
          Velocity of the navigation point (if the navigation point is currently moving).
abstract  boolean isDoorOpened()
          True if this NavPoint is a Door and door is opened.
abstract  boolean isItemSpawned()
          True if the item is spawned at the point.
protected  void setSimTime(long SimTime)
          Used by Yylex to slip correct time of the object or programmatically.
 String toHtmlString()
           
 String toString()
           
 
Methods inherited from class cz.cuni.amis.pogamut.base.communication.messages.InfoMessage
toJsonLiteral
 
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

LocationPropertyToken

public static final cz.cuni.amis.utils.token.Token LocationPropertyToken

VelocityPropertyToken

public static final cz.cuni.amis.utils.token.Token VelocityPropertyToken

ItemSpawnedPropertyToken

public static final cz.cuni.amis.utils.token.Token ItemSpawnedPropertyToken

DoorOpenedPropertyToken

public static final cz.cuni.amis.utils.token.Token DoorOpenedPropertyToken

DomPointControllerPropertyToken

public static final cz.cuni.amis.utils.token.Token DomPointControllerPropertyToken

SharedPropertyTokens

public static final Set<cz.cuni.amis.utils.token.Token> SharedPropertyTokens
Constructor Detail

NavPointShared

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

Method Detail

getSimTime

public long getSimTime()
Simulation time in MILLI SECONDS !!!

Specified by:
getSimTime in interface IWorldObject
Specified by:
getSimTime in interface ISharedWorldObject

setSimTime

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


clone

public abstract NavPointShared clone()
Specified by:
clone in interface ISharedWorldObject
Overrides:
clone in class Object

getCompositeClass

public Class getCompositeClass()
Specified by:
getCompositeClass in interface ISharedWorldObject

getId

public abstract UnrealId getId()
A unique Id of this navigation point assigned by the game.

Specified by:
getId in interface IWorldObject

getLocation

public abstract Location getLocation()
Location of navigation point.

Specified by:
getLocation in interface ILocated

getVelocity

public abstract Velocity getVelocity()
Velocity of the navigation point (if the navigation point is currently moving). Not sent at the moment.

Specified by:
getVelocity in interface ILocomotive

isItemSpawned

public abstract boolean isItemSpawned()
True if the item is spawned at the point. Not sent if point is not an inventory spot.


isDoorOpened

public abstract boolean isDoorOpened()
True if this NavPoint is a Door and door is opened. Not sent if point is not a door.


getDomPointController

public abstract int getDomPointController()
Exported if this NavPoint is a DominationPoint (for BotDoubleDomination game) - which team controls this point.


toString

public String toString()
Overrides:
toString in class InfoMessage

toHtmlString

public String toHtmlString()


Copyright © 2015 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.