Class SchiedsrichterHamster

java.lang.Object
  extended by Hamster
      extended by AllroundHamster
          extended by SchiedsrichterHamster

public class SchiedsrichterHamster
extends AllroundHamster

Repraesentation eines als Schiedsrichter fungierenden Hamsters beim Kalah-Spiel

Version:
1.0 (29.01.2006)
Author:
Dietrich Boles (Universitaet Oldenburg)

Nested Class Summary
 
Nested classes/interfaces inherited from class Hamster
Hamster.ArrayListIntern, Hamster.SimulationModelIntern
 
Field Summary
 
Fields inherited from class Hamster
_intern_hamsters, _intern_logPanel, _intern_simulationModel, NORD, OST, SUED, WEST
 
Constructor Summary
SchiedsrichterHamster()
          initialisiert einen SchiedsrichterHamster
 
Method Summary
protected  void erstelleSpielfeld()
          baut das Spielfeld auf
protected  void gehZumAusgangspunkt()
          laeuft zur Kachel (0/0) und schaut nach Osten
 int getPunkteA()
          liefert die Punkte von Spieler A
 int getPunkteB()
          liefert die Punkte von Spieler A
 Spieler getSpielerA()
          liefert Spieler A
 Spieler getSpielerB()
          liefert Spieler B
 void initialisiereSpiel(Spieler spielerA, Spieler spielerB)
          SchiedsrichterHamster bereitet das Spiel vor; insbesondere wird das Spielfeld mit Koernern aufgebaut
 boolean istEndzustandVonSpielerAOk()
          ueberprueft Endzustand von Spieler A
 boolean istEndzustandVonSpielerBOk()
          ueberprueft Endzustand von Spieler B
 boolean istSpielBeendet()
          ueberprueft, ob ein Spiel beendet ist
 boolean istSpielzugOk(Spieler spieler, Spielzug zug)
          ueberprueft den Spielzug eines Spielers
protected  boolean kontrolliereTerritorium()
          der Schiedsrichter-Hamster ueberprueft, ob auch das Hamster-Territorium gemaess der Regeln in Ordnung ist; d.h. ob der Zustand des Territoriums und des internen Brettes identisch sind
 Spieler liefereGegner(Spieler spieler)
          liefert den gegnerischen Spieler des uebergebenen Spielers
 Spieler liefereSieger()
          liefert den Sieger eines beendeten Spieles; liefert null, wenn das Spiel mit einem Unentschieden endete
 Spieler werIstAmZug()
          liefert den naechsten Spieler, der am Zug ist
 
Methods inherited from class AllroundHamster
gib, gibAlle, hintenFrei, kehrt, laufeZuKachel, laufeZuReihe, laufeZurWand, laufeZuSpalte, linksFrei, nimm, nimmAlle, rechtsFrei, rechtsUm, setzeBlickrichtung, vor
 
Methods inherited from class Hamster
clone, equals, getAnzahlHamster, getAnzahlKoerner, getBlickrichtung, getReihe, getSpalte, getStandardHamster, gib, init, kornDa, liesZahl, liesZeichenkette, linksUm, loeschen, maulLeer, nimm, schreib, toString, vor, vornFrei
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SchiedsrichterHamster

public SchiedsrichterHamster()
initialisiert einen SchiedsrichterHamster

Method Detail

erstelleSpielfeld

protected void erstelleSpielfeld()
baut das Spielfeld auf


gehZumAusgangspunkt

protected void gehZumAusgangspunkt()
laeuft zur Kachel (0/0) und schaut nach Osten


getPunkteA

public int getPunkteA()
liefert die Punkte von Spieler A

Returns:
die Punkte von Spieler A

getPunkteB

public int getPunkteB()
liefert die Punkte von Spieler A

Returns:
die Punkte von Spieler A

getSpielerA

public Spieler getSpielerA()
liefert Spieler A

Returns:
Spieler A

getSpielerB

public Spieler getSpielerB()
liefert Spieler B

Returns:
Spieler B

initialisiereSpiel

public void initialisiereSpiel(Spieler spielerA,
                               Spieler spielerB)
SchiedsrichterHamster bereitet das Spiel vor; insbesondere wird das Spielfeld mit Koernern aufgebaut

Parameters:
spielerA - Spieler A
spielerB - Spieler B

istEndzustandVonSpielerAOk

public boolean istEndzustandVonSpielerAOk()
ueberprueft Endzustand von Spieler A

Returns:
true, falls der Endzustand von Spieler A ok ist; false sonst

istEndzustandVonSpielerBOk

public boolean istEndzustandVonSpielerBOk()
ueberprueft Endzustand von Spieler B

Returns:
true, falls der Endzustand von Spieler B ok ist; false sonst

istSpielBeendet

public boolean istSpielBeendet()
ueberprueft, ob ein Spiel beendet ist

Returns:
true, falls das Spiel beendet ist; false sonst

istSpielzugOk

public boolean istSpielzugOk(Spieler spieler,
                             Spielzug zug)
ueberprueft den Spielzug eines Spielers

Parameters:
spieler - der Spieler, dessen Spielzug kontrolliert werden soll
zug - der zu kontrollierende Spielzug
Returns:
true, falls der Spielzug ok war; false sonst

kontrolliereTerritorium

protected boolean kontrolliereTerritorium()
der Schiedsrichter-Hamster ueberprueft, ob auch das Hamster-Territorium gemaess der Regeln in Ordnung ist; d.h. ob der Zustand des Territoriums und des internen Brettes identisch sind

Returns:
true, falls das Territotrium ok ist; false sonst

liefereGegner

public Spieler liefereGegner(Spieler spieler)
liefert den gegnerischen Spieler des uebergebenen Spielers

Parameters:
spieler - der Spieler, dessen Gegner ermittelt werden soll
Returns:
der gegnerische Spieler des uebergebenen Spielers

liefereSieger

public Spieler liefereSieger()
liefert den Sieger eines beendeten Spieles; liefert null, wenn das Spiel mit einem Unentschieden endete

Returns:
Sieger eines beendeten Spieles bzw. null, wenn das Spiel mit einem Unentschieden endete

werIstAmZug

public Spieler werIstAmZug()
liefert den naechsten Spieler, der am Zug ist

Returns:
der naechste Spieler, der am Zug ist