org.jzuul.engine
Class GameObject

java.lang.Object
  extended byorg.jzuul.engine.GameObject
All Implemented Interfaces:
EventListener
Direct Known Subclasses:
Character, Item

public abstract class GameObject
extends Object
implements EventListener

Die Zentale Oberklasse für Characters und Items

Version:
$Revision: 1.13 $

Field Summary
protected  boolean deleteOnUse
          Soll das GameObject nach dem Benutzen aus dem Inventar entfernt werden
protected  String desc
          Die Beschreibung des Objektes (für "inspect")
protected  EventHandler[] events
          Die EventHandler für dieses GameObject
protected  String name
          Der Name des Objektes
protected  int size
          Den Platz den das GameObject im Inventar einnimmt
protected  boolean takeable
          Ist das GameObject nehmbar (für "take")
protected  TargetList targets
          Targets die das GameObject zuweisen kann
protected  boolean useable
          Kann man das GameObject benutzen (für "use")
 
Constructor Summary
GameObject(String name)
          Der Konstruktor der von Unterklassen aufgerufen wird
 
Method Summary
protected  void cloneInto(GameObject obj)
          Kopiert die Eigenschaften dieses GameObjects in das übergeben GameObject.
abstract  GameObject copy()
           
 void doEvent(int id)
          Führt ein event aus.
 String getDescription()
          Holt die Beschreibung, wenn die GameObject.desc nicht gesetzt ist wird sie aus dem Namen gebildet.
 String getName()
          Accessor für den Namen
 int getSize()
          Die Größe (der Platz) den ein Objekt im Inventory einnimmt
 TargetList getTargetList()
          Zugriff auf die TargetList eines GameObjects
 boolean isCharacter()
          Ist das GameObject ein Character Objekt?
 boolean isItem()
          Ist das GameObject eine instanz von Item
 boolean isTakeable()
          Kann der Spieler das GameObject aufheben
 boolean isUsable()
          Kann der Spieler das GameObject benutzen?
 void setDeleteOnUse(boolean delete)
          Setzt ob das GameObject nach der Benutzung aus dem Inventar gelöscht werden soll
 void setDescription(String desc)
          Setzt die Beschreibung
 void setHandler(String eventName, EventHandler handler)
          Setzt einen EventHandler
 void setName(String name)
          Setzt den Namen.
 void setProperties(Map properties)
          Setzt eine Eigenschaft über einen Hashkey.
 void setSize(int size)
          Setzt die Größe (den Platz im Inventar) des GameObject
 void setTakeable(boolean takeable)
          Setzt die Nehmbarkeit des GameObjects
 void setUsability(boolean value)
          Setzt die Benutzbarkeit eines GameObjects
abstract  Element toElement()
          Wandelt das Objekt in ein JDOM XML Element
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

desc

protected String desc
Die Beschreibung des Objektes (für "inspect")


name

protected String name
Der Name des Objektes


takeable

protected boolean takeable
Ist das GameObject nehmbar (für "take")


useable

protected boolean useable
Kann man das GameObject benutzen (für "use")


size

protected int size
Den Platz den das GameObject im Inventar einnimmt


deleteOnUse

protected boolean deleteOnUse
Soll das GameObject nach dem Benutzen aus dem Inventar entfernt werden


targets

protected TargetList targets
Targets die das GameObject zuweisen kann


events

protected EventHandler[] events
Die EventHandler für dieses GameObject

Constructor Detail

GameObject

public GameObject(String name)
Der Konstruktor der von Unterklassen aufgerufen wird

Parameters:
name - der Name des GameObjects
Method Detail

getSize

public int getSize()
Die Größe (der Platz) den ein Objekt im Inventory einnimmt

Returns:
die Größe

getName

public String getName()
Accessor für den Namen

Returns:
der Name des GameObjects

getDescription

public String getDescription()
Holt die Beschreibung, wenn die GameObject.desc nicht gesetzt ist wird sie aus dem Namen gebildet.

Returns:
die Beschreibung des GameObject

setDescription

public void setDescription(String desc)
Setzt die Beschreibung

Parameters:
desc - die neue Beschreibung des Gegenstands

setName

public void setName(String name)
Setzt den Namen. Vorsicht: die Gegenstände werden auch intern über diesen Namen verwaltet (warum eigentlich?) daher sollte der Name nicht geändert werden.

Parameters:
name - der neue Name eines Objektes

isTakeable

public boolean isTakeable()
Kann der Spieler das GameObject aufheben

Returns:
true wenn man es aufheben kann, false sonst

setUsability

public void setUsability(boolean value)
Setzt die Benutzbarkeit eines GameObjects

Parameters:
value - true falls man es mit use benutzen kann, false sonst

isUsable

public boolean isUsable()
Kann der Spieler das GameObject benutzen?

Returns:
true wenn man es benutzen kann, false sonst

isCharacter

public boolean isCharacter()
Ist das GameObject ein Character Objekt?

Returns:
true wenn das Objekt eine instanz von Character ist, false sonst

isItem

public boolean isItem()
Ist das GameObject eine instanz von Item

Returns:
true wenn das Objekt eine Instanz von Item ist, false sonst

toElement

public abstract Element toElement()
Wandelt das Objekt in ein JDOM XML Element

Returns:
ein JDOM XML Element

setTakeable

public void setTakeable(boolean takeable)
Setzt die Nehmbarkeit des GameObjects

Parameters:
takeable - true wenn man es aufheben können soll, sonst false

setSize

public void setSize(int size)
Setzt die Größe (den Platz im Inventar) des GameObject

Parameters:
size -

setDeleteOnUse

public void setDeleteOnUse(boolean delete)
Setzt ob das GameObject nach der Benutzung aus dem Inventar gelöscht werden soll

Parameters:
delete - soll es nach "use" gelöscht werden?

setProperties

public void setProperties(Map properties)
Setzt eine Eigenschaft über einen Hashkey. Im Moment wird nur "description" unterstützt, was setDescription aufruft

Parameters:
properties - eine Map mit den zu änderndern Eigenschaften

getTargetList

public TargetList getTargetList()
Zugriff auf die TargetList eines GameObjects

Returns:
die mit dem GameObject assozierte TargetList

doEvent

public void doEvent(int id)
Führt ein event aus.

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

setHandler

public void setHandler(String eventName,
                       EventHandler handler)
Setzt einen EventHandler

Specified by:
setHandler in interface EventListener
Parameters:
eventName - der Name des Events
handler - das EventHandler Objekt
See Also:
EventHandler, Event

cloneInto

protected void cloneInto(GameObject obj)
Kopiert die Eigenschaften dieses GameObjects in das übergeben GameObject. Wird von Character.clone und Item.clone benutzt

Parameters:
obj - das Objekt dessen eigenschaften mit dem aktuellen gesynct werden sollen

copy

public abstract GameObject copy()


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