gameserver
Class Gameserver

java.lang.Object
  |
  +--gameserver.Gameserver
All Implemented Interfaces:
java.lang.Runnable

public class Gameserver
extends java.lang.Object
implements java.lang.Runnable

Gameserver für die Simulation der Minensuche. Der Server befindet sich immer in einer der Phasen GSINIT, GSEVALUATING, GSEVALUATED oder GSSTARTED. In der Init-Phase wird immer zunächst ein Spielfeld

Author:
Boris

Constructor Summary
Gameserver(Spielfeld s)
          Erzeugt einen neuen Gameserver
 
Method Summary
 ServerMailbox getMailbox()
          Gibt die Mailbox des Servers zurück.
 void killRobot(java.lang.String name)
          tö einen Agenten
 void run()
          Die Hauptschleife des Servers
 void sendAlreadyMovingMessage(java.lang.String empfaenger)
          Sendet eine Warnung, dass der Roboter sich im Moment bewegt.
 void sendAlreadyRemovingMessage(java.lang.String empfaenger)
          Sendet eine Warnung, dass der Roboter im Moment eine Mine entfernt.
 void sendAlreadyScanningMessage(java.lang.String empfaenger)
          Sendet eine Warnung, dass der Roboter im Moment scannt.
 void sendScanResult(java.lang.String empfaenger, java.lang.String sensor, java.lang.String[][] result)
          Sendet das Ergebnis eines Scans an einen Agenten
 void setController(SimulationController controller)
          Weist dem Server einen SimulationController zu
 void setMailbox(ServerMailbox mailbox)
          Weist dem Server eine Mailbox zu
 void stopServer()
          Stoppt die Ausführung des Servers
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Gameserver

public Gameserver(Spielfeld s)
Erzeugt einen neuen Gameserver

Parameters:
s - das Spielfeld, welches der Server verwenden soll
Method Detail

stopServer

public void stopServer()
Stoppt die Ausführung des Servers


getMailbox

public ServerMailbox getMailbox()
Gibt die Mailbox des Servers zurück.

Returns:
die Mailbox des Servers

setMailbox

public void setMailbox(ServerMailbox mailbox)
Weist dem Server eine Mailbox zu

Parameters:
mailbox - die zuzuweisende Mailbox

run

public void run()
Die Hauptschleife des Servers

Specified by:
run in interface java.lang.Runnable

setController

public void setController(SimulationController controller)
Weist dem Server einen SimulationController zu

Parameters:
controller - der SimulationController

killRobot

public void killRobot(java.lang.String name)
tö einen Agenten

Parameters:
name - der Name des zu tötenden Agenten

sendScanResult

public void sendScanResult(java.lang.String empfaenger,
                           java.lang.String sensor,
                           java.lang.String[][] result)
Sendet das Ergebnis eines Scans an einen Agenten

Parameters:
empfaenger - der Empfänger der Nachrich
sensor - der Name des Sensors
result - das Ergebnisobjekt

sendAlreadyMovingMessage

public void sendAlreadyMovingMessage(java.lang.String empfaenger)
Sendet eine Warnung, dass der Roboter sich im Moment bewegt.

Parameters:
empfaenger - der Name des zu warnenden Agenten

sendAlreadyScanningMessage

public void sendAlreadyScanningMessage(java.lang.String empfaenger)
Sendet eine Warnung, dass der Roboter im Moment scannt.

Parameters:
empfaenger - der Name des zu warnenden Agenten

sendAlreadyRemovingMessage

public void sendAlreadyRemovingMessage(java.lang.String empfaenger)
Sendet eine Warnung, dass der Roboter im Moment eine Mine entfernt.

Parameters:
empfaenger - der Name des zu warnenden Agenten