1
This commit is contained in:
136
game/shared/sdk/sdk_player_shared.h
Normal file
136
game/shared/sdk/sdk_player_shared.h
Normal file
@ -0,0 +1,136 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose: Shared Player Variables / Functions and variables that may or may not be networked
|
||||
//
|
||||
//===========================================================================================//
|
||||
|
||||
#ifndef SDK_PLAYER_SHARED_H
|
||||
#define SDK_PLAYER_SHARED_H
|
||||
#ifdef _WIN32
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#include "networkvar.h"
|
||||
#include "weapon_sdkbase.h"
|
||||
|
||||
#ifdef CLIENT_DLL
|
||||
class C_SDKPlayer;
|
||||
#else
|
||||
class CSDKPlayer;
|
||||
#endif
|
||||
|
||||
class CSDKPlayerShared
|
||||
{
|
||||
public:
|
||||
|
||||
#ifdef CLIENT_DLL
|
||||
friend class C_SDKPlayer;
|
||||
typedef C_SDKPlayer OuterClass;
|
||||
DECLARE_PREDICTABLE();
|
||||
#else
|
||||
friend class CSDKPlayer;
|
||||
typedef CSDKPlayer OuterClass;
|
||||
#endif
|
||||
|
||||
DECLARE_EMBEDDED_NETWORKVAR()
|
||||
DECLARE_CLASS_NOBASE( CSDKPlayerShared );
|
||||
|
||||
CSDKPlayerShared();
|
||||
~CSDKPlayerShared();
|
||||
|
||||
#if defined ( SDK_USE_STAMINA ) || defined ( SDK_USE_SPRINTING )
|
||||
void SetStamina( float stamina );
|
||||
float GetStamina( void ) { return m_flStamina; }
|
||||
#endif // SDK_USE_STAMINA || SDK_USE_SPRINTING
|
||||
|
||||
void Init( OuterClass *pOuter );
|
||||
|
||||
bool IsSniperZoomed( void ) const;
|
||||
bool IsDucking( void ) const;
|
||||
|
||||
#if defined ( SDK_USE_PLAYERCLASSES )
|
||||
void SetDesiredPlayerClass( int playerclass );
|
||||
int DesiredPlayerClass( void );
|
||||
|
||||
void SetPlayerClass( int playerclass );
|
||||
int PlayerClass( void );
|
||||
#endif
|
||||
|
||||
CWeaponSDKBase* GetActiveSDKWeapon() const;
|
||||
|
||||
#if defined ( SDK_USE_PRONE )
|
||||
void StartGoingProne( void );
|
||||
void StandUpFromProne( void );
|
||||
bool IsProne() const;
|
||||
bool IsGettingUpFromProne() const;
|
||||
bool IsGoingProne() const;
|
||||
void SetProne( bool bProne, bool bNoAnimation = false );
|
||||
bool CanChangePosition( void );
|
||||
#endif
|
||||
|
||||
bool IsJumping( void ) { return m_bJumping; }
|
||||
void SetJumping( bool bJumping );
|
||||
|
||||
void ForceUnzoom( void );
|
||||
|
||||
#ifdef SDK_USE_SPRINTING
|
||||
bool IsSprinting( void ) { return m_bIsSprinting; }
|
||||
|
||||
void SetSprinting( bool bSprinting );
|
||||
void StartSprinting( void );
|
||||
void StopSprinting( void );
|
||||
|
||||
void ResetSprintPenalty( void );
|
||||
#endif
|
||||
|
||||
void ComputeWorldSpaceSurroundingBox( Vector *pVecWorldMins, Vector *pVecWorldMaxs );
|
||||
|
||||
private:
|
||||
|
||||
#if defined ( SDK_USE_PRONE )
|
||||
CNetworkVar( bool, m_bProne );
|
||||
#endif
|
||||
|
||||
#if defined ( SDK_USE_PLAYERCLASSES )
|
||||
CNetworkVar( int, m_iPlayerClass );
|
||||
CNetworkVar( int, m_iDesiredPlayerClass );
|
||||
#endif
|
||||
|
||||
|
||||
#if defined ( SDK_USE_SPRINTING )
|
||||
CNetworkVar( bool, m_bIsSprinting );
|
||||
bool m_bGaveSprintPenalty;
|
||||
#endif
|
||||
|
||||
#if defined ( SDK_USE_STAMINA ) || defined ( SDK_USE_SPRINTING )
|
||||
CNetworkVar( float, m_flStamina );
|
||||
#endif // SDK_USE_STAMINA || SDK_USE_SPRINTING
|
||||
|
||||
public:
|
||||
|
||||
#ifdef SDK_USE_PRONE
|
||||
float m_flNextProneCheck; // Prevent it switching their prone state constantly.
|
||||
|
||||
CNetworkVar( float, m_flUnProneTime );
|
||||
CNetworkVar( float, m_flGoProneTime );
|
||||
CNetworkVar( bool, m_bForceProneChange );
|
||||
#endif
|
||||
|
||||
bool m_bJumping;
|
||||
|
||||
float m_flLastViewAnimationTime;
|
||||
|
||||
//Tony; player speeds; at spawn server and client update both of these based on class (if any)
|
||||
float m_flRunSpeed;
|
||||
float m_flSprintSpeed;
|
||||
float m_flProneSpeed;
|
||||
|
||||
private:
|
||||
|
||||
OuterClass *m_pOuter;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
#endif //SDK_PLAYER_SHARED_H
|
Reference in New Issue
Block a user