|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||
algds.contest
Class Duke
java.lang.Object | +--algds.contest.Duke
- public abstract class Duke
- extends java.lang.Object
Duke: abstrake Basisklasse für alle Dukes, die sich im Labyrinth bewegen sollen. Jede Implementierung muß von dieser Klasse abgeleitet werden und insbesondere die Methode run überschreiben. Eine Instanz der abgeleiteten Klasse wird in die Labyrinth-Welt geladen und dort gestartet.
| Field Summary | |
static int |
BEAMER
Das in Blickrichtung benachbarte Feld ist ein Beamer. |
static int |
BEANS
Das in Blickrichtung benachbarte Feld enthält Bohnen. |
static int |
EAST
Blickrichtung ist nach Osten. |
static int |
EMPTY
Das in Blickrichtung benachbarte Feld ist leer. |
static int |
MAX_BEANS
Anzahl der max. |
static int |
NORTH
Blickrichtung ist nach Norden. |
static int |
SOUTH
Blickrichtung ist nach Süden. |
static int |
TURN_LEFT
Nach Links drehen. |
static int |
TURN_RIGHT
Nach Rechts drehen. |
static int |
WALL
In Blickrichtung befindet sich eine Wand. |
static int |
WEST
Blickrichtung ist nach Westen. |
| Constructor Summary | |
Duke()
Konstruktor zum Erzeugen eines Duke-Objektes. |
|
| Method Summary | |
void |
drop(int n)
Legt die angegebene Anzahl von Bohnen im aktuellen Feld ab. |
boolean |
forward()
Bewegt den Duke um einen Schritt in der aktuellen Richtung vorwärts. |
int |
getDirection()
Liefert die aktuelle Laufrichtung des Duke als Himmelsrichtung (Duke.NORTH .. |
int |
getHeight()
Liefert die Höhe der aktuellen Ebene des Labyrinthes in Feldern. |
int |
getLevel()
Liefert die ID der aktuellen Ebene des Labyrinthes. |
int |
getNumOfAvailableBeans()
Liefert die Anzahl der verfügbaren Bohnen auf dem aktuellen Feld. |
int |
getNumOfBeans()
Liefer die Anzahl der Bohnen, die der Duke gegenwärtig trägt. |
int |
getNumOfCollectedBeans()
Liefert die Anzahl der gesammelten und auf dem Ausgangsfeld abgelegten Bohnen. |
int |
getNumOfLevels()
Liefert die Anzahl der Ebenen des Labyrinthes |
int |
getNumOfSteps()
Liefert die Anzahl der bisher ausgeführten Schritte. |
int |
getStrength()
Liefert die aktuelle Stärke des Dukes. |
int |
getWidth()
Liefert die Breite der aktuellen Ebene des Labyrinthes in Feldern. |
int |
getXPos()
Liefert die aktuelle y-Position im Labyrinth. |
int |
getYPos()
Liefert die aktuelle y-Position im Labyrinth. |
void |
log(java.lang.String msg)
Gibt eine Meldung in Form eines Strings im Log-Fenster aus. |
int |
look()
Liefert Informationen über das in Blickrichtung angrenzende Feld. |
abstract void |
run()
Die Hauptmethode des Duke. |
void |
setEngine(algds.contest.MazeEngine me)
Interne Methode für die Ablaufumgebung. |
boolean |
take(int n)
Nimmt die angegebene Anzahl von Bohnen aus dem aktuellen Feld auf. |
void |
turn(int direction)
Ändert die Laufrichtung, wobei das aktuelle Feld nicht verlassen wird. |
| Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
| Field Detail |
EMPTY
public static final int EMPTY
- Das in Blickrichtung benachbarte Feld ist leer.
BEANS
public static final int BEANS
- Das in Blickrichtung benachbarte Feld enthält Bohnen.
WALL
public static final int WALL
- In Blickrichtung befindet sich eine Wand.
BEAMER
public static final int BEAMER
- Das in Blickrichtung benachbarte Feld ist ein Beamer.
TURN_LEFT
public static final int TURN_LEFT
- Nach Links drehen.
TURN_RIGHT
public static final int TURN_RIGHT
- Nach Rechts drehen.
WEST
public static final int WEST
- Blickrichtung ist nach Westen.
NORTH
public static final int NORTH
- Blickrichtung ist nach Norden.
EAST
public static final int EAST
- Blickrichtung ist nach Osten.
SOUTH
public static final int SOUTH
- Blickrichtung ist nach Süden.
MAX_BEANS
public static final int MAX_BEANS
- Anzahl der max. transportierbare Bohnen.
| Constructor Detail |
Duke
public Duke()
- Konstruktor zum Erzeugen eines Duke-Objektes.
| Method Detail |
setEngine
public void setEngine(algds.contest.MazeEngine me)
- Interne Methode für die Ablaufumgebung.
take
public boolean take(int n)
- Nimmt die angegebene Anzahl von Bohnen aus dem aktuellen Feld auf.
- Parameters:
n- die Anzahl der aufzunehmenden Bohnen- Returns:
- true, wenn Bohnen aufgenommen werden konnten, sonst false.
drop
public void drop(int n)
- Legt die angegebene Anzahl von Bohnen im aktuellen Feld ab.
- Parameters:
n- die Anzahl der aufzunehmenden Bohnen
forward
public boolean forward()
- Bewegt den Duke um einen Schritt in der aktuellen Richtung vorwärts.
- Returns:
- true, wenn Schritt ausgeführt werden konnte, sonst false (Kollision).
turn
public void turn(int direction)
- Ändert die Laufrichtung, wobei das aktuelle Feld nicht verlassen wird.
- Parameters:
direction- Drehrichtung (Duke.TURN_LEFT oder Duke.TURN_RIGHT
look
public int look()
- Liefert Informationen über das in Blickrichtung angrenzende Feld.
- Returns:
- Duke.EMPTY für ein leeres Feld, Duke.BEANS für ein Feld mit Bohnen, Duke.WALL, wenn das Feld in dieser Richtung durch eine Wand begrenzt ist.
getXPos
public int getXPos()
- Liefert die aktuelle y-Position im Labyrinth.
- Returns:
- x-Position
getYPos
public int getYPos()
- Liefert die aktuelle y-Position im Labyrinth.
- Returns:
- y-Position
getDirection
public int getDirection()
- Liefert die aktuelle Laufrichtung des Duke als Himmelsrichtung
(Duke.NORTH .. Duke.WEST).
- Returns:
- Laufrichtung
getNumOfSteps
public int getNumOfSteps()
- Liefert die Anzahl der bisher ausgeführten Schritte.
- Returns:
- Anzahl der Schritte
getLevel
public int getLevel()
- Liefert die ID der aktuellen Ebene des Labyrinthes. Die unterste
Ebene hat dabei die ID 0.
- Returns:
- ID der Ebene
getNumOfBeans
public int getNumOfBeans()
- Liefer die Anzahl der Bohnen, die der Duke gegenwärtig trägt.
- Returns:
- Anzahl der Bohnen
getNumOfCollectedBeans
public int getNumOfCollectedBeans()
- Liefert die Anzahl der gesammelten und auf dem Ausgangsfeld
abgelegten Bohnen.
- Returns:
- Anzahl der Bohnen
getNumOfAvailableBeans
public int getNumOfAvailableBeans()
- Liefert die Anzahl der verfügbaren Bohnen auf dem aktuellen
Feld.
- Returns:
- Anzahl der Bohnen
log
public void log(java.lang.String msg)
- Gibt eine Meldung in Form eines Strings im Log-Fenster aus.
- Parameters:
msg- die auszugegebende Nachricht
getStrength
public int getStrength()
- Liefert die aktuelle Stärke des Dukes. Ein Wert < 0 bedeutet,
daß der Duke verhungert ist.
- Returns:
- Stärke
getWidth
public int getWidth()
- Liefert die Breite der aktuellen Ebene des Labyrinthes in Feldern.
- Returns:
- Breite in Feldern
getHeight
public int getHeight()
- Liefert die Höhe der aktuellen Ebene des Labyrinthes in Feldern.
- Returns:
- Höhe in Feldern
getNumOfLevels
public int getNumOfLevels()
- Liefert die Anzahl der Ebenen des Labyrinthes
- Returns:
- Anzahl der Ebenen
run
public abstract void run()
- Die Hauptmethode des Duke. Durch Überschreiben dieser Methode ist ist die Bewegung durch das Labyrinth.
|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||
