stasichase.ki
Class DGehirn
java.lang.Object
|
+--java.lang.Thread
|
+--stasichase.ki.Gehirn
|
+--stasichase.ki.DGehirn
- public class DGehirn
- extends Gehirn
Das Gehirn für ein Detektive.
- Version:
- $Id:
- Author:
- KI-Gruppe
Fields inherited from class java.lang.Thread |
contextClassLoader,
daemon,
eetop,
group,
inheritedAccessControlContext,
MAX_PRIORITY,
MIN_PRIORITY,
name,
NORM_PRIORITY,
priority,
single_step,
stillborn,
stopThreadPermission,
target,
threadInitNumber,
threadQ,
values |
Method Summary |
private void |
dStrategie()
Hier wird entschieden in welcher Phase sich der Detektive befindet. |
private void |
dStrategie1()
Phase 1: Anfang des Spiels, bevor sich Mr.X zum ersten Mal gezeigt hat. |
private void |
dStrategie2()
Phase 2: Einkreisen. |
private void |
dStrategie3()
Phase 3: Verhaften. |
void |
initialisieren(Game game)
Übergabe des Game-Objekts an dem DGehirn. |
protected Move |
parseMove(int stationsnummer,
int ticketart)
Erzeugt DMove-Objekte. |
void |
run()
Berechnung des besten Zuges. |
Methods inherited from class java.lang.Thread |
,
activeCount,
checkAccess,
countStackFrames,
currentThread,
destroy,
dumpStack,
enumerate,
exit,
getContextClassLoader,
getName,
getPriority,
getThreadGroup,
init,
interrupt,
interrupt0,
interrupted,
isAlive,
isDaemon,
isInterrupted,
isInterrupted,
join,
join,
join,
nextThreadNum,
registerNatives,
resume,
resume0,
setContextClassLoader,
setDaemon,
setName,
setPriority,
setPriority0,
sleep,
sleep,
start,
stop,
stop,
stop0,
suspend,
suspend0,
toString,
yield |
DGehirn
public DGehirn(LokalerSpieler spieler)
- Erstellt ein DGehirn.
initialisieren
public void initialisieren(Game game)
- Übergabe des Game-Objekts an dem DGehirn. Dieser merkt sich seine
Spielnummer und die Anzahl der Spieler.
- Overrides:
- initialisieren in class Gehirn
run
public void run()
- Berechnung des besten Zuges. Wird bei makeYourMove aufgerufen.
Kann mit interrupt() gestoppt werden.
- Overrides:
- run in class Gehirn
parseMove
protected Move parseMove(int stationsnummer,
int ticketart)
- Erzeugt DMove-Objekte.
- Overrides:
- parseMove in class Gehirn
- Parameters:
stationsnummer
- Nummer der Zielstationticketart
- 1 für Taxi
2 für Bus
3 für UBahn HEL/BARRIEREN!- Returns:
- Ein DMove-Objekt
dStrategie
private void dStrategie()
- Hier wird entschieden in welcher Phase sich der Detektive befindet.
Anschließend wird die entsprechende Strategie-Methode gestartet.
dStrategie1
private void dStrategie1()
- Phase 1: Anfang des Spiels, bevor sich Mr.X zum ersten Mal gezeigt hat.
Die Detektive sollen sich aufs Brett verteilen und eventuell UBahn-Nähe
suchen um schneller vor Ort zu sein, wenn Mr.X sichtbar wird.
dStrategie2
private void dStrategie2()
- Phase 2: Einkreisen. Der Detektive ist zu weit von Mr.X entfernt, so daß
eine vollständige Analyse aller Möglichkeiten nicht für sinnvoll erscheint.
Ansatz: Mr.X bewege sich zufällig, man versucht dabei sein "Wirkungsfeld"
durch die des Detektive-Teams am besten zu decken.
dStrategie3
private void dStrategie3()
- Phase 3: Verhaften. Die Detektive sind nahe genug an Mr.X, daß es nun
möglich erscheint, ihn verhaften zu können. Also werden jetzt alle
Möglichkeiten analysiert.