|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectmuehle.player.Player
public class Player
Diese Klasse implementiert den abstrakten Typ Player. Von ihm erben die implementierten Player Computerspieler, Menschspieler, Netzwerk-Serverspieler und Netzwerk-Clientspieler
Field Summary | |
---|---|
protected java.util.ArrayList |
actions
Die Aktionen, die der Spieler durchgeführt hat |
protected static java.applet.AudioClip[] |
clip
|
protected boolean |
gestoppt
Speichert den Status des Spielthreads |
protected int |
initStones
Anzahl der noch zu setzenden Steine des Spielers |
protected java.lang.String |
name
Name des Spielers |
protected int |
numberOfStones
Anzahl der Steine des Spielers auf dem Spielfeld |
protected Player |
opponent
Der Gegenspieler des Spielers |
protected java.lang.Thread |
play
Speichert für den aktuellen Zug den Spielthread, |
protected Stone |
s
Spielstein des Spielers |
protected boolean |
stopSleeping
|
protected long |
time
Denkzeit in Millisekunden |
Constructor Summary | |
---|---|
Player(java.lang.String name,
Stone s)
|
|
Player(java.lang.String name,
Stone s,
muehle.thinking.Heuristic evalHeuristic)
erzeugt einen neuen Player mit angegebenem Namen und Spielstein. |
|
Player(java.lang.String name,
Stone s,
java.lang.String filenameOfEvalHeuristic)
|
Method Summary | |
---|---|
boolean |
acceptDraw(Playground p)
|
void |
appendLastAction(Action a)
setzt die LastAction (die letzte Aktion) des Player und
benachrichtigt den Gegenspieler (bei Netzwerkspielen) über den
durchgeführten Zug |
protected void |
calcSituationValue(Playground p)
Errechnet den Situationswert neu |
boolean |
canJump()
gibt zurück, ob der Spieler springen kann, also weniger als 4 Steine auf dem Feld hat. |
boolean |
canSet()
gibt zurück, ob der Spieler noch Steine setzen kann, also noch in der Setzphase ist. |
void |
clearFeatures()
|
int |
connect()
Verbindungsaufbau beim Netzwerkspiel Wird von den Net-Playern überschrieben |
void |
decrementInitStones()
erniedrigt die Steinanzahl der zu setzenden Spielsteine des Players um 1 |
void |
decrementStones()
erniedrigt die Anzahl der Spielsteine des Players, die sich auf dem Spielfeld befinden, um 1 |
Action |
deleteStone(Playground p)
führt einen Schmeiss-Zug des Spielers aus. |
void |
disconnect()
Verbindungsabbau beim Netzwerkspiel Wird von den Net-Playern überschrieben |
static void |
flipSound()
|
java.util.ArrayList |
getAllLastActions()
gibt einen Vector mit allen Actions zurück, die der Spieler bisher gemacht hat |
Player |
getClone()
clont den Spieler indem ein neuer Spieler gleichen Namens und gleichen Steins mit gleicher Anzahl an gesetzen und übrigen Steinen generiert wird. |
DeleteAction |
getDeleteAction(int destination)
|
int |
getDepthToThink()
|
protected muehle.thinking.Heuristic |
getEvalHeuristic()
Gibt die EvalHeuristik zurück |
Action |
getLastAction()
gibt die Aktion zurück, die der Player als letztes gemacht hat |
MoveAction |
getMoveAction(int destination,
int source)
|
java.lang.String |
getName()
gibt den Namen des Players zurück |
int |
getNumberOfInitStones()
gibt die Anzahl der Spielsteine zurück, die der Player noch setzen darf. |
int |
getNumberOfStones()
gibt die Anzahl der Spielsteine zurück, die der Player auf dem Spielfeld hat. |
Player |
getOpponent()
gibt den Gegner des aktuellen Spielers zurück |
Action |
getProposalAction()
|
Action |
getProposalDrop()
|
SetAction |
getSetAction(int destination)
|
double |
getSituationValue()
Gibt die Bewertung der Heuristik für die eigene Situation zurück |
void |
getStatusPanel(muehle.gui.StatusPanel sp)
|
Stone |
getStone()
gibt den Spielstein des Players zurück |
void |
getThread(java.lang.Thread play)
|
int |
getTimeToThink()
|
long |
getTimeUsedByPlayer()
|
java.lang.String |
getType()
gibt einen String zurück, der den Typ des Players beschreibt: HumanPlayer, ComputerPlayer, NetServerPlayer oder NetClientPlayer |
boolean |
hasLostByStones()
gibt zurück, ob der Spieler auf Grund seiner Steinanzahl verloren hat, also weniger als 3 Steine auf dem Feld hat |
void |
incrementInitStones()
erhöht die Steinanzahl der zu setzenden Spielsteine des Players um 1 |
void |
incrementStones()
erhöht die Anzahl der Spielsteine des Players, die sich auf dem Spielfeld befinden, um 1 |
void |
informOpponent(Action a)
|
boolean |
isUseTimeToBreak()
|
void |
learningPhase(double outcome,
boolean save)
|
Action |
makeMove(Playground p)
führt einen Zug des Spielers aus. |
void |
notice(java.lang.String note)
benachrichtigt den Spieler über eine Aktion. |
void |
pressedAt(int source)
setzt die Position an der die Maustaste gedrückt wurde. |
java.lang.String |
receiveMsg()
|
void |
releasedAt(int destination)
setzt die Position an der die Maustaste wieder losgelassen wurde. |
void |
reset()
Setzt den Spieler zurück, indem die Steinanzahl auf dem Feld auf 0 und die zu setzenden Steine auf 9 gesetzt werden |
void |
saveFeatures(Playground p,
Player aktPlayer)
|
static void |
setAudio(java.applet.AudioClip[] ac)
|
void |
setDepthToThink(int depthToThink)
|
void |
setHost(java.lang.String s)
setzt den Hostnamen beim Netzwerkspiel Wird vom Client-Player überschrieben |
void |
setName(java.lang.String name)
setzt den Namen des Spielers auf den übergebenen Namen |
void |
setNumberOfInitStones(int initStones)
setzt die Anzahl der Spielsteine, die vom Player gesetzt werden können |
void |
setNumberOfStones(int numberStones)
setzt die Anzahl der Spielsteine, die der Player auf dem Spielfeld hat |
void |
setOpponent(Player p)
setzt einen Gegner für den Player |
void |
setPort(int port)
setz den Port für ein Netzwerkspiel Wird von den Net-Playern überschrieben |
void |
setStone(Stone s)
|
void |
setTimeToThink(int power)
setzt die Spielstärke beim Computerplayer Wird vom ComputerPlayer überschrieben |
void |
setUseTimeToBreak(boolean useTimeToBreak)
|
void |
setVerbose(boolean verbose)
|
protected void |
softSleeping()
|
void |
soundPlayback(int i)
|
protected void |
stopGameThread()
|
java.lang.String |
toString()
Stringdarstellung des Spielers im Format: Name: xxx, InitStones: xxx, Stones: xxx, CanSet, CanJump |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected java.lang.String name
protected Stone s
protected int numberOfStones
protected int initStones
protected java.util.ArrayList actions
protected Player opponent
protected java.lang.Thread play
protected long time
protected boolean stopSleeping
protected static java.applet.AudioClip[] clip
protected boolean gestoppt
Constructor Detail |
---|
public Player(java.lang.String name, Stone s)
public Player(java.lang.String name, Stone s, java.lang.String filenameOfEvalHeuristic)
public Player(java.lang.String name, Stone s, muehle.thinking.Heuristic evalHeuristic)
name
- Spielernames
- SpielsteinMethod Detail |
---|
public static void setAudio(java.applet.AudioClip[] ac)
public static void flipSound()
public SetAction getSetAction(int destination)
public DeleteAction getDeleteAction(int destination)
public MoveAction getMoveAction(int destination, int source)
public Stone getStone()
public Action getLastAction()
public java.util.ArrayList getAllLastActions()
public boolean canSet()
public boolean canJump()
public boolean hasLostByStones()
public java.lang.String getType()
public java.lang.String getName()
public Player getOpponent()
public int getNumberOfStones()
public void setStone(Stone s)
public int getNumberOfInitStones()
public void setNumberOfInitStones(int initStones)
initStones
- Steinanzahlpublic void setNumberOfStones(int numberStones)
numberStones
- Steinanzahlpublic void incrementInitStones()
public void decrementInitStones()
public void incrementStones()
public void decrementStones()
public void setName(java.lang.String name)
name
- Spielernamepublic void setOpponent(Player p)
p
- Gegenspielerpublic void appendLastAction(Action a)
LastAction
(die letzte Aktion) des Player und
benachrichtigt den Gegenspieler (bei Netzwerkspielen) über den
durchgeführten Zug
a
- Aktion, die zuletzt ausgeführt wurdepublic void informOpponent(Action a)
protected void stopGameThread()
public void soundPlayback(int i)
public java.lang.String toString()
toString
in class java.lang.Object
public void reset()
public Player getClone()
public void notice(java.lang.String note)
note
- Nachrichtpublic int connect()
public void disconnect()
note
- Nachrichtpublic void setHost(java.lang.String s)
s
- Hostnamepublic void setPort(int port)
port
- Portnummerpublic Action makeMove(Playground p)
p
- Spielfeld auf dem der Zug ausgeführt werden soll
public Action deleteStone(Playground p)
p
- Spielfeld auf dem der Schmeiss-Zug ausgeführt werden soll
public void pressedAt(int source)
source
- Mausposition, an der die Maustaste gedrückt wurdepublic void releasedAt(int destination)
destination
- Mausposition, an der die Maustaste losgelassen wurdepublic void setTimeToThink(int power)
destination
- Mausposition, an der die Maustaste losgelassen wurdeprotected void softSleeping()
public java.lang.String receiveMsg()
verbose
- The verbose to set. Nur für Computerplayerpublic void setVerbose(boolean verbose)
public int getTimeToThink()
public boolean acceptDraw(Playground p)
public Action getProposalAction()
public Action getProposalDrop()
public long getTimeUsedByPlayer()
public void learningPhase(double outcome, boolean save)
public void saveFeatures(Playground p, Player aktPlayer)
public void clearFeatures()
public int getDepthToThink()
public void setDepthToThink(int depthToThink)
public boolean isUseTimeToBreak()
public void setUseTimeToBreak(boolean useTimeToBreak)
public void getThread(java.lang.Thread play)
public void getStatusPanel(muehle.gui.StatusPanel sp)
protected muehle.thinking.Heuristic getEvalHeuristic()
protected void calcSituationValue(Playground p)
public double getSituationValue()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |