rendered paste bodyvoid fill(int map, int x, int y, int num)
{
if(Grid[y][x] != -1 || Grid[y][x] == num) { return; }
if(inBounds(x, y))
{
if(Grid[y][x] == -1 && getTileType(map, x, y) != TILE_TYPE_WALL) { Grid[y][x] = num; }
}
if(y - 1 >= 0) { fill(map, y - 1, x, num + 1); }
if(x + 1 <= 19) { fill(map, y, x + 1, num + 1); }
if(y + 1 <= 14) { fill(map, y + 1, x, num + 1); }
if(x - 1 >= 0) { fill(map, y, x - 1, num + 1); }
}
for(int x=0;x<20;x++)
{
for(int y=0;y<15;y++)
{
if(map->map[y][x].type==TILE_TYPE_WALL || map->map[y][x].type==TILE_TYPE_SWITCH|| map->map[y][x]==TILE_TYPE_WARP||map->map[y][x]==TILE_TYPE_NPC)
grid[y][x]=-2; //block
else
grid[y][x]=-1; // empty
}
}
void fill(int map,int x,int y,int num)
{
if(inBounds(x,y) && grid[y][x]==-1)
{
grid[y][x]=num;
fill(map,x-1,y,num+1);
fill(map,x+1,y,num+1);
fill(map,x,y-1,num+1);
fill(map,x,y+1,num+1);
}
}