public class InstancePlugin extends EnginePlugin
Modifier and Type | Class and Description |
---|---|
static class |
InstancePlugin.PopulationChangeCallback
This must be a base class rather than an interface because we
want to create callbacks in Python.
|
EnginePlugin.DeleteHook, EnginePlugin.DeleteSubObjHook, EnginePlugin.GenerateSubObjectHook, EnginePlugin.GetPropertyMessage, EnginePlugin.GetPropertyNamesMessage, EnginePlugin.LoadHook, EnginePlugin.LoadSubObjHook, EnginePlugin.PluginActivateHook, EnginePlugin.PluginStateMessage, EnginePlugin.SaveHook, EnginePlugin.SaveSubObjHook, EnginePlugin.SetPropertyMessage, EnginePlugin.SubObjData, EnginePlugin.TransferFilter, EnginePlugin.TransferObjectMessage, EnginePlugin.UnloadHook, EnginePlugin.UnloadSubObjHook
Modifier and Type | Field and Description |
---|---|
protected static Logger |
log |
static java.util.HashMap<java.lang.Integer,PatrolPoint> |
patrolPoints |
DevMode, dumpAllThreadSubscription, dumpAllThreadSubscriptionLock, lock, MSG_TYPE_DUMP_ALL_THREAD_STACKS, MSG_TYPE_GET_PROPERTY, MSG_TYPE_GET_PROPERTY_NAMES, MSG_TYPE_PLUGIN_STATE, MSG_TYPE_RELOAD_TEMPLATES, MSG_TYPE_SET_PROPERTY, MSG_TYPE_SET_PROPERTY_NONBLOCK, MSG_TYPE_TRANSFER_OBJECT, pluginStateSubscription, propertySubscription, selectionFilter, selectionSubscription, subObjectSubscription
NO_FLAGS, RESPONSE_EXPECTED
Constructor and Description |
---|
InstancePlugin() |
Modifier and Type | Method and Description |
---|---|
static boolean |
accountHasDeveloperAccess(OID characterOID,
OID accountID,
int world)
Checks if the player has Developer Access to the world, allowing them to modify spawns, and other world objects.
|
static boolean |
AccountIsAdmin(OID accountOID) |
int |
GetIslandsCreated(OID accountOID) |
OID |
getPersistentInstanceOid(java.lang.String name)
Get persistent instance oid by name.
|
static java.lang.Class |
getWorldLoaderOverrideClass(java.lang.String name)
Get a registered spawn generator class.
|
protected BasicWorldNode |
joinDungeonInstance(InstanceTemplate island,
OID playerOid,
java.lang.String markerName,
Point loc,
boolean requiresGroup) |
protected BasicWorldNode |
joinGuildInstance(InstanceTemplate island,
OID playerOid,
java.lang.String markerName,
Point loc,
java.lang.String suffix)
Tries to move the player to a "Guild Instance" which will be specific to the suffix provided.
|
protected BasicWorldNode |
joinPlayerInstance(InstanceTemplate island,
OID playerOid,
java.lang.String markerName,
Point loc,
java.lang.String suffix)
Tries to move the player to a "Player Instance" which will be specific to the suffix provided.
|
protected BasicWorldNode |
joinWorldInstance(InstanceTemplate island,
OID playerOid,
java.lang.String markerName,
Point loc) |
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.
|
protected void |
putMobCombatStats(Template tmpl,
int level,
int health) |
protected void |
registerHooks() |
void |
registerPopulationChangeCallback(InstancePlugin.PopulationChangeCallback populationChangeCallback)
Register the callback that supplies the population of an instance when it changes.
|
static void |
registerWorldLoaderOverrideClass(java.lang.String name,
java.lang.Class loaderOverrideClass)
Register a world loader override class.
|
protected void |
ReloadTemplates(Message msg) |
protected PluginStatus |
selectBestWorldManager(java.util.List<PluginStatus> plugins) |
protected PluginStatus |
selectCombatPlugin() |
protected PluginStatus |
selectMobPlugin() |
protected PluginStatus |
selectWorldManagerPlugin() |
protected void |
sendDialogueTemplates(OID playerOid) |
protected void |
sendFactionTemplates(OID playerOid) |
protected void |
sendIslandsData(OID playerOid,
OID accountID) |
protected void |
sendLootTables(OID playerOid) |
protected void |
sendMerchantTables(OID playerOid) |
protected void |
sendMobTemplates(OID playerOid) |
protected void |
sendPatrolPoints(OID playerOid) |
protected void |
sendQuestTemplate(OID playerOid,
int questID)
Sends down the full details of a single quest
|
protected void |
sendQuestTemplates(OID playerOid) |
protected void |
sendSpawnGenerators(Instance instance) |
activate, createMBeanInstance, createSubscription, getHookManager, getName, getObjectLockManager, getObjectProperties, getObjectProperties, getObjectProperty, getObjectPropertyNames, getPercentCPULoad, getPluginAvailable, getPluginInfo, getPluginNamespaces, getPluginState, getPluginStatus, getPluginType, getPropertyImpl, getPropertyNamesImpl, getStatusMap, handleMessage, handleMessageImpl, logDepsOutstanding, processKeysAndValues, registerActivateHook, registerDeleteHook, registerLoadHook, registerPluginNamespace, registerPluginNamespaces, registerPluginNamespaces, registerPluginNamespaces, registerSaveHook, registerTransferHook, registerUnloadHook, sendSubObjectResponse, sendSubObjectResponse, sendSubObjectResponse, setName, setObjectProperties, setObjectProperties, setObjectProperties, setObjectPropertiesNoResponse, setObjectPropertiesNoResponse, setObjectPropertiesNoResponse, setObjectProperty, setObjectPropertyNoResponse, setPercentCPULoad, setPluginAvailable, setPluginInfo, setPluginType, setPropertyImpl, transferObject
protected static final Logger log
public static java.util.HashMap<java.lang.Integer,PatrolPoint> patrolPoints
public void onActivate()
EnginePlugin
onActivate
in class EnginePlugin
protected void registerHooks()
protected void ReloadTemplates(Message msg)
ReloadTemplates
in class EnginePlugin
protected void sendSpawnGenerators(Instance instance)
public static void registerWorldLoaderOverrideClass(java.lang.String name, java.lang.Class loaderOverrideClass)
InstanceClient.TEMPL_LOADER_OVERRIDE_NAME
. An instance of the class
is created prior to loading the instance world file. If the
instance does not specify a world loader override, then
DefaultWorldLoaderOverride
is used.name
- World loader override class registered name.loaderOverrideClass
- World loader override class, must implement
WorldLoaderOverride
.public static java.lang.Class getWorldLoaderOverrideClass(java.lang.String name)
public OID getPersistentInstanceOid(java.lang.String name)
protected final PluginStatus selectWorldManagerPlugin()
protected final PluginStatus selectCombatPlugin()
protected final PluginStatus selectMobPlugin()
protected PluginStatus selectBestWorldManager(java.util.List<PluginStatus> plugins)
public void registerPopulationChangeCallback(InstancePlugin.PopulationChangeCallback populationChangeCallback)
populationChangeCallback
- public static boolean AccountIsAdmin(OID accountOID)
public int GetIslandsCreated(OID accountOID)
public static boolean accountHasDeveloperAccess(OID characterOID, OID accountID, int world)
accountID
- world
- protected BasicWorldNode joinWorldInstance(InstanceTemplate island, OID playerOid, java.lang.String markerName, Point loc)
protected BasicWorldNode joinDungeonInstance(InstanceTemplate island, OID playerOid, java.lang.String markerName, Point loc, boolean requiresGroup)
protected BasicWorldNode joinPlayerInstance(InstanceTemplate island, OID playerOid, java.lang.String markerName, Point loc, java.lang.String suffix)
island
- playerOid
- markerName
- loc
- suffix
- protected BasicWorldNode joinGuildInstance(InstanceTemplate island, OID playerOid, java.lang.String markerName, Point loc, java.lang.String suffix)
island
- playerOid
- markerName
- loc
- suffix
- protected void putMobCombatStats(Template tmpl, int level, int health)
protected void sendMobTemplates(OID playerOid)
protected void sendPatrolPoints(OID playerOid)
protected void sendQuestTemplates(OID playerOid)
protected void sendQuestTemplate(OID playerOid, int questID)
playerOid
- protected void sendDialogueTemplates(OID playerOid)
protected void sendMerchantTables(OID playerOid)
protected void sendFactionTemplates(OID playerOid)
protected void sendLootTables(OID playerOid)