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

java.lang.Object
  extended by cz.cuni.amis.pogamut.base.communication.messages.InfoMessage
      extended by cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.ItemLocal
All Implemented Interfaces:
IWorldObject, ILocalViewable, ILocalWorldObject, ILocalGBViewable, java.lang.Cloneable
Direct Known Subclasses:
ItemLocalImpl, ItemMessage.ItemLocalMessage

public abstract class ItemLocal
extends InfoMessage
implements ILocalWorldObject, ILocalGBViewable

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

Complete message documentation: Synchronous/asynchronous message. An object on the ground that can be picked up.


Nested Class Summary
static class ItemLocal.ObjectDisappeared
           
 
Field Summary
protected  long SimTime
           
 
Constructor Summary
ItemLocal()
          Parameter-less contructor for the message.
 
Method Summary
abstract  ItemLocal 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 item.
 ItemLocal 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 agent can reach the item.
abstract  boolean isVisible()
          If the item 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

ItemLocal

public ItemLocal()
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 ItemLocal 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 item. This Id represents just item on the map, not in our inventory.

Specified by:
getId in interface IWorldObject
Returns:

isVisible

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

Specified by:
isVisible in interface ILocalViewable
Returns:

isReachable

public abstract boolean isReachable()
True if agent can reach the item.


getLocal

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