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

Package class diagram package Mover
java.lang.Object
  extended by cz.cuni.amis.pogamut.base.communication.messages.InfoMessage
      extended by cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.Mover
All Implemented Interfaces:
cz.cuni.amis.pogamut.base.communication.translator.event.IWorldChangeEvent, cz.cuni.amis.pogamut.base.communication.worldview.event.IWorldEvent, cz.cuni.amis.pogamut.base.communication.worldview.object.IWorldObject, cz.cuni.amis.pogamut.base3d.worldview.object.ILocated, cz.cuni.amis.pogamut.base3d.worldview.object.ILocomotive, cz.cuni.amis.pogamut.base3d.worldview.object.IViewable, cz.cuni.amis.pogamut.multi.communication.worldview.object.ICompositeWorldObject, IGBViewable, cz.cuni.amis.utils.listener.Event
Direct Known Subclasses:
MoverCompositeImpl, MoverMessage

public abstract class Mover
extends cz.cuni.amis.pogamut.base.communication.messages.InfoMessage
implements cz.cuni.amis.pogamut.base.communication.worldview.event.IWorldEvent, cz.cuni.amis.pogamut.base.communication.translator.event.IWorldChangeEvent, cz.cuni.amis.pogamut.multi.communication.worldview.object.ICompositeWorldObject, cz.cuni.amis.pogamut.base3d.worldview.object.ILocated, cz.cuni.amis.pogamut.base3d.worldview.object.ILocomotive, IGBViewable

Abstract definition of the GameBots2004 message MOV.

Complete message documentation: Synchronous message. Movers can be doors, elevators, or any other chunk of architecture that can move. They generally need to be either run into, or activated by shooting or pressing a button. We are working on ways to provide bots with more of the information they need to deal with movers appropriately.


Nested Class Summary
static class Mover.MoverUpdate
           
static class Mover.ObjectDisappeared
           
 
Field Summary
static String PROTOTYPE
          Example how the message looks like - used during parser tests.
protected  long SimTime
           
 
Constructor Summary
Mover()
          Parameter-less contructor for the message.
 
Method Summary
 cz.cuni.amis.pogamut.base.communication.translator.event.IWorldObjectUpdatedEvent createDisappearEvent()
          Creates an update event that has to update visibility to false.
abstract  cz.cuni.amis.pogamut.base3d.worldview.object.Location getBasePos()
          Base position of the mover.
abstract  cz.cuni.amis.pogamut.base3d.worldview.object.Location getBaseRot()
          Base rotation of the mover.
abstract  double getDelayTime()
          Delay before starting to open (or before lift starts to move).
abstract  cz.cuni.amis.pogamut.unreal.communication.messages.UnrealId getId()
          A unique Id of this mover assigned by the game.
abstract  cz.cuni.amis.pogamut.base3d.worldview.object.Location getLocation()
          Location of the mover.
abstract  double getMoveTime()
          How long the mover moves, when it becomes triggered, before it stops.
abstract  cz.cuni.amis.pogamut.unreal.communication.messages.UnrealId getNavPointMarker()
          Navigation point marking this mover.
abstract  double getOpenTime()
          How long the mover stands still when it reaches its destination position.
 long getSimTime()
          Simulation time in MILLI SECONDS !!!
abstract  String getState()
          Name of the state Mover is currently in.
abstract  String getType()
          String class of the mover.
abstract  cz.cuni.amis.pogamut.base3d.worldview.object.Velocity getVelocity()
          Velocity vector.
abstract  boolean isDamageTrig()
          True if the mover needs to be shot to be activated.
abstract  boolean isIsMoving()
          Does the mover move right now?
abstract  boolean isVisible()
          If the mover 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.
 String toHtmlString()
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface cz.cuni.amis.pogamut.multi.communication.worldview.object.ICompositeWorldObject
getLocal, getShared, getStatic
 

Field Detail

PROTOTYPE

public static final String PROTOTYPE
Example how the message looks like - used during parser tests.

See Also:
Constant Field Values

SimTime

protected long SimTime
Constructor Detail

Mover

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

Method Detail

getSimTime

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

Specified by:
getSimTime in interface cz.cuni.amis.pogamut.base.communication.translator.event.IWorldChangeEvent
Specified by:
getSimTime in interface cz.cuni.amis.pogamut.base.communication.worldview.event.IWorldEvent
Specified by:
getSimTime in interface cz.cuni.amis.pogamut.base.communication.worldview.object.IWorldObject

setSimTime

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


getId

public abstract cz.cuni.amis.pogamut.unreal.communication.messages.UnrealId getId()
A unique Id of this mover assigned by the game.

Specified by:
getId in interface cz.cuni.amis.pogamut.base.communication.worldview.object.IWorldObject

getLocation

public abstract cz.cuni.amis.pogamut.base3d.worldview.object.Location getLocation()
Location of the mover.

Specified by:
getLocation in interface cz.cuni.amis.pogamut.base3d.worldview.object.ILocated

isVisible

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

Specified by:
isVisible in interface cz.cuni.amis.pogamut.base3d.worldview.object.IViewable

isDamageTrig

public abstract boolean isDamageTrig()
True if the mover needs to be shot to be activated.


getType

public abstract String getType()
String class of the mover.


isIsMoving

public abstract boolean isIsMoving()
Does the mover move right now?


getVelocity

public abstract cz.cuni.amis.pogamut.base3d.worldview.object.Velocity getVelocity()
Velocity vector.

Specified by:
getVelocity in interface cz.cuni.amis.pogamut.base3d.worldview.object.ILocomotive

getMoveTime

public abstract double getMoveTime()
How long the mover moves, when it becomes triggered, before it stops.


getOpenTime

public abstract double getOpenTime()
How long the mover stands still when it reaches its destination position. After this time, the mover returns back to its initial position.


getBasePos

public abstract cz.cuni.amis.pogamut.base3d.worldview.object.Location getBasePos()
Base position of the mover.


getBaseRot

public abstract cz.cuni.amis.pogamut.base3d.worldview.object.Location getBaseRot()
Base rotation of the mover.


getDelayTime

public abstract double getDelayTime()
Delay before starting to open (or before lift starts to move).


getState

public abstract String getState()
Name of the state Mover is currently in. Can be used to determine the type of the mover.


getNavPointMarker

public abstract cz.cuni.amis.pogamut.unreal.communication.messages.UnrealId getNavPointMarker()
Navigation point marking this mover. We can parse this Id to get information about type of the mover. Marker Id contains "lift" string if it is a lift, "door" string if it is a door, etc.


createDisappearEvent

public cz.cuni.amis.pogamut.base.communication.translator.event.IWorldObjectUpdatedEvent createDisappearEvent()
Description copied from interface: IGBViewable
Creates an update event that has to update visibility to false.

Specified by:
createDisappearEvent in interface IGBViewable
Returns:

toString

public String toString()
Overrides:
toString in class cz.cuni.amis.pogamut.base.communication.messages.InfoMessage

toHtmlString

public String toHtmlString()


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