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

#include <DumbProjectileBehavior.h>

Inherits UpdateModule, and ProjectileUpdateInterface.

Public Member Functions

 DumbProjectileBehavior (Thing *thing, const ModuleData *moduleData)
 
virtual UpdateSleepTime update ()
 
virtual ProjectileUpdateInterface * getProjectileUpdateInterface ()
 
virtual void projectileLaunchAtObjectOrPosition (const Object *victim, const Coord3D *victimPos, const Object *launcher, WeaponSlotType wslot, Int specificBarrelToUse, const WeaponTemplate *detWeap, const ParticleSystemTemplate *exhaustSysOverride)
 launch the projectile at the given victim
 
virtual void projectileFireAtObjectOrPosition (const Object *victim, const Coord3D *victimPos, const WeaponTemplate *detWeap, const ParticleSystemTemplate *exhaustSysOverride)
 
virtual Bool projectileHandleCollision (Object *other)
 
virtual Bool projectileIsArmed () const
 return true if the projectile is armed and ready to explode
 
virtual ObjectID projectileGetLauncherID () const
 All projectiles need to keep track of their firer.
 
virtual void setFramesTillCountermeasureDiversionOccurs (UnsignedInt frames)
 Number of frames till missile diverts to countermeasures.
 
virtual void projectileNowJammed ()
 
- 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 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 onObjectCreated ()
 
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 Member Functions

void positionForLaunch (const Object *launcher, WeaponSlotType wslot, Int specificBarrelToUse)
 
void detonate ()
 
- 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
 

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 77 of file DumbProjectileBehavior.h.

Constructor & Destructor Documentation

◆ DumbProjectileBehavior()

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

Definition at line 114 of file DumbProjectileBehavior.cpp.

Member Function Documentation

◆ detonate()

void DumbProjectileBehavior::detonate ( )
protected

Definition at line 533 of file DumbProjectileBehavior.cpp.

◆ getProjectileUpdateInterface()

virtual ProjectileUpdateInterface * DumbProjectileBehavior::getProjectileUpdateInterface ( )
inlinevirtual

Reimplemented from BehaviorModule.

Definition at line 90 of file DumbProjectileBehavior.h.

◆ positionForLaunch()

void DumbProjectileBehavior::positionForLaunch ( const Object * launcher,
WeaponSlotType wslot,
Int specificBarrelToUse )
protected

◆ projectileFireAtObjectOrPosition()

void DumbProjectileBehavior::projectileFireAtObjectOrPosition ( const Object * victim,
const Coord3D * victimPos,
const WeaponTemplate * detWeap,
const ParticleSystemTemplate * exhaustSysOverride )
virtual

Implements ProjectileUpdateInterface.

Definition at line 358 of file DumbProjectileBehavior.cpp.

◆ projectileGetLauncherID()

virtual ObjectID DumbProjectileBehavior::projectileGetLauncherID ( ) const
inlinevirtual

All projectiles need to keep track of their firer.

Implements ProjectileUpdateInterface.

Definition at line 97 of file DumbProjectileBehavior.h.

◆ projectileHandleCollision()

Bool DumbProjectileBehavior::projectileHandleCollision ( Object * other)
virtual

Implements ProjectileUpdateInterface.

Definition at line 467 of file DumbProjectileBehavior.cpp.

◆ projectileIsArmed()

virtual Bool DumbProjectileBehavior::projectileIsArmed ( ) const
inlinevirtual

return true if the projectile is armed and ready to explode

Implements ProjectileUpdateInterface.

Definition at line 96 of file DumbProjectileBehavior.h.

◆ projectileLaunchAtObjectOrPosition()

NOT_IN_USE void DumbProjectileBehavior::projectileLaunchAtObjectOrPosition ( const Object * victim,
const Coord3D * victimPos,
const Object * launcher,
WeaponSlotType wslot,
Int specificBarrelToUse,
const WeaponTemplate * detWeap,
const ParticleSystemTemplate * exhaustSysOverride )
virtual

launch the projectile at the given victim

Implements ProjectileUpdateInterface.

Definition at line 328 of file DumbProjectileBehavior.cpp.

◆ projectileNowJammed()

virtual void DumbProjectileBehavior::projectileNowJammed ( )
inlinevirtual

Implements ProjectileUpdateInterface.

Definition at line 99 of file DumbProjectileBehavior.h.

◆ setFramesTillCountermeasureDiversionOccurs()

virtual void DumbProjectileBehavior::setFramesTillCountermeasureDiversionOccurs ( UnsignedInt frames)
inlinevirtual

Number of frames till missile diverts to countermeasures.

Implements ProjectileUpdateInterface.

Definition at line 98 of file DumbProjectileBehavior.h.

◆ update()

UpdateSleepTime DumbProjectileBehavior::update ( void )
virtual

Simulate one frame of a missile's behavior

Implements UpdateModule.

Definition at line 581 of file DumbProjectileBehavior.cpp.


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