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.
48 lines
1.4 KiB
48 lines
1.4 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
//=============================================================================// |
|
|
|
#ifndef AI_SPEECHFILTER_H |
|
#define AI_SPEECHFILTER_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: |
|
//----------------------------------------------------------------------------- |
|
class CAI_SpeechFilter : public CBaseEntity, public IEntityListener |
|
{ |
|
DECLARE_CLASS( CAI_SpeechFilter, CBaseEntity ); |
|
public: |
|
DECLARE_DATADESC(); |
|
|
|
void Spawn( void ); |
|
void Activate( void ); |
|
void UpdateOnRemove( void ); |
|
|
|
void Enable( bool bEnable ); |
|
void InputEnable( inputdata_t &inputdata ); |
|
void InputDisable( inputdata_t &inputdata ); |
|
void InputSetIdleModifier( inputdata_t &inputdata ); |
|
|
|
void PopulateSubjectList( bool purge = false ); |
|
|
|
|
|
// Accessors for our NPC |
|
float GetIdleModifier( void ) { return m_flIdleModifier; } |
|
bool NeverSayHello( void ) { return m_bNeverSayHello; } |
|
|
|
void OnEntityCreated( CBaseEntity *pEntity ); |
|
void OnEntityDeleted( CBaseEntity *pEntity ); |
|
|
|
protected: |
|
string_t m_iszSubject; |
|
float m_flIdleModifier; // Multiplier to the percentage chance that our NPC will idle speak |
|
bool m_bNeverSayHello; // If set, the NPC never says hello to the player |
|
bool m_bDisabled; |
|
}; |
|
|
|
#endif // AI_SPEECHFILTER_H
|
|
|