source-sdk-2013-mapbase/sp/src/game/server/playerlocaldata.h

97 lines
3.0 KiB
C
Raw Normal View History

2013-12-03 07:31:46 +04:00
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef PLAYERLOCALDATA_H
#define PLAYERLOCALDATA_H
#ifdef _WIN32
#pragma once
#endif
#include "playernet_vars.h"
#include "networkvar.h"
#include "fogcontroller.h"
Mapbase v6.1 - Added postprocess_controller entity from later versions of Source - Added env_dof_controller entity from later versions of Source - Added SDK_Engine_Post and DepthOfField shaders from the Momentum repo/Alien Swarm SDK - Fixed auto-breaking game_text/choreo text not null terminating - Fixed console groups showing up at the wrong developer levels - Added more mesages to console groups, including a new "NPC AI" console group - Fixed typos and added elaboration in various cvars, console messages, etc. - Fixed npc_metropolice not using frag grenades correctly when allowed to use them - Fixed npc_metropolice not registering stitching squad slots in AI - Fixed SetModel input late precache warning - Fixed env_global_light angles resetting upon loading a save - Fixed an issue with ScriptKeyValuesRead using the wrong name and having a memory leak - Allowed VScript functions which return null strings to actually return null instead of empty strings - Added VScript member variable documentation - Fixed VScript documentation lines sometimes mixing together - Fixed VScript singletons having a ! at the beginning of descriptions - Added Color struct to VScript and allowed color-related inputs to use it - Added more VScript functions for weapons, ammo, ragdolling, and response contexts - Added GameRules singleton for VScript - Exposed AI interaction system to VScript - Recovered some lost documentation from older revisions of the Mapbase wiki - Added a way to get the current game's load type in VScript - Fixed Precache/SpawnEntityFromTable not accounting for a few important field types - Added VScript functions for getting a player's eye vectors - Fixed a crash caused by removing the active weapon of a Combine soldier while it's firing - Changed the way metrocops deploy their manhacks so they could use their manhack death response properly - Fixed "Use Server" keyvalue on game_convar_mod not working - Adjusted CAI_Expresser in VScript
2020-12-17 06:38:23 +03:00
#include "postprocesscontroller.h"
2013-12-03 07:31:46 +04:00
//-----------------------------------------------------------------------------
// Purpose: Player specific data ( sent only to local player, too )
//-----------------------------------------------------------------------------
class CPlayerLocalData
{
public:
// Save/restore
DECLARE_SIMPLE_DATADESC();
// Prediction data copying
DECLARE_CLASS_NOBASE( CPlayerLocalData );
DECLARE_EMBEDDED_NETWORKVAR();
CPlayerLocalData();
void UpdateAreaBits( CBasePlayer *pl, unsigned char chAreaPortalBits[MAX_AREA_PORTAL_STATE_BYTES] );
public:
CNetworkArray( unsigned char, m_chAreaBits, MAX_AREA_STATE_BYTES ); // Which areas are potentially visible to the client?
CNetworkArray( unsigned char, m_chAreaPortalBits, MAX_AREA_PORTAL_STATE_BYTES ); // Which area portals are open?
CNetworkVar( int, m_iHideHUD ); // bitfields containing sections of the HUD to hide
CNetworkVar( float, m_flFOVRate ); // rate at which the FOV changes (defaults to 0)
Vector m_vecOverViewpoint; // Viewpoint overriding the real player's viewpoint
// Fully ducked
CNetworkVar( bool, m_bDucked );
// In process of ducking
CNetworkVar( bool, m_bDucking );
// In process of duck-jumping
CNetworkVar( bool, m_bInDuckJump );
// During ducking process, amount of time before full duc
CNetworkVar( float, m_flDucktime );
CNetworkVar( float, m_flDuckJumpTime );
// Jump time, time to auto unduck (since we auto crouch jump now).
CNetworkVar( float, m_flJumpTime );
// Step sound side flip/flip
int m_nStepside;;
// Velocity at time when we hit ground
CNetworkVar( float, m_flFallVelocity );
// Previous button state
int m_nOldButtons;
class CSkyCamera *m_pOldSkyCamera;
// Base velocity that was passed in to server physics so
// client can predict conveyors correctly. Server zeroes it, so we need to store here, too.
// auto-decaying view angle adjustment
CNetworkQAngle( m_vecPunchAngle );
CNetworkQAngle( m_vecPunchAngleVel );
// Draw view model for the player
CNetworkVar( bool, m_bDrawViewmodel );
// Is the player wearing the HEV suit
CNetworkVar( bool, m_bWearingSuit );
CNetworkVar( bool, m_bPoisoned );
CNetworkVar( float, m_flStepSize );
CNetworkVar( bool, m_bAllowAutoMovement );
// 3d skybox
CNetworkVarEmbedded( sky3dparams_t, m_skybox3d );
// world fog
CNetworkVarEmbedded( fogplayerparams_t, m_PlayerFog );
fogparams_t m_fog;
// audio environment
CNetworkVarEmbedded( audioparams_t, m_audio );
Mapbase v4.3 - Fixed a crash with multiple trigger_look targets - Fixed an issue where some zombie submodel server ragdolls are not solid to the world - Fixed a crash with certain instance classes being loaded in a savegame before the class is registered - Added some of Tony Sergi's missing Source 2007 fixes (contributed by Kris) - Added "ClientCommand" hook for VScript to allow handling of unknown console commands - Added "PlayerRunCommand" hook for VScript to control player movement - Added new button-related script functions for players (GetButtons, DisableButtons, etc.) - Added CUserCmd accessor in VScript for the "PlayerRunCommand" hook - Added "GetWaterLevel" function for VScript - Exposed "Ignite" to VScript for controlling how a fire starts - Fixed NPCs being unable to unholster weapons - Fixed Mapbase crashing when Steam isn't running - Fixed issues with angled/updating sky_camera save/restore - Added VBSP "-skyboxcubemap" parameter to enable skybox default cubemaps + "-defaultcubemapres" to control their resolution - Added ability to disable VScript in a map (and fixed a few potential complications from disabling VScript) - Made clientside VScript only initialize after world is spawned in order to receive serverside script language in time - Added tons of VScript functions to CBaseAnimating related to bodygroups, sequences, etc. - Added VScript functions to players for getting user ID and player name, similar to logic_playerinfo - Added a few L4D2 script functions missing from the ASW SDK - Added "Localize" singleton with a single "GetTokenAsUTF8" function for getting localization strings - Disabled r_hunkalloclightmaps by the request of various users (apparently this completely removes the "Engine hunk overflow" error and allows for really high-res lightmaps) - Fixed npc_antlionguard NPC_TranslateActivity not hooking into base class (allows for VScript manipulation) - Added various unused antlion guard activities to npc_antlionguard AI, allowing for usage as registered activities - Added keyvalue to set LOS mask on combine_mine - Added +USE bounding box limiter to prop_interactable
2020-07-16 18:43:30 +03:00
//Tony; added so tonemap controller can work in multiplayer with inputs.
CNetworkVarEmbedded( tonemap_params_t, m_TonemapParams );
2013-12-03 07:31:46 +04:00
CNetworkVar( bool, m_bSlowMovement );
};
EXTERN_SEND_TABLE(DT_Local);
#endif // PLAYERLOCALDATA_H