StonehearthEditor.Module.InitializeFromManifest C# (CSharp) Method

InitializeFromManifest() public method

public InitializeFromManifest ( ) : void
return void
        public void InitializeFromManifest()
        {
            string modManifestPath = Path + "/manifest.json";

            if (System.IO.File.Exists(modManifestPath))
            {
                try
                {
                    using (StreamReader sr = new StreamReader(modManifestPath, Encoding.UTF8))
                    {
                        string fileString = sr.ReadToEnd();
                        mManifestJson = JObject.Parse(fileString);

                        AddModuleFiles("aliases");
                        AddModuleFiles("components");
                        AddModuleFiles("controllers");
                    }

                    mFileWatcher = new FileSystemWatcher(Path, "manifest.json");
                    mFileWatcher.NotifyFilter = NotifyFilters.LastWrite;
                    mFileWatcher.Changed += new FileSystemEventHandler(OnChanged);
                    mFileWatcher.EnableRaisingEvents = true;
                }
                catch (Exception e)
                {
                    MessageBox.Show("Failure while reading manifest file " + modManifestPath + ". Error: " + e.Message);
                }
            }

            string englishLocalizationFilePath = Path + "/locales/en.json";
            if (System.IO.File.Exists(englishLocalizationFilePath))
            {
                try
                {
                    using (StreamReader sr = new StreamReader(englishLocalizationFilePath, Encoding.UTF8))
                    {
                        string fileString = sr.ReadToEnd();
                        mEnglishLocalizationJson = JObject.Parse(fileString);
                    }
                }
                catch (Exception e)
                {
                    MessageBox.Show("Exception while reading localization json " + englishLocalizationFilePath + ". Error: " + e.Message);
                }
            }
        }

Usage Example

Exemplo n.º 1
0
        public void Load()
        {
            // Parse Manifests
            string[] modFolders = Directory.GetDirectories(mModsDirectoryPath);
            if (modFolders == null)
            {
                return;
            }

            foreach (string modPath in modFolders)
            {
                string formatted = JsonHelper.NormalizeSystemPath(modPath);
                Module module    = new Module(formatted);
                module.InitializeFromManifest();
                mModules.Add(module.Name, module);
            }

            foreach (Module module in mModules.Values)
            {
                module.LoadFiles();
            }

            foreach (Module module in mModules.Values)
            {
                module.PostLoadFixup();
            }
        }
All Usage Examples Of StonehearthEditor.Module::InitializeFromManifest