|
using | AllocFunc = IComponent *(*)(const ScriptInterface &scriptInterface, JS::HandleValue ctor) |
|
using | DeallocFunc = void(*)(IComponent *) |
|
virtual | ~IComponent () |
|
virtual void | Init (const CParamNode ¶mNode)=0 |
|
virtual void | Deinit ()=0 |
|
virtual void | HandleMessage (const CMessage &msg, bool global) |
|
CEntityHandle | GetEntityHandle () const |
|
void | SetEntityHandle (CEntityHandle ent) |
|
entity_id_t | GetEntityId () const |
|
CEntityHandle | GetSystemEntity () const |
|
const CSimContext & | GetSimContext () const |
|
void | SetSimContext (const CSimContext &context) |
|
virtual void | Serialize (ISerializer &serialize)=0 |
|
virtual void | Deserialize (const CParamNode ¶mNode, IDeserializer &deserialize)=0 |
|
virtual bool | NewJSObject (const ScriptInterface &scriptInterface, JS::MutableHandleObject out) const |
| Returns false by default, indicating that a scripted wrapper of this IComponent is not supported. More...
|
|
virtual JS::Value | GetJSInstance () const |
|
virtual int | GetComponentTypeId () const =0 |
|
static std::string | GetSchema () |
|
static void | RegisterComponentType (CComponentManager &mgr, EInterfaceId iid, EComponentTypeId cid, AllocFunc alloc, DeallocFunc dealloc, const char *name, const std::string &schema) |
|
static void | RegisterComponentTypeScriptWrapper (CComponentManager &mgr, EInterfaceId iid, EComponentTypeId cid, AllocFunc alloc, DeallocFunc dealloc, const char *name, const std::string &schema) |
|
static u8 | GetSerializationVersion () |
|
UnitMotionManager - handles motion for CCmpUnitMotion.
This allows units to push past each other instead of requiring pathfinder computations, making movement much smoother overall.