|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjrobots.simulation.simulationObjects.Pilot
jrobots.simulation.simulationObjects.JRobot2010
public abstract class JRobot2010
The jRobot designed for use as base class for deriving contest bots.
It originates from JRobot2008
and adds these functional
enhancements:
Launchable
sProjectile
Bullet
Missile
Droppable
sMine
TankTrap
Nested Class Summary |
---|
Nested classes/interfaces inherited from class jrobots.simulation.simulationObjects.Pilot |
---|
Pilot.DropperCommand, Pilot.LauncherAmmunition |
Field Summary |
---|
Fields inherited from class jrobots.simulation.simulationObjects.Pilot |
---|
DOWN, LEFT, memoryConsumption, RIGHT, UP |
Constructor Summary | |
---|---|
JRobot2010()
|
Method Summary | |
---|---|
protected void |
addDebugArrow(Vector start,
Vector end)
Mit Hilfe dieser Funktion kann ein Bot einen Pfeil auf's Spielfeld zeichnen. |
protected void |
addDebugCrosshair(Vector position)
Mit Hilfe dieser Funktion kann ein Bot ein Kreuz auf's Spielfeld zeichnen. |
protected void |
addDebugLine(float x1,
float y1,
float x2,
float y2)
|
protected void |
addDebugLine(Vector p1,
Vector p2)
Mit Hilfe dieser Funktion kann ein Bot eine Linie auf's Spielfeld zeichnen. |
protected static double |
getBulletReloadTime()
Liefert die Zeit in Sekunden, die nach dem Abfeuern eines Schusses mit dem Maschinengewehr vergehen muss, bis der Werfer wieder bereit ist. |
protected static double |
getBulletSpeed()
Liefert die Geschwindigkeit (in Meter pro Sekunde), mit der ein Maschinengewehrprojektil, das der Panzer verschiessen kann, fliegt. |
double |
getHealth()
Der Zustand eines Panzer s reicht von 0.0 (nächster Treffer
verschrottet Panzer) bis 1.0 (voll intakt). |
protected Scan |
getLastScan()
Liefert das Ergebnis des letzten "Scanblitzes". |
protected static double |
getMaxArenaDiameter()
Zwei Panzer können sich nicht weiter als den zurückgegebenen Wert voneinander entfernen. |
protected static double |
getMaxBackwardVelocity()
Retrieves the maximum backward velocity of the Panzer . |
protected static double |
getMaxForwardVelocity()
Retrieves the maximum forward velocity of the Panzer . |
protected static Angle |
getMaxScanAperture()
Liefert den größtmöglichen öffnungswinkel des Scanners. |
protected static double |
getMineReloadTime()
Liefert die Zeit in Sekunden, die nach dem Legen einer Mine vergehen muss, bis die Minenlegevorrichtung wieder bereit ist. |
protected static double |
getMissileReloadTime()
Liefert die Zeit in Sekunden, die nach dem Abfeuern eines normalen Geschosses vergehen muss, bis der Werfer wieder bereit ist. |
protected static double |
getMissileSpeedMax()
Liefert die maximale Geschwindigkeit (in Meter pro Sekunde), mit der die Lenkrakete, die der Panzer verschiessen kann, fliegt. |
protected Angle |
getOrientation()
Liefert die aktuelle Ausrichtung des Panzerkörpers. |
protected Vector |
getPosition()
Liefert die aktuelle Position des Panzers im Spielfeld relativ zur oberen linken Ecke. |
protected static double |
getProjectileReloadTime()
Liefert die Zeit in Sekunden, die nach dem Abfeuern der Kanone vergehen muss, bis der Werfer wieder bereit ist. |
protected static double |
getProjectileSpeed()
Liefert die Geschwindigkeit (in Meter pro Sekunde), mit der das Kanonenprojektil, das der Panzer verschiessen kann, fliegt. |
protected static double |
getScanInterval()
Liefert die Zeit in Sekunden, die der Scanner zum "Nachladen" benötigt. |
protected static double |
getTankTrapReloadTime()
Liefert die Zeit in Sekunden, die nach dem Legen einer Mine vergehen muss, bis die Minenlegevorrichtung wieder bereit ist. |
protected double |
getTimeOfDropperReloaded()
Liefert den Zeitpunkt, zu dem die Legevorrichtung wieder nachgeladen ist. |
protected double |
getTimeOfLauncherReloaded()
Liefert den Zeitpunkt, zu dem die Abschussvorrichtung wieder nachgeladen ist. |
protected Vector |
getVelocity()
Liefert den aktuellen Geschwindigkeitsvektor des Panzers. |
protected boolean |
isScanFromNow()
Liefert true, wenn der aktuelle Scanwert im Scanner von diesem Frame stammt, also wenn gilt: getTime() == getLastScan().timeOfScan Der Scanner hat also in diesem Frame einen Scan durchgeführt. |
protected void |
setAutopilot(Angle direction,
double speed)
Diese Funktion aktiviert den Autopilot, welcher selbständig die Geschwindigkeiten der beiden Panzerketten regelt. |
protected void |
setBodyColor(java.awt.Color newColor)
Hiermit kann eine Farbe eingestellt werden, mit der das Bild des Panzerkörpers gefiltert wird. |
protected void |
setDebugLines(Vector[] points)
Mit Hilfe dieser Funktion kann ein Bot mehrere Linien auf's Spielfeld zeichnen. |
protected void |
setDebugText(java.lang.String text)
übergibt dem Framework einen Text, den es direk unterhalb des umherfahrenden Bots anzeigt. |
protected void |
setDropMineCommand(boolean isToBeLayed)
Setzt einen Befehl an die Abwurfvorrichtung ab. |
protected void |
setDropTankTrapCommand(boolean isToBeLayed)
Setzt einen Befehl an die Abwurfvorrichtung ab. |
protected void |
setLaunchBulletCommand(Angle command)
Setzt einen Feuerbefehl an die Abschussvorrichtung ab. |
protected void |
setLaunchMissileCommand(Angle command)
Setzt einen Feuerbefehl an die Abschussvorrichtung ab. |
protected void |
setLaunchProjectileCommand(Angle command)
Setzt einen Feuerbefehl an die Abschussvorrichtung ab. |
protected void |
setMissileTarget(Vector targetPosition)
|
protected void |
setNameColor(java.awt.Color newNameColor)
Hiermit kann die Farbe des Schriftzuges verändert werden, der in der Arena über dem Bot angezeigt wird. |
protected void |
setScanAperture(Angle aperture)
Hiermit sagt man dem Scanner, mit welchem öffnungswinkel der nächste "Scanblitz" erfolgen soll. |
protected void |
setScanDirection(Angle scanDirection)
Setzt die Richtung, in die der nächste "Scanblitz" gehen soll. |
protected void |
setTurretColor(java.awt.Color newColor)
Hiermit kann eine Farbe eingestellt werden, mit der das Bild des Panzerturms gefiltert wird. |
Methods inherited from class jrobots.simulation.simulationObjects.Pilot |
---|
actions, getBodyColor, getEnergy, getNameColor, getSafeShootDistance, getTime, getTurretColor, init |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public JRobot2010()
Method Detail |
---|
protected final void addDebugArrow(Vector start, Vector end)
Alle Debug-Linien sind jeweils nur in dem Frame sichtbar, in dem sie hinzugefügt wurden. Für eine längere Anzeige müssen die Linien also in jedem Frame neu deklariert werden.
start
- Startpunkt des Pfeilsend
- Endpunkt des Pfeils (hier ist der Pfeilkopf)protected final void addDebugCrosshair(Vector position)
Alle Debug-Linien sind jeweils nur in dem Frame sichtbar, in dem sie hinzugefügt wurden. Für eine längere Anzeige müssen die Linien also in jedem Frame neu deklariert werden.
position
- die Position des Kreuzesprotected final void addDebugLine(float x1, float y1, float x2, float y2)
protected final void addDebugLine(Vector p1, Vector p2)
Alle Debug-Linien sind jeweils nur in dem Frame sichtbar, in dem sie hinzugefügt wurden. Für eine längere Anzeige müssen die Linien also in jedem Frame neu deklariert werden.
p1
- Startpunkt der Liniep2
- Endpunkt der Linieprotected static final double getBulletReloadTime()
protected static final double getBulletSpeed()
public final double getHealth()
Panzer
s reicht von 0.0 (nächster Treffer
verschrottet Panzer) bis 1.0 (voll intakt). Sinkt der Zustand unter einen
Wert von 0.0, so ist der Kampf für diesen Panzer zu Ende.
getHealth
in class Pilot
protected final Scan getLastScan()
Note: The returned might be an unsuccessful scan. Check with
isTargetLocated
.
protected static final double getMaxArenaDiameter()
protected static final double getMaxBackwardVelocity()
Panzer
.
protected static final double getMaxForwardVelocity()
Panzer
.
protected static final Angle getMaxScanAperture()
protected static final double getMineReloadTime()
protected static final double getMissileReloadTime()
protected static final double getMissileSpeedMax()
protected final Angle getOrientation()
protected final Vector getPosition()
protected static final double getProjectileReloadTime()
protected static final double getProjectileSpeed()
protected static final double getScanInterval()
protected static final double getTankTrapReloadTime()
protected final double getTimeOfDropperReloaded()
Ist der Zeitpunkt kleiner oder gleich der momentanen Zeit, kann sofort eine beliebiger Gegenstand gelegt werden.
protected final double getTimeOfLauncherReloaded()
Ist der Zeitpunkt kleiner oder gleich der momentanen Zeit, kann sofort eine beliebige Waffe abgeschossen werden.
protected final Vector getVelocity()
protected final boolean isScanFromNow()
protected final void setAutopilot(Angle direction, double speed)
direction
- gewünschte Fahrtrichtungspeed
- gewünschte Geschwindigkeit im Intervall [-1...+1]protected final void setBodyColor(java.awt.Color newColor)
newColor
- protected final void setDebugLines(Vector[] points)
Alle Debug-Linien sind jeweils nur in dem Frame sichtbar, in dem sie hinzugefügt wurden. Für eine längere Anzeige müssen die Linien also in jedem Frame neu deklariert werden.
points
- Start- und Endpunkte der Linienprotected final void setDebugText(java.lang.String text)
text
- anzuzeigender Textprotected final void setDropMineCommand(boolean isToBeLayed)
Ist schon ein -noch nicht ausgeführter- Abwurfbefehl vorhanden,
dann wird dieser überschrieben.
Dies hat keinen Einfluss auf den Nachladevorgang der Abwurfvorrichtung.
Sobald sie nachgeladen ist, wird der zuletzt eingestellte
Befehl ausgefürt.
Folgende Befehle gibt es für die Abwurfvorrichtung:
setDropMineCommand
- Mine legen setDropTankTrapCommand
- Panzersperre legen
isToBeLayed
- protected final void setDropTankTrapCommand(boolean isToBeLayed)
Ist schon ein -noch nicht ausgeführter- Abwurfbefehl vorhanden,
dann wird dieser überschrieben.
Dies hat keinen Einfluss auf den Nachladevorgang der Abwurfvorrichtung.
Sobald sie nachgeladen ist, wird der zuletzt eingestellte
Befehl ausgefürt.
Folgende Befehle gibt es für die Abwurfvorrichtung:
setDropMineCommand
- Mine legen setDropTankTrapCommand
- Panzersperre legen
isToBeLayed
- protected final void setLaunchBulletCommand(Angle command)
Ist schon ein -noch nicht ausgeführter- Feuerbefehl vorhanden,
dann wird dieser überschrieben.
Dies hat keinen Einfluss auf den Nachladevorgang der Kanone. Sobald sie
nachgeladen ist, wird der zuletzt eingestellte Befehl ausgefürt.
Folgende Befehle gibt es für die Abschussvorrichtung:
setLaunchProjectileCommand
- die KanonesetLaunchBulletCommand
- das MaschinengewehrsetLaunchMissileCommand
- die LenkraketesetMissileTarget
setzen)
command
- - Richtung, in die geschossen werden soll (absolut)protected final void setLaunchMissileCommand(Angle command)
Ist schon ein -noch nicht ausgeführter- Feuerbefehl vorhanden,
dann wird dieser überschrieben.
Dies hat keinen Einfluss auf den Nachladevorgang der Kanone. Sobald sie
nachgeladen ist, wird der zuletzt eingestellte Befehl ausgefürt.
Folgende Befehle gibt es für die Abschussvorrichtung:
setLaunchProjectileCommand
- die KanonesetLaunchBulletCommand
- das MaschinengewehrsetLaunchMissileCommand
- die LenkraketesetMissileTarget
setzen)
command
- - Richtung, in die geschossen werden soll (absolut)protected final void setLaunchProjectileCommand(Angle command)
Ist schon ein -noch nicht ausgeführter- Feuerbefehl vorhanden,
dann wird dieser überschrieben.
Dies hat keinen Einfluss auf den Nachladevorgang der Kanone. Sobald sie
nachgeladen ist * Setzt einen Feuerbefehl an die Abschussvorrichtung ab.
Ist schon ein -noch nicht ausgeführter- Feuerbefehl vorhanden,
dann wird dieser überschrieben.
Dies hat keinen Einfluss auf den Nachladevorgang der Kanone. Sobald sie
nachgeladen ist, wird der zuletzt eingestellte Befehl ausgefürt.
Folgende Befehle gibt es für die Abschussvorrichtung:
setLaunchProjectileCommand
- die KanonesetLaunchBulletCommand
- das MaschinengewehrsetLaunchMissileCommand
- die LenkraketesetMissileTarget
setzen)
command
- - Richtung, in die geschossen werden soll (absolut)protected final void setMissileTarget(Vector targetPosition)
protected final void setNameColor(java.awt.Color newNameColor)
newNameColor
- protected final void setScanAperture(Angle aperture)
aperture
- öffnungswinkelprotected final void setScanDirection(Angle scanDirection)
setScanDirection(new RadAngle(Math.PI));
scanDirection
- gewünschte Scanrichtung
java.lang.NullPointerException
- wenn der Parameter null
istprotected final void setTurretColor(java.awt.Color newColor)
newColor
-
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |