net.dreditor.roombuilding 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/.attestation.p7m +0 -0
  2. package/DREditor.RoomBuilding.asmdef +28 -28
  3. package/DREditor.RoomBuilding.asmdef.meta +7 -7
  4. package/Editor/DREditor.RoomBuilding.Editor.asmdef +19 -19
  5. package/Editor/DREditor.RoomBuilding.Editor.asmdef.meta +7 -7
  6. package/Editor/FindCharactersInRoomsWizard.cs +55 -55
  7. package/Editor/FindCharactersInRoomsWizard.cs.meta +11 -11
  8. package/Editor/RoomBuilderContainsObjective.cs +38 -38
  9. package/Editor/RoomBuilderContainsObjective.cs.meta +11 -11
  10. package/Editor/RoomBuilderScanWizard.cs +90 -90
  11. package/Editor/RoomBuilderScanWizard.cs.meta +11 -11
  12. package/Editor/ScanRoomBuilders.cs +74 -74
  13. package/Editor/ScanRoomBuilders.cs.meta +11 -11
  14. package/Editor.meta +8 -8
  15. package/Implementation/Actors/ActorData.cs +115 -115
  16. package/Implementation/Actors/ActorData.cs.meta +11 -11
  17. package/Implementation/Actors/ActorStateData.cs +10 -10
  18. package/Implementation/Actors/ActorStateData.cs.meta +11 -11
  19. package/Implementation/Actors/ActorStateLoader.cs +344 -344
  20. package/Implementation/Actors/ActorStateLoader.cs.meta +11 -11
  21. package/Implementation/Actors/TActorData.cs +35 -35
  22. package/Implementation/Actors/TActorData.cs.meta +11 -11
  23. package/Implementation/Actors/TrialActorManager.cs +157 -157
  24. package/Implementation/Actors/TrialActorManager.cs.meta +11 -11
  25. package/Implementation/Actors.meta +8 -8
  26. package/Implementation/DoorLoader.cs +117 -117
  27. package/Implementation/DoorLoader.cs.meta +11 -11
  28. package/Implementation/DoorLoaderUtility.cs +51 -51
  29. package/Implementation/DoorLoaderUtility.cs.meta +11 -11
  30. package/Implementation/DoorStateData.cs +11 -11
  31. package/Implementation/DoorStateData.cs.meta +11 -11
  32. package/Implementation/ItemActorLoader.cs +157 -157
  33. package/Implementation/ItemActorLoader.cs.meta +11 -11
  34. package/Implementation/ItemData.cs +67 -67
  35. package/Implementation/ItemData.cs.meta +11 -11
  36. package/Implementation/ItemStateData.cs +10 -10
  37. package/Implementation/ItemStateData.cs.meta +11 -11
  38. package/Implementation/MoveLoader.cs +67 -67
  39. package/Implementation/MoveLoader.cs.meta +11 -11
  40. package/Implementation/MoveStateData.cs +11 -11
  41. package/Implementation/MoveStateData.cs.meta +11 -11
  42. package/Implementation/RoomStateHandlerBase.cs +241 -241
  43. package/Implementation/RoomStateHandlerBase.cs.meta +11 -11
  44. package/Implementation/SaveableData.cs +56 -56
  45. package/Implementation/SaveableData.cs.meta +11 -11
  46. package/Implementation/SaveableDataSet.cs +66 -66
  47. package/Implementation/SaveableDataSet.cs.meta +11 -11
  48. package/Implementation/SaveableManager.cs +70 -70
  49. package/Implementation/SaveableManager.cs.meta +11 -11
  50. package/Implementation/SaveableStateData.cs +10 -10
  51. package/Implementation/SaveableStateData.cs.meta +11 -11
  52. package/Implementation/SpawnableLoader.cs +125 -125
  53. package/Implementation/SpawnableLoader.cs.meta +11 -11
  54. package/Implementation/SpawnableStateData.cs +11 -11
  55. package/Implementation/SpawnableStateData.cs.meta +11 -11
  56. package/Implementation/StateDataAsset.cs +28 -28
  57. package/Implementation/StateDataAsset.cs.meta +11 -11
  58. package/Implementation/SubAreaLoader.cs +108 -108
  59. package/Implementation/SubAreaLoader.cs.meta +11 -11
  60. package/Implementation/SubAreaStateData.cs +11 -11
  61. package/Implementation/SubAreaStateData.cs.meta +11 -11
  62. package/Implementation/TriggerConverter.cs +137 -137
  63. package/Implementation/TriggerConverter.cs.meta +11 -11
  64. package/Implementation/TriggerLoader.cs +295 -295
  65. package/Implementation/TriggerLoader.cs.meta +11 -11
  66. package/Implementation/TriggerStateData.cs +18 -18
  67. package/Implementation/TriggerStateData.cs.meta +11 -11
  68. package/Implementation.meta +8 -8
  69. package/InstanceListWrapper.cs +23 -23
  70. package/InstanceListWrapper.cs.meta +11 -11
  71. package/Instances/ConvertInstanceData.cs +89 -89
  72. package/Instances/ConvertInstanceData.cs.meta +11 -11
  73. package/Instances/InstanceData.cs +43 -43
  74. package/Instances/InstanceData.cs.meta +11 -11
  75. package/Instances/InstanceStateData.cs +51 -51
  76. package/Instances/InstanceStateData.cs.meta +11 -11
  77. package/Instances/RoomInstanceData.cs +68 -68
  78. package/Instances/RoomInstanceData.cs.meta +11 -11
  79. package/Instances/RoomInstanceManager.cs +452 -452
  80. package/Instances/RoomInstanceManager.cs.meta +11 -11
  81. package/Instances.meta +8 -8
  82. package/LoadInvestigationRoomState.cs +53 -53
  83. package/LoadInvestigationRoomState.cs.meta +11 -11
  84. package/Old/ActorLoader.cs +382 -382
  85. package/Old/ActorLoader.cs.meta +11 -11
  86. package/Old/Room.cs +24 -24
  87. package/Old/Room.cs.meta +11 -11
  88. package/Old/RoomBuilder.cs +59 -59
  89. package/Old/RoomBuilder.cs.meta +11 -11
  90. package/Old/RoomData.cs +90 -90
  91. package/Old/RoomData.cs.meta +11 -11
  92. package/Old/RoomManager.cs +256 -256
  93. package/Old/RoomManager.cs.meta +11 -11
  94. package/Old/RoomManagerDisplayEditor.cs +72 -72
  95. package/Old/RoomManagerDisplayEditor.cs.meta +11 -11
  96. package/Old/RoomManagerEditor.cs +211 -211
  97. package/Old/RoomManagerEditor.cs.meta +11 -11
  98. package/Old/RoomManagerShellDisplayEditor.cs +48 -48
  99. package/Old/RoomManagerShellDisplayEditor.cs.meta +11 -11
  100. package/Old/RoomSection.cs +35 -35
  101. package/Old/RoomSection.cs.meta +11 -11
  102. package/Old.meta +8 -8
  103. package/RoomManagerBase.cs +84 -84
  104. package/RoomManagerBase.cs.meta +11 -11
  105. package/RoomManagerEditorBase.cs +86 -86
  106. package/RoomManagerEditorBase.cs.meta +11 -11
  107. package/RoomManagerEditorCoreBase.cs +159 -159
  108. package/RoomManagerEditorCoreBase.cs.meta +11 -11
  109. package/RoomSaveDisplayEditorBase.cs +111 -111
  110. package/RoomSaveDisplayEditorBase.cs.meta +11 -11
  111. package/RoomShellDisplayEditorBase.cs +68 -68
  112. package/RoomShellDisplayEditorBase.cs.meta +11 -11
  113. package/RoomStateBuilder.cs +53 -53
  114. package/RoomStateBuilder.cs.meta +11 -11
  115. package/RoomStateData.cs +58 -58
  116. package/RoomStateData.cs.meta +11 -11
  117. package/RoomStateManager.cs +202 -202
  118. package/RoomStateManager.cs.meta +11 -11
  119. package/RoomStateManagerEditor.cs +392 -392
  120. package/RoomStateManagerEditor.cs.meta +11 -11
  121. package/RoomStateSaveDisplayEditor.cs +175 -175
  122. package/RoomStateSaveDisplayEditor.cs.meta +11 -11
  123. package/RoomStateSection.cs +69 -69
  124. package/RoomStateSection.cs.meta +11 -11
  125. package/RoomStateShellDisplayEditor.cs +108 -108
  126. package/RoomStateShellDisplayEditor.cs.meta +11 -11
  127. package/{Samples → Samples~}/Room_State_Manager.prefab +473 -473
  128. package/{Samples → Samples~}/Room_State_Manager.prefab.meta +7 -7
  129. package/{Samples → Samples~}/Trial_Actor_Manager.prefab +51 -51
  130. package/{Samples → Samples~}/Trial_Actor_Manager.prefab.meta +7 -7
  131. package/package.json +51 -46
  132. package/package.json.meta +7 -7
  133. package/Samples.meta +0 -8
@@ -1,49 +1,49 @@
1
- //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
- #if UNITY_EDITOR
3
- using UnityEditor;
4
-
5
- namespace DREditor.RoomBuilding.Old
6
- {
7
- /// <summary>
8
- ///
9
- /// </summary>
10
- public class RoomManagerShellDisplayEditor : RoomShellDisplayEditorBase
11
- {
12
- readonly RoomManager manager;
13
-
14
- readonly RoomBuilder builder;
15
-
16
-
17
- public RoomManagerShellDisplayEditor(RoomManager manager, RoomBuilder builder)
18
- {
19
- this.manager = manager;
20
-
21
- this.builder = builder;
22
- }
23
- /// <inheritdoc/>
24
- protected override bool HasShellData() => builder.Shells.Count != 0;
25
-
26
- /// <inheritdoc/>
27
- protected override void CreateShellSave() => builder.Shells.Add(manager.NewSaveRoom(null));
28
-
29
- /// <inheritdoc/>
30
- protected override void LoadShell()
31
- {
32
- ActorLoader.UnloadActors(true);
33
-
34
- manager.LoadRoom(builder.Shells[0]);
35
- }
36
-
37
- /// <inheritdoc/>
38
- protected override void OverwriteShell() => builder.Shells[0] = manager.OverwriteRoom(builder.Shells[0]);
39
-
40
- /// <inheritdoc/>
41
- protected override void DeleteShell()
42
- {
43
- builder.Shells.Clear();
44
-
45
- EditorUtility.SetDirty(builder);
46
- }
47
- }
48
- }
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ #if UNITY_EDITOR
3
+ using UnityEditor;
4
+
5
+ namespace DREditor.RoomBuilding.Old
6
+ {
7
+ /// <summary>
8
+ ///
9
+ /// </summary>
10
+ public class RoomManagerShellDisplayEditor : RoomShellDisplayEditorBase
11
+ {
12
+ readonly RoomManager manager;
13
+
14
+ readonly RoomBuilder builder;
15
+
16
+
17
+ public RoomManagerShellDisplayEditor(RoomManager manager, RoomBuilder builder)
18
+ {
19
+ this.manager = manager;
20
+
21
+ this.builder = builder;
22
+ }
23
+ /// <inheritdoc/>
24
+ protected override bool HasShellData() => builder.Shells.Count != 0;
25
+
26
+ /// <inheritdoc/>
27
+ protected override void CreateShellSave() => builder.Shells.Add(manager.NewSaveRoom(null));
28
+
29
+ /// <inheritdoc/>
30
+ protected override void LoadShell()
31
+ {
32
+ ActorLoader.UnloadActors(true);
33
+
34
+ manager.LoadRoom(builder.Shells[0]);
35
+ }
36
+
37
+ /// <inheritdoc/>
38
+ protected override void OverwriteShell() => builder.Shells[0] = manager.OverwriteRoom(builder.Shells[0]);
39
+
40
+ /// <inheritdoc/>
41
+ protected override void DeleteShell()
42
+ {
43
+ builder.Shells.Clear();
44
+
45
+ EditorUtility.SetDirty(builder);
46
+ }
47
+ }
48
+ }
49
49
  #endif
@@ -1,11 +1,11 @@
1
- fileFormatVersion: 2
2
- guid: f2afe97f9cd5b944686f1739ff71e8f4
3
- MonoImporter:
4
- externalObjects: {}
5
- serializedVersion: 2
6
- defaultReferences: []
7
- executionOrder: 0
8
- icon: {instanceID: 0}
9
- userData:
10
- assetBundleName:
11
- assetBundleVariant:
1
+ fileFormatVersion: 2
2
+ guid: f2afe97f9cd5b944686f1739ff71e8f4
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -1,36 +1,36 @@
1
- //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
- using DREditor.Progressing;
3
- using System;
4
- using System.Collections.Generic;
5
-
6
- namespace DREditor.RoomBuilding.Old
7
- {
8
- /// <summary>
9
- ///
10
- /// </summary>
11
- [Serializable]
12
- public class RoomSection
13
- {
14
- public Chapter Chapter;
15
-
16
- public List<RoomData> Rooms = new();
17
-
18
- public bool HasDataFor(Objective pValue)
19
- {
20
- foreach (RoomData r in Rooms)
21
- if (pValue.Description == r.progressionValue.Description)
22
- return true;
23
-
24
- return false;
25
- }
26
-
27
- public RoomData GetDataWithObjective(Objective pValue)
28
- {
29
- foreach (RoomData r in Rooms)
30
- if (pValue.Description == r.progressionValue.Description)
31
- return r;
32
-
33
- return null;
34
- }
35
- }
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ using DREditor.Progressing;
3
+ using System;
4
+ using System.Collections.Generic;
5
+
6
+ namespace DREditor.RoomBuilding.Old
7
+ {
8
+ /// <summary>
9
+ ///
10
+ /// </summary>
11
+ [Serializable]
12
+ public class RoomSection
13
+ {
14
+ public Chapter Chapter;
15
+
16
+ public List<RoomData> Rooms = new();
17
+
18
+ public bool HasDataFor(Objective pValue)
19
+ {
20
+ foreach (RoomData r in Rooms)
21
+ if (pValue.Description == r.progressionValue.Description)
22
+ return true;
23
+
24
+ return false;
25
+ }
26
+
27
+ public RoomData GetDataWithObjective(Objective pValue)
28
+ {
29
+ foreach (RoomData r in Rooms)
30
+ if (pValue.Description == r.progressionValue.Description)
31
+ return r;
32
+
33
+ return null;
34
+ }
35
+ }
36
36
  }
@@ -1,11 +1,11 @@
1
- fileFormatVersion: 2
2
- guid: 006975abbbe6f25408a16d2bebd00068
3
- MonoImporter:
4
- externalObjects: {}
5
- serializedVersion: 2
6
- defaultReferences: []
7
- executionOrder: 0
8
- icon: {instanceID: 0}
9
- userData:
10
- assetBundleName:
11
- assetBundleVariant:
1
+ fileFormatVersion: 2
2
+ guid: 006975abbbe6f25408a16d2bebd00068
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
package/Old.meta CHANGED
@@ -1,8 +1,8 @@
1
- fileFormatVersion: 2
2
- guid: 121d3aacff94bb34f8270e11d645a24f
3
- folderAsset: yes
4
- DefaultImporter:
5
- externalObjects: {}
6
- userData:
7
- assetBundleName:
8
- assetBundleVariant:
1
+ fileFormatVersion: 2
2
+ guid: 121d3aacff94bb34f8270e11d645a24f
3
+ folderAsset: yes
4
+ DefaultImporter:
5
+ externalObjects: {}
6
+ userData:
7
+ assetBundleName:
8
+ assetBundleVariant:
@@ -1,85 +1,85 @@
1
- //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
- using DREditor.EventObjects;
3
- using DREditor.Progressing;
4
- using DREditor.Services;
5
-
6
- namespace DREditor.RoomBuilding
7
- {
8
- /// <summary>
9
- ///
10
- /// </summary>
11
- public abstract class RoomManagerBase : ServiceHolder<RoomManagerBase>
12
- {
13
- #if UNITY_EDITOR
14
- /// <summary>
15
- ///
16
- /// </summary>
17
- public int intChapter = 0;
18
-
19
- /// <summary>
20
- ///
21
- /// </summary>
22
- public Chapter Chapter = null;
23
-
24
-
25
- /// <summary>
26
- ///
27
- /// </summary>
28
- /// <param name="intChapter"></param>
29
- public virtual void SetIntChapter(int intChapter) => this.intChapter = intChapter;
30
-
31
- /// <summary>
32
- ///
33
- /// </summary>
34
- /// <param name="Chapter"></param>
35
- public virtual void SetChapter(Chapter Chapter) => this.Chapter = Chapter;
36
-
37
- /// <summary>
38
- ///
39
- /// </summary>
40
- /// <param name="onRoomInstanceLoaded"></param>
41
- public virtual void SetOnRoomInstanceLoaded(BoolWithEvent onRoomInstanceLoaded) => this.onRoomInstanceLoaded = onRoomInstanceLoaded;
42
- #endif
43
-
44
- /// <summary>
45
- ///
46
- /// </summary>
47
- public BoolWithEvent onRoomInstanceLoaded = null;
48
-
49
-
50
- /// <summary>
51
- ///
52
- /// </summary>
53
- /// <param name="chapterNum"></param>
54
- /// <param name="pValue"></param>
55
- /// <returns></returns>
56
- public abstract bool HasBase(int chapterNum, object pValue);
57
-
58
- /// <summary>
59
- ///
60
- /// </summary>
61
- /// <param name="pValue"></param>
62
- /// <returns></returns>
63
- public abstract object SaveRoomState(object pValue);
64
-
65
- /// <summary>
66
- ///
67
- /// </summary>
68
- /// <param name="pValue"></param>
69
- /// <param name="instanceData"></param>
70
- public abstract void LoadRoomState(object pValue, object instanceData = null);
71
-
72
- /// <summary>
73
- ///
74
- /// </summary>
75
- /// <param name="pValue"></param>
76
- /// <returns></returns>
77
- public abstract bool BaseIsPersistent(object pValue);
78
-
79
- /// <summary>
80
- ///
81
- /// </summary>
82
- /// <param name="inEditor"></param>
83
- public abstract void UnloadAll(bool inEditor);
84
- }
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ using DREditor.EventObjects;
3
+ using DREditor.Progressing;
4
+ using DREditor.Services;
5
+
6
+ namespace DREditor.RoomBuilding
7
+ {
8
+ /// <summary>
9
+ ///
10
+ /// </summary>
11
+ public abstract class RoomManagerBase : ServiceHolder<RoomManagerBase>
12
+ {
13
+ #if UNITY_EDITOR
14
+ /// <summary>
15
+ ///
16
+ /// </summary>
17
+ public int intChapter = 0;
18
+
19
+ /// <summary>
20
+ ///
21
+ /// </summary>
22
+ public Chapter Chapter = null;
23
+
24
+
25
+ /// <summary>
26
+ ///
27
+ /// </summary>
28
+ /// <param name="intChapter"></param>
29
+ public virtual void SetIntChapter(int intChapter) => this.intChapter = intChapter;
30
+
31
+ /// <summary>
32
+ ///
33
+ /// </summary>
34
+ /// <param name="Chapter"></param>
35
+ public virtual void SetChapter(Chapter Chapter) => this.Chapter = Chapter;
36
+
37
+ /// <summary>
38
+ ///
39
+ /// </summary>
40
+ /// <param name="onRoomInstanceLoaded"></param>
41
+ public virtual void SetOnRoomInstanceLoaded(BoolWithEvent onRoomInstanceLoaded) => this.onRoomInstanceLoaded = onRoomInstanceLoaded;
42
+ #endif
43
+
44
+ /// <summary>
45
+ ///
46
+ /// </summary>
47
+ public BoolWithEvent onRoomInstanceLoaded = null;
48
+
49
+
50
+ /// <summary>
51
+ ///
52
+ /// </summary>
53
+ /// <param name="chapterNum"></param>
54
+ /// <param name="pValue"></param>
55
+ /// <returns></returns>
56
+ public abstract bool HasBase(int chapterNum, object pValue);
57
+
58
+ /// <summary>
59
+ ///
60
+ /// </summary>
61
+ /// <param name="pValue"></param>
62
+ /// <returns></returns>
63
+ public abstract object SaveRoomState(object pValue);
64
+
65
+ /// <summary>
66
+ ///
67
+ /// </summary>
68
+ /// <param name="pValue"></param>
69
+ /// <param name="instanceData"></param>
70
+ public abstract void LoadRoomState(object pValue, object instanceData = null);
71
+
72
+ /// <summary>
73
+ ///
74
+ /// </summary>
75
+ /// <param name="pValue"></param>
76
+ /// <returns></returns>
77
+ public abstract bool BaseIsPersistent(object pValue);
78
+
79
+ /// <summary>
80
+ ///
81
+ /// </summary>
82
+ /// <param name="inEditor"></param>
83
+ public abstract void UnloadAll(bool inEditor);
84
+ }
85
85
  }
@@ -1,11 +1,11 @@
1
- fileFormatVersion: 2
2
- guid: 76696a6823b2d46408e0f85f7fb03fa6
3
- MonoImporter:
4
- externalObjects: {}
5
- serializedVersion: 2
6
- defaultReferences: []
7
- executionOrder: 0
8
- icon: {instanceID: 0}
9
- userData:
10
- assetBundleName:
11
- assetBundleVariant:
1
+ fileFormatVersion: 2
2
+ guid: 76696a6823b2d46408e0f85f7fb03fa6
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -1,87 +1,87 @@
1
- //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
- #if UNITY_EDITOR
3
- using DREditor.Progressing;
4
- using UnityEditor;
5
- using UnityEngine;
6
-
7
- namespace DREditor.RoomBuilding
8
- {
9
- /// <summary>
10
- ///
11
- /// </summary>
12
- public abstract class RoomManagerEditorBase : RoomManagerEditorCoreBase
13
- {
14
- /// <inheritdoc/>
15
- protected override void CreateForm()
16
- {
17
- DisplayEvents();
18
-
19
- if (DisplayBuilderField())
20
- {
21
- DisplayChapter();
22
-
23
- DisplayBuilderData();
24
- }
25
- }
26
-
27
- /// <summary>
28
- ///
29
- /// </summary>
30
- protected abstract bool DisplayBuilderField();
31
-
32
- /// <summary>
33
- ///
34
- /// </summary>
35
- protected abstract bool IsManagerBuilderValid();
36
-
37
- /// <summary>
38
- ///
39
- /// </summary>
40
- protected virtual void DisplayBuilderData()
41
- {
42
- if (IsManagerBuilderValid())
43
- {
44
- CreateRoomSave();
45
-
46
- ClearDropDown();
47
-
48
- DisplayRoomStates();
49
- }
50
- }
51
-
52
- /// <summary>
53
- ///
54
- /// </summary>
55
- protected virtual void CreateRoomSave()
56
- {
57
- using (new EditorGUILayout.HorizontalScope())
58
- {
59
- if (managerBase.Chapter == null)
60
- managerBase.SetChapter(pDB.Chapters[managerBase.intChapter]);
61
-
62
- intObjective = EditorGUILayout.Popup(intObjective, managerBase.Chapter.GetObjectives());
63
-
64
- if (GUILayout.Button("Create Room Save"))
65
- SaveRoom(pDB.Chapters[managerBase.intChapter].Objectives[intObjective]);
66
- }
67
-
68
- DisplayShellData();
69
- }
70
-
71
- /// <summary>
72
- ///
73
- /// </summary>
74
- protected abstract void DisplayShellData();
75
-
76
- /// <summary>
77
- ///
78
- /// </summary>
79
- protected abstract void SaveRoom(Objective pValue);
80
-
81
- /// <summary>
82
- ///
83
- /// </summary>
84
- protected abstract void DisplayRoomStates();
85
- }
86
- }
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ #if UNITY_EDITOR
3
+ using DREditor.Progressing;
4
+ using UnityEditor;
5
+ using UnityEngine;
6
+
7
+ namespace DREditor.RoomBuilding
8
+ {
9
+ /// <summary>
10
+ ///
11
+ /// </summary>
12
+ public abstract class RoomManagerEditorBase : RoomManagerEditorCoreBase
13
+ {
14
+ /// <inheritdoc/>
15
+ protected override void CreateForm()
16
+ {
17
+ DisplayEvents();
18
+
19
+ if (DisplayBuilderField())
20
+ {
21
+ DisplayChapter();
22
+
23
+ DisplayBuilderData();
24
+ }
25
+ }
26
+
27
+ /// <summary>
28
+ ///
29
+ /// </summary>
30
+ protected abstract bool DisplayBuilderField();
31
+
32
+ /// <summary>
33
+ ///
34
+ /// </summary>
35
+ protected abstract bool IsManagerBuilderValid();
36
+
37
+ /// <summary>
38
+ ///
39
+ /// </summary>
40
+ protected virtual void DisplayBuilderData()
41
+ {
42
+ if (IsManagerBuilderValid())
43
+ {
44
+ CreateRoomSave();
45
+
46
+ ClearDropDown();
47
+
48
+ DisplayRoomStates();
49
+ }
50
+ }
51
+
52
+ /// <summary>
53
+ ///
54
+ /// </summary>
55
+ protected virtual void CreateRoomSave()
56
+ {
57
+ using (new EditorGUILayout.HorizontalScope())
58
+ {
59
+ if (managerBase.Chapter == null)
60
+ managerBase.SetChapter(pDB.Chapters[managerBase.intChapter]);
61
+
62
+ intObjective = EditorGUILayout.Popup(intObjective, managerBase.Chapter.GetObjectives());
63
+
64
+ if (GUILayout.Button("Create Room Save"))
65
+ SaveRoom(pDB.Chapters[managerBase.intChapter].Objectives[intObjective]);
66
+ }
67
+
68
+ DisplayShellData();
69
+ }
70
+
71
+ /// <summary>
72
+ ///
73
+ /// </summary>
74
+ protected abstract void DisplayShellData();
75
+
76
+ /// <summary>
77
+ ///
78
+ /// </summary>
79
+ protected abstract void SaveRoom(Objective pValue);
80
+
81
+ /// <summary>
82
+ ///
83
+ /// </summary>
84
+ protected abstract void DisplayRoomStates();
85
+ }
86
+ }
87
87
  #endif
@@ -1,11 +1,11 @@
1
- fileFormatVersion: 2
2
- guid: 7bef97085b641294891e26ea7a861bff
3
- MonoImporter:
4
- externalObjects: {}
5
- serializedVersion: 2
6
- defaultReferences: []
7
- executionOrder: 0
8
- icon: {instanceID: 0}
9
- userData:
10
- assetBundleName:
11
- assetBundleVariant:
1
+ fileFormatVersion: 2
2
+ guid: 7bef97085b641294891e26ea7a861bff
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant: