|
| plScriptWorldModule (plWorld *pWorld) |
|
virtual void | Initialize () override |
| This method is called after the constructor. A derived type can override this method to do initialization work. Typically this is the method where updates function are registered.
|
|
virtual void | WorldClear () override |
| Called by plWorld::Clear(). Can be used to clear cached data when a world is completely cleared of objects (but not deleted).
|
|
void | AddUpdateFunctionToSchedule (const plAbstractFunctionProperty *pFunction, void *pInstance, plTime updateInterval, bool bOnlyWhenSimulating) |
|
void | RemoveUpdateFunctionToSchedule (const plAbstractFunctionProperty *pFunction, void *pInstance) |
|
plExpressionVM & | GetSharedExpressionVM () |
| Returns a expression vm that can be used in custom script implementations. Make sure to only execute one expression at a time, the VM is NOT thread safe.
|
|
|
plScriptCoroutineHandle | CreateCoroutine (const plRTTI *pCoroutineType, plStringView sName, plScriptInstance &inout_instance, plScriptCoroutineCreationMode::Enum creationMode, plScriptCoroutine *&out_pCoroutine) |
| Creates a new coroutine of pCoroutineType with the given name. If the creationMode prevents creating a new coroutine, this function will return an invalid handle and a nullptr in out_pCoroutine if there is already a coroutine running with the same name on the given instance.
|
|
void | StartCoroutine (plScriptCoroutineHandle hCoroutine, plArrayPtr< plVariant > arguments) |
| Starts the coroutine with the given arguments. This will call the Start() function and then UpdateAndSchedule() once on the coroutine object.
|
|
void | StopAndDeleteCoroutine (plScriptCoroutineHandle hCoroutine) |
| Stops and deletes the coroutine. This will call the Stop() function and will delete the coroutine on next update of the script world module.
|
|
void | StopAndDeleteCoroutine (plStringView sName, plScriptInstance *pInstance) |
| Stops and deletes all coroutines with the given name on pInstance.
|
|
void | StopAndDeleteAllCoroutines (plScriptInstance *pInstance) |
| Stops and deletes all coroutines on pInstance.
|
|
bool | IsCoroutineFinished (plScriptCoroutineHandle hCoroutine) const |
| Returns whether the coroutine has already finished or has been stopped.
|
|
plWorld * | GetWorld () |
| Returns the corresponding world to this module.
|
|
const plWorld * | GetWorld () const |
| Returns the corresponding world to this module.
|
|
plUInt32 | GetWorldIndex () const |
| Same as GetWorld()->GetIndex(). Needed to break circular include dependencies.
|
|
virtual const plRTTI * | GetDynamicRTTI () const |
|
bool | IsInstanceOf (const plRTTI *pType) const |
| Returns whether the type of this instance is of the given type or derived from it.
|
|
template<typename T > |
PL_ALWAYS_INLINE bool | IsInstanceOf () const |
| Returns whether the type of this instance is of the given type or derived from it.
|
|
|
static const plRTTI * | GetStaticRTTI () |
|
using | UpdateFunction = plDelegate<void(const UpdateContext&)> |
| Update function delegate.
|
|
| plWorldModule (plWorld *pWorld) |
|
void | RegisterUpdateFunction (const UpdateFunctionDesc &desc) |
| Registers the given update function at the world.
|
|
void | DeregisterUpdateFunction (const UpdateFunctionDesc &desc) |
| De-registers the given update function from the world. Note that only the m_Function and the m_Phase of the description have to be valid for de-registration.
|
|
plAllocator * | GetAllocator () |
| Returns the allocator used by the world.
|
|
plInternal::WorldLargeBlockAllocator * | GetBlockAllocator () |
| Returns the block allocator used by the world.
|
|
bool | GetWorldSimulationEnabled () const |
| Returns whether the world simulation is enabled.
|
|
virtual void | Deinitialize () |
| This method is called before the destructor. A derived type can override this method to do deinitialization work.
|
|
virtual void | OnSimulationStarted () |
| This method is called at the start of the next world update when the world is simulated. This method will be called after the initialization method.
|
|
plWorld * | m_pWorld |
|