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

Package class diagram package Self
java.lang.Object
  extended by cz.cuni.amis.pogamut.base.communication.messages.InfoMessage
      extended by cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.Self
All Implemented Interfaces:
IWorldChangeEvent, IWorldEvent, IWorldObject, ILocated, ILocomotive, IRotable, ICompositeWorldObject, IPerson, cz.cuni.amis.utils.listener.Event
Direct Known Subclasses:
SelfCompositeImpl, SelfMessage

public abstract class Self
extends InfoMessage
implements IWorldEvent, IWorldChangeEvent, ICompositeWorldObject, IPerson

Abstract definition of the GameBots2004 message SLF.

Complete message documentation: Synchronous message. Information about your bot's state.


Nested Class Summary
static class Self.SelfUpdate
           
 
Field Summary
static String PROTOTYPE
          Example how the message looks like - used during parser tests.
protected  long SimTime
           
 
Constructor Summary
Self()
          Parameter-less contructor for the message.
 
Method Summary
abstract  String getAction()
          Name of the current BDI action.
abstract  int getAdrenaline()
          How much adrenaline the bot has.
abstract  String getAnim()
          For UE2.
abstract  int getArmor()
          Combined size of high armor and low armor (or small armor).
abstract  UnrealId getBotId()
          Unique Id of this bot.
abstract  String getBubble()
          For UE2.
abstract  String getCombo()
          Name of the current combo (None if no combo active).
abstract  String getEmotCenter()
          For UE2.
abstract  String getEmotLeft()
          For UE2.
abstract  String getEmotRight()
          For UE2.
abstract  Location getFloorLocation()
          Holds current floor location under the bot.
abstract  Location getFloorNormal()
          Holds current floor normal under the bot.
abstract  int getHealth()
          How much health the bot has left.
abstract  UnrealId getId()
          Unique Id of this self message instance.
abstract  Location getLocation()
          An absolute location of the bot.
abstract  String getName()
          Human readable bot name.
abstract  int getPrimaryAmmo()
          How much ammo the bot has left for current weapon primary mode.
abstract  Rotation getRotation()
          Which direction the bot is facing in absolute terms.
abstract  int getSecondaryAmmo()
          How much ammo the bot has left for current weapon secondary mode.
 long getSimTime()
          Simulation time in MILLI SECONDS !!!
abstract  int getSmallArmor()
          Also refered to as a "low armor".
abstract  int getTeam()
          What team the bot is on. 255 is no team. 0-3 are red, blue, green, gold in that order.
abstract  double getUDamageTime()
          Time when the UDamage effect expires.
abstract  Velocity getVelocity()
          Absolute velocity of the bot as a vector of movement per one game second.
abstract  String getWeapon()
          Id of the weapon we are holding.
abstract  boolean isAltFiring()
          If we are firing in secondary firing mode.
abstract  boolean isCrouched()
          If we are currently crouched.
abstract  boolean isShooting()
          If the bot is shooting or not.
abstract  boolean isVehicle()
          If we are vehicle just these attr. are sent in SLF: "Id","Vehicle""Rotation", "Location","Velocity ","Name ","Team" ,"Health" "Armor","Adrenaline", "FloorLocation", "FloorNormal".
abstract  boolean isWalking()
          If we are currently in walking mode.
protected  void setSimTime(long SimTime)
          Used by Yylex to slip correct time of the object or programmatically.
 String toHtmlString()
           
 String toJsonLiteral()
           
 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

Self

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

Method Detail

getSimTime

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

Specified by:
getSimTime in interface IWorldChangeEvent
Specified by:
getSimTime in interface IWorldEvent
Specified by:
getSimTime in interface IWorldObject

setSimTime

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


getId

public abstract UnrealId getId()
Unique Id of this self message instance.

Specified by:
getId in interface IWorldObject

getBotId

public abstract UnrealId getBotId()
Unique Id of this bot.


getName

public abstract String getName()
Human readable bot name.

Specified by:
getName in interface IPerson

isVehicle

public abstract boolean isVehicle()
If we are vehicle just these attr. are sent in SLF: "Id","Vehicle""Rotation", "Location","Velocity ","Name ","Team" ,"Health" "Armor","Adrenaline", "FloorLocation", "FloorNormal".


getLocation

public abstract Location getLocation()
An absolute location of the bot.

Specified by:
getLocation in interface ILocated

getVelocity

public abstract Velocity getVelocity()
Absolute velocity of the bot as a vector of movement per one game second.

Specified by:
getVelocity in interface ILocomotive

getRotation

public abstract Rotation getRotation()
Which direction the bot is facing in absolute terms.

Specified by:
getRotation in interface IRotable

getTeam

public abstract int getTeam()
What team the bot is on. 255 is no team. 0-3 are red, blue, green, gold in that order.


getWeapon

public abstract String getWeapon()
Id of the weapon we are holding. This is unique Id of an item in our inventory and is different from the Id of the item we pick up from the ground! We can parse this string to look which weapon we hold. Weapon strings to look for include: "AssaultRifle", "ShieldGun", "FlakCannon", "BioRifle", "ShockRifle", "LinkGun", "SniperRifle", "RocketLauncher", "Minigun", "LightingGun", "Translocator". TODO: Look if this is all.


isShooting

public abstract boolean isShooting()
If the bot is shooting or not.


getHealth

public abstract int getHealth()
How much health the bot has left. Starts at 100, ranges from 0 to 200.


getPrimaryAmmo

public abstract int getPrimaryAmmo()
How much ammo the bot has left for current weapon primary mode.


getSecondaryAmmo

public abstract int getSecondaryAmmo()
How much ammo the bot has left for current weapon secondary mode. Weapon does not have to support sec. fire mode.


getAdrenaline

public abstract int getAdrenaline()
How much adrenaline the bot has.


getArmor

public abstract int getArmor()
Combined size of high armor and low armor (or small armor). The high and low armor are tracked separately. Low armor is limited to 50 points, while the high armor can have up to 150 points. Both stacks can have a combined size of 150 points as well, so if low armor is already at 50 points, high armor can have 100 points at max.


getSmallArmor

public abstract int getSmallArmor()
Also refered to as a "low armor". Ranges from 0 to 50 points.


isAltFiring

public abstract boolean isAltFiring()
If we are firing in secondary firing mode.


isCrouched

public abstract boolean isCrouched()
If we are currently crouched.


isWalking

public abstract boolean isWalking()
If we are currently in walking mode.


getFloorLocation

public abstract Location getFloorLocation()
Holds current floor location under the bot.


getFloorNormal

public abstract Location getFloorNormal()
Holds current floor normal under the bot.


getCombo

public abstract String getCombo()
Name of the current combo (None if no combo active). Can be xGame.ComboBerserk, xGame.ComboDefensive, xGame.ComboInvis or xGame.ComboSpeed. To trigger combo adrenaline needs to be at 100 (maximum) and no other combo can be active.


getUDamageTime

public abstract double getUDamageTime()
Time when the UDamage effect expires. If the number is higher then the current time, it means the bot has UDamage effect active right now.


getAction

public abstract String getAction()
Name of the current BDI action.


getEmotLeft

public abstract String getEmotLeft()
For UE2. Holds left emoticon of the bot, "None" means none set.


getEmotCenter

public abstract String getEmotCenter()
For UE2. Holds center emoticon of the bot, "None" means none set.


getEmotRight

public abstract String getEmotRight()
For UE2. Holds right emoticon of the bot, "None" means none set.


getBubble

public abstract String getBubble()
For UE2. Holds the bubble of the emoticon of the bot, "None" means none set.


getAnim

public abstract String getAnim()
For UE2. Current played animation of the bot.


toString

public String toString()
Overrides:
toString in class InfoMessage

toHtmlString

public String toHtmlString()

toJsonLiteral

public String toJsonLiteral()
Overrides:
toJsonLiteral in class InfoMessage


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