multiverse.server.objects
Class ObjectFactory

java.lang.Object
  extended by multiverse.server.objects.ObjectFactory
Direct Known Subclasses:
WEObjFactory

public class ObjectFactory
extends Object

Create objects for spawn generators. Sub-class to customize spawned objects. Sub-classes should override makeObject(multiverse.server.objects.SpawnData,long,multiverse.server.math.Point).


Field Summary
private static Map<String,ObjectFactory> factories
           
protected  String templateName
           
 
Constructor Summary
ObjectFactory()
          No-arg constructor used by WEObjFactory.
ObjectFactory(String template)
          Create objects using the named template.
 
Method Summary
static ObjectFactory getFactory(String factoryName)
          Get registered object factory.
 String getTemplateName()
          Get template for creating objects.
 ObjectStub makeObject(long instanceOid, Point loc)
          Deprecated.  
 ObjectStub makeObject(long instanceOid, Template override)
          Deprecated.  
 ObjectStub makeObject(SpawnData spawnData, long instanceOid, Point loc)
          Create object at the given location.
 ObjectStub makeObject(SpawnData spawnData, long instanceOid, Template override)
          Create object at the given location.
static void register(String factoryName, ObjectFactory factory)
          Register an object factory.
 void setTemplateName(String templateName)
          Set template for creating objects.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

templateName

protected String templateName

factories

private static Map<String,ObjectFactory> factories
Constructor Detail

ObjectFactory

public ObjectFactory()
No-arg constructor used by WEObjFactory.


ObjectFactory

public ObjectFactory(String template)
Create objects using the named template.

Method Detail

makeObject

public ObjectStub makeObject(long instanceOid,
                             Point loc)
Deprecated. 

Create object using MobManagerPlugin.createObject().


makeObject

public ObjectStub makeObject(long instanceOid,
                             Template override)
Deprecated. 

Create object using MobManagerPlugin.createObject().


makeObject

public ObjectStub makeObject(SpawnData spawnData,
                             long instanceOid,
                             Point loc)
Create object at the given location. The SpawnData template name overrides this ObjectFactory template name. Objects are created with MobManagerPlugin.createObject().

Sub-classes should override this method to customize spawned objects.


makeObject

public ObjectStub makeObject(SpawnData spawnData,
                             long instanceOid,
                             Template override)
Create object at the given location. The SpawnData template name overrides this ObjectFactory template name. The override template overrides the named template. Objects are created with MobManagerPlugin.createObject().


getTemplateName

public String getTemplateName()
Get template for creating objects.


setTemplateName

public void setTemplateName(String templateName)
Set template for creating objects.


register

public static void register(String factoryName,
                            ObjectFactory factory)
Register an object factory. Object factories must be registered for remote spawn generator creation.

See Also:
MobManagerClient.createSpawnGenerator(multiverse.server.objects.SpawnData)

getFactory

public static ObjectFactory getFactory(String factoryName)
Get registered object factory.