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

java.lang.Object
  extended by cz.cuni.amis.pogamut.base.communication.messages.InfoMessage
      extended by cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo
All Implemented Interfaces:
IWorldChangeEvent, IWorldEvent, IWorldObject, ICompositeWorldObject, Event
Direct Known Subclasses:
GameInfoCompositeImpl, GameInfoMessage

public abstract class GameInfo
extends InfoMessage
implements IWorldEvent, IWorldChangeEvent, ICompositeWorldObject

Abstract definition of the GameBots2004 message NFO.

Complete message documentation: Asynchronous message. Sent as response to READY command. Information about the game. What type of game is it going to be, number of teams, maximum size of teams etc.


Nested Class Summary
static class GameInfo.GameInfoUpdate
           
 
Field Summary
static UnrealId GameInfoId
           
static java.lang.String PROTOTYPE
          Example how the message looks like - used during parser tests.
protected  long SimTime
           
 
Constructor Summary
GameInfo()
          Parameter-less contructor for the message.
 
Method Summary
abstract  Location getBlueBaseLocation()
          Location of the base spawning the blue flag (team 1) (BotCTFGame).
abstract  Location getDisperserLocation()
          Sent only in BotScenario game type.
abstract  double getDisperserRadius()
          Sent only in BotScenario game type.
abstract  double getFactoryAdrenalineCount()
          Sent only in BotScenario game type.
abstract  Location getFactoryLocation()
          Sent only in BotScenario game type.
abstract  double getFactoryRadius()
          Sent only in BotScenario game type.
abstract  java.lang.String getFactorySpawnType()
          Sent only in BotScenario game type.
abstract  Location getFirstDomPointLocation()
          Location of the first dom point (BotDoubleDomination).
abstract  int getFragLimit()
          Number of kills needed to win game (BotDeathMatch only).
abstract  java.lang.String getGametype()
          What you are playing (BotDeathMatch, BotTeamGame, BotCTFGame,BotDoubleDomination).
abstract  long getGoalTeamScore()
          Number of points a team needs to win the game (BotTeamGame, BotCTFGame, BotDoubleDomination).
 UnrealId getId()
          Returns an id of the object that is unique among all world objects.
abstract  java.lang.String getLevel()
          Name of map in game.
abstract  int getMaxTeams()
          Max number of teams.
abstract  int getMaxTeamSize()
          Max number of players per side (BotTeamGame, BotCTFGame, BotDoubleDomination).
abstract  Location getRedBaseLocation()
          Location of the base spawning the red flag (team 0) (BotCTFGame).
abstract  Location getSecondDomPointLocation()
          Location of the second dom point (BotDoubleDomination).
 long getSimTime()
          Returns the simulation time when the event has occurred.
abstract  double getTimeLimit()
          Maximum time game will last (if tied at end may goe to "sudden death overtime" - depends on the game type).
abstract  boolean isBotsPaused()
          If the game is paused just for bots - human controlled players can normally move.
abstract  boolean isGamePaused()
          If the game is paused - nobody can move.
abstract  boolean isWeaponStay()
          If true respawned weapons will stay on the ground after picked up (but bot cannot pickup same weapon twice).
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
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 java.lang.String PROTOTYPE
Example how the message looks like - used during parser tests.

See Also:
Constant Field Values

GameInfoId

public static final UnrealId GameInfoId

SimTime

protected long SimTime
Constructor Detail

GameInfo

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

Method Detail

getId

public UnrealId getId()
Description copied from interface: IWorldObject
Returns an id of the object that is unique among all world objects.

Specified by:
getId in interface IWorldObject
Returns:

getSimTime

public long getSimTime()
Description copied from interface: IWorldEvent
Returns the simulation time when the event has occurred.

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

setSimTime

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


getGametype

public abstract java.lang.String getGametype()
What you are playing (BotDeathMatch, BotTeamGame, BotCTFGame,BotDoubleDomination).


getLevel

public abstract java.lang.String getLevel()
Name of map in game.


isWeaponStay

public abstract boolean isWeaponStay()
If true respawned weapons will stay on the ground after picked up (but bot cannot pickup same weapon twice).


getTimeLimit

public abstract double getTimeLimit()
Maximum time game will last (if tied at end may goe to "sudden death overtime" - depends on the game type).


getFragLimit

public abstract int getFragLimit()
Number of kills needed to win game (BotDeathMatch only).


getGoalTeamScore

public abstract long getGoalTeamScore()
Number of points a team needs to win the game (BotTeamGame, BotCTFGame, BotDoubleDomination).


getMaxTeams

public abstract int getMaxTeams()
Max number of teams. Valid team range will be 0 to (MaxTeams - 1) (BotTeamGame, BotCTFGame, BotDoubleDomination). Usually there will be two teams - 0 and 1.


getMaxTeamSize

public abstract int getMaxTeamSize()
Max number of players per side (BotTeamGame, BotCTFGame, BotDoubleDomination).


getRedBaseLocation

public abstract Location getRedBaseLocation()
Location of the base spawning the red flag (team 0) (BotCTFGame).


getBlueBaseLocation

public abstract Location getBlueBaseLocation()
Location of the base spawning the blue flag (team 1) (BotCTFGame).


getFirstDomPointLocation

public abstract Location getFirstDomPointLocation()
Location of the first dom point (BotDoubleDomination).


getSecondDomPointLocation

public abstract Location getSecondDomPointLocation()
Location of the second dom point (BotDoubleDomination).


isGamePaused

public abstract boolean isGamePaused()
If the game is paused - nobody can move.


isBotsPaused

public abstract boolean isBotsPaused()
If the game is paused just for bots - human controlled players can normally move.


getFactoryLocation

public abstract Location getFactoryLocation()
Sent only in BotScenario game type. Location of the factory.


getFactoryRadius

public abstract double getFactoryRadius()
Sent only in BotScenario game type. Radius of the factory.


getDisperserLocation

public abstract Location getDisperserLocation()
Sent only in BotScenario game type. Location of the goal point where UDamagePack should be taken.


getDisperserRadius

public abstract double getDisperserRadius()
Sent only in BotScenario game type. Radius of the disperser point.


getFactoryAdrenalineCount

public abstract double getFactoryAdrenalineCount()
Sent only in BotScenario game type. How much adrenaline we need to activate the factory.


getFactorySpawnType

public abstract java.lang.String getFactorySpawnType()
Sent only in BotScenario game type. Pickup class our factory spawns when used properly. Item will be spawned at the bot's location.


toString

public java.lang.String toString()
Overrides:
toString in class InfoMessage

toHtmlString

public java.lang.String toHtmlString()