EnviroDefaultModule.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using System;
  5. namespace Enviro
  6. {
  7. [Serializable]
  8. public class EnviroDefault
  9. {
  10. }
  11. [Serializable]
  12. public class EnviroDefaultModule : EnviroModule
  13. {
  14. public Enviro.EnviroDefault settings;
  15. public EnviroDefaultModule preset;
  16. public bool showDefaultControls;
  17. // Update Method
  18. public override void UpdateModule ()
  19. {
  20. }
  21. //Save and Load
  22. public void LoadModuleValues ()
  23. {
  24. if(preset != null)
  25. {
  26. settings = JsonUtility.FromJson<Enviro.EnviroDefault>(JsonUtility.ToJson(preset.settings));
  27. }
  28. else
  29. {
  30. Debug.Log("Please assign a saved module to load from!");
  31. }
  32. }
  33. public void SaveModuleValues ()
  34. {
  35. #if UNITY_EDITOR
  36. EnviroDefaultModule t = ScriptableObject.CreateInstance<EnviroDefaultModule>();
  37. t.name = "Default Preset";
  38. t.settings = JsonUtility.FromJson<Enviro.EnviroDefault>(JsonUtility.ToJson(settings));
  39. string assetPathAndName = UnityEditor.AssetDatabase.GenerateUniqueAssetPath("Assets/Enviro 3" + "/New " + t.name + ".asset");
  40. UnityEditor.AssetDatabase.CreateAsset(t, assetPathAndName);
  41. UnityEditor.AssetDatabase.SaveAssets();
  42. UnityEditor.AssetDatabase.Refresh();
  43. #endif
  44. }
  45. public void SaveModuleValues (EnviroDefaultModule module)
  46. {
  47. module.settings = JsonUtility.FromJson<Enviro.EnviroDefault>(JsonUtility.ToJson(settings));
  48. #if UNITY_EDITOR
  49. UnityEditor.EditorUtility.SetDirty(module);
  50. UnityEditor.AssetDatabase.SaveAssets();
  51. #endif
  52. }
  53. }
  54. }