|
|||||||||
Atavism Version 2018.1 | AGIS API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectatavism.server.engine.EnginePlugin
atavism.server.plugins.WorldManagerPlugin
public abstract class WorldManagerPlugin
The world manager is in charge of telling perceivers what they "see" around them, such as mobs, structures, and terrain. In addition to the existence of objects, the server also tells perceivers about how these things look, such as their model and animations. As part of determining what the perceivers see, the world server also handles movement and interpolation.
Nested Class Summary | |
---|---|
static class |
WorldManagerPlugin.HostInstanceFilter
|
static class |
WorldManagerPlugin.LocationNamespaceFilter
a special namespace filter that also considers location |
static class |
WorldManagerPlugin.PathObjectCache
|
static class |
WorldManagerPlugin.WorldManagerFilter
|
static class |
WorldManagerPlugin.WorldManagerInstance
|
static class |
WorldManagerPlugin.WorldManagerTransferFilter
|
Field Summary | |
---|---|
protected boolean |
askedForPathInfo
|
protected int |
defaultWorldManagerHysteresis
|
protected static Logger |
log
|
protected PerceptionFilter |
mobFilter
|
protected PerceptionFilter |
mobRPCFilter
|
protected long |
mobRPCSubId
|
protected long |
mobSubId
|
protected WorldManagerPlugin.WorldManagerFilter |
newRegionFilter
|
protected long |
newRegionSub
|
protected PathInfo |
pathInfo
|
protected static WorldManagerPlugin.PathObjectCache |
pathObjectCache
|
protected java.util.Set<java.lang.String> |
propertyExclusions
|
protected java.util.Map<OID,QuadTree<WMWorldNode>> |
quadtrees
|
static java.lang.String |
REGION_MEMBERSHIP
|
protected java.util.Map<java.lang.String,RegionTrigger> |
regionTriggers
|
protected PerceptionFilter |
structFilter
|
protected PerceptionFilter |
structRPCFilter
|
protected long |
structRPCSubId
|
protected long |
structSubId
|
protected SubObjectFilter |
subObjectFilter
|
protected atavism.server.plugins.WorldManagerPlugin.Updater |
updater
|
Fields inherited from interface atavism.msgsys.MessageCallback |
---|
NO_FLAGS, RESPONSE_EXPECTED |
Constructor Summary | |
---|---|
WorldManagerPlugin()
|
Method Summary | |
---|---|
protected void |
despawnObject(AOObject obj)
|
void |
freeObjectForFixedPerceiver(Perceiver<WMWorldNode> p,
WMWorldNode freeWnode)
|
protected AOObject |
generateWorldManagerSubObject(Template template,
OID masterOid)
Override this method to change what kind of object is created for the sub object hook. |
protected abstract DisplayContext |
getDisplayContext(OID objOid)
returns the current display context for the given objOid |
java.lang.String |
getInstanceInfoString(OID instanceOid)
|
PathInfo |
getPathInfo()
|
protected OID |
getPerceiverOid(MobilePerceiver<WMWorldNode> mobileP)
|
java.util.Set<java.lang.String> |
getPropertyExclusions()
Object properties excluded from property messages. |
java.util.Map<java.lang.String,java.lang.String> |
getStatusMap()
Override to provide plugin status. |
Entity |
getWorldManagerEntity(OID oid)
|
Entity |
getWorldManagerEntityOrError(OID oid)
|
protected WorldManagerClient.FreeRemoteObjectMessage |
makeFreeObjectForFixedPerceiverMessage(FixedPerceiver<WMWorldNode> fixedP,
WMWorldNode freeWnode)
|
protected WorldManagerClient.NewRemoteObjectMessage |
makeNewObjectForFixedPerceiverMessage(FixedPerceiver<WMWorldNode> fixedP,
WMWorldNode newWnode)
|
protected WorldManagerClient.ObjectInfo |
makeObjectInfo(OID oid)
|
protected WorldManagerClient.PerceptionInfo |
makePerceptionInfo(OID oid,
AOObject object)
|
void |
newObjectForFixedPerceiver(Perceiver<WMWorldNode> p,
WMWorldNode newWnode)
We know about a new object via some fixed perceiver. this fixed perceiver is for some remote world manager. |
void |
onActivate()
for developers extending the EnginePlugin object, it may be easier to use the onActivate() method which gets called when the plugin is being activated by the Engine. |
void |
postUpdate(PerceptionFilter filter,
FilterUpdate.Instruction instruction,
AgentHandle sender,
SubscriptionHandle sub)
|
void |
preUpdate(PerceptionFilter filter,
FilterUpdate.Instruction instruction,
AgentHandle sender,
SubscriptionHandle sub)
|
java.lang.Integer |
processNewsAndFrees(Perceiver<WMWorldNode> p,
PerceiverNewsAndFrees<WMWorldNode> newsAndFrees,
OID perceiverOid)
This method creates the NewsAndFreesMessage, and sends it to to subscribers. |
protected void |
registerHooks()
|
void |
registerRegionTrigger(java.lang.String name,
RegionTrigger trigger)
Register a custom region trigger. |
void |
registerWorldManagerEntity(Entity entity)
|
boolean |
removeWorldManagerEntity(OID oid)
|
protected void |
sendDCMessage(AOObject obj)
Send full display context message usually called in response to receiving an update message from the proxy. |
protected void |
sendObjectSoundMessage(OID notifyOid,
AOObject updateObj,
java.util.List<SoundData> soundData)
|
protected void |
sendPropertyMessage(OID notifyOid,
AOObject updateObj)
Sends over all properties of the update object over to the notifyOid. |
void |
sendRegionUpdate(AOObject obj)
|
protected void |
sendTargetedPropertyMessage(OID targetOid,
AOObject updateObj)
|
protected void |
sendWMMessage(Message msg)
|
protected void |
sendWNodeMessage(OID oid,
AOObject updateObj)
Sends over an update of the world node |
void |
setPathInfo(PathInfo pathInfo)
|
protected java.lang.Integer |
spawnObject(AOObject obj,
QuadTree<WMWorldNode> quadtree)
Helper method - spawns the object. |
protected void |
startUpdater()
|
protected void |
subscribeForMob(OID oid)
|
protected void |
subscribeForObject(OID masterOid)
|
protected void |
unsubscribeForMob(OID oid)
|
protected void |
unsubscribeForObject(OID oid)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface atavism.msgsys.MessageCallback |
---|
handleMessage |
Field Detail |
---|
protected SubObjectFilter subObjectFilter
protected WorldManagerPlugin.WorldManagerFilter newRegionFilter
protected long newRegionSub
protected PerceptionFilter mobFilter
protected long mobSubId
protected PerceptionFilter mobRPCFilter
protected long mobRPCSubId
protected PerceptionFilter structFilter
protected long structSubId
protected PerceptionFilter structRPCFilter
protected long structRPCSubId
protected int defaultWorldManagerHysteresis
protected java.util.Map<OID,QuadTree<WMWorldNode>> quadtrees
protected java.util.Map<java.lang.String,RegionTrigger> regionTriggers
protected java.util.Set<java.lang.String> propertyExclusions
protected static final Logger log
protected PathInfo pathInfo
protected boolean askedForPathInfo
protected atavism.server.plugins.WorldManagerPlugin.Updater updater
protected static WorldManagerPlugin.PathObjectCache pathObjectCache
public static final java.lang.String REGION_MEMBERSHIP
Constructor Detail |
---|
public WorldManagerPlugin()
Method Detail |
---|
public void onActivate()
EnginePlugin
onActivate
in class EnginePlugin
public java.util.Map<java.lang.String,java.lang.String> getStatusMap()
EnginePlugin
getStatusMap
in interface StatusMapCallback
getStatusMap
in class EnginePlugin
public Entity getWorldManagerEntity(OID oid)
public Entity getWorldManagerEntityOrError(OID oid)
public void registerWorldManagerEntity(Entity entity)
public boolean removeWorldManagerEntity(OID oid)
protected void startUpdater()
public void sendRegionUpdate(AOObject obj)
protected void registerHooks()
protected WorldManagerClient.PerceptionInfo makePerceptionInfo(OID oid, AOObject object)
protected void sendWMMessage(Message msg)
protected OID getPerceiverOid(MobilePerceiver<WMWorldNode> mobileP)
public void newObjectForFixedPerceiver(Perceiver<WMWorldNode> p, WMWorldNode newWnode)
protected WorldManagerClient.NewRemoteObjectMessage makeNewObjectForFixedPerceiverMessage(FixedPerceiver<WMWorldNode> fixedP, WMWorldNode newWnode)
public void freeObjectForFixedPerceiver(Perceiver<WMWorldNode> p, WMWorldNode freeWnode)
protected WorldManagerClient.FreeRemoteObjectMessage makeFreeObjectForFixedPerceiverMessage(FixedPerceiver<WMWorldNode> fixedP, WMWorldNode freeWnode)
public java.lang.Integer processNewsAndFrees(Perceiver<WMWorldNode> p, PerceiverNewsAndFrees<WMWorldNode> newsAndFrees, OID perceiverOid)
processNewsAndFrees
in interface PerceiverCallback<WMWorldNode>
public void preUpdate(PerceptionFilter filter, FilterUpdate.Instruction instruction, AgentHandle sender, SubscriptionHandle sub)
preUpdate
in interface PerceptionUpdateTrigger
public void postUpdate(PerceptionFilter filter, FilterUpdate.Instruction instruction, AgentHandle sender, SubscriptionHandle sub)
postUpdate
in interface PerceptionUpdateTrigger
public PathInfo getPathInfo()
public void setPathInfo(PathInfo pathInfo)
protected WorldManagerClient.ObjectInfo makeObjectInfo(OID oid)
public java.lang.String getInstanceInfoString(OID instanceOid)
protected AOObject generateWorldManagerSubObject(Template template, OID masterOid)
protected void subscribeForMob(OID oid)
protected void subscribeForObject(OID masterOid)
protected void unsubscribeForMob(OID oid)
protected void unsubscribeForObject(OID oid)
protected java.lang.Integer spawnObject(AOObject obj, QuadTree<WMWorldNode> quadtree)
protected void despawnObject(AOObject obj)
protected void sendDCMessage(AOObject obj)
protected abstract DisplayContext getDisplayContext(OID objOid)
protected void sendPropertyMessage(OID notifyOid, AOObject updateObj)
protected void sendTargetedPropertyMessage(OID targetOid, AOObject updateObj)
protected void sendWNodeMessage(OID oid, AOObject updateObj)
protected void sendObjectSoundMessage(OID notifyOid, AOObject updateObj, java.util.List<SoundData> soundData)
public void registerRegionTrigger(java.lang.String name, RegionTrigger trigger)
public java.util.Set<java.lang.String> getPropertyExclusions()
|
Copyright © 2018 Dragonsan Studios Sp. z o.o. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |