hl2_src-leak-2017/src/game/client/tfc/c_tfc_player.h

70 lines
1.3 KiB
C++

//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
//=============================================================================//
#ifndef C_TFC_PLAYER_H
#define C_TFC_PLAYER_H
#ifdef _WIN32
#pragma once
#endif
#include "tfc_playeranimstate.h"
#include "c_baseplayer.h"
#include "tfc_shareddefs.h"
#include "baseparticleentity.h"
#include "tfc_player_shared.h"
class C_TFCPlayer : public C_BasePlayer
{
public:
DECLARE_CLASS( C_TFCPlayer, C_BasePlayer );
DECLARE_CLIENTCLASS();
DECLARE_PREDICTABLE();
DECLARE_INTERPOLATION();
C_TFCPlayer();
~C_TFCPlayer();
static C_TFCPlayer* GetLocalTFCPlayer();
virtual const QAngle& GetRenderAngles();
virtual void UpdateClientSideAnimation();
virtual void PostDataUpdate( DataUpdateType_t updateType );
virtual void ProcessMuzzleFlashEvent();
public:
CTFCPlayerShared m_Shared;
// Called by shared code.
public:
void DoAnimationEvent( PlayerAnimEvent_t event, int nData );
ITFCPlayerAnimState *m_PlayerAnimState;
QAngle m_angEyeAngles;
CInterpolatedVar< QAngle > m_iv_angEyeAngles;
private:
C_TFCPlayer( const C_TFCPlayer & );
};
inline C_TFCPlayer* ToTFCPlayer( CBasePlayer *pPlayer )
{
Assert( dynamic_cast< C_TFCPlayer* >( pPlayer ) != NULL );
return static_cast< C_TFCPlayer* >( pPlayer );
}
#endif // C_TFC_PLAYER_H