org.jzuul.engine
Class Player

java.lang.Object
  extended byorg.jzuul.engine.Player
All Implemented Interfaces:
EventListener

public class Player
extends Object
implements EventListener

Die Playerklasse, die den Container für den Spieler darstellt. Ein Spieler speichert nicht nur seine gegenwärtige Position sondern auch alle Dinge die aufgehoben worden sind.

Version:
$Revision: 1.14 $

Field Summary
private  Room currentRoom
          Der Raum in dem sich der Spieler aufhält
private  EventHandler[] eventHandlers
          Die EventHandler des Spielers
private  Inventory inv
          Das Inventory Objekt des Spielers
private  Room lastRoom
          Der Raum in dem sich der Spieler vorher aufgehalten hat (für "go back")
private  String name
          Der Name des Spielers, default ist Player
private  int number
          Die Nummer des Spielers für Multiplayer, default ist 0
private  TargetList targets
          Die TargetList des Spielers (für "todo")
 
Constructor Summary
Player()
          Konstruktor
Player(int number)
          Erstellt einen Spieler mit einer Nummer (multiplayer)
 
Method Summary
 Player copy()
          Erstellt eine 1 zu 1 Kopie des Spielers inklusive aller enthaltenen Objekte.
 void doEvent(int eventId)
          Führt ein Event aus
 boolean findAndDeleteGameObject(String itemName)
           
 boolean findAndDeleteGameObject(String itemName, boolean verbose)
          Diese Methode sucht das Item itemName in der Reihenfolge Inventar, Room und löscht dieses.
 GameObject findGameObject(String objName)
          Diese Methode sucht das GameObject objName in der Reihenfolge Inventar, Room und gibt das GameObject zurück.
 Room getCurrentRoom()
          Gibt den aktuellen Room zurück
 void getFromPool(String objName)
          Fügt in das Inventar des Spielers eine Objekt aus dem globalen ObjectPool ein
 Inventory getInv()
          Gibt das Inventar des Spielers zurück
 Room getLastRoom()
          Zugriff auf das das Backup das mit saveLastRoom genacht wurde
 String getName()
          Zugriff auf den Namen des Spielers
 int getNumber()
          Gibt die Nummer des Spielers zurück
 TargetList getTargetList()
          Zugriff auf die TargetList des Spielers
 boolean mutateItem(Item item, String newName)
          Deprecated. Wird im Moment nicht mehr benutzt
 void resetLastRoom()
          Setzt den letzten Room auf null zurück
 void saveLastRoom()
          Macht ein Backup des aktuellen Raumes
 void say(String something)
          Ausgabe...
 void setCurrentRoom(Room currentRoom)
          Setzt den Room in dem sich der Player befindet und löst die Events Event.PLAYERLEAVE und Event.PLAYERENTER aus
 void setHandler(String name, EventHandler handler)
          Setzt einen EventHandler für ein Event
 void setInv(Inventory inv)
          Setzt das Inventar eines Spielers
 void setName(String name)
          Setzt den Namen des Spielers
 void setNumber(int number)
          Setzt die Nummer des Spielers
 void setTargetList(TargetList targets)
          Weist dem Spieler eine neue TargetList zu
 Element toElement()
          Wandelt den Spieler und sein Inventar in ein JDOM Element um
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

currentRoom

private Room currentRoom
Der Raum in dem sich der Spieler aufhält


inv

private Inventory inv
Das Inventory Objekt des Spielers


lastRoom

private Room lastRoom
Der Raum in dem sich der Spieler vorher aufgehalten hat (für "go back")


name

private String name
Der Name des Spielers, default ist Player


targets

private TargetList targets
Die TargetList des Spielers (für "todo")


eventHandlers

private EventHandler[] eventHandlers
Die EventHandler des Spielers


number

private int number
Die Nummer des Spielers für Multiplayer, default ist 0

Constructor Detail

Player

public Player()
Konstruktor


Player

public Player(int number)
Erstellt einen Spieler mit einer Nummer (multiplayer)

Parameters:
number - die Nummer des Spielers
Method Detail

findAndDeleteGameObject

public boolean findAndDeleteGameObject(String itemName)

findAndDeleteGameObject

public boolean findAndDeleteGameObject(String itemName,
                                       boolean verbose)
Diese Methode sucht das Item itemName in der Reihenfolge Inventar, Room und löscht dieses.

Parameters:
itemName -
Returns:
true on success and false on failure

findGameObject

public GameObject findGameObject(String objName)
Diese Methode sucht das GameObject objName in der Reihenfolge Inventar, Room und gibt das GameObject zurück. Wenn das GameObject nicht gefunden wird gibt es null zurück

Parameters:
objName -
Returns:
GameObject with objName on success, null on failure

getCurrentRoom

public Room getCurrentRoom()
Gibt den aktuellen Room zurück

Returns:
Room in dem sich der Spieler aufhält

getInv

public Inventory getInv()
Gibt das Inventar des Spielers zurück

Returns:
Inventar

setInv

public void setInv(Inventory inv)
Setzt das Inventar eines Spielers

Parameters:
inv - Das neuen Inventar des Spielers

mutateItem

public boolean mutateItem(Item item,
                          String newName)
Deprecated. Wird im Moment nicht mehr benutzt

Diese Methode verwandelt einen Gegenstand in einen anderen. Da Gegenstände über ihre Namen identifiziert werden muss man einen neuen Namen einsetzen.

Parameters:
item -
newName -
Returns:
true on success and false on failure

say

public void say(String something)
Ausgabe...

Parameters:
something - was ausgegeben werden soll

setCurrentRoom

public void setCurrentRoom(Room currentRoom)
Setzt den Room in dem sich der Player befindet und löst die Events Event.PLAYERLEAVE und Event.PLAYERENTER aus

Parameters:
currentRoom - - tja...

saveLastRoom

public void saveLastRoom()
Macht ein Backup des aktuellen Raumes


resetLastRoom

public void resetLastRoom()
Setzt den letzten Room auf null zurück


getLastRoom

public Room getLastRoom()
Zugriff auf das das Backup das mit saveLastRoom genacht wurde

Returns:
der Room in dem man vorher war

toElement

public Element toElement()
Wandelt den Spieler und sein Inventar in ein JDOM Element um

Returns:
das JDOM XML ELement das den Spieler beschreibt

getFromPool

public void getFromPool(String objName)
Fügt in das Inventar des Spielers eine Objekt aus dem globalen ObjectPool ein

Parameters:
objName - der Name des Objektes das geholt werden soll

setName

public void setName(String name)
Setzt den Namen des Spielers

Parameters:
name - der neuen Name des Spielers

getName

public String getName()
Zugriff auf den Namen des Spielers

Returns:
der aktuelle Name des Spielers

setTargetList

public void setTargetList(TargetList targets)
Weist dem Spieler eine neue TargetList zu

Parameters:
targets - die neue TargetList für den Spieler

getTargetList

public TargetList getTargetList()
Zugriff auf die TargetList des Spielers

Returns:
die aktuelle TargetList des Spielers

setHandler

public void setHandler(String name,
                       EventHandler handler)
Setzt einen EventHandler für ein Event

Specified by:
setHandler in interface EventListener
Parameters:
name - der Name des Events
handler - der dazugehörige EventHandler
See Also:
Event, EventHandler

doEvent

public void doEvent(int eventId)
Führt ein Event aus

Specified by:
doEvent in interface EventListener
Parameters:
eventId - die Id des Events
See Also:
Event, EventHandler

getNumber

public int getNumber()
Gibt die Nummer des Spielers zurück

Returns:
die Nummer des spielers

setNumber

public void setNumber(int number)
Setzt die Nummer des Spielers

Parameters:
number - die neue Nummer für den Spieler

copy

public Player copy()
Erstellt eine 1 zu 1 Kopie des Spielers inklusive aller enthaltenen Objekte.

Returns:
eine unabhängige Kopie des Spielers


Copyright © 2004 JZuul.org All Rights Reserved.
This documentation may be distributed and/or modified under the terms of the FDL