unwrap loop in find_player_or_empty

This commit is contained in:
whaffman 2025-04-24 18:04:07 +02:00
parent 39fea719bf
commit e866d3f702
4 changed files with 12 additions and 22 deletions

View File

@ -6,7 +6,7 @@
/* By: whaffman <whaffman@student.codam.nl> +#+ */ /* By: whaffman <whaffman@student.codam.nl> +#+ */
/* +#+ */ /* +#+ */
/* Created: 2025/04/23 12:13:50 by whaffman #+# #+# */ /* Created: 2025/04/23 12:13:50 by whaffman #+# #+# */
/* Updated: 2025/04/23 12:20:20 by whaffman ######## odam.nl */ /* Updated: 2025/04/24 11:55:22 by whaffman ######## odam.nl */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -15,24 +15,16 @@
int find_player_or_empty(t_map *map, int *x, int *y) int find_player_or_empty(t_map *map, int *x, int *y)
{ {
int i; int i;
int j;
if (!map || !x || !y) if (!map || !x || !y)
return (FAILURE); return (FAILURE);
i = 0; i = 0;
while (i < map->height) while (i < map->height * map->width)
{ {
j = 0; *x = i % map->width;
while (j < map->width) *y = i / map->width;
{ if (map->grid[*y][*x] == TILE_PLAYER || map->grid[*y][*x] == TILE_EMPTY)
if (map->grid[i][j] == TILE_PLAYER || map->grid[i][j] == TILE_EMPTY)
{
*x = j;
*y = i;
return (SUCCESS); return (SUCCESS);
}
j++;
}
i++; i++;
} }
return (FAILURE); return (FAILURE);

View File

@ -6,7 +6,7 @@
/* By: whaffman <whaffman@student.codam.nl> +#+ */ /* By: whaffman <whaffman@student.codam.nl> +#+ */
/* +#+ */ /* +#+ */
/* Created: 2025/04/23 12:21:13 by whaffman #+# #+# */ /* Created: 2025/04/23 12:21:13 by whaffman #+# #+# */
/* Updated: 2025/04/23 12:22:15 by whaffman ######## odam.nl */ /* Updated: 2025/04/24 11:45:24 by whaffman ######## odam.nl */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -28,7 +28,6 @@ int map_create(t_game **game, const char *mapfile)
return (FAILURE); return (FAILURE);
} }
parse_args(mapfile, map); parse_args(mapfile, map);
print_map(map);
grid = copy_map(map->grid, map->width, map->height); grid = copy_map(map->grid, map->width, map->height);
if (!grid) if (!grid)
{ {
@ -38,7 +37,7 @@ int map_create(t_game **game, const char *mapfile)
} }
if (!enclosed_map(map)) if (!enclosed_map(map))
{ {
fprintf(stderr, "NOT GOOD MAP FRIEND\n"); ft_putendl_fd("Map is not enclosed", STDERR_FILENO);
grid_free(grid, map->height); grid_free(grid, map->height);
map_free(map); map_free(map);
return (FAILURE); return (FAILURE);

View File

@ -6,7 +6,7 @@
/* By: whaffman <whaffman@student.codam.nl> +#+ */ /* By: whaffman <whaffman@student.codam.nl> +#+ */
/* +#+ */ /* +#+ */
/* Created: 2025/04/22 13:11:37 by whaffman #+# #+# */ /* Created: 2025/04/22 13:11:37 by whaffman #+# #+# */
/* Updated: 2025/04/22 13:11:46 by whaffman ######## odam.nl */ /* Updated: 2025/04/24 11:45:52 by whaffman ######## odam.nl */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -23,7 +23,6 @@ int parse_file(char *buffer, t_map *map)
i = 0; i = 0;
while (lines[i] && !is_map_line(lines[i])) while (lines[i] && !is_map_line(lines[i]))
{ {
printf("Parsing line: %s\n", lines[i]);
if (*lines[i] && !parse_config_line(lines[i], map)) if (*lines[i] && !parse_config_line(lines[i], map))
return (free(lines), FAILURE); return (free(lines), FAILURE);
i++; i++;

View File

@ -23,8 +23,8 @@ C 100,100,10
1000001110000001110011111111 110000001000000001 1000001110000001110011111111 110000001000000001
1000001 10001000000010000001 100000001000000001 1000001 10001000000010000001 100000001000000001
1000001110001000000000000001111100000001000000001 1000001110001000000000000001111100000001000000001
1000000000001111111111100000000000111111000000001 100W000000001111111111100000000000111111000000001
1000000000001 1000011111111 1000001001 1000000W00001 1000011111111 1000001001
1000011111001 100001 1111111001 1000011111001 100001 1111111001
100001 1001 1000011111111 1001 100001 1001 1000011111111 1001
111111 1001 1000000000001 1001 111111 1001 1000000000001 1001