You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
1.4 KiB
50 lines
1.4 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
//=============================================================================// |
|
|
|
#ifndef AI_BASEHUMANOID_H |
|
#define AI_BASEHUMANOID_H |
|
|
|
#include "ai_behavior.h" |
|
#include "ai_blended_movement.h" |
|
|
|
//----------------------------------------------------------------------------- |
|
// CLASS: CAI_BaseHumanoid |
|
//----------------------------------------------------------------------------- |
|
|
|
typedef CAI_BlendingHost< CAI_BehaviorHost<CAI_BaseNPC> > CAI_BaseHumanoidBase; |
|
|
|
class CAI_BaseHumanoid : public CAI_BaseHumanoidBase |
|
{ |
|
DECLARE_CLASS( CAI_BaseHumanoid, CAI_BaseHumanoidBase ); |
|
|
|
public: |
|
bool HandleInteraction(int interactionType, void *data, CBaseCombatCharacter* sourceEnt); |
|
|
|
// Tasks |
|
virtual void StartTask( const Task_t *pTask ); |
|
virtual void RunTask( const Task_t *pTask ); |
|
virtual void BuildScheduleTestBits( ); |
|
|
|
// Navigation |
|
bool OnMoveBlocked( AIMoveResult_t *pResult ); |
|
|
|
// Damage |
|
void TraceAttack( const CTakeDamageInfo &info, const Vector &vecDir, trace_t *ptr, CDmgAccumulator *pAccumulator ); |
|
|
|
// Various start tasks |
|
virtual void StartTaskRangeAttack1( const Task_t *pTask ); |
|
|
|
// Various run tasks |
|
virtual void RunTaskRangeAttack1( const Task_t *pTask ); |
|
|
|
// Purpose: check ammo |
|
virtual void CheckAmmo( void ); |
|
}; |
|
|
|
//----------------------------------------------------------------------------- |
|
|
|
#endif
|
|
|