From 1ef6efab8d3e070c88da7a614e4094bd3305fed0 Mon Sep 17 00:00:00 2001 From: Alejandro Aguilera Date: Sat, 16 Apr 2011 13:11:37 +0200 Subject: [PATCH] Change _iterate_regionfiles to use glob instead of os.walk. The function gets simpler in this way With this you can fool overviewer to render the nether just poiting the "DIM-1" instead the world dir. (and you also need to copy the level.dat to the DIM-1 directory, because nether has not spawn) --- world.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/world.py b/world.py index b1b0ca7..7f7bab1 100644 --- a/world.py +++ b/world.py @@ -16,6 +16,7 @@ import functools import os import os.path +from glob import glob import multiprocessing import Queue import sys @@ -287,12 +288,10 @@ class World(object): p = f.split(".") yield (int(p[1]), int(p[2]), join(self.worlddir, 'region', f)) else: - for dirpath, dirnames, filenames in os.walk(os.path.join(self.worlddir, 'region')): - if not dirnames and filenames and "DIM-1" not in dirpath: - for f in filenames: - if f.startswith("r.") and f.endswith(".mcr"): - p = f.split(".") - yield (int(p[1]), int(p[2]), join(dirpath, f)) + for path in glob(os.path.join(self.worlddir, 'region') + "/r.*.*.mcr"): + dirpath, f = os.path.split(path) + p = f.split(".") + yield (int(p[1]), int(p[2]), join(dirpath, f)) def get_save_dir(): """Returns the path to the local saves directory