From 008a1f9dc8ef7eff4a0af5759b81141de165645d Mon Sep 17 00:00:00 2001 From: Theo Champion Date: Thu, 31 Jul 2025 14:45:11 +0200 Subject: [PATCH] feat: Improved movements with delta --- src/player/move.c | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/src/player/move.c b/src/player/move.c index a3af442..070a97b 100644 --- a/src/player/move.c +++ b/src/player/move.c @@ -6,7 +6,7 @@ /* By: tchampio map->map; - next_x = data->player.x + data->player.dir_x * MOVEMENT_SPEED; - next_y = data->player.y + data->player.dir_y * MOVEMENT_SPEED; + next_x = data->player.x + data->player.dir_x * MOVEMENT_SPEED * data->delta; + next_y = data->player.y + data->player.dir_y * MOVEMENT_SPEED * data->delta; if (map[(int)data->player.y][(int)next_x] == '0') - data->player.x += data->player.dir_x * MOVEMENT_SPEED; + data->player.x += data->player.dir_x * MOVEMENT_SPEED * data->delta; if (map[(int)next_y][(int)data->player.x] == '0') - data->player.y += data->player.dir_y * MOVEMENT_SPEED; + data->player.y += data->player.dir_y * MOVEMENT_SPEED * data->delta; } void move_player_backward(t_cub3d_data *data) @@ -36,12 +36,12 @@ void move_player_backward(t_cub3d_data *data) double next_y; map = data->map->map; - next_x = data->player.x - data->player.dir_x * MOVEMENT_SPEED; - next_y = data->player.y - data->player.dir_y * MOVEMENT_SPEED; + next_x = data->player.x - data->player.dir_x * MOVEMENT_SPEED * data->delta; + next_y = data->player.y - data->player.dir_y * MOVEMENT_SPEED * data->delta; if (map[(int)data->player.y][(int)next_x] == '0') - data->player.x -= data->player.dir_x * MOVEMENT_SPEED; + data->player.x -= data->player.dir_x * MOVEMENT_SPEED * data->delta; if (map[(int)next_y][(int)data->player.x] == '0') - data->player.y -= data->player.dir_y * MOVEMENT_SPEED; + data->player.y -= data->player.dir_y * MOVEMENT_SPEED * data->delta; } void move_player_strafe_left(t_cub3d_data *data) @@ -51,12 +51,12 @@ void move_player_strafe_left(t_cub3d_data *data) double next_y; map = data->map->map; - next_x = data->player.x - data->player.plane_x * MOVEMENT_SPEED; - next_y = data->player.y - data->player.plane_y * MOVEMENT_SPEED; + next_x = data->player.x - data->player.plane_x * MOVEMENT_SPEED * data->delta; + next_y = data->player.y - data->player.plane_y * MOVEMENT_SPEED * data->delta; if (map[(int)data->player.y][(int)next_x] == '0') - data->player.x -= data->player.plane_x * MOVEMENT_SPEED; + data->player.x -= data->player.plane_x * MOVEMENT_SPEED * data->delta; if (map[(int)next_y][(int)data->player.x] == '0') - data->player.y -= data->player.plane_y * MOVEMENT_SPEED; + data->player.y -= data->player.plane_y * MOVEMENT_SPEED * data->delta; } void move_player_strafe_right(t_cub3d_data *data) @@ -66,12 +66,12 @@ void move_player_strafe_right(t_cub3d_data *data) double next_y; map = data->map->map; - next_x = data->player.x + data->player.plane_x * MOVEMENT_SPEED; - next_y = data->player.y + data->player.plane_y * MOVEMENT_SPEED; + next_x = data->player.x + data->player.plane_x * MOVEMENT_SPEED * data->delta; + next_y = data->player.y + data->player.plane_y * MOVEMENT_SPEED * data->delta; if (map[(int)data->player.y][(int)next_x] == '0') - data->player.x += data->player.plane_x * MOVEMENT_SPEED; + data->player.x += data->player.plane_x * MOVEMENT_SPEED * data->delta; if (map[(int)next_y][(int)data->player.x] == '0') - data->player.y += data->player.plane_y * MOVEMENT_SPEED; + data->player.y += data->player.plane_y * MOVEMENT_SPEED * data->delta; } void move_player(t_cub3d_data *data)