void LoadMainLevel() { try { if (LevelInfo.ExistsOffline(level)) { mainLevel = Level.Load(level); mainLevel.unload = false; if (mainLevel == null) { if (File.Exists(LevelInfo.LevelPath(level) + ".backup")) { Log("Attempting to load backup of " + level + "."); File.Copy(LevelInfo.LevelPath(level) + ".backup", LevelInfo.LevelPath(level), true); mainLevel = Level.Load(level); if (mainLevel == null) { Log("BACKUP FAILED!"); Console.ReadLine(); return; } } else { Log("mainlevel not found"); mainLevel = new Level(level, 128, 64, 128, "flat"); mainLevel.Save(); Level.CreateLeveldb(level); } } } else { Log("mainlevel not found"); mainLevel = new Level(level, 128, 64, 128, "flat"); mainLevel.Save(); Level.CreateLeveldb(level); } LevelInfo.Loaded.Add(mainLevel); // fenderrock - Make sure the level does have a physics thread if (mainLevel.physThread == null) { mainLevel.StartPhysics(); } } catch (Exception e) { ErrorLog(e); } }