summaryrefslogtreecommitdiff
path: root/game/server/EntityDissolve.h
diff options
context:
space:
mode:
authorFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
committerFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
commit3bf9df6b2785fa6d951086978a3e66f49427166a (patch)
tree2c0f1f0c63c4832882bc93814ebd2c2b1c6224e5 /game/server/EntityDissolve.h
downloadarchived-source-engine-2018-hl2-src-master.tar.xz
archived-source-engine-2018-hl2-src-master.zip
Diffstat (limited to 'game/server/EntityDissolve.h')
-rw-r--r--game/server/EntityDissolve.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/game/server/EntityDissolve.h b/game/server/EntityDissolve.h
new file mode 100644
index 0000000..ae9e819
--- /dev/null
+++ b/game/server/EntityDissolve.h
@@ -0,0 +1,63 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+//=============================================================================//
+
+#ifndef ENTITYDISSOLVE_H
+#define ENTITYDISSOLVE_H
+
+#ifdef _WIN32
+#pragma once
+#endif
+
+class CEntityDissolve : public CBaseEntity
+{
+public:
+ DECLARE_SERVERCLASS();
+ DECLARE_CLASS( CEntityDissolve, CBaseEntity );
+
+ CEntityDissolve( void );
+ ~CEntityDissolve( void );
+
+ static CEntityDissolve *Create( CBaseEntity *pTarget, const char *pMaterialName,
+ float flStartTime, int nDissolveType = 0, bool *pRagdollCreated = NULL );
+ static CEntityDissolve *Create( CBaseEntity *pTarget, CBaseEntity *pSource );
+
+ void Precache();
+ void Spawn();
+ void AttachToEntity( CBaseEntity *pTarget );
+ void SetStartTime( float flStartTime );
+ void SetDissolverOrigin( Vector vOrigin ) { m_vDissolverOrigin = vOrigin; }
+ void SetMagnitude( int iMagnitude ){ m_nMagnitude = iMagnitude; }
+ void SetDissolveType( int iType ) { m_nDissolveType = iType; }
+
+ Vector GetDissolverOrigin( void )
+ {
+ Vector vReturn = m_vDissolverOrigin;
+ return vReturn;
+ }
+ int GetMagnitude( void ) { return m_nMagnitude; }
+ int GetDissolveType( void ) { return m_nDissolveType; }
+
+ DECLARE_DATADESC();
+
+ CNetworkVar( float, m_flStartTime );
+ CNetworkVar( float, m_flFadeInStart );
+ CNetworkVar( float, m_flFadeInLength );
+ CNetworkVar( float, m_flFadeOutModelStart );
+ CNetworkVar( float, m_flFadeOutModelLength );
+ CNetworkVar( float, m_flFadeOutStart );
+ CNetworkVar( float, m_flFadeOutLength );
+
+protected:
+ void InputDissolve( inputdata_t &inputdata );
+ void DissolveThink( void );
+ void ElectrocuteThink( void );
+
+ CNetworkVar( int, m_nDissolveType );
+ CNetworkVector( m_vDissolverOrigin );
+ CNetworkVar( int, m_nMagnitude );
+};
+
+#endif // ENTITYDISSOLVE_H