#include "baseentity.h" #include "cglm/affine-pre.h" #include "cglm/mat4.h" #include "physics.h" class CBasePlayer: public CBaseEntity { public: virtual void Precache ( void ) override; virtual void Spawn( void ) override; virtual void ReadParameter( const char *szName, const char *szValue ) override; virtual void Destroy( void ) override; virtual void Think( float fDelta ) override; CPxBoxMesh m_Collider; CPxRigidBody m_RigidBody; }; class C_BasePlayer: public C_BaseEntity { public: virtual void Precache ( void ) override; virtual void Spawn( void ) override; virtual void Destroy( void ) override; virtual void Think( float fDelta ) override; }; extern mat4 g_cameraView; void C_BasePlayer::Precache() { } void C_BasePlayer::Spawn() { }; void C_BasePlayer::Destroy() { } void C_BasePlayer::Think( float fDelta ) { CBasePlayer *pPlayer = (CBasePlayer*)pEntity; glm_mat4_identity(g_cameraView); V_memcpy(&g_cameraView[3][0], pPlayer->m_RigidBody.GetPosition().m, 12); }; LINK_CLIENT_ENTITY(C_BasePlayer, CBasePlayer)