diff options
Diffstat (limited to 'game/server/hl2/script_intro.h')
| -rw-r--r-- | game/server/hl2/script_intro.h | 85 |
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 |