mirror of
https://github.com/nillerusr/source-engine.git
synced 2026-09-01 06:59:20 +00:00
upload "kind" alien swarm
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose:
|
||||
//
|
||||
@@ -12,65 +12,6 @@
|
||||
#ifndef NAV_ENTITIES_H
|
||||
#define NAV_ENTITIES_H
|
||||
|
||||
//-----------------------------------------------------------------------------------------------------
|
||||
/**
|
||||
* An entity that modifies pathfinding cost to all areas it overlaps, to allow map designers
|
||||
* to tell bots to avoid/prefer certain regions.
|
||||
*/
|
||||
class CFuncNavCost : public CBaseEntity
|
||||
{
|
||||
public:
|
||||
DECLARE_DATADESC();
|
||||
DECLARE_CLASS( CFuncNavCost, CBaseEntity );
|
||||
|
||||
virtual void Spawn( void );
|
||||
virtual void UpdateOnRemove( void );
|
||||
|
||||
void InputEnable( inputdata_t &inputdata );
|
||||
void InputDisable( inputdata_t &inputdata );
|
||||
|
||||
bool IsEnabled( void ) const { return !m_isDisabled; }
|
||||
|
||||
void CostThink( void );
|
||||
|
||||
bool IsApplicableTo( CBaseCombatCharacter *who ) const; // Return true if this cost applies to the given actor
|
||||
|
||||
virtual float GetCostMultiplier( CBaseCombatCharacter *who ) const { return 1.0f; }
|
||||
|
||||
protected:
|
||||
int m_team;
|
||||
bool m_isDisabled;
|
||||
string_t m_iszTags;
|
||||
|
||||
static CUtlVector< CHandle< CFuncNavCost > > gm_masterCostVector;
|
||||
static CountdownTimer gm_dirtyTimer;
|
||||
void UpdateAllNavCostDecoration( void );
|
||||
|
||||
CUtlVector< CFmtStr > m_tags;
|
||||
bool HasTag( const char *groupname ) const;
|
||||
};
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------------------------------
|
||||
class CFuncNavAvoid : public CFuncNavCost
|
||||
{
|
||||
public:
|
||||
DECLARE_CLASS( CFuncNavAvoid, CFuncNavCost );
|
||||
|
||||
virtual float GetCostMultiplier( CBaseCombatCharacter *who ) const; // return pathfind cost multiplier for the given actor
|
||||
};
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------------------------------
|
||||
class CFuncNavPrefer : public CFuncNavCost
|
||||
{
|
||||
public:
|
||||
DECLARE_CLASS( CFuncNavPrefer, CFuncNavCost );
|
||||
|
||||
virtual float GetCostMultiplier( CBaseCombatCharacter *who ) const; // return pathfind cost multiplier for the given actor
|
||||
};
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------------------------------
|
||||
/**
|
||||
* An entity that can block/unblock nav areas. This is meant for semi-transient areas that block
|
||||
|
||||
Reference in New Issue
Block a user