player steps

This commit is contained in:
Quinten Mennen 2025-05-06 19:49:48 +02:00
parent 5433bdde72
commit 0a25f91436
4 changed files with 16 additions and 8 deletions

View File

@ -6,7 +6,7 @@
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */ /* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2025/04/15 15:52:44 by qmennen #+# #+# */ /* Created: 2025/04/15 15:52:44 by qmennen #+# #+# */
/* Updated: 2025/05/06 18:36:47 by qmennen ### ########.fr */ /* Updated: 2025/05/06 19:20:58 by qmennen ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -49,6 +49,7 @@ typedef struct s_player
t_vec2 camera; t_vec2 camera;
double speed; double speed;
double fov; double fov;
int steps;
} t_player; } t_player;
typedef struct s_map typedef struct s_map

View File

@ -6,7 +6,7 @@
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */ /* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2025/04/15 18:53:19 by qmennen #+# #+# */ /* Created: 2025/04/15 18:53:19 by qmennen #+# #+# */
/* Updated: 2025/05/06 15:20:18 by qmennen ### ########.fr */ /* Updated: 2025/05/06 19:22:37 by qmennen ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -27,6 +27,7 @@ int player_create(t_game **game)
player->camera.y = 0.66f; player->camera.y = 0.66f;
player->speed = 3.f; player->speed = 3.f;
player->fov = 90.f; player->fov = 90.f;
player->steps = 0;
(*game)->player = player; (*game)->player = player;
return (SUCCESS); return (SUCCESS);
} }
@ -39,9 +40,15 @@ static void move(t_map *map, t_player *player, int dir, double delta)
xa = dir * player->dir.x * player->speed * delta; xa = dir * player->dir.x * player->speed * delta;
ya = dir * player->dir.y * player->speed * delta; ya = dir * player->dir.y * player->speed * delta;
if (xa != 0 && collision_horizontal(map, player, xa)) if (xa != 0 && collision_horizontal(map, player, xa))
{
player->pos.x += xa; player->pos.x += xa;
player->steps++;
}
if (ya != 0 && collision_vertical(map, player, ya)) if (ya != 0 && collision_vertical(map, player, ya))
{
player->pos.y += ya; player->pos.y += ya;
player->steps++;
}
} }
static void strave(t_map *map, t_player *player, int dir, double delta) static void strave(t_map *map, t_player *player, int dir, double delta)

View File

@ -6,7 +6,7 @@
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */ /* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2025/05/02 11:58:09 by whaffman #+# #+# */ /* Created: 2025/05/02 11:58:09 by whaffman #+# #+# */
/* Updated: 2025/05/06 19:06:09 by qmennen ### ########.fr */ /* Updated: 2025/05/06 19:49:13 by qmennen ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */

View File

@ -6,7 +6,7 @@
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */ /* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2025/04/15 15:30:27 by qmennen #+# #+# */ /* Created: 2025/04/15 15:30:27 by qmennen #+# #+# */
/* Updated: 2025/05/06 19:10:12 by qmennen ### ########.fr */ /* Updated: 2025/05/06 19:19:23 by qmennen ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -22,7 +22,7 @@ int screen_create(t_game **game)
return (FAILURE); return (FAILURE);
screen->width = WIDTH; screen->width = WIDTH;
screen->height = HEIGHT; screen->height = HEIGHT;
mlx_set_setting(MLX_FULLSCREEN, 1); // mlx_set_setting(MLX_FULLSCREEN, 1);
mlx = mlx_init(WIDTH, HEIGHT, TITLE, false); mlx = mlx_init(WIDTH, HEIGHT, TITLE, false);
if (!mlx) if (!mlx)
return (FAILURE); return (FAILURE);