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.
58 lines
1.4 KiB
58 lines
1.4 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
//=============================================================================// |
|
|
|
#ifndef AI_BASENPC_FLYER_NEW_H |
|
#define AI_BASENPC_FLYER_NEW_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#include "ai_basenpc.h" |
|
#include "ai_condition.h" |
|
|
|
|
|
enum BaseNPCFlyerConditions_t |
|
{ |
|
COND_FLYER_MOVE_BLOCKED = LAST_SHARED_CONDITION, |
|
COND_FLYER_MOVE_IMPOSSIBLE, |
|
|
|
// ====================================== |
|
// IMPORTANT: This must be the last enum |
|
// ====================================== |
|
LAST_FLYER_SHARED_CONDITION |
|
}; |
|
|
|
|
|
//----------------------------------------------------------------------------- |
|
// The combot. |
|
//----------------------------------------------------------------------------- |
|
class CAI_BaseNPCFlyerNew : public CAI_BaseNPC |
|
{ |
|
DECLARE_CLASS( CAI_BaseNPCFlyerNew, CAI_BaseNPC ); |
|
public: |
|
// DEFINE_CUSTOM_AI; |
|
|
|
virtual void StartTask( const Task_t *pTask ); |
|
virtual void RunTask( const Task_t *pTask ); |
|
|
|
virtual float GetIdealSpeed( ) const; |
|
virtual float MinGroundDist(void); |
|
|
|
CAI_BaseNPCFlyerNew(); |
|
|
|
protected: |
|
// Call this to set up a flyer |
|
void SpawnFlyer(); |
|
|
|
// Yarg! Must be chained down from leaf classes... |
|
void ClearFlyerConditions(void); |
|
|
|
// Override this when we had to abort movement |
|
virtual void AbortedMovement( void ) {} |
|
}; |
|
|
|
#endif // AI_BASENPC_FLYER_NEW_H
|
|
|