Ejemplo n.º 1
0
        public static bool LoadProject(string name)
        {
            if (!ProjectManager.Load(name))
            {
                return(false);
            }
            ProjectName    = ProjectManager.CurrentProject.Name;
            RootDirectory  = name.Substring(0, name.LastIndexOf(Path.DirectorySeparatorChar));;
            LevelDirectory = string.Format("{0}{1}{2}", RootDirectory, Path.DirectorySeparatorChar, "Levels");
            WorldDirectory = string.Format("{0}{1}{2}", RootDirectory, Path.DirectorySeparatorChar, "Worlds");

            // load from file
            if (!SpriteManager.LoadSpritesFromFile(string.Format("{0}{1}sprites.xml", RootDirectory, Path.DirectorySeparatorChar)))
            {
                SpriteManager.LoadDefaultSprites();
            }

            if (!BlockManager.LoadDefinitions(string.Format("{0}{1}{2}.tsa", RootDirectory, Path.DirectorySeparatorChar, ProjectName)))
            {
                BlockManager.LoadDefault();
            }

            BlockManager.LoadBlockStrings(string.Format("{0}{1}strings.xml", RootDirectory, Path.DirectorySeparatorChar));

            if (!GraphicsManager.LoadGraphics(string.Format("{0}{1}{2}.chr", RootDirectory, Path.DirectorySeparatorChar, ProjectName)))
            {
                GraphicsManager.LoadDefault();
            }

            if (!SpecialManager.LoadSpecialGraphics(string.Format("{0}{1}special.chr", RootDirectory, Path.DirectorySeparatorChar)))
            {
                SpecialManager.LoadDefaultSpecialGraphics();
            }

            if (!SpecialManager.LoadSpecialDefinitions(string.Format("{0}{1}special.xml", RootDirectory, Path.DirectorySeparatorChar)))
            {
                SpecialManager.LoadDefaultSpecials();
            }

            if (!MusicManager.LoadMusic(string.Format("{0}{1}music.xml", RootDirectory, Path.DirectorySeparatorChar)))
            {
                MusicManager.LoadDefault();
            }

            return(true);
        }