private static void Initialize()
        {
            if (isInitialized)
            {
                return;
            }
            isInitialized = true;
            textureList.Clear();
            textureList = additionalTextures;
            foreach (ConfigNode colorNode in GameDatabase.Instance.GetConfigNodes("KK_TexturePreset"))
            {
                if (colorNode.HasValue("TextureFile") && colorNode.HasValue("Usage"))
                {
                    TexturePreset preset = new TexturePreset();
                    preset.texturePath = colorNode.GetValue("TextureFile");

                    if (!Enum.TryParse(colorNode.GetValue("Usage"), true, out preset.usage))
                    {
                        preset.usage = TextureUsage.Unused;
                    }
                    //Log.Normal("Adding Texture to List" + preset.texturePath + " : " + preset.usage.ToString());

                    if (textureList.Where(x => x.texturePath == preset.texturePath).Where(x => x.usage == preset.usage).Count() > 0)
                    {
                        continue;
                    }

                    textureList.Add(preset);
                }
            }
            textureList.Sort(delegate(TexturePreset first, TexturePreset second)
            {
                return(first.texturePath.CompareTo(second.texturePath));
            });
        }
 private static void SetTexture(TexturePreset preset)
 {
     typeof(GrassColor2).GetField(fieldName, BindingFlags.Instance | BindingFlags.NonPublic).SetValue(selectedMod, preset.texturePath);
     selectedMod.ApplySettings();
 }