PolyverseSkiesHub.cs 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. // Cristian Pop - https://boxophobic.com/
  2. using UnityEngine;
  3. using UnityEditor;
  4. using Boxophobic.StyledGUI;
  5. using Boxophobic.Utils;
  6. public class PolyverseSkiesHub : EditorWindow
  7. {
  8. string assetFolder = "Assets/BOXOPHOBIC/Polyverse Skies";
  9. int assetVersion;
  10. string bannerVersion;
  11. Color bannerColor;
  12. string bannerText;
  13. string helpURL;
  14. static PolyverseSkiesHub window;
  15. [MenuItem("Window/BOXOPHOBIC/Polyverse Skies/Hub", false, 1051)]
  16. public static void ShowWindow()
  17. {
  18. window = GetWindow<PolyverseSkiesHub>(false, "Polyverse Skies", true);
  19. window.minSize = new Vector2(300, 200);
  20. }
  21. void OnEnable()
  22. {
  23. bannerColor = new Color(0.55f, 0.7f, 1f);
  24. bannerText = "Polyverse Skies";
  25. helpURL = "https://docs.google.com/document/d/1z7A_xKNa2mXhvTRJqyu-ZQsAtbV32tEZQbO1OmPS_-s/edit#heading=h.rp8ji698m9wz";
  26. //Safer search, there might be many user folders
  27. string[] searchFolders;
  28. searchFolders = AssetDatabase.FindAssets("Polyverse Skies");
  29. for (int i = 0; i < searchFolders.Length; i++)
  30. {
  31. if (AssetDatabase.GUIDToAssetPath(searchFolders[i]).EndsWith("Polyverse Skies.pdf"))
  32. {
  33. assetFolder = AssetDatabase.GUIDToAssetPath(searchFolders[i]);
  34. assetFolder = assetFolder.Replace("/Polyverse Skies.pdf", "");
  35. }
  36. }
  37. assetVersion = SettingsUtils.LoadSettingsData(assetFolder + "/Core/Editor/Version.asset", -99);
  38. bannerVersion = assetVersion.ToString();
  39. bannerVersion = bannerVersion.Insert(1, ".");
  40. bannerVersion = bannerVersion.Insert(3, ".");
  41. bannerColor = new Color(0.968f, 0.572f, 0.890f);
  42. bannerText = "Polyverse Skies " + bannerVersion;
  43. }
  44. void OnGUI()
  45. {
  46. StyledGUI.DrawWindowBanner(bannerColor, bannerText, helpURL);
  47. GUILayout.BeginHorizontal();
  48. GUILayout.Space(20);
  49. EditorGUILayout.HelpBox("The included shaders are compatible by default with Standard and Universal Render Pipelines!", MessageType.Info, true);
  50. GUILayout.Space(13);
  51. GUILayout.EndHorizontal();
  52. }
  53. }