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,118 +1,118 @@
1
- //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
- using DREditor.Doors;
3
- using System.Collections.Generic;
4
- using System.Linq;
5
- using UnityEngine;
6
-
7
- namespace DREditor.RoomBuilding.Implementation
8
- {
9
- /// <summary>
10
- ///
11
- /// </summary>
12
- [ClassHeader(nameof(RoomStateHandlerBase<DoorStateData, DoorData>) +
13
- " for types <" + nameof(DoorStateData) + ", " + nameof(DoorData) + ">" +
14
- "\n\n")]
15
- public class DoorLoader : RoomStateHandlerBase<DoorStateData, DoorData>
16
- {
17
- /// <inheritdoc/>
18
- public override List<DoorData> Save() => SaveData();
19
-
20
- /// <inheritdoc/>
21
- public override void Unload(bool inEditor) => UnloadDoors();
22
-
23
- /// <inheritdoc/>
24
- protected override void LoadAssetProcess(List<DoorData> baseDatas, List<DoorData> instanceDatas = null)
25
- => Load(baseDatas, instanceDatas);
26
-
27
- /// <inheritdoc/>
28
- protected override bool LoadedInstanceValid(string dataInstance, out DoorData result)
29
- => base.LoadedInstanceValid(dataInstance, out result) && !string.IsNullOrEmpty(result.doorName);
30
-
31
- /// <summary>
32
- ///
33
- /// </summary>
34
- /// <returns></returns>
35
- public static List<DoorData> SaveData()
36
- {
37
- List<DoorData> doorData = new();
38
-
39
- var doorList = GetDoors();
40
-
41
- foreach (IDoor door in doorList)
42
- doorData.Add((DoorData)door.Save());
43
-
44
- return doorData;
45
- }
46
-
47
- /// <summary>
48
- ///
49
- /// </summary>
50
- /// <param name="loadedData"></param>
51
- /// <param name="instanceData"></param>
52
- public static void Load(List<DoorData> loadedData, List<DoorData> instanceData = null)
53
- {
54
- var doorList = GetDoors();
55
-
56
- for (int i = 0; i < loadedData.Count; i++)
57
- for (int x = 0; x < doorList.Count(); x++)
58
- {
59
- if (doorList[x].GetGameObjectName() == loadedData[i].doorName)
60
- {
61
- DoorData doorInstance = GetInstanceData(doorList[x].GetGameObjectName(), instanceData);
62
-
63
- var doorDataToLoad = doorInstance != null
64
- ? MergeInstance(loadedData[i], doorInstance)
65
- : (DoorData)loadedData[i].Clone(); // fallback to base data
66
-
67
- doorList[x].Load(doorDataToLoad);
68
- }
69
- }
70
- }
71
-
72
- /// <summary>
73
- ///
74
- /// </summary>
75
- /// <param name="doorName"></param>
76
- /// <param name="instanceDatas"></param>
77
- /// <returns></returns>
78
- static DoorData GetInstanceData(string doorName, List<DoorData> instanceDatas)
79
- {
80
- if (instanceDatas != null)
81
- return instanceDatas.FirstOrDefault(doorData => doorData.doorName == doorName);
82
-
83
- return null;
84
- }
85
-
86
- /// <summary>
87
- ///
88
- /// </summary>
89
- /// <param name="doorBaseData"></param>
90
- /// <param name="doorInstaceData"></param>
91
- /// <returns></returns>
92
- static DoorData MergeInstance(DoorData doorBaseData, DoorData doorInstaceData)
93
- {
94
- DoorData copy = (DoorData)doorBaseData.Clone();
95
-
96
- copy.SetIdentified(doorInstaceData.identified);
97
-
98
- return copy;
99
- }
100
-
101
- /// <summary>
102
- ///
103
- /// </summary>
104
- public static void UnloadDoors()
105
- {
106
- var doors = GetDoors();
107
-
108
- foreach (IDoor door in doors)
109
- door.ClearLockData();
110
- }
111
-
112
- /// <summary>
113
- ///
114
- /// </summary>
115
- /// <returns></returns>
116
- static IDoor[] GetDoors() => FindObjectsByType<MonoBehaviour>().OfType<IDoor>().ToArray();
117
- }
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ using DREditor.Doors;
3
+ using System.Collections.Generic;
4
+ using System.Linq;
5
+ using UnityEngine;
6
+
7
+ namespace DREditor.RoomBuilding.Implementation
8
+ {
9
+ /// <summary>
10
+ ///
11
+ /// </summary>
12
+ [ClassHeader(nameof(RoomStateHandlerBase<DoorStateData, DoorData>) +
13
+ " for types <" + nameof(DoorStateData) + ", " + nameof(DoorData) + ">" +
14
+ "\n\n")]
15
+ public class DoorLoader : RoomStateHandlerBase<DoorStateData, DoorData>
16
+ {
17
+ /// <inheritdoc/>
18
+ public override List<DoorData> Save() => SaveData();
19
+
20
+ /// <inheritdoc/>
21
+ public override void Unload(bool inEditor) => UnloadDoors();
22
+
23
+ /// <inheritdoc/>
24
+ protected override void LoadAssetProcess(List<DoorData> baseDatas, List<DoorData> instanceDatas = null)
25
+ => Load(baseDatas, instanceDatas);
26
+
27
+ /// <inheritdoc/>
28
+ protected override bool LoadedInstanceValid(string dataInstance, out DoorData result)
29
+ => base.LoadedInstanceValid(dataInstance, out result) && !string.IsNullOrEmpty(result.doorName);
30
+
31
+ /// <summary>
32
+ ///
33
+ /// </summary>
34
+ /// <returns></returns>
35
+ public static List<DoorData> SaveData()
36
+ {
37
+ List<DoorData> doorData = new();
38
+
39
+ var doorList = GetDoors();
40
+
41
+ foreach (IDoor door in doorList)
42
+ doorData.Add((DoorData)door.Save());
43
+
44
+ return doorData;
45
+ }
46
+
47
+ /// <summary>
48
+ ///
49
+ /// </summary>
50
+ /// <param name="loadedData"></param>
51
+ /// <param name="instanceData"></param>
52
+ public static void Load(List<DoorData> loadedData, List<DoorData> instanceData = null)
53
+ {
54
+ var doorList = GetDoors();
55
+
56
+ for (int i = 0; i < loadedData.Count; i++)
57
+ for (int x = 0; x < doorList.Count(); x++)
58
+ {
59
+ if (doorList[x].GetGameObjectName() == loadedData[i].doorName)
60
+ {
61
+ DoorData doorInstance = GetInstanceData(doorList[x].GetGameObjectName(), instanceData);
62
+
63
+ var doorDataToLoad = doorInstance != null
64
+ ? MergeInstance(loadedData[i], doorInstance)
65
+ : (DoorData)loadedData[i].Clone(); // fallback to base data
66
+
67
+ doorList[x].Load(doorDataToLoad);
68
+ }
69
+ }
70
+ }
71
+
72
+ /// <summary>
73
+ ///
74
+ /// </summary>
75
+ /// <param name="doorName"></param>
76
+ /// <param name="instanceDatas"></param>
77
+ /// <returns></returns>
78
+ static DoorData GetInstanceData(string doorName, List<DoorData> instanceDatas)
79
+ {
80
+ if (instanceDatas != null)
81
+ return instanceDatas.FirstOrDefault(doorData => doorData.doorName == doorName);
82
+
83
+ return null;
84
+ }
85
+
86
+ /// <summary>
87
+ ///
88
+ /// </summary>
89
+ /// <param name="doorBaseData"></param>
90
+ /// <param name="doorInstaceData"></param>
91
+ /// <returns></returns>
92
+ static DoorData MergeInstance(DoorData doorBaseData, DoorData doorInstaceData)
93
+ {
94
+ DoorData copy = (DoorData)doorBaseData.Clone();
95
+
96
+ copy.SetIdentified(doorInstaceData.identified);
97
+
98
+ return copy;
99
+ }
100
+
101
+ /// <summary>
102
+ ///
103
+ /// </summary>
104
+ public static void UnloadDoors()
105
+ {
106
+ var doors = GetDoors();
107
+
108
+ foreach (IDoor door in doors)
109
+ door.ClearLockData();
110
+ }
111
+
112
+ /// <summary>
113
+ ///
114
+ /// </summary>
115
+ /// <returns></returns>
116
+ static IDoor[] GetDoors() => FindObjectsByType<MonoBehaviour>().OfType<IDoor>().ToArray();
117
+ }
118
118
  }
@@ -1,11 +1,11 @@
1
- fileFormatVersion: 2
2
- guid: fae4beb9d04dc6e4791a8954c730467b
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: fae4beb9d04dc6e4791a8954c730467b
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -1,52 +1,52 @@
1
- //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
- #if UNITY_EDITOR
3
- using DREditor.Doors;
4
- using DREditor.Editor.Utility;
5
- using System.Collections.Generic;
6
- using System.Linq;
7
- using UnityEditor;
8
- using UnityEngine;
9
-
10
- namespace DREditor.RoomBuilding.Implementation
11
- {
12
- /// <summary>
13
- ///
14
- /// </summary>
15
- public static class DoorLoaderUtility
16
- {
17
- #if UNITY_EDITOR
18
-
19
- /// <summary>
20
- ///
21
- /// </summary>
22
- [MenuItem("DREditor/Doors/Apply Current Door Names to Saves")]
23
- public static void SetAllDoorsToName()
24
- {
25
- List<IDoor> doors = MonoBehaviour.FindObjectsByType<MonoBehaviour>().OfType<IDoor>().ToList();
26
-
27
- List<DoorStateData> datas = BuilderUtility.FindAssetsByType<DoorStateData>();
28
-
29
- foreach (IDoor door in doors)
30
- foreach (var doorStateData in datas)
31
- foreach (var doorData in doorStateData.datas)
32
- if (doorData.doorName == door.GetDoorName())
33
- SetDisplayName(doorStateData, doorData, door);
34
- }
35
-
36
- /// <summary>
37
- ///
38
- /// </summary>
39
- /// <param name="doorStateData"></param>
40
- /// <param name="data"></param>
41
- /// <param name="door"></param>
42
- static void SetDisplayName(DoorStateData doorStateData, DoorData data, IDoor door)
43
- {
44
- data.SetDisplayName(door.GetSaveDisplayName());
45
-
46
- EditorUtility.SetDirty(doorStateData);
47
- }
48
-
49
- #endif
50
- }
51
- }
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ #if UNITY_EDITOR
3
+ using DREditor.Doors;
4
+ using DREditor.Editor.Utility;
5
+ using System.Collections.Generic;
6
+ using System.Linq;
7
+ using UnityEditor;
8
+ using UnityEngine;
9
+
10
+ namespace DREditor.RoomBuilding.Implementation
11
+ {
12
+ /// <summary>
13
+ ///
14
+ /// </summary>
15
+ public static class DoorLoaderUtility
16
+ {
17
+ #if UNITY_EDITOR
18
+
19
+ /// <summary>
20
+ ///
21
+ /// </summary>
22
+ [MenuItem("DREditor/Doors/Apply Current Door Names to Saves")]
23
+ public static void SetAllDoorsToName()
24
+ {
25
+ List<IDoor> doors = MonoBehaviour.FindObjectsByType<MonoBehaviour>().OfType<IDoor>().ToList();
26
+
27
+ List<DoorStateData> datas = BuilderUtility.FindAssetsByType<DoorStateData>();
28
+
29
+ foreach (IDoor door in doors)
30
+ foreach (var doorStateData in datas)
31
+ foreach (var doorData in doorStateData.datas)
32
+ if (doorData.doorName == door.GetDoorName())
33
+ SetDisplayName(doorStateData, doorData, door);
34
+ }
35
+
36
+ /// <summary>
37
+ ///
38
+ /// </summary>
39
+ /// <param name="doorStateData"></param>
40
+ /// <param name="data"></param>
41
+ /// <param name="door"></param>
42
+ static void SetDisplayName(DoorStateData doorStateData, DoorData data, IDoor door)
43
+ {
44
+ data.SetDisplayName(door.GetSaveDisplayName());
45
+
46
+ EditorUtility.SetDirty(doorStateData);
47
+ }
48
+
49
+ #endif
50
+ }
51
+ }
52
52
  #endif
@@ -1,11 +1,11 @@
1
- fileFormatVersion: 2
2
- guid: 2b578b45c48417f479f7cd9a6a299a77
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: 2b578b45c48417f479f7cd9a6a299a77
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -1,12 +1,12 @@
1
- //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
- using DREditor.Doors;
3
- using System;
4
-
5
- namespace DREditor.RoomBuilding.Implementation
6
- {
7
- /// <summary>
8
- ///
9
- /// </summary>
10
- [Serializable]
11
- public class DoorStateData : StateDataAsset<DoorData> { }
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ using DREditor.Doors;
3
+ using System;
4
+
5
+ namespace DREditor.RoomBuilding.Implementation
6
+ {
7
+ /// <summary>
8
+ ///
9
+ /// </summary>
10
+ [Serializable]
11
+ public class DoorStateData : StateDataAsset<DoorData> { }
12
12
  }
@@ -1,11 +1,11 @@
1
- fileFormatVersion: 2
2
- guid: 8befe06bf9c67704d87cc09a9e49b24c
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: 8befe06bf9c67704d87cc09a9e49b24c
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant: