Pyrogenesis HEAD
Pyrogenesis, a RTS Engine
|
Projectile manager. More...
#include <ICmpProjectileManager.h>
Public Member Functions | |
virtual uint32_t | LaunchProjectileAtPoint (const CFixedVector3D &launchPoint, const CFixedVector3D &target, fixed speed, fixed gravity, const std::wstring &actorName, const std::wstring &impactActorName, fixed impactAnimationLifetime)=0 |
Launch a projectile from entity source to point target . More... | |
virtual void | RemoveProjectile (uint32_t id)=0 |
Removes a projectile, used when the projectile has hit a target. More... | |
Public Member Functions inherited from 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 |
Additional Inherited Members | |
Public Types inherited from IComponent | |
using | AllocFunc = IComponent *(*)(const ScriptInterface &scriptInterface, JS::HandleValue ctor) |
using | DeallocFunc = void(*)(IComponent *) |
Static Public Member Functions inherited from IComponent | |
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 () |
Projectile manager.
This deals with the rendering and the graphical motion of projectiles. (The gameplay effects of projectiles are not handled here - the simulation code does that with timers, this just does the visual aspects, because it's simpler to keep the parts separated.)
|
pure virtual |
Launch a projectile from entity source
to point target
.
source | source entity; the projectile will determined from the "projectile" prop in its actor |
target | target point |
speed | horizontal speed in m/s |
gravity | gravitational acceleration in m/s^2 (determines the height of the ballistic curve) |
actorName | name of the flying projectile actor |
impactActorName | name of the animation actor played when the projectile hits the target or the ground |
impactAnimationLifetime | animation lenth |
Implemented in CCmpProjectileManager.
|
pure virtual |
Removes a projectile, used when the projectile has hit a target.
id | of the projectile to remove |
Implemented in CCmpProjectileManager.