#include "player.h" #include "game.h" #include "entitysystem.h" void CMOBAPlayer::Spawn() { CBaseEntity::Spawn(); SetPhysics(k_EPhysics_Static); SetModel("game/core/models/sphere.fmdl"); SetScale(1); SetAbsOrigin({0,-14.5, 0}); SetThink(Think); }; void CMOBAPlayer::Think( float fDelta ) { BaseClass::Think(fDelta); Vector vPosition = GetAbsOrigin(); // player might lie to us m_vMovementVector.x = glm_clamp(m_vMovementVector.x, -1, 1); m_vMovementVector.y = glm_clamp(m_vMovementVector.y, -1, 1); vPosition.x += m_vMovementVector.x*fDelta*5; vPosition.z += m_vMovementVector.z*fDelta*5; SetAbsOrigin(vPosition); }; LINK_ENTITY_TO_CLASS(player, CMOBAPlayer) BEGIN_DATADESC(CMOBAPlayer) END_DATADESC() IMPLEMENT_SEND_DT(CMOBAPlayer) END_SEND_DT() IMPLEMENT_RECV_DT(CMOBAPlayer) NetPropFloat3(m_vMovementVector) END_RECV_DT()