public override void Load(string filename)
{
try
{
mChunks.Clear();
//CurrentBlock = new Vector3i(0, 0, 0);
Filename = filename;
mFolder = Path.GetDirectoryName(filename);
mRoot = new NbtFile(filename);
mRoot.LoadFile();
}
catch (Exception e)
{
if(_DEBUG) Console.WriteLine(e);
System.Windows.Forms.DialogResult dr = System.Windows.Forms.MessageBox.Show("Your level.dat is broken. Copying over level.dat_old...","ERROR",System.Windows.Forms.MessageBoxButtons.OKCancel);
if (dr == System.Windows.Forms.DialogResult.OK)
{
File.Copy(Path.ChangeExtension(filename, "dat_old"), filename, true);
Load(filename);
}
else return;
}
if (Cache == null)
{
Cache = new MapMetadata(this, mFolder);
Cache.UpdateCache();
}
LoadChunk(0, 0);
}