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> +#+ */
/* +#+ */
/* 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 i;
int j;
if (!map || !x || !y)
return (FAILURE);
i = 0;
while (i < map->height)
while (i < map->height * map->width)
{
j = 0;
while (j < map->width)
{
if (map->grid[i][j] == TILE_PLAYER || map->grid[i][j] == TILE_EMPTY)
{
*x = j;
*y = i;
return (SUCCESS);
}
j++;
}
*x = i % map->width;
*y = i / map->width;
if (map->grid[*y][*x] == TILE_PLAYER || map->grid[*y][*x] == TILE_EMPTY)
return (SUCCESS);
i++;
}
return (FAILURE);

View File

@ -6,7 +6,7 @@
/* By: whaffman <whaffman@student.codam.nl> +#+ */
/* +#+ */
/* 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);
}
parse_args(mapfile, map);
print_map(map);
grid = copy_map(map->grid, map->width, map->height);
if (!grid)
{
@ -38,7 +37,7 @@ int map_create(t_game **game, const char *mapfile)
}
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);
map_free(map);
return (FAILURE);

View File

@ -6,7 +6,7 @@
/* By: whaffman <whaffman@student.codam.nl> +#+ */
/* +#+ */
/* 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;
while (lines[i] && !is_map_line(lines[i]))
{
printf("Parsing line: %s\n", lines[i]);
if (*lines[i] && !parse_config_line(lines[i], map))
return (free(lines), FAILURE);
i++;

View File

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