mirror of
https://github.com/nillerusr/source-engine.git
synced 2024-12-23 06:36:54 +00:00
57 lines
1.3 KiB
C++
57 lines
1.3 KiB
C++
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
// NextBot paths that go through this entity must fulfill the given prerequisites to pass
|
|
// Michael Booth, August 2009
|
|
|
|
#ifndef FUNC_NAV_PREREQUISITE_H
|
|
#define FUNC_NAV_PREREQUISITE_H
|
|
|
|
#include "triggers.h"
|
|
|
|
/**
|
|
* NextBot paths that pass through this entity must fulfill the given prerequisites to pass
|
|
*/
|
|
DECLARE_AUTO_LIST( IFuncNavPrerequisiteAutoList );
|
|
|
|
class CFuncNavPrerequisite : public CBaseTrigger, public IFuncNavPrerequisiteAutoList
|
|
{
|
|
DECLARE_CLASS( CFuncNavPrerequisite, CBaseTrigger );
|
|
|
|
public:
|
|
CFuncNavPrerequisite();
|
|
|
|
DECLARE_DATADESC();
|
|
|
|
virtual void Spawn( void );
|
|
|
|
enum TaskType
|
|
{
|
|
TASK_NONE = 0,
|
|
TASK_DESTROY_ENTITY = 1,
|
|
TASK_MOVE_TO_ENTITY = 2,
|
|
TASK_WAIT = 3,
|
|
};
|
|
|
|
bool IsTask( TaskType type ) const;
|
|
CBaseEntity *GetTaskEntity( void );
|
|
float GetTaskValue( void ) const;
|
|
|
|
void InputEnable( inputdata_t &inputdata );
|
|
void InputDisable( inputdata_t &inputdata );
|
|
bool IsEnabled( void ) const { return !m_isDisabled; }
|
|
|
|
protected:
|
|
int m_task;
|
|
string_t m_taskEntityName;
|
|
float m_taskValue;
|
|
bool m_isDisabled;
|
|
EHANDLE m_hTaskEntity;
|
|
};
|
|
|
|
inline float CFuncNavPrerequisite::GetTaskValue( void ) const
|
|
{
|
|
return m_taskValue;
|
|
}
|
|
|
|
|
|
#endif // FUNC_NAV_PREREQUISITE_H
|