public static void AddSettings(ConfigManager config, string key, string value, ServerSettings.Type type)
    {
        if (key.IsEmpty())
        {
            return;
        }

        int duplicated = -1;

        ConfigManager.CachedServerSettings newSetting = new ConfigManager.CachedServerSettings();
        newSetting.key     = key;
        newSetting.setting = new ServerSettings.Serializable(value, type);

        for (int i = 0; i < config.serverSettings.Length; i++)
        {
            ConfigManager.CachedServerSettings setting = config.serverSettings[i];
            if (setting.key == key)
            {
                duplicated = i;
                break;
            }
        }

        if (!(duplicated >= 0))
        {
            Array.Resize(ref config.serverSettings, config.serverSettings.Length + 1);
            config.serverSettings[config.serverSettings.Length - 1] = newSetting;

            Array.Sort(config.serverSettings,
                       delegate(ConfigManager.CachedServerSettings a, ConfigManager.CachedServerSettings b)
                       { return(a.key.CompareTo(b.key)); }
                       );

            return;
        }

        config.serverSettings[duplicated] = newSetting;
    }
Пример #2
0
		public Serializable(string value, ServerSettings.Type type)
		{
			this.value = value;
			this.type = type;
		}
Пример #3
0
 public Serializable(string value, ServerSettings.Type type)
 {
     this.value = value;
     this.type  = type;
 }