extends Camera2D @export var limit_tile_map: TileMapLayer func _ready() -> void: if limit_tile_map: var tile_size := limit_tile_map.tile_set.tile_size limit_top = limit_tile_map.get_used_rect().position.y * tile_size.y limit_bottom = limit_tile_map.get_used_rect().end.y * tile_size.y limit_left = limit_tile_map.get_used_rect().position.x * tile_size.x limit_right = limit_tile_map.get_used_rect().end.x * tile_size.x var difference := Vector2i(get_viewport_rect().size) - limit_tile_map.get_used_rect().size * tile_size if difference.x > 0: limit_left -= int(difference.x * 0.5) limit_right += int(difference.x * 0.5) if difference.y > 0: limit_top -= int(difference.x * 0.5) limit_bottom += int(difference.x * 0.5)