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.
61 lines
1.7 KiB
61 lines
1.7 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
//=============================================================================// |
|
|
|
#ifndef C_AI_BASENPC_H |
|
#define C_AI_BASENPC_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
|
|
#include "c_basecombatcharacter.h" |
|
|
|
// NOTE: MOved all controller code into c_basestudiomodel |
|
class C_AI_BaseNPC : public C_BaseCombatCharacter |
|
{ |
|
DECLARE_CLASS( C_AI_BaseNPC, C_BaseCombatCharacter ); |
|
|
|
public: |
|
DECLARE_CLIENTCLASS(); |
|
|
|
C_AI_BaseNPC(); |
|
virtual unsigned int PhysicsSolidMaskForEntity( void ) const; |
|
virtual bool IsNPC( void ) { return true; } |
|
bool IsMoving( void ){ return m_bIsMoving; } |
|
bool ShouldAvoidObstacle( void ){ return m_bPerformAvoidance; } |
|
virtual bool AddRagdollToFadeQueue( void ) { return m_bFadeCorpse; } |
|
|
|
virtual void GetRagdollInitBoneArrays( matrix3x4_t *pDeltaBones0, matrix3x4_t *pDeltaBones1, matrix3x4_t *pCurrentBones, float boneDt ); |
|
|
|
int GetDeathPose( void ) { return m_iDeathPose; } |
|
|
|
bool ShouldModifyPlayerSpeed( void ) { return m_bSpeedModActive; } |
|
int GetSpeedModifyRadius( void ) { return m_iSpeedModRadius; } |
|
int GetSpeedModifySpeed( void ) { return m_iSpeedModSpeed; } |
|
|
|
void ClientThink( void ); |
|
void OnDataChanged( DataUpdateType_t type ); |
|
bool ImportantRagdoll( void ) { return m_bImportanRagdoll; } |
|
|
|
private: |
|
C_AI_BaseNPC( const C_AI_BaseNPC & ); // not defined, not accessible |
|
float m_flTimePingEffect; |
|
int m_iDeathPose; |
|
int m_iDeathFrame; |
|
|
|
int m_iSpeedModRadius; |
|
int m_iSpeedModSpeed; |
|
|
|
bool m_bPerformAvoidance; |
|
bool m_bIsMoving; |
|
bool m_bFadeCorpse; |
|
bool m_bSpeedModActive; |
|
bool m_bImportanRagdoll; |
|
}; |
|
|
|
|
|
#endif // C_AI_BASENPC_H
|
|
|