1
0
mirror of https://github.com/alliedmodders/hl2sdk.git synced 2024-12-22 17:47:38 +08:00
hl2sdk/game/shared/playernet_vars.h
Joe Ludwig 39d16ca147 General:
* Fixed a variety of server browser issues with mods based on this SDK
* Fixed many warnings on various platforms
* Added source code for fgdlib and raytrace
* Updated many source files with the latest shared source from TF2.

OSX:
* Added support for Xcode 4.6
* Switched OSX builds to use Xcode instead of makefiles
* Moved libs from src/lib/osx32 to src/lib/public/osx32 or src/lib/common/osx32 to match windows better.

Linux:
* Moved libs from src/lib/linux32 to src/lib/public/linux32 or src/lib/common/linux32 to match windows better.
2013-09-02 11:39:10 -07:00

124 lines
2.9 KiB
C++

//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef PLAYERNET_VARS_H
#define PLAYERNET_VARS_H
#ifdef _WIN32
#pragma once
#endif
#include "shared_classnames.h"
#define NUM_AUDIO_LOCAL_SOUNDS 8
// These structs are contained in each player's local data and shared by the client & server
struct fogparams_t
{
DECLARE_CLASS_NOBASE( fogparams_t );
DECLARE_EMBEDDED_NETWORKVAR();
#ifndef CLIENT_DLL
DECLARE_SIMPLE_DATADESC();
#endif
bool operator !=( const fogparams_t& other ) const;
CNetworkVector( dirPrimary );
CNetworkColor32( colorPrimary );
CNetworkColor32( colorSecondary );
CNetworkColor32( colorPrimaryLerpTo );
CNetworkColor32( colorSecondaryLerpTo );
CNetworkVar( float, start );
CNetworkVar( float, end );
CNetworkVar( float, farz );
CNetworkVar( float, maxdensity );
CNetworkVar( float, startLerpTo );
CNetworkVar( float, endLerpTo );
CNetworkVar( float, lerptime );
CNetworkVar( float, duration );
CNetworkVar( bool, enable );
CNetworkVar( bool, blend );
};
// Crappy. Needs to be here because it wants to use
#ifdef CLIENT_DLL
#define CFogController C_FogController
#endif
class CFogController;
struct fogplayerparams_t
{
DECLARE_CLASS_NOBASE( fogplayerparams_t );
DECLARE_EMBEDDED_NETWORKVAR();
#ifndef CLIENT_DLL
DECLARE_SIMPLE_DATADESC();
#endif
CNetworkHandle( CFogController, m_hCtrl );
float m_flTransitionTime;
color32 m_OldColor;
float m_flOldStart;
float m_flOldEnd;
color32 m_NewColor;
float m_flNewStart;
float m_flNewEnd;
fogplayerparams_t()
{
m_hCtrl.Set( NULL );
m_flTransitionTime = -1.0f;
m_OldColor.r = m_OldColor.g = m_OldColor.b = m_OldColor.a = 0;
m_flOldStart = 0.0f;
m_flOldEnd = 0.0f;
m_NewColor.r = m_NewColor.g = m_NewColor.b = m_NewColor.a = 0;
m_flNewStart = 0.0f;
m_flNewEnd = 0.0f;
}
};
struct sky3dparams_t
{
DECLARE_CLASS_NOBASE( sky3dparams_t );
DECLARE_EMBEDDED_NETWORKVAR();
#ifndef CLIENT_DLL
DECLARE_SIMPLE_DATADESC();
#endif
// 3d skybox camera data
CNetworkVar( int, scale );
CNetworkVector( origin );
CNetworkVar( int, area );
// 3d skybox fog data
CNetworkVarEmbedded( fogparams_t, fog );
};
struct audioparams_t
{
DECLARE_CLASS_NOBASE( audioparams_t );
DECLARE_EMBEDDED_NETWORKVAR();
#ifndef CLIENT_DLL
DECLARE_SIMPLE_DATADESC();
#endif
CNetworkArray( Vector, localSound, NUM_AUDIO_LOCAL_SOUNDS )
CNetworkVar( int, soundscapeIndex ); // index of the current soundscape from soundscape.txt
CNetworkVar( int, localBits ); // if bits 0,1,2,3 are set then position 0,1,2,3 are valid/used
CNetworkHandle( CBaseEntity, ent ); // the entity setting the soundscape
};
#endif // PLAYERNET_VARS_H