Modified source engine (2017) developed by valve and leaked in 2020. Not for commercial purporses
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.

64 lines
1.6 KiB

5 years ago
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef MODELENTITIES_H
#define MODELENTITIES_H
#ifdef _WIN32
#pragma once
#endif
//!! replace this with generic start enabled/disabled
#define SF_WALL_START_OFF 0x0001
#define SF_IGNORE_PLAYERUSE 0x0002
//-----------------------------------------------------------------------------
// Purpose: basic solid geometry
// enabled state: brush is visible
// disabled state: brush not visible
//-----------------------------------------------------------------------------
class CFuncBrush : public CBaseEntity
{
public:
DECLARE_CLASS( CFuncBrush, CBaseEntity );
virtual void Spawn( void );
bool CreateVPhysics( void );
virtual int ObjectCaps( void ) { return HasSpawnFlags(SF_IGNORE_PLAYERUSE) ? BaseClass::ObjectCaps() : BaseClass::ObjectCaps() | FCAP_IMPULSE_USE; }
virtual int DrawDebugTextOverlays( void );
virtual void TurnOff( void );
virtual void TurnOn( void );
// Input handlers
void InputTurnOff( inputdata_t &inputdata );
void InputTurnOn( inputdata_t &inputdata );
void InputToggle( inputdata_t &inputdata );
void InputSetExcluded( inputdata_t &inputdata );
void InputSetInvert( inputdata_t &inputdata );
enum BrushSolidities_e {
BRUSHSOLID_TOGGLE = 0,
BRUSHSOLID_NEVER = 1,
BRUSHSOLID_ALWAYS = 2,
};
BrushSolidities_e m_iSolidity;
int m_iDisabled;
bool m_bSolidBsp;
string_t m_iszExcludedClass;
bool m_bInvertExclusion;
DECLARE_DATADESC();
virtual bool IsOn( void ) const;
};
#endif // MODELENTITIES_H