public static void SaveCSS(string path, GUISkin skin) { var output = new StringBuilder(); var emptySkin = ScriptableObject.CreateInstance <GUISkin>(); foreach (var item in skin.GetVariables <GUIStyle>(null, ObjectExtension.publicFlags)) { var defaultStyle = emptySkin.GetVariable <GUIStyle>(item.Key); output.Append(Style.SaveCSS(item.Value, defaultStyle)); } foreach (var style in skin.customStyles) { if (style.IsNull()) { continue; } output.Append(Style.SaveCSS(style, null, false)); } if (output.Length > 0) { var file = FileManager.Create(path + "/" + skin.name.Split("-")[0] + "/" + skin.name + ".css"); file.WriteText(output.ToString().Trim()); } }