pulled create() out of MCInfdevOldLevel.__init__
This commit is contained in:
parent
d4d9b35cd9
commit
d34b52b959
45
mclevel.py
45
mclevel.py
@ -1620,26 +1620,7 @@ class MCInfdevOldLevel(MCLevel):
|
|||||||
def __str__(self):
|
def __str__(self):
|
||||||
return "MCInfdevOldLevel(" + os.path.split(self.worldDir)[1] + ")"
|
return "MCInfdevOldLevel(" + os.path.split(self.worldDir)[1] + ")"
|
||||||
|
|
||||||
def __init__(self, filename = None, create = False, random_seed=None, last_played=None):
|
def create(self, filename, random_seed, last_played):
|
||||||
#pass level.dat's root tag and filename to read an existing level.
|
|
||||||
#pass only filename to create a new one
|
|
||||||
#filename should be the path to the world dir
|
|
||||||
self.Length = 0
|
|
||||||
self.Width = 0
|
|
||||||
self.Height = 128 #subject to change?
|
|
||||||
|
|
||||||
if (not (os.sep in filename)) or (os.path.basename(filename).lower() != "level.dat"): #we've been passed a world subdir by some rascal
|
|
||||||
self.worldDir = filename
|
|
||||||
filename = os.path.join(filename, "level.dat")
|
|
||||||
else:
|
|
||||||
self.worldDir = os.path.split(filename)[0]
|
|
||||||
|
|
||||||
self._presentChunks = {};
|
|
||||||
|
|
||||||
self.loadedChunks = deque()
|
|
||||||
self.decompressedChunks = deque()
|
|
||||||
|
|
||||||
if create:
|
|
||||||
|
|
||||||
if filename == None:
|
if filename == None:
|
||||||
raise ValueError, "Can't create an Infinite level without a filename!"
|
raise ValueError, "Can't create an Infinite level without a filename!"
|
||||||
@ -1686,6 +1667,29 @@ class MCInfdevOldLevel(MCLevel):
|
|||||||
if not os.path.exists(self.worldDir):
|
if not os.path.exists(self.worldDir):
|
||||||
os.mkdir(self.worldDir)
|
os.mkdir(self.worldDir)
|
||||||
|
|
||||||
|
def __init__(self, filename = None, create = False, random_seed=None, last_played=None):
|
||||||
|
#pass level.dat's root tag and filename to read an existing level.
|
||||||
|
#pass only filename to create a new one
|
||||||
|
#filename should be the path to the world dir
|
||||||
|
self.Length = 0
|
||||||
|
self.Width = 0
|
||||||
|
self.Height = 128 #subject to change?
|
||||||
|
|
||||||
|
if (not (os.sep in filename)) or (os.path.basename(filename).lower() != "level.dat"): #we've been passed a world subdir by some rascal
|
||||||
|
self.worldDir = filename
|
||||||
|
filename = os.path.join(filename, "level.dat")
|
||||||
|
else:
|
||||||
|
|
||||||
|
self.worldDir = os.path.split(filename)[0]
|
||||||
|
|
||||||
|
self._presentChunks = {};
|
||||||
|
|
||||||
|
#used to limit memory usage
|
||||||
|
self.loadedChunks = deque()
|
||||||
|
self.decompressedChunks = deque()
|
||||||
|
|
||||||
|
if create:
|
||||||
|
self.create(filename, random_seed, last_played);
|
||||||
else:
|
else:
|
||||||
root_tag = nbt.load(filename)
|
root_tag = nbt.load(filename)
|
||||||
|
|
||||||
@ -1695,7 +1699,6 @@ class MCInfdevOldLevel(MCLevel):
|
|||||||
if create:
|
if create:
|
||||||
self.saveInPlace();
|
self.saveInPlace();
|
||||||
|
|
||||||
|
|
||||||
self.dirhashes = [self.dirhash(n) for n in range(64)];
|
self.dirhashes = [self.dirhash(n) for n in range(64)];
|
||||||
self.dirhash=self.dirhashlookup;
|
self.dirhash=self.dirhashlookup;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user