This repository has been archived on 2024-06-13. You can view files and clone it, but cannot push or open issues or pull requests.
2020-08-04 13:13:01 -04:00

66 lines
1.7 KiB
C++

//========= 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