robocode

Class BattleRules

Implemented Interfaces:
java.io.Serializable

public final class BattleRules
extends java.lang.Object
implements java.io.Serializable

Contains the battle rules returned by BattleStartedEvent.getBattleRules() when a battle is started and BattleCompletedEvent.getBattleRules() when a battle is completed.
Author:
Pavel Savara (original)
Since:
1.6.2
See Also:
BattleStartedEvent, BattleCompletedEvent, Serialized Form

Constructor Summary

BattleRules(robocode.battle.BattleProperties battleProperties)
Do not call this constructor! This constructor is intended for the game alone.

Method Summary

int
getBattlefieldHeight()
Returns the battlefield height.
int
getBattlefieldWidth()
Returns the battlefield width.
double
getGunCoolingRate()
Returns the rate at which the gun will cool down, i.e.
long
getInactivityTime()
Returns the allowed inactivity time, where the robot is not taking any action, before will begin to be zapped.
int
getNumRounds()
Returns the number of rounds.

Constructor Details

BattleRules

public BattleRules(robocode.battle.BattleProperties battleProperties)
Do not call this constructor! This constructor is intended for the game alone.

Creates a new BattleRules based on a BattleProperties instance.

Parameters:
battleProperties - the battle properties that this object will copy from.

Method Details

getBattlefieldHeight

public int getBattlefieldHeight()
Returns the battlefield height.
Returns:
the battlefield height.

getBattlefieldWidth

public int getBattlefieldWidth()
Returns the battlefield width.
Returns:
the battlefield width.

getGunCoolingRate

public double getGunCoolingRate()
Returns the rate at which the gun will cool down, i.e. the amount of heat the gun heat will drop per turn.

The gun cooling rate is default 0.1 per turn, but can be changed by the battle setup. So don't count on the cooling rate being 0.1!

Returns:
the gun cooling rate.

getInactivityTime

public long getInactivityTime()
Returns the allowed inactivity time, where the robot is not taking any action, before will begin to be zapped. The inactivity time is measured in turns, and is the allowed time that a robot is allowed to omit taking action before being punished by the game by zapping.

When a robot is zapped by the game, it will loose 0.1 energy points per turn. Eventually the robot will be killed by zapping until the robot takes action. When the robot takes action, the inactivity time counter is reset.

The allowed inactivity time is per default 450 turns, but can be changed by the battle setup. So don't count on the inactivity time being 450 turns!

Returns:
the allowed inactivity time.

getNumRounds

public int getNumRounds()
Returns the number of rounds.
Returns:
the number of rounds.