Nuclide
Software Development Kit for id Tech
|
This entity class represents physically-simulated entities. More...
#include <NSPhysicsEntity.h>
Public Member Functions | |
void | NSPhysicsEntity (void) |
virtual void | Respawn (void) |
Server: Called when the entity first spawns or when game-logic requests the entity to return to its original spawn state. More... | |
virtual void | SpawnKey (string, string) |
This method handles entity key/value pairs on map load. More... | |
virtual void | Spawned (void) |
Called when the entity is fulled initialized. More... | |
virtual void | Pain (void) |
Called whenever the entity receives damage. More... | |
virtual void | Death (void) |
Called when the health is equal or below 0. More... | |
virtual void | EvaluateEntity (void) |
Run each tic after physics are run to determine if we need to send updates over the network. More... | |
virtual float | SendEntity (entity, float) |
Called by the engine whenever we need to send a client an update about this entity. More... | |
virtual void | Save (float) |
Handles saving a copy of this entity to a given filehandle. More... | |
virtual void | Restore (string, string) |
Similar to ::SpawnKey but for save-game fields. More... | |
virtual void | Touch (entity) |
Called whenever we're touching another entity. More... | |
virtual void | ReceiveEntity (float, float) |
Client: Handles network updates from the server for the associated entity. More... | |
virtual void | postdraw (void) |
Client: Run after the rendering of 3D world is complete. More... | |
nonvirtual void | _UpdateBuoyancy (void) |
nonvirtual void | _UpdateMass (void) |
nonvirtual void | SetFriction (float) |
Sets the friction multiplier for this entity. More... | |
nonvirtual float | GetFriction (void) |
Returns the friction multiplayer for this entity. More... | |
nonvirtual float | CalculateImpactDamage (int, int) |
Called by the physics routine to figure out the impact damage. More... | |
nonvirtual vector | AlignAngles (vector, vector) |
Call to align angles of the object to the ones passed. More... | |
nonvirtual void | ApplyForceCenter (vector) |
Call to apply a force (absolute velocity vector) to the center of the entity. More... | |
nonvirtual void | ApplyForceOffset (vector, vector) |
Call to apply force (absolute velocity vector) to an absolute position on the entity. More... | |
nonvirtual void | ApplyTorqueCenter (vector) |
Call to apply torque (angular velocity vector) to the center of the entity. More... | |
nonvirtual void | EnableDrag (bool) |
Call to set whether the entity should be affected by drag. More... | |
nonvirtual void | EnableGravity (bool) |
Call to set whether the entity should be affected by gravity. More... | |
nonvirtual void | EnableMotion (bool) |
Call to set whether the entity should be able to move. More... | |
nonvirtual float | GetLinearDamping (void) |
Returns the linear damping of the entity. More... | |
nonvirtual float | GetAngularDamping (void) |
Returns the angular damping of the entity. More... | |
nonvirtual float | GetEnergy (void) |
Returns the linear and rotational kinetic energy combined. More... | |
nonvirtual float | GetInertia (void) |
Returns the inertia modifier of this entity. More... | |
nonvirtual float | GetInvInertia (void) |
Returns 1 divided by the angular inertia of this entity. More... | |
nonvirtual float | GetInvMass (void) |
Returns 1 divided by the mass of this entity. More... | |
nonvirtual float | GetMass (void) |
Returns the mass of the entity. More... | |
nonvirtual vector | GetMassCenter (void) |
Returns the center of mass of the entity. More... | |
nonvirtual float | GetRotDamping (void) |
Returns the rotational damping of the entity. More... | |
nonvirtual float | GetSpeedDamping (void) |
Returns the speed damping of the entity. More... | |
nonvirtual float | GetSurfaceArea (void) |
Returns the surface area of the entity. More... | |
nonvirtual float | GetVolume (void) |
Returns the volume of the entity. More... | |
nonvirtual bool | IsAsleep (void) |
Returns whether the entity is at rest and not moving. More... | |
nonvirtual bool | IsCollisionEnabled (void) |
Returns whether the entity is able to collide with anything. More... | |
nonvirtual bool | IsDragEnabled (void) |
Returns whether the entity is affected by drag. More... | |
nonvirtual bool | IsGravityEnabled (void) |
Returns whether the entity is affected by gravity. More... | |
nonvirtual bool | IsMotionEnabled (void) |
Returns whether the entity is able to move by itself. More... | |
nonvirtual bool | IsMoveable (void) |
Returns whether the entity is able to move. More... | |
nonvirtual bool | IsPenetrating (void) |
Returns whether the entity is penetrating another object. More... | |
nonvirtual void | SetAngleDragCoefficient (float) |
Call to set the amount of rotational drag the entity experiences. More... | |
nonvirtual void | SetBuoyancyRatio (float) |
Call to set the buoyancy ratio of the entity. More... | |
nonvirtual void | SetDamping (float, float) |
Call to set the linear and angular damping of the entity. More... | |
nonvirtual void | SetDragCoefficient (float) |
Call to set how much drag affects the entity. More... | |
nonvirtual void | SetInertia (float) |
Sets the angular inertia for this entity. More... | |
nonvirtual void | SetMass (float) |
Sets the mass of the entity in kilograms. More... | |
nonvirtual void | Wake (void) |
Call to enable physics simulation on this entity. More... | |
nonvirtual void | Sleep (void) |
Call to freeze physics simulation on this entity. More... | |
This entity class represents physically-simulated entities.
The physics simulator used is controlled by the engine and may be subject to change.
Units of mass is defined in kilograms, a standard unit of measurement. You will find the API to be mostly compatible of that offered by Garry's Mod.
Call to align angles of the object to the ones passed.
Call to apply a force (absolute velocity vector) to the center of the entity.
Call to apply force (absolute velocity vector) to an absolute position on the entity.
Call to apply torque (angular velocity vector) to the center of the entity.
Called by the physics routine to figure out the impact damage.
Called when the health is equal or below 0.
Reimplemented from NSSurfacePropEntity.
Call to set whether the entity should be affected by drag.
Call to set whether the entity should be affected by gravity.
Call to set whether the entity should be able to move.
Run each tic after physics are run to determine if we need to send updates over the network.
Reimplemented from NSSurfacePropEntity.
Returns the linear and rotational kinetic energy combined.
Returns 1 divided by the angular inertia of this entity.
Returns whether the entity is able to collide with anything.
Returns whether the entity is able to move by itself.
Returns whether the entity is penetrating another object.
Called whenever the entity receives damage.
Reimplemented from NSSurfacePropEntity.
Client: Run after the rendering of 3D world is complete.
2D calls can happen here.
Reimplemented from NSRenderableEntity.
Client: Handles network updates from the server for the associated entity.
Reimplemented from NSSurfacePropEntity.
Server: Called when the entity first spawns or when game-logic requests the entity to return to its original spawn state.
Reimplemented from NSSurfacePropEntity.
Reimplemented in prop_static, func_physbox, prop_physics, prop_static, and prop_physics_multiplayer.
Similar to ::SpawnKey
but for save-game fields.
Whatever you write into file handles within your ::Save()
method needs to be read back in here.
Reimplemented from NSSurfacePropEntity.
Handles saving a copy of this entity to a given filehandle.
Within you want to use the ::SaveFloat() etc. methods to write the internal member attributes to the specified file handle.
Reimplemented from NSSurfacePropEntity.
Called by the engine whenever we need to send a client an update about this entity.
Reimplemented from NSSurfacePropEntity.
Call to set the amount of rotational drag the entity experiences.
Call to set the buoyancy ratio of the entity.
0 is not buoyant, 1 is very buoyant.
Call to set the linear and angular damping of the entity.
Call to set how much drag affects the entity.
Sets the friction multiplier for this entity.
Default is 1.0
Called when the entity is fulled initialized.
Any spawn key/value info pairs have already been dealt with. So now we can make full decisions on the entity. Always make sure to call super::Spawned();
inside your method when overriding.
Reimplemented from NSSurfacePropEntity.
Reimplemented in prop_static.
This method handles entity key/value pairs on map load.
You can easily convert the strValue
parameter using the ReadFloat etc. methods that are part of NSIO.
Reimplemented from NSSurfacePropEntity.
Reimplemented in prop_static, func_physbox, prop_physics, and prop_physics_multiplayer.
Called whenever we're touching another entity.
Reimplemented from NSTrigger.
Reimplemented in prop_physics_multiplayer, and NSDebris.