Beispiel #1
0
        internal static void Add(ModConfig config)
        {
            ConfigManager.Load(config);

            if (!Configs.TryGetValue(config.Mod, out List <ModConfig> configList))
            {
                Configs.Add(config.Mod, configList = new List <ModConfig>());
            }
            configList.Add(config);

            FieldInfo instance = config.GetType().GetField("Instance", BindingFlags.Static | BindingFlags.Public);

            if (instance != null)
            {
                instance.SetValue(null, config);
            }
            config.OnLoaded();
            config.OnChanged();

            // Maintain a backup of LoadTime Configs.
            if (!LoadTimeConfigs.TryGetValue(config.Mod, out List <ModConfig> configList2))
            {
                LoadTimeConfigs.Add(config.Mod, configList2 = new List <ModConfig>());
            }
            configList2.Add(GeneratePopulatedClone(config));
        }
Beispiel #2
0
        internal static void Add(ModConfig config)
        {
            ConfigManager.Load(config);

            List <ModConfig> configList;

            if (!Configs.TryGetValue(config.mod, out configList))
            {
                Configs.Add(config.mod, configList = new List <ModConfig>());
            }
            configList.Add(config);

            config.PostAutoLoad();

            // Maintain a backup of LoadTime Configs.
            List <ModConfig> configList2;

            if (!LoadTimeConfigs.TryGetValue(config.mod, out configList2))
            {
                LoadTimeConfigs.Add(config.mod, configList2 = new List <ModConfig>());
            }
            configList2.Add(config.Clone());
        }