summaryrefslogtreecommitdiff
path: root/game/server/hl2/script_intro.h
diff options
context:
space:
mode:
Diffstat (limited to 'game/server/hl2/script_intro.h')
-rw-r--r--game/server/hl2/script_intro.h85
1 files changed, 85 insertions, 0 deletions
diff --git a/game/server/hl2/script_intro.h b/game/server/hl2/script_intro.h
new file mode 100644
index 0000000..5e59fa3
--- /dev/null
+++ b/game/server/hl2/script_intro.h
@@ -0,0 +1,85 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+//=============================================================================//
+
+#ifndef SCRIPT_INTRO_H
+#define SCRIPT_INTRO_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+
+class CPointCamera;
+
+
+//-----------------------------------------------------------------------------
+// Purpose: An entity that's used to control the intro sequence
+//-----------------------------------------------------------------------------
+class CScriptIntro : public CBaseEntity
+{
+ DECLARE_CLASS(CScriptIntro, CBaseEntity);
+public:
+ DECLARE_DATADESC();
+ DECLARE_SERVERCLASS();
+
+ virtual void Spawn( void );
+ virtual void Precache();
+ virtual void Activate( void );
+ virtual int UpdateTransmitState(void);
+
+ // Inputs
+ void InputSetPlayerViewEntity( inputdata_t &inputdata );
+ void InputSetCameraViewEntity( inputdata_t &inputdata );
+ void InputSetBlendMode( inputdata_t &inputdata );
+ void InputSetNextBlendMode( inputdata_t &inputdata );
+ void InputSetNextFOV( inputdata_t &inputdata );
+ void InputSetFOVBlendTime( inputdata_t &inputdata );
+ void InputSetFOV( inputdata_t &inputdata );
+ void InputSetNextBlendTime( inputdata_t &inputdata );
+ void InputActivate( inputdata_t &inputdata );
+ void InputDeactivate( inputdata_t &inputdata );
+
+ void InputFadeTo( inputdata_t &inputdata );
+ void InputSetFadeColor( inputdata_t &inputdata );
+
+ bool GetIncludedPVSOrigin( Vector *pOrigin, CBaseEntity **ppCamera );
+
+private:
+ // Think func used to finish the blend off
+ void BlendComplete( );
+
+private:
+ CNetworkVar( Vector, m_vecPlayerView );
+ CNetworkVar( QAngle, m_vecPlayerViewAngles );
+ CNetworkVar( Vector, m_vecCameraView );
+ CNetworkVar( QAngle, m_vecCameraViewAngles );
+ CNetworkVar( int, m_iBlendMode );
+ CNetworkVar( int, m_iNextBlendMode );
+ CNetworkVar( float, m_flNextBlendTime );
+ CNetworkVar( float, m_flBlendStartTime );
+ CNetworkVar( int, m_iStartFOV );
+ CNetworkVar( bool, m_bActive );
+
+ // Fov & fov blends
+ CNetworkVar( int, m_iNextFOV );
+ CNetworkVar( float, m_flNextFOVBlendTime );
+ CNetworkVar( float, m_flFOVBlendStartTime );
+ CNetworkVar( int, m_iFOV );
+ CNetworkVar( bool, m_bAlternateFOV );
+
+ // Fades
+ CNetworkArray( float, m_flFadeColor, 3 );
+ CNetworkVar( float, m_flFadeAlpha);
+ CNetworkVar( float, m_flFadeDuration );
+
+ CNetworkVar( EHANDLE, m_hCameraEntity );
+
+ int m_iQueuedBlendMode;
+ int m_iQueuedNextBlendMode;
+};
+
+extern CHandle<CScriptIntro> g_hIntroScript;
+
+#endif // SCRIPT_INTRO_H