Esempio n. 1
0
        public static void Replace(Level old, Level lvl)
        {
            LevelDB.SaveBlockDB(old);
            LevelInfo.Loaded.Remove(old);
            LevelInfo.Loaded.Add(lvl);

            old.setPhysics(0);
            old.ClearPhysics();
            lvl.StartPhysics();

            Player[] players = PlayerInfo.Online.Items;
            foreach (Player pl in players)
            {
                if (pl.level != old)
                {
                    continue;
                }
                pl.level = lvl;
                ReloadMap(null, pl, false);
            }

            old.Unload(true, false);
            if (old == Server.mainLevel)
            {
                Server.mainLevel = lvl;
            }
        }
Esempio n. 2
0
 public void SaveBlockDBChanges()
 {
     lock (dbLock) LevelDB.SaveBlockDB(this);
 }