Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
BoneFXUpdate Class Reference

#include <BoneFXUpdate.h>

Inherits UpdateModule.

Public Member Functions

 BoneFXUpdate (Thing *thing, const ModuleData *moduleData)
 
void changeBodyDamageState (BodyDamageType oldState, BodyDamageType newState)
 
void stopAllBoneFX ()
 
virtual UpdateSleepTime update ()
 
- Public Member Functions inherited from UpdateModule
 UpdateModule (Thing *thing, const ModuleData *moduleData)
 
virtual UpdateModuleInterface * getUpdate ()
 
DisabledMaskType getDisabledTypesToProcess () const
 
UPDATEMODULE_FRIEND_DECLARATOR UnsignedInt friend_getPriority () const
 
UPDATEMODULE_FRIEND_DECLARATOR UnsignedInt friend_getNextCallFrame () const
 
UPDATEMODULE_FRIEND_DECLARATOR SleepyUpdatePhase friend_getNextCallPhase () const
 
UPDATEMODULE_FRIEND_DECLARATOR void friend_setNextCallFrame (UnsignedInt frame)
 
UPDATEMODULE_FRIEND_DECLARATOR Int friend_getIndexInLogic () const
 
UPDATEMODULE_FRIEND_DECLARATOR void friend_setIndexInLogic (Int i)
 
UPDATEMODULE_FRIEND_DECLARATOR const Object * friend_getObject () const
 
- Public Member Functions inherited from BehaviorModule
 BehaviorModule (Thing *thing, const ModuleData *moduleData)
 
virtual BodyModuleInterface * getBody ()
 
virtual CollideModuleInterface * getCollide ()
 
virtual ContainModuleInterface * getContain ()
 
virtual CreateModuleInterface * getCreate ()
 
virtual DamageModuleInterface * getDamage ()
 
virtual DestroyModuleInterface * getDestroy ()
 
virtual DieModuleInterface * getDie ()
 
virtual SpecialPowerModuleInterface * getSpecialPower ()
 
virtual UpgradeModuleInterface * getUpgrade ()
 
virtual StealthUpdate * getStealth ()
 
virtual SpyVisionUpdate * getSpyVisionUpdate ()
 
virtual ParkingPlaceBehaviorInterface * getParkingPlaceBehaviorInterface ()
 
virtual RebuildHoleBehaviorInterface * getRebuildHoleBehaviorInterface ()
 
virtual BridgeBehaviorInterface * getBridgeBehaviorInterface ()
 
virtual BridgeTowerBehaviorInterface * getBridgeTowerBehaviorInterface ()
 
virtual BridgeScaffoldBehaviorInterface * getBridgeScaffoldBehaviorInterface ()
 
virtual OverchargeBehaviorInterface * getOverchargeBehaviorInterface ()
 
virtual TransportPassengerInterface * getTransportPassengerInterface ()
 
virtual CaveInterface * getCaveInterface ()
 
virtual LandMineInterface * getLandMineInterface ()
 
virtual DieModuleInterface * getEjectPilotDieInterface ()
 
virtual ProjectileUpdateInterface * getProjectileUpdateInterface ()
 
virtual AIUpdateInterface * getAIUpdateInterface ()
 
virtual ExitInterface * getUpdateExitInterface ()
 
virtual DockUpdateInterface * getDockUpdateInterface ()
 
virtual RailedTransportDockUpdateInterface * getRailedTransportDockUpdateInterface (void)
 
virtual SlowDeathBehaviorInterface * getSlowDeathBehaviorInterface ()
 
virtual SpecialPowerUpdateInterface * getSpecialPowerUpdateInterface ()
 
virtual SlavedUpdateInterface * getSlavedUpdateInterface ()
 
virtual ProductionUpdateInterface * getProductionUpdateInterface ()
 
virtual HordeUpdateInterface * getHordeUpdateInterface ()
 
virtual PowerPlantUpdateInterface * getPowerPlantUpdateInterface ()
 
virtual SpawnBehaviorInterface * getSpawnBehaviorInterface ()
 
virtual CountermeasuresBehaviorInterface * getCountermeasuresBehaviorInterface ()
 
virtual const CountermeasuresBehaviorInterface * getCountermeasuresBehaviorInterface () const
 
- Public Member Functions inherited from ObjectModule
 ObjectModule (Thing *thing, const ModuleData *moduleData)
 < this abstract class needs memory pool hooks
 
virtual void onCapture (Player *oldOwner, Player *newOwner)
 
virtual void onDisabledEdge (Bool nowDisabled)
 
- Public Member Functions inherited from Module
 Module (const ModuleData *moduleData)
 < this abstract class needs memory pool hooks
 
virtual NameKeyType getModuleNameKey () const =0
 
NameKeyType getModuleTagNameKey () const
 
virtual void onDrawableBoundToObject ()
 
virtual void preloadAssets (TimeOfDay timeOfDay)
 preload any assets we might have for this time of day
 
virtual void onDelete (void)
 
- Public Member Functions inherited from MemoryPoolObject
void deleteInstance ()
 
- Public Member Functions inherited from Snapshot
 Snapshot (void)
 
 ~Snapshot (void)
 

Protected Types

typedef std::vector< ParticleSystemID > ParticleSystemIDVec
 

Protected Member Functions

virtual void onObjectCreated ()
 
virtual void resolveBoneLocations ()
 
void doFXListAtBone (const FXList *fxList, const Coord3D *bonePosition)
 
void doOCLAtBone (const ObjectCreationList *ocl, const Coord3D *bonePosition)
 
void doParticleSystemAtBone (const ParticleSystemTemplate *particleSystemTemplate, const Coord3D *bonePosition)
 
void killRunningParticleSystems ()
 
void computeNextClientFXTime (const BaseBoneListInfo *info, Int &nextFrame)
 
void computeNextLogicFXTime (const BaseBoneListInfo *info, Int &nextFrame)
 
void initTimes ()
 
- Protected Member Functions inherited from UpdateModule
void setWakeFrame (Object *obj, UpdateSleepTime wakeDelay)
 
UpdateSleepTime getWakeFrame () const
 
virtual SleepyUpdatePhase getUpdatePhase () const
 
UpdateSleepTime frameToSleepTime (UnsignedInt frame1, UnsignedInt frame2=FOREVER, UnsignedInt frame3=FOREVER, UnsignedInt frame4=FOREVER)
 
- Protected Member Functions inherited from BehaviorModule
virtual void crc (Xfer *xfer)
 
virtual void xfer (Xfer *xfer)
 
virtual void loadPostProcess (void)
 
- Protected Member Functions inherited from ObjectModule
Object * getObject ()
 
const Object * getObject () const
 
- Protected Member Functions inherited from Module
const ModuleData * getModuleData () const
 
- Protected Member Functions inherited from MemoryPoolObject
virtual ~MemoryPoolObject ()
 
void * operator new (size_t s)
 
void operator delete (void *p)
 
virtual MemoryPool * getObjectMemoryPool ()=0
 

Protected Attributes

ParticleSystemIDVec m_particleSystemIDs
 we keep a record of attached particle system so we can detach and kill them when we want to
 
Int m_nextFXFrame [BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
 
Int m_nextOCLFrame [BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
 
Int m_nextParticleSystemFrame [BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
 
Coord3D m_FXBonePositions [BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
 
Coord3D m_OCLBonePositions [BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
 
Coord3D m_PSBonePositions [BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
 
BodyDamageType m_curBodyState
 
Bool m_bonesResolved [BODYDAMAGETYPE_COUNT]
 
Bool m_active
 

Additional Inherited Members

- Static Public Member Functions inherited from UpdateModule
static Int getInterfaceMask ()
 
- Static Public Member Functions inherited from BehaviorModule
static Int getInterfaceMask ()
 
static ModuleType getModuleType ()
 
- Static Public Member Functions inherited from Module
static ModuleData * friend_newModuleData (INI *ini)
 

Detailed Description

Definition at line 232 of file BoneFXUpdate.h.

Member Typedef Documentation

◆ ParticleSystemIDVec

typedef std::vector<ParticleSystemID> BoneFXUpdate::ParticleSystemIDVec
protected

Definition at line 266 of file BoneFXUpdate.h.

Constructor & Destructor Documentation

◆ BoneFXUpdate()

BoneFXUpdate::BoneFXUpdate ( Thing * thing,
const ModuleData * moduleData )

Definition at line 77 of file BoneFXUpdate.cpp.

Member Function Documentation

◆ changeBodyDamageState()

void BoneFXUpdate::changeBodyDamageState ( BodyDamageType oldState,
BodyDamageType newState )

Definition at line 375 of file BoneFXUpdate.cpp.

◆ computeNextClientFXTime()

void BoneFXUpdate::computeNextClientFXTime ( const BaseBoneListInfo * info,
Int & nextFrame )
protected

Definition at line 466 of file BoneFXUpdate.cpp.

◆ computeNextLogicFXTime()

void BoneFXUpdate::computeNextLogicFXTime ( const BaseBoneListInfo * info,
Int & nextFrame )
protected

Definition at line 477 of file BoneFXUpdate.cpp.

◆ doFXListAtBone()

void BoneFXUpdate::doFXListAtBone ( const FXList * fxList,
const Coord3D * bonePosition )
protected

Definition at line 384 of file BoneFXUpdate.cpp.

◆ doOCLAtBone()

void BoneFXUpdate::doOCLAtBone ( const ObjectCreationList * ocl,
const Coord3D * bonePosition )
protected

Definition at line 411 of file BoneFXUpdate.cpp.

◆ doParticleSystemAtBone()

void BoneFXUpdate::doParticleSystemAtBone ( const ParticleSystemTemplate * particleSystemTemplate,
const Coord3D * bonePosition )
protected

Definition at line 436 of file BoneFXUpdate.cpp.

◆ initTimes()

void BoneFXUpdate::initTimes ( )
protected

Definition at line 321 of file BoneFXUpdate.cpp.

◆ killRunningParticleSystems()

void BoneFXUpdate::killRunningParticleSystems ( )
protected

Definition at line 488 of file BoneFXUpdate.cpp.

◆ onObjectCreated()

void BoneFXUpdate::onObjectCreated ( void )
protectedvirtual

this is called after all the Modules for a given Thing are created; it allows Modules to resolve any inter-Module dependencies.

Reimplemented from Module.

Definition at line 99 of file BoneFXUpdate.cpp.

◆ resolveBoneLocations()

void BoneFXUpdate::resolveBoneLocations ( )
protectedvirtual

Definition at line 502 of file BoneFXUpdate.cpp.

◆ stopAllBoneFX()

void BoneFXUpdate::stopAllBoneFX ( )

Definition at line 544 of file BoneFXUpdate.cpp.

◆ update()

UpdateSleepTime BoneFXUpdate::update ( void )
virtual
Todo
srj use SLEEPY_UPDATE here

Implements UpdateModule.

Definition at line 290 of file BoneFXUpdate.cpp.

Member Data Documentation

◆ m_active

Bool BoneFXUpdate::m_active
protected

Definition at line 278 of file BoneFXUpdate.h.

◆ m_bonesResolved

Bool BoneFXUpdate::m_bonesResolved[BODYDAMAGETYPE_COUNT]
protected

Definition at line 277 of file BoneFXUpdate.h.

◆ m_curBodyState

BodyDamageType BoneFXUpdate::m_curBodyState
protected

Definition at line 276 of file BoneFXUpdate.h.

◆ m_FXBonePositions

Coord3D BoneFXUpdate::m_FXBonePositions[BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
protected

Definition at line 273 of file BoneFXUpdate.h.

◆ m_nextFXFrame

Int BoneFXUpdate::m_nextFXFrame[BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
protected

Definition at line 270 of file BoneFXUpdate.h.

◆ m_nextOCLFrame

Int BoneFXUpdate::m_nextOCLFrame[BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
protected

Definition at line 271 of file BoneFXUpdate.h.

◆ m_nextParticleSystemFrame

Int BoneFXUpdate::m_nextParticleSystemFrame[BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
protected

Definition at line 272 of file BoneFXUpdate.h.

◆ m_OCLBonePositions

Coord3D BoneFXUpdate::m_OCLBonePositions[BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
protected

Definition at line 274 of file BoneFXUpdate.h.

◆ m_particleSystemIDs

ParticleSystemIDVec BoneFXUpdate::m_particleSystemIDs
protected

we keep a record of attached particle system so we can detach and kill them when we want to

Definition at line 269 of file BoneFXUpdate.h.

◆ m_PSBonePositions

Coord3D BoneFXUpdate::m_PSBonePositions[BODYDAMAGETYPE_COUNT][BONE_FX_MAX_BONES]
protected

Definition at line 275 of file BoneFXUpdate.h.


The documentation for this class was generated from the following files: