public void GetWorldTiles (Tilemap tileMap, bool save) 
	{
        saveTiles = new List<WorldTile>();

        foreach (Vector3Int pos in tileMap.cellBounds.allPositionsWithin)
		{
			var lPos = new Vector3Int(pos.x, pos.y, pos.z);

            if (!tileMap.HasTile(lPos)) continue;

			WorldTile _tile = new WorldTile()
            {
				localPlace = lPos,
                gridLocation = tileMap.CellToWorld(lPos),
				tileBase = tileMap.GetTile(lPos),
				isVisible = false,
				isExplored = false,
			};
				
			if(save)
			{
				saveTiles.Add(_tile);
			}
			else
			{
				tiles.Add(_tile.gridLocation, _tile);
			}   
		}
		
		if(save)
		{
			TileMapDataSystem.Save(tileMap.name, "Map", saveTiles);
		}
	}
	public void LoadWorldTiles (){
		floorMap.ClearAllTiles();
		saveTiles = TileMapDataSystem.Load(floorMap.name, "Map");
		SetWorldTiles(floorMap, "Floor");
		obstacleMap.ClearAllTiles();
		saveTiles = TileMapDataSystem.Load(obstacleMap.name, "Map");
		SetWorldTiles(obstacleMap, "Obstacle");
	}