This commit is contained in:
Ñõԭ×Ó
2025-05-27 14:57:30 +08:00
parent 00e0d9366d
commit 9d96af2ff3
6 changed files with 45 additions and 35 deletions

View File

@@ -15,6 +15,7 @@ void flood(int *map, int *copy_wall)
do
{
num++;
for (int i = 0; i < size_x; i++)
{
for (int j = 0; j < size_y; j++)
@@ -26,7 +27,7 @@ void flood(int *map, int *copy_wall)
if (!copy_wall[(i * (size_y + 1) * 2) + (j * 2) + 1] && map[((i-1) * size_y) + j] == -1) //左边格子
{
map[((i-1) * size_y) + j] = map[(i * size_y) + j] + 1;
num++;
//~ num++;
}
}
@@ -35,7 +36,7 @@ void flood(int *map, int *copy_wall)
if (!copy_wall[((i+1) * (size_y + 1) * 2) + (j * 2) + 1] && map[((i+1) * size_y) + j] == -1) //右边格子
{
map[((i+1) * size_y) + j] = map[(i * size_y) + j] + 1;
num++;
//~ num++;
}
}
@@ -44,7 +45,7 @@ void flood(int *map, int *copy_wall)
if (!copy_wall[(i * (size_y + 1) * 2) + (j * 2) + 0] && map[(i *size_y) + (j-1)] == -1)
{
map[(i * size_y) + (j-1)] = map[(i * size_y) + j] + 1;
num++;
//~ num++;
}
}
@@ -53,11 +54,11 @@ void flood(int *map, int *copy_wall)
if (!copy_wall[(i * (size_y + 1) * 2) + ((j+1) * 2) + 0] && map[(i * size_y) + (j+1)] == -1)
{
map[(i * size_y) + (j+1)] = map[(i * size_y) + j] + 1;
num++;
//~ num++;
}
}
}
}
}
} while (map[((target_x - 1) * size_y) + (target_y - 1)] == -1 && num < (size_x * size_y));
}
}