public static void TA_ExposeData(string key, ref int value, TA_Expose_Mode mode = TA_Expose_Mode.Load) { if (mode == TA_Expose_Mode.Save) { LogOutput.WriteLogMessage(Errorlevel.Debug, "Adding " + key + " : " + value + "to save dictionary"); if (Configvalues.ContainsKey(key)) { Configvalues.Remove(key); } Configvalues.Add(key, value); } else if (mode == TA_Expose_Mode.Load) { if (Configvalues.TryGetValue(key, out int tempval)) { value = tempval; } else if (Configvalues.TryGetValue(Enum.GetNames(typeof(TA_Expose_Name)).Contains(key) ? ((int)Enum.Parse(typeof(TA_Expose_Name), key)).ToString() : key, out tempval)) // TODO remove backwards compatability fallback { value = tempval; LogOutput.WriteLogMessage(Errorlevel.Information, "Value " + key + " was loaded via fallback. (A new save system is in place. But this message shouldnt appear anymore after saving)"); } else { LogOutput.WriteLogMessage(Errorlevel.Information, "Value " + key + " could not be loaded. This usually happens when updating to the new config-system. Try saving and reloading the map."); } LogOutput.WriteLogMessage(Errorlevel.Debug, "Successfully loaded " + key + " : " + value + "from save dictionary."); } }
public static void TA_ExposeData(string key, ref int value, TA_Expose_Mode mode = TA_Expose_Mode.Load) { bool accessWasValid = false; if (mode == TA_Expose_Mode.Save) { LogOutput.WriteLogMessage(Errorlevel.Debug, "Adding " + key + " : " + value + "to save dictionary"); if (Configvalues.ContainsKey(GetInt(key))) { Configvalues.Remove(GetInt(key)); } Configvalues.Add(GetInt(key), value); } else if (mode == TA_Expose_Mode.Load) { accessWasValid = Configvalues.TryGetValue(GetInt(key), out int tempval); if (accessWasValid) { value = tempval; } else { //TA_Expose_Numbers.Add(getInt(key),) LogOutput.WriteLogMessage(Errorlevel.Information, "Value " + GetInt(key) + " could not be loaded. This usually happens when updating to the new config-system. Try saving and reloading the map."); } LogOutput.WriteLogMessage(Errorlevel.Debug, "Loaded " + key + " : " + value + "from save dictionary. Success: " + accessWasValid); } }
public static void ExposeData(TA_Expose_Mode mode) { MapCompSaveHandler.TA_ExposeData("Conditionvalue_A", ref Conditionvalue_A, mode); MapCompSaveHandler.TA_ExposeData("Conditionvalue_B", ref Conditionvalue_B, mode); MapCompSaveHandler.TA_ExposeData("Conditionvalue_B_s", ref Conditionvalue_B_s, mode); MapCompSaveHandler.TA_ExposeData("baseTechlvlCfg", ref baseTechlvlCfg, mode); MapCompSaveHandler.TA_ExposeData("configCheckboxNeedTechColonists", ref configCheckboxNeedTechColonists, mode); MapCompSaveHandler.TA_ExposeData("configCheckboxDisableCostMultiplicatorCap", ref configCheckboxDisableCostMultiplicatorCap, mode); if (!MapCompSaveHandler.IsValueSaved("Conditionvalue_A")) { MapCompSaveHandler.TA_ExposeData("Conditionvalue_A", ref Conditionvalue_A, TA_Expose_Mode.Save); LogOutput.WriteLogMessage(Errorlevel.Information, "Value 'Conditionvalue_A' was added to the save file. This message shouldn't appear more than once per value and world."); } if (!MapCompSaveHandler.IsValueSaved("Conditionvalue_B")) { MapCompSaveHandler.TA_ExposeData("Conditionvalue_B", ref Conditionvalue_B, TA_Expose_Mode.Save); LogOutput.WriteLogMessage(Errorlevel.Information, "Value 'Conditionvalue_B' was added to the save file. This message shouldn't appear more than once per value and world."); } if (!MapCompSaveHandler.IsValueSaved("Conditionvalue_B_s")) { MapCompSaveHandler.TA_ExposeData("Conditionvalue_B_s", ref Conditionvalue_B_s, TA_Expose_Mode.Save); LogOutput.WriteLogMessage(Errorlevel.Information, "Value 'Conditionvalue_B_s' was added to the save file. This message shouldn't appear more than once per value and world."); } if (!MapCompSaveHandler.IsValueSaved("baseTechlvlCfg")) { MapCompSaveHandler.TA_ExposeData("baseTechlvlCfg", ref baseTechlvlCfg, TA_Expose_Mode.Save); LogOutput.WriteLogMessage(Errorlevel.Information, "Value 'baseTechlvlCfg' was added to the save file. This message shouldn't appear more than once per value and world."); } if (!MapCompSaveHandler.IsValueSaved("configCheckboxNeedTechColonists")) { MapCompSaveHandler.TA_ExposeData("configCheckboxNeedTechColonists", ref configCheckboxNeedTechColonists, TA_Expose_Mode.Save); LogOutput.WriteLogMessage(Errorlevel.Information, "Value 'configCheckboxNeedTechColonists' was added to the save file. This message shouldn't appear more than once per value and world."); } if (!MapCompSaveHandler.IsValueSaved("configCheckboxDisableCostMultiplicatorCap")) { MapCompSaveHandler.TA_ExposeData("configCheckboxDisableCostMultiplicatorCap", ref configCheckboxNeedTechColonists, TA_Expose_Mode.Save); LogOutput.WriteLogMessage(Errorlevel.Information, "Value 'configCheckboxDisableCostMultiplicatorCap' was added to the save file. This message shouldn't appear more than once per value and world."); } last_Conditionvalue_A = Conditionvalue_A; last_Conditionvalue_B = Conditionvalue_B; last_Conditionvalue_B_s = Conditionvalue_B_s; last_baseTechlvlCfg = baseTechlvlCfg; last_configCheckboxNeedTechColonists = configCheckboxNeedTechColonists; last_configCheckboxDisableCostMultiplicatorCap = configCheckboxDisableCostMultiplicatorCap; }
public void TA_ExposeData(ConfigTabValueSavedAttribute attrib, ref int value, TA_Expose_Mode mode = TA_Expose_Mode.Load) { string saveName = attrib.SaveName; object defaultValue = attrib.DefaultValue; if (mode == TA_Expose_Mode.Save) { LogOutput.WriteLogMessage(Errorlevel.Debug, "Adding " + saveName + " : " + value + " to save dictionary"); if (this.ConfigValues.ContainsKey(saveName)) { this.ConfigValues.Remove(saveName); } this.ConfigValues.Add(saveName, value); } else if (mode == TA_Expose_Mode.Load) { if (this.ConfigValues.TryGetValue(saveName, out int tempval)) { value = tempval; } else if (this.ConfigValues.TryGetValue(Enum.GetNames(typeof(TA_Expose_Name)).Contains(saveName) ? ((int)Enum.Parse(typeof(TA_Expose_Name), saveName)).ToString() : saveName, out tempval)) // TODO remove backwards compatability fallback { value = tempval; LogOutput.WriteLogMessage(Errorlevel.Information, "Value " + saveName + " was loaded via fallback. (A new save system is in place. But this message shouldnt appear anymore after saving)"); } else { LogOutput.WriteLogMessage(Errorlevel.Information, "Value " + saveName + " is not present. Using default value."); if (defaultValue == null) { LogOutput.WriteLogMessage(Errorlevel.Error, $"Default value of {saveName} is null!"); } else { value = (int)defaultValue; } } LogOutput.WriteLogMessage(Errorlevel.Debug, "Successfully loaded " + saveName + " : " + value + " from save dictionary."); } }