From 04655283852b1b332ae9f8610aca20a553b3791f Mon Sep 17 00:00:00 2001 From: nathan Date: Mon, 17 Nov 2025 02:23:10 -0700 Subject: Better window focus --- src/player.c | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'src/player.c') diff --git a/src/player.c b/src/player.c index a153443..9a08204 100644 --- a/src/player.c +++ b/src/player.c @@ -26,12 +26,11 @@ void updatePlayerHeight(Player* player, Game* game) player->position.y = height; } -void updatePlayerMovement(Player* player, Game* game) +void updatePlayerLookingAround(Player* player, Game* game) { - Camera* camera = &player->camera; - Vector2* cameraAngle = &player->cameraAngle; Settings* settings = &game->settings; - + Vector2* cameraAngle = &player->cameraAngle; + // Get mouse speed. Vector2 mouseSpeed = Vector2Scale(GetMouseDelta(), settings->mouseSpeed); mouseSpeed = Vector2Scale(mouseSpeed, 1.0 / (PI * 2.0)); @@ -41,10 +40,22 @@ void updatePlayerMovement(Player* player, Game* game) cameraAngle->x = Wrap(cameraAngle->x, -PI, PI); cameraAngle->y = Clamp(cameraAngle->y, -PI / 2.5, PI / 2.5); - // Set player direction + // Set player direction. Matrix matrix = MatrixRotateXYZ( (Vector3){-cameraAngle->y, cameraAngle->x, 0.0}); player->direction = (Vector3){matrix.m2, matrix.m6, matrix.m10}; +} + +void updatePlayerMovement(Player* player, Game* game) +{ + Camera* camera = &player->camera; + Vector2* cameraAngle = &player->cameraAngle; + Settings* settings = &game->settings; + + if (!game->isCursorEnabled) + { + updatePlayerLookingAround(player, game); + } // Walking around. player->velocity = Vector3Zero(); -- cgit v1.2.3