add player position

This commit is contained in:
kinou-p 2022-06-14 15:26:12 +02:00
parent deacf577c2
commit bdd5a6e046
3 changed files with 16 additions and 10 deletions

View File

@ -1,5 +1,5 @@
NO ./sprite/mossy_cobblestone.ppm NO ./sprite/magma.ppm
SO ./sprite/mossy_cobblestone.ppm SO ./sprite/magma.ppm
EA ./sprite/obsidian.ppm EA ./sprite/obsidian.ppm
WE ./sprite/obsidian.ppm WE ./sprite/obsidian.ppm

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2022/02/13 16:42:55 by apommier #+# #+# */ /* Created: 2022/02/13 16:42:55 by apommier #+# #+# */
/* Updated: 2022/06/14 14:56:27 by apommier ### ########.fr */ /* Updated: 2022/06/14 15:22:23 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -151,6 +151,8 @@ int main(int argc, char **argv)
if (argc != 2) if (argc != 2)
ft_error("Error: bad number of arguments, only need a map"); ft_error("Error: bad number of arguments, only need a map");
set_map(&img); set_map(&img);
img.player.x = 0;
img.player.y = 0;
if (check_map(argv, &img)) if (check_map(argv, &img))
return (0); return (0);
img.map.texture.basic = get_texture(0, 0, &img); img.map.texture.basic = get_texture(0, 0, &img);
@ -159,9 +161,9 @@ int main(int argc, char **argv)
if (!img.mlx) if (!img.mlx)
ft_error("Error: mlx_init fail"); ft_error("Error: mlx_init fail");
img.mlx_win = mlx_new_window(img.mlx, 960, 512, "Cub3D"); img.mlx_win = mlx_new_window(img.mlx, 960, 512, "Cub3D");
img.player.x = 64 * 3 + 32; //img.player.x = 64 * 3 + 32;
img.player.y = 64 + 32; //img.player.y = 64 + 32;
img.player.angle = 90; //img.player.angle = 90;
img.player.vx = cos(deg_to_rad(img.player.angle)); img.player.vx = cos(deg_to_rad(img.player.angle));
img.player.vy = sin(deg_to_rad(img.player.angle)); img.player.vy = sin(deg_to_rad(img.player.angle));
img.player.front = 0; img.player.front = 0;

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2022/05/10 17:54:25 by sadjigui #+# #+# */ /* Created: 2022/05/10 17:54:25 by sadjigui #+# #+# */
/* Updated: 2022/06/14 15:00:35 by apommier ### ########.fr */ /* Updated: 2022/06/14 15:25:06 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -151,7 +151,9 @@ int check_inner_utils(char *line, t_data *img)
if (line[i] == 'N' || line[i] == 'S' || line[i] == 'E' || line[i] == 'W') if (line[i] == 'N' || line[i] == 'S' || line[i] == 'E' || line[i] == 'W')
{ {
find_angle(line[i], img); find_angle(line[i], img);
img->player.x = (i - 1) * 64; //img->player.x = (i - 1) * 64;
img->player.x = i * 64 - 32;
printf("playerx= %f\n", img->player.x);
player++; player++;
} }
else if (line[i] != '3' && line[i] != '0' && line[i] != '1') else if (line[i] != '3' && line[i] != '0' && line[i] != '1')
@ -173,8 +175,10 @@ void check_inner(char **map, t_data *img)//fonction bizarre
while (map[i]) while (map[i])
{ {
player += check_inner_utils(map[i], img); player += check_inner_utils(map[i], img);
if (player == 1) if (player == 1 && !img->player.y)
img->player.y == (i - 1) * 64; img->player.y = i * 64 - 32;
printf("playery= %f\n", img->player.y);
//img->player.y = (i - 1) * 64;
i++; i++;
} }
if (player == 0) if (player == 0)