#include "Player.h" #include #include #include #include "KeyboardController.h" static constexpr float ACCELERATION {1900}; static constexpr float MAX_SPEED {160}; Player::Player() : m_position {400, 450}, m_velocity {0, 0}, m_controller {std::make_unique()} { } void Player::update(const float dt) { const auto direction = m_controller->direction(); const Vector2 acceleration { direction.x * ACCELERATION, direction.y * ACCELERATION, }; m_velocity.x = std::clamp(m_velocity.x + acceleration.x * dt, -MAX_SPEED, MAX_SPEED); m_velocity.y = std::clamp(m_velocity.y + acceleration.y * dt, -MAX_SPEED, MAX_SPEED); m_position.x += m_velocity.x * dt; m_position.y += m_velocity.y * dt; } void Player::draw() { DrawCircle(m_position.x, m_position.y, 10, LIGHTGRAY); }