muehle.player
Class WebcamHumanPlayer

java.lang.Object
  extended by muehle.player.Player
      extended by muehle.player.HumanPlayer
          extended by muehle.player.WebcamHumanPlayer

public class WebcamHumanPlayer
extends HumanPlayer

Die Klasse WebcamHumanPlayer stellt einen Spieler dar, der von der Webcam die Informationen bekommt, welchen Zug der menschliche Spieler ausgeführt hat.

Author:
Joachim

Field Summary
 
Fields inherited from class muehle.player.Player
actions, clip, gestoppt, initStones, name, numberOfStones, opponent, play, s, stopSleeping, time
 
Constructor Summary
WebcamHumanPlayer(java.lang.String name, Stone s, muehle.thinking.Heuristic evalHeuristic)
           
WebcamHumanPlayer(java.lang.String name, Stone s, java.lang.String filenameOfEvalHeuristic)
          Der Konstruktor erstellt den Menschspieler mit angegebenem Namen und Stein
 
Method Summary
 Action deleteStone(Playground p)
          Diese Methode veranlasst den Menschplayer zum Schmeissen eines Gegnersteines.
 Player getClone()
          Diese Methode clont den Menschspieler, indem ein neuer Spieler gleichen Namens und gleichen Steines mit gleicher Anzahl an gesetzen und übrigen Steinen generiert wird.
 Action makeMove(Playground p)
          Diese Methode stoppt zuerst den laufenden Spiel-Thread, der wieder vom Mouse-Listener im PlayerPanel gestartet, sobald der Benutzer seine Mauseingabe gemacht hat.
 void notice(java.lang.String note)
          benachrichtigt den Spieler über eine Aktion.
 void pressedAt(int source)
          Der Stein, den der Spieler bewegt hat
 void releasedAt(int dest)
          Die Stelle, an der der Stein abgestellt wurde
 void resumeGameThread()
          Setzt das Spiel fort, wenn die Aktion beendet ist Wird vom WebcamPlayerInterface verwendet.
 
Methods inherited from class muehle.player.HumanPlayer
acceptDraw, getComputerClone, getProposalAction, getProposalDrop, getThread, moveProposal
 
Methods inherited from class muehle.player.Player
appendLastAction, calcSituationValue, canJump, canSet, clearFeatures, connect, decrementInitStones, decrementStones, disconnect, flipSound, getAllLastActions, getDeleteAction, getDepthToThink, getEvalHeuristic, getLastAction, getMoveAction, getName, getNumberOfInitStones, getNumberOfStones, getOpponent, getSetAction, getSituationValue, getStatusPanel, getStone, getTimeToThink, getTimeUsedByPlayer, getType, hasLostByStones, incrementInitStones, incrementStones, informOpponent, isUseTimeToBreak, learningPhase, receiveMsg, reset, saveFeatures, setAudio, setDepthToThink, setHost, setName, setNumberOfInitStones, setNumberOfStones, setOpponent, setPort, setStone, setTimeToThink, setUseTimeToBreak, setVerbose, softSleeping, soundPlayback, stopGameThread, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

WebcamHumanPlayer

public WebcamHumanPlayer(java.lang.String name,
                         Stone s,
                         java.lang.String filenameOfEvalHeuristic)
Der Konstruktor erstellt den Menschspieler mit angegebenem Namen und Stein

Parameters:
name - Spielername
s - Stein
Since:
20.04.2004

WebcamHumanPlayer

public WebcamHumanPlayer(java.lang.String name,
                         Stone s,
                         muehle.thinking.Heuristic evalHeuristic)
Method Detail

makeMove

public Action makeMove(Playground p)
Description copied from class: HumanPlayer
Diese Methode stoppt zuerst den laufenden Spiel-Thread, der wieder vom Mouse-Listener im PlayerPanel gestartet, sobald der Benutzer seine Mauseingabe gemacht hat. Dann wird der Zug ausgeführt.

Overrides:
makeMove in class HumanPlayer
Parameters:
p - Playground auf dem der Zug ausgeführt werden soll
Returns:
die ausgeführte Aktion

deleteStone

public Action deleteStone(Playground p)
Diese Methode veranlasst den Menschplayer zum Schmeissen eines Gegnersteines. Hier wird zuerst der SpielThread gestoppt, der vom WebcamPlayerInterface wieder gestartet wird, wenn der Spieler seinen Zug beendet hat. Anschließend wird der entsprechende Stein gelöscht.

Overrides:
deleteStone in class HumanPlayer
Parameters:
p - Playground, von dem gelöscht wird
Returns:
die ausgeführte Aktion
Since:
20.04.2004

pressedAt

public void pressedAt(int source)
Der Stein, den der Spieler bewegt hat

Overrides:
pressedAt in class HumanPlayer
Parameters:
source - Spielfeldposition, an der die Maustaste gedrückt wurde

releasedAt

public void releasedAt(int dest)
Die Stelle, an der der Stein abgestellt wurde

Overrides:
releasedAt in class HumanPlayer
Parameters:
dest - Mausposition, an der die Maustaste losgelassen wurde

resumeGameThread

public void resumeGameThread()
Setzt das Spiel fort, wenn die Aktion beendet ist Wird vom WebcamPlayerInterface verwendet.


getClone

public Player getClone()
Description copied from class: HumanPlayer
Diese Methode clont den Menschspieler, indem ein neuer Spieler gleichen Namens und gleichen Steines mit gleicher Anzahl an gesetzen und übrigen Steinen generiert wird.

Overrides:
getClone in class HumanPlayer
Returns:
geclonter Menschspieler

notice

public void notice(java.lang.String note)
Description copied from class: Player
benachrichtigt den Spieler über eine Aktion. Wird von den Net-Playern überschrieben

Overrides:
notice in class Player
Parameters:
note - Nachricht