summaryrefslogtreecommitdiff
path: root/game/server/hl1/hl1_ents.h
diff options
context:
space:
mode:
Diffstat (limited to 'game/server/hl1/hl1_ents.h')
-rw-r--r--game/server/hl1/hl1_ents.h73
1 files changed, 73 insertions, 0 deletions
diff --git a/game/server/hl1/hl1_ents.h b/game/server/hl1/hl1_ents.h
new file mode 100644
index 0000000..a5eb6fe
--- /dev/null
+++ b/game/server/hl1/hl1_ents.h
@@ -0,0 +1,73 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+//=============================================================================//
+
+#ifndef HL1_ENTS_H
+#define HL1_ENTS_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+
+/**********************
+ Pendulum
+/**********************/
+
+class CPendulum : public CBaseToggle
+{
+ DECLARE_CLASS( CPendulum, CBaseToggle );
+public:
+ void Spawn ( void );
+ void KeyValue( KeyValueData *pkvd );
+ void Swing( void );
+ void PendulumUse( CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value );
+ void Stop( void );
+ void Touch( CBaseEntity *pOther );
+ void RopeTouch ( CBaseEntity *pOther );// this touch func makes the pendulum a rope
+ void Blocked( CBaseEntity *pOther );
+
+ // Input handlers.
+ void InputActivate( inputdata_t &inputdata );
+
+ DECLARE_DATADESC();
+
+ float m_flAccel; // Acceleration
+ float m_flTime;
+ float m_flDamp;
+ float m_flMaxSpeed;
+ float m_flDampSpeed;
+ QAngle m_vCenter;
+ QAngle m_vStart;
+ float m_flBlockDamage;
+
+ EHANDLE m_hEnemy;
+};
+
+class CHL1Gib : public CBaseEntity
+{
+ DECLARE_CLASS( CHL1Gib, CBaseEntity );
+
+public:
+ void Spawn( const char *szGibModel );
+ void BounceGibTouch ( CBaseEntity *pOther );
+ void StickyGibTouch ( CBaseEntity *pOther );
+ void WaitTillLand( void );
+ void LimitVelocity( void );
+
+ virtual int ObjectCaps( void ) { return (CBaseEntity::ObjectCaps() & ~FCAP_ACROSS_TRANSITION) | FCAP_DONT_SAVE; }
+ static void SpawnHeadGib( CBaseEntity *pVictim );
+ static void SpawnRandomGibs( CBaseEntity *pVictim, int cGibs, int human );
+ static void SpawnStickyGibs( CBaseEntity *pVictim, Vector vecOrigin, int cGibs );
+
+ int m_bloodColor;
+ int m_cBloodDecals;
+ int m_material;
+ float m_lifeTime;
+
+ DECLARE_DATADESC();
+};
+
+
+#endif // HL1_ENTS_H