public void FromIniData(IniData iniDocument) { iniDocument.ClearAllComments(); var section = iniDocument.Sections.GetSectionData("swissFolded"); swissFolded.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("jordanFolded"); jordanFolded.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("perlinTile"); perlinTile.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("perlinBump"); perlinBump.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("iqMountain"); iqMountain.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("swissCell"); swissCell.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("swissFaults"); swissFaults.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("perlinDune"); perlinDune.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("swissDune"); swissDune.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("mntVar"); mntVar.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("colorVar"); colorVar.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("mountainBase"); mountainBase.DeserializeSection(section.SectionName, section.Keys); section = iniDocument.Sections.GetSectionData("hillBase"); hillBase.DeserializeSection(section.SectionName, section.Keys); }
public static bool LoadSettings() { try { if (File.Exists(ConfigIniPath)) { FileIniDataParser parser = new FileIniDataParser(); IniData configdata = parser.ReadFile(ConfigIniPath); string compareIni = null; try { // get the current versions ini data compareIni = ValheimPlusPlugin.getCurrentWebIniFile(); } catch (Exception e) { } if (compareIni != null) { StreamReader reader = new StreamReader(new MemoryStream(System.Text.Encoding.ASCII.GetBytes(compareIni))); IniData webConfig = parser.ReadData(reader); // Duplication of comments otherwise with this merge function. configdata.ClearAllComments(); webConfig.Merge(configdata); parser.WriteFile(ConfigIniPath, webConfig); } Configuration.Current = LoadFromIni(ConfigIniPath); } else { Debug.LogError("Error: Configuration not found. Trying to download latest config."); // download latest ini if not present bool status = false; try { string defaultIni = ValheimPlusPlugin.getCurrentWebIniFile(); if (defaultIni != null) { System.IO.File.WriteAllText(ConfigIniPath, defaultIni); Debug.Log("Default Configuration downloaded. Loading downloaded default settings."); Configuration.Current = LoadFromIni(ConfigIniPath); status = true; } } catch (Exception e) { } return(status); } } catch (Exception ex) { Debug.LogError($"Could not load config file: {ex}"); return(false); } return(true); }