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.5 KiB
61 lines
1.5 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
//=============================================================================// |
|
|
|
#ifndef NPC_COMBINES_H |
|
#define NPC_COMBINES_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#include "npc_combine.h" |
|
|
|
//========================================================= |
|
// >> CNPC_CombineS |
|
//========================================================= |
|
class CNPC_CombineS : public CNPC_Combine |
|
{ |
|
DECLARE_CLASS( CNPC_CombineS, CNPC_Combine ); |
|
#if HL2_EPISODIC |
|
DECLARE_DATADESC(); |
|
#endif |
|
|
|
public: |
|
void Spawn( void ); |
|
void Precache( void ); |
|
void DeathSound( const CTakeDamageInfo &info ); |
|
void PrescheduleThink( void ); |
|
void BuildScheduleTestBits( void ); |
|
int SelectSchedule ( void ); |
|
float GetHitgroupDamageMultiplier( int iHitGroup, const CTakeDamageInfo &info ); |
|
void HandleAnimEvent( animevent_t *pEvent ); |
|
void OnChangeActivity( Activity eNewActivity ); |
|
void Event_Killed( const CTakeDamageInfo &info ); |
|
void OnListened(); |
|
|
|
void ClearAttackConditions( void ); |
|
|
|
bool m_fIsBlocking; |
|
|
|
bool IsLightDamage( const CTakeDamageInfo &info ); |
|
bool IsHeavyDamage( const CTakeDamageInfo &info ); |
|
|
|
virtual bool AllowedToIgnite( void ) { return true; } |
|
|
|
private: |
|
bool ShouldHitPlayer( const Vector &targetDir, float targetDist ); |
|
|
|
#if HL2_EPISODIC |
|
public: |
|
Activity NPC_TranslateActivity( Activity eNewActivity ); |
|
|
|
protected: |
|
/// whether to use the more casual march anim in ep2_outland_05 |
|
int m_iUseMarch; |
|
#endif |
|
|
|
}; |
|
|
|
#endif // NPC_COMBINES_H
|
|
|