|
|
| 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 |
| |