class ServerObjectBuilder[A <: PlanetSideServerObject] extends AnyRef
Customizable native entity instantiation logic at the ZoneMap level.
Produces environmental constants such as Terminal objects and Door objects.
ZoneMap is the expected position where this class is defined.
Within Zone.Init is where this class is expected to be fully executed.
The former is a blueprint which provides as many emitted entities based on how many Zone objects utilize it.
constructor is required to have the form (Int, ActorContext) => A by the point where it executes
due to invocation of the Build method.
For that reason, it must exist in an Actor which has an ActorContext to lend, hence the Zone's Actor.
Furthermore, the requirement of a NumberPoolHub means the region is accessible to and defined by
a closed number space, which is also the Zone.
It utilizes those qualities of the enclosing region to construct the entity within that region.
Example: ServerObjectBuilder(n, function)
Example: new ServerBuilderObject[A](n, function), where function is a (Int,Context)=>A
- A
any object that extends from PlanetSideServerObject that will be produced by this class; can be inferred from the output of
constructor
- Source
- ServerObjectBuilder.scala
- See also
ZoneMapZone.Init
- Alphabetic
- By Inheritance
- ServerObjectBuilder
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new ServerObjectBuilder(id: Int, constructor: ConstructorType[A])
- id
the unique id that will be assigned to this entity
- constructor
the logic that initializes the emitted entity
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def Build(implicit context: ActorContext = null, guid: NumberPoolHub = null): A
Instantiate and configure the given server object.
Instantiate and configure the given server object. Specific configuration should have been handled by curried parameters into
constructor, i.e.,constructor(foo : Bar) => constructor(Int, ActorContext) => A. The main activity performed locally registers the created object to the provided number space.- context
a context to allow the object to properly set up
ActorSystemfunctionality; defaults tonull- guid
the local globally unique identifier system to complete the process of object introduction; defaults to
null- returns
the object that was created and integrated into the
Zone
- def Id: Int
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()