Exemple #1
0
        public static void LoadMetadata(Level lvl)
        {
            try {
                string propsPath = LevelInfo.PropsPath(lvl.MapName);
                if (lvl.Config.Load(propsPath))
                {
                    lvl.SetPhysics(lvl.Config.Physics);
                }
                else
                {
                    Logger.Log(LogType.ConsoleMessage, ".properties file for level {0} was not found.", lvl.MapName);
                }
            } catch (Exception e) {
                Logger.LogError(e);
            }
            lvl.BlockDB.Cache.Enabled = lvl.Config.UseBlockDB;

            string blockDefsPath = Paths.MapBlockDefs(lvl.MapName);

            BlockDefinition[] defs = BlockDefinition.Load(blockDefsPath);
            for (int b = 0; b < defs.Length; b++)
            {
                if (defs[b] == null)
                {
                    continue;
                }
                lvl.UpdateCustomBlock((BlockID)b, defs[b]);
            }

            lvl.UpdateBlockProps();
            lvl.UpdateAllBlockHandlers();
        }