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

#include <AIStateMachine.h>

Inherits State, and NotifyWeaponFiredInterface.

Public Member Functions

 AIAttackState (StateMachine *machine, Bool follow, Bool attackingObject, Bool forceAttacking, AttackExitConditionsInterface *attackParameters)
 
virtual Bool isAttack () const
 
virtual StateReturnType onEnter ()
 
virtual void onExit (StateExitType status)
 executed once when leaving state
 
virtual StateReturnType update ()
 
virtual void notifyFired ()
 
virtual void notifyNewVictimChosen (Object *victim)
 
virtual const Coord3DgetOriginalVictimPos () const
 
virtual Bool isWeaponSlotOkToFire (WeaponSlotType wslot) const
 
virtual Bool isAttackingObject () const
 
virtual Bool isForceAttacking () const
 
- Public Member Functions inherited from State
 State (StateMachine *machine, AsciiString name)
 < this abstract class needs memory pool hooks
 
virtual Bool isIdle () const
 
virtual Bool isGuardIdle () const
 
virtual Bool isBusy () const
 
StateMachinegetMachine ()
 return the machine this state is part of
 
StateID getID () const
 get this state's id
 
ObjectgetMachineOwner ()
 
const ObjectgetMachineOwner () const
 
ObjectgetMachineGoalObject ()
 return the machine this state is part of
 
const ObjectgetMachineGoalObject () const
 return the machine this state is part of
 
const Coord3DgetMachineGoalPosition () const
 return the machine this state is part of
 
void friend_setID (StateID id)
 define this state's id (for use only by StateMachine class)
 
void friend_onSuccess (StateID toStateID)
 define which state to move to after successful completion
 
void friend_onFailure (StateID toStateID)
 define which state to move to after failure
 
void friend_onCondition (StateTransFuncPtr test, StateID toStateID, void *userData, const char *description=NULL)
 define when to change state
 
StateReturnType friend_checkForTransitions (StateReturnType status)
 given a return code, handle state transitions
 
StateReturnType friend_checkForSleepTransitions (StateReturnType status)
 given a return code, handle state transitions
 
- Public Member Functions inherited from MemoryPoolObject
void deleteInstance ()
 
- Public Member Functions inherited from Snapshot
 Snapshot (void)
 
 ~Snapshot (void)
 

Protected Member Functions

virtual void crc (Xfer *xfer)
 
virtual void xfer (Xfer *xfer)
 
virtual void loadPostProcess ()
 
- Protected Member Functions inherited from MemoryPoolObject
virtual ~MemoryPoolObject ()
 
void * operator new (size_t s)
 
void operator delete (void *p)
 
virtual MemoryPoolgetObjectMemoryPool ()=0
 

Detailed Description

Definition at line 984 of file AIStateMachine.h.

Constructor & Destructor Documentation

◆ AIAttackState()

AIAttackState::AIAttackState ( StateMachine * machine,
Bool follow,
Bool attackingObject,
Bool forceAttacking,
AttackExitConditionsInterface * attackParameters )

Definition at line 5358 of file AIStates.cpp.

Member Function Documentation

◆ crc()

void AIAttackState::crc ( Xfer * xfer)
protectedvirtual

CRC

Implements State.

Definition at line 5395 of file AIStates.cpp.

◆ getOriginalVictimPos()

virtual const Coord3D * AIAttackState::getOriginalVictimPos ( ) const
inlinevirtual

Implements NotifyWeaponFiredInterface.

Definition at line 999 of file AIStateMachine.h.

◆ isAttack()

virtual Bool AIAttackState::isAttack ( ) const
inlinevirtual

Reimplemented from State.

Definition at line 992 of file AIStateMachine.h.

◆ isAttackingObject()

virtual Bool AIAttackState::isAttackingObject ( ) const
inlinevirtual

Implements NotifyWeaponFiredInterface.

Definition at line 1001 of file AIStateMachine.h.

◆ isForceAttacking()

virtual Bool AIAttackState::isForceAttacking ( ) const
inlinevirtual

Definition at line 1002 of file AIStateMachine.h.

◆ isWeaponSlotOkToFire()

virtual Bool AIAttackState::isWeaponSlotOkToFire ( WeaponSlotType wslot) const
inlinevirtual

Implements NotifyWeaponFiredInterface.

Definition at line 1000 of file AIStateMachine.h.

◆ loadPostProcess()

void AIAttackState::loadPostProcess ( void )
protectedvirtual

Load post process

Implements State.

Definition at line 5432 of file AIStates.cpp.

◆ notifyFired()

virtual void AIAttackState::notifyFired ( )
inlinevirtual

Implements NotifyWeaponFiredInterface.

Definition at line 997 of file AIStateMachine.h.

◆ notifyNewVictimChosen()

void AIAttackState::notifyNewVictimChosen ( Object * victim)
virtual

Implements NotifyWeaponFiredInterface.

Definition at line 5479 of file AIStates.cpp.

◆ onEnter()

StateReturnType AIAttackState::onEnter ( void )
virtual

Begin an attack on the machine's goal object. To do this complex behavior, instantiate another state machine as a "sub-machine" of the attack state.

Reimplemented from State.

Definition at line 5494 of file AIStates.cpp.

◆ onExit()

void AIAttackState::onExit ( StateExitType status)
virtual

executed once when leaving state

Reimplemented from State.

Definition at line 5692 of file AIStates.cpp.

◆ update()

StateReturnType AIAttackState::update ( void )
virtual

Execute one frame of "attack enemy" behavior.

Run the attack state sub-machine. If the attack state machine returns anything other than CONTINUE, it has finished. Propagating the return code will cause the containing state machine to do the right thing. Note the use of CONVERT_SLEEP_TO_CONTINUE; even if the sub-machine sleeps, we still need to be called every frame.

Implements State.

Definition at line 5578 of file AIStates.cpp.

◆ xfer()

void AIAttackState::xfer ( Xfer * xfer)
protectedvirtual

Xfer Method

< state sub-machine for attack behavior

Implements State.

Definition at line 5402 of file AIStates.cpp.


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