net.dreditor.roombuilding 0.0.0-stage → 0.1.6

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/DREditor.RoomBuilding.asmdef +29 -0
  2. package/DREditor.RoomBuilding.asmdef.meta +7 -0
  3. package/Editor/DREditor.RoomBuilding.Editor.asmdef +20 -0
  4. package/Editor/DREditor.RoomBuilding.Editor.asmdef.meta +7 -0
  5. package/Editor/FindCharactersInRoomsWizard.cs +56 -0
  6. package/Editor/FindCharactersInRoomsWizard.cs.meta +11 -0
  7. package/Editor/RoomBuilderContainsObjective.cs +39 -0
  8. package/Editor/RoomBuilderContainsObjective.cs.meta +11 -0
  9. package/Editor/RoomBuilderScanWizard.cs +91 -0
  10. package/Editor/RoomBuilderScanWizard.cs.meta +11 -0
  11. package/Editor/ScanRoomBuilders.cs +75 -0
  12. package/Editor/ScanRoomBuilders.cs.meta +11 -0
  13. package/Editor.meta +8 -0
  14. package/Implementation/Actors/ActorData.cs +116 -0
  15. package/Implementation/Actors/ActorData.cs.meta +11 -0
  16. package/Implementation/Actors/ActorStateData.cs +11 -0
  17. package/Implementation/Actors/ActorStateData.cs.meta +11 -0
  18. package/Implementation/Actors/ActorStateLoader.cs +345 -0
  19. package/Implementation/Actors/ActorStateLoader.cs.meta +11 -0
  20. package/Implementation/Actors/TActorData.cs +36 -0
  21. package/Implementation/Actors/TActorData.cs.meta +11 -0
  22. package/Implementation/Actors/TrialActorManager.cs +158 -0
  23. package/Implementation/Actors/TrialActorManager.cs.meta +11 -0
  24. package/Implementation/Actors.meta +8 -0
  25. package/Implementation/DoorLoader.cs +118 -0
  26. package/Implementation/DoorLoader.cs.meta +11 -0
  27. package/Implementation/DoorLoaderUtility.cs +52 -0
  28. package/Implementation/DoorLoaderUtility.cs.meta +11 -0
  29. package/Implementation/DoorStateData.cs +12 -0
  30. package/Implementation/DoorStateData.cs.meta +11 -0
  31. package/Implementation/ItemActorLoader.cs +158 -0
  32. package/Implementation/ItemActorLoader.cs.meta +11 -0
  33. package/Implementation/ItemData.cs +68 -0
  34. package/Implementation/ItemData.cs.meta +11 -0
  35. package/Implementation/ItemStateData.cs +11 -0
  36. package/Implementation/ItemStateData.cs.meta +11 -0
  37. package/Implementation/MoveLoader.cs +68 -0
  38. package/Implementation/MoveLoader.cs.meta +11 -0
  39. package/Implementation/MoveStateData.cs +12 -0
  40. package/Implementation/MoveStateData.cs.meta +11 -0
  41. package/Implementation/RoomStateHandlerBase.cs +242 -0
  42. package/Implementation/RoomStateHandlerBase.cs.meta +11 -0
  43. package/Implementation/SaveableData.cs +57 -0
  44. package/Implementation/SaveableData.cs.meta +11 -0
  45. package/Implementation/SaveableDataSet.cs +67 -0
  46. package/Implementation/SaveableDataSet.cs.meta +11 -0
  47. package/Implementation/SaveableManager.cs +71 -0
  48. package/Implementation/SaveableManager.cs.meta +11 -0
  49. package/Implementation/SaveableStateData.cs +11 -0
  50. package/Implementation/SaveableStateData.cs.meta +11 -0
  51. package/Implementation/SpawnableLoader.cs +126 -0
  52. package/Implementation/SpawnableLoader.cs.meta +11 -0
  53. package/Implementation/SpawnableStateData.cs +12 -0
  54. package/Implementation/SpawnableStateData.cs.meta +11 -0
  55. package/Implementation/StateDataAsset.cs +29 -0
  56. package/Implementation/StateDataAsset.cs.meta +11 -0
  57. package/Implementation/SubAreaLoader.cs +109 -0
  58. package/Implementation/SubAreaLoader.cs.meta +11 -0
  59. package/Implementation/SubAreaStateData.cs +12 -0
  60. package/Implementation/SubAreaStateData.cs.meta +11 -0
  61. package/Implementation/TriggerConverter.cs +138 -0
  62. package/Implementation/TriggerConverter.cs.meta +11 -0
  63. package/Implementation/TriggerLoader.cs +296 -0
  64. package/Implementation/TriggerLoader.cs.meta +11 -0
  65. package/Implementation/TriggerStateData.cs +19 -0
  66. package/Implementation/TriggerStateData.cs.meta +11 -0
  67. package/Implementation.meta +8 -0
  68. package/InstanceListWrapper.cs +24 -0
  69. package/InstanceListWrapper.cs.meta +11 -0
  70. package/Instances/ConvertInstanceData.cs +90 -0
  71. package/Instances/ConvertInstanceData.cs.meta +11 -0
  72. package/Instances/InstanceData.cs +44 -0
  73. package/Instances/InstanceData.cs.meta +11 -0
  74. package/Instances/InstanceStateData.cs +52 -0
  75. package/Instances/InstanceStateData.cs.meta +11 -0
  76. package/Instances/RoomInstanceData.cs +69 -0
  77. package/Instances/RoomInstanceData.cs.meta +11 -0
  78. package/Instances/RoomInstanceManager.cs +453 -0
  79. package/Instances/RoomInstanceManager.cs.meta +11 -0
  80. package/Instances.meta +8 -0
  81. package/LoadInvestigationRoomState.cs +54 -0
  82. package/LoadInvestigationRoomState.cs.meta +11 -0
  83. package/Old/ActorLoader.cs +383 -0
  84. package/Old/ActorLoader.cs.meta +11 -0
  85. package/Old/Room.cs +25 -0
  86. package/Old/Room.cs.meta +11 -0
  87. package/Old/RoomBuilder.cs +59 -0
  88. package/Old/RoomBuilder.cs.meta +11 -0
  89. package/Old/RoomData.cs +91 -0
  90. package/Old/RoomData.cs.meta +11 -0
  91. package/Old/RoomManager.cs +257 -0
  92. package/Old/RoomManager.cs.meta +11 -0
  93. package/Old/RoomManagerDisplayEditor.cs +73 -0
  94. package/Old/RoomManagerDisplayEditor.cs.meta +11 -0
  95. package/Old/RoomManagerEditor.cs +212 -0
  96. package/Old/RoomManagerEditor.cs.meta +11 -0
  97. package/Old/RoomManagerShellDisplayEditor.cs +49 -0
  98. package/Old/RoomManagerShellDisplayEditor.cs.meta +11 -0
  99. package/Old/RoomSection.cs +36 -0
  100. package/Old/RoomSection.cs.meta +11 -0
  101. package/Old.meta +8 -0
  102. package/RoomManagerBase.cs +85 -0
  103. package/RoomManagerBase.cs.meta +11 -0
  104. package/RoomManagerEditorBase.cs +87 -0
  105. package/RoomManagerEditorBase.cs.meta +11 -0
  106. package/RoomManagerEditorCoreBase.cs +160 -0
  107. package/RoomManagerEditorCoreBase.cs.meta +11 -0
  108. package/RoomSaveDisplayEditorBase.cs +112 -0
  109. package/RoomSaveDisplayEditorBase.cs.meta +11 -0
  110. package/RoomShellDisplayEditorBase.cs +69 -0
  111. package/RoomShellDisplayEditorBase.cs.meta +11 -0
  112. package/RoomStateBuilder.cs +54 -0
  113. package/RoomStateBuilder.cs.meta +11 -0
  114. package/RoomStateData.cs +59 -0
  115. package/RoomStateData.cs.meta +11 -0
  116. package/RoomStateManager.cs +203 -0
  117. package/RoomStateManager.cs.meta +11 -0
  118. package/RoomStateManagerEditor.cs +393 -0
  119. package/RoomStateManagerEditor.cs.meta +11 -0
  120. package/RoomStateSaveDisplayEditor.cs +176 -0
  121. package/RoomStateSaveDisplayEditor.cs.meta +11 -0
  122. package/RoomStateSection.cs +70 -0
  123. package/RoomStateSection.cs.meta +11 -0
  124. package/RoomStateShellDisplayEditor.cs +109 -0
  125. package/RoomStateShellDisplayEditor.cs.meta +11 -0
  126. package/Samples/Room_State_Manager.prefab +473 -0
  127. package/Samples/Room_State_Manager.prefab.meta +7 -0
  128. package/Samples/Trial_Actor_Manager.prefab +51 -0
  129. package/Samples/Trial_Actor_Manager.prefab.meta +7 -0
  130. package/Samples.meta +8 -0
  131. package/package.json +46 -6
  132. package/package.json.meta +7 -0
  133. package/README.md +0 -3
@@ -0,0 +1,29 @@
1
+ {
2
+ "name": "DREditor.RoomBuilding",
3
+ "rootNamespace": "",
4
+ "references": [
5
+ "DREditor",
6
+ "DREditor.Editor",
7
+ "DREditor.Progressing.Handling",
8
+ "DREditor.DialogueEventHandling",
9
+ "DREditor.RoomStateBuilding",
10
+ "DREditor.RoomLoading",
11
+ "DREditor.Actors",
12
+ "DREditor.Talkables",
13
+ "DREditor.LocalDialogues",
14
+ "DREditor.Doors",
15
+ "DREditor.SubAreas",
16
+ "DREditor.Saveables",
17
+ "DREditor.Triggers",
18
+ "DREditor.Spawnables"
19
+ ],
20
+ "includePlatforms": [],
21
+ "excludePlatforms": [],
22
+ "allowUnsafeCode": false,
23
+ "overrideReferences": false,
24
+ "precompiledReferences": [],
25
+ "autoReferenced": true,
26
+ "defineConstraints": [],
27
+ "versionDefines": [],
28
+ "noEngineReferences": false
29
+ }
@@ -0,0 +1,7 @@
1
+ fileFormatVersion: 2
2
+ guid: 870f27bea9b4335468d4157b430301a6
3
+ AssemblyDefinitionImporter:
4
+ externalObjects: {}
5
+ userData:
6
+ assetBundleName:
7
+ assetBundleVariant:
@@ -0,0 +1,20 @@
1
+ {
2
+ "name": "DREditor.RoomBuilding.Editor",
3
+ "rootNamespace": "",
4
+ "references": [
5
+ "DREditor",
6
+ "DREditor.Editor",
7
+ "DREditor.RoomBuilding"
8
+ ],
9
+ "includePlatforms": [
10
+ "Editor"
11
+ ],
12
+ "excludePlatforms": [],
13
+ "allowUnsafeCode": false,
14
+ "overrideReferences": false,
15
+ "precompiledReferences": [],
16
+ "autoReferenced": true,
17
+ "defineConstraints": [],
18
+ "versionDefines": [],
19
+ "noEngineReferences": false
20
+ }
@@ -0,0 +1,7 @@
1
+ fileFormatVersion: 2
2
+ guid: 32c4472f4af1cd44d81cc1be97099ae5
3
+ AssemblyDefinitionImporter:
4
+ externalObjects: {}
5
+ userData:
6
+ assetBundleName:
7
+ assetBundleVariant:
@@ -0,0 +1,56 @@
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ #if UNITY_EDITOR
3
+ using DREditor.Editor.Utility;
4
+ using DREditor.RoomBuilding.Implementation.Actors;
5
+ using System.Linq;
6
+ using UnityEditor;
7
+ using UnityEngine;
8
+
9
+ namespace DREditor.RoomBuilding.Editor
10
+ {
11
+ /// <summary>
12
+ ///
13
+ /// </summary>
14
+ public class FindCharactersInRoomsWizard : ScriptableWizard
15
+ {
16
+ /// <summary>
17
+ ///
18
+ /// </summary>
19
+ [Header("")]
20
+ [Divider]
21
+ [TextArea]
22
+ [Tooltip("")]
23
+ [SerializeField] protected string text;
24
+
25
+
26
+ [MenuItem("DREditor/Utility/Scan/Room Builders for a character")]
27
+ public static void CreateWizard()
28
+ => DisplayWizard<FindCharactersInRoomsWizard>("Scan Room Builders for a character", "Find Builders");
29
+
30
+ protected virtual void OnWizardCreate() => FindRoomStatesWithCharacter(text);
31
+
32
+
33
+ /// <summary>
34
+ ///
35
+ /// </summary>
36
+ /// <param name="characterName"></param>
37
+ protected virtual void FindRoomStatesWithCharacter(string characterName)
38
+ {
39
+ UnityEngine.Debug.Log("Scanning All Room Saves with Character: " + characterName);
40
+
41
+ var builders = BuilderUtility.FindAssetsByType<RoomStateBuilder>();
42
+
43
+ foreach (var builder in builders)
44
+ foreach (var section in builder.Sections)
45
+ foreach (var save in section.Rooms)
46
+ foreach (ActorStateData actorStateData in save.dataStates.Cast<ActorStateData>())
47
+ foreach (var actorData in actorStateData.datas)
48
+ if (actorData.aReference == characterName)
49
+ UnityEngine.Debug.Log("Area: " + builder.name + " Chapter: " +
50
+ section.Chapter.name + " Save: " + save.progressionValue.Description);
51
+
52
+ UnityEngine.Debug.Log("Scan Complete");
53
+ }
54
+ }
55
+ }
56
+ #endif
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: c47b71df86d47424ea8012ff361d5ef9
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -0,0 +1,39 @@
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ #if UNITY_EDITOR
3
+ using DREditor.Editor.Utility;
4
+ using System.Collections.Generic;
5
+ using UnityEditor;
6
+
7
+ namespace DREditor.RoomBuilding.Editor
8
+ {
9
+ /// <summary>
10
+ ///
11
+ /// </summary>
12
+ public class RoomBuilderContainsObjective : RoomBuilderScanWizard
13
+ {
14
+ [MenuItem("DREditor/Utility/Scan/Room Builders Containing Objective")]
15
+ public static void CreateWizard()
16
+ => DisplayWizard<ScanRoomBuilders>("Scan Room Builders Containing Objective", "Find Builders");
17
+
18
+
19
+ protected virtual void OnWizardCreate() => HasObjective();
20
+
21
+
22
+ /// <summary>
23
+ ///
24
+ /// </summary>
25
+ protected virtual void HasObjective()
26
+ {
27
+ List<RoomStateBuilder> builders = BuilderUtility.FindAssetsByType<RoomStateBuilder>();
28
+
29
+ foreach (RoomStateBuilder builder in builders)
30
+ {
31
+ builder.GetSectionWithObjective(chapter, objective);
32
+
33
+ if (builder != null)
34
+ UnityEngine.Debug.Log(builder.name + $" has a Room Save for {chapter.title}: {objective.Description}");
35
+ }
36
+ }
37
+ }
38
+ }
39
+ #endif
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: 8f3821aa3a4fcbe41a54c271e47e1e60
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -0,0 +1,91 @@
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ #if UNITY_EDITOR
3
+ using DREditor.Editor.Utility;
4
+ using DREditor.Progressing;
5
+ using UnityEditor;
6
+ using UnityEngine;
7
+
8
+ namespace DREditor.RoomBuilding.Editor
9
+ {
10
+ /// <summary>
11
+ ///
12
+ /// </summary>
13
+ /// <remarks>
14
+ ///
15
+ /// </remarks>
16
+ public class RoomBuilderScanWizard : ScriptableWizard
17
+ {
18
+ /// <summary>
19
+ ///
20
+ /// </summary>
21
+ protected ProgressionDatabase progressionDatabase;
22
+
23
+ /// <summary>
24
+ ///
25
+ /// </summary>
26
+ protected int chapterIndex = 0;
27
+
28
+ /// <summary>
29
+ ///
30
+ /// </summary>
31
+ protected Chapter chapter;
32
+
33
+ /// <summary>
34
+ ///
35
+ /// </summary>
36
+ protected int objectiveIndex = 0;
37
+
38
+ /// <summary>
39
+ ///
40
+ /// </summary>
41
+ protected Objective objective;
42
+
43
+
44
+
45
+ /// <inheritdoc/>
46
+ protected override bool DrawWizardGUI()
47
+ {
48
+ InitializeProgression();
49
+
50
+ DisplayProgressionGUI();
51
+
52
+ return base.DrawWizardGUI();
53
+ }
54
+
55
+ /// <summary>
56
+ ///
57
+ /// </summary>
58
+ protected virtual void InitializeProgression()
59
+ {
60
+ if (progressionDatabase == null)
61
+ progressionDatabase = DatabaseUtility.LoadDatabase<ProgressionDatabase>();
62
+
63
+ if (progressionDatabase == null)
64
+ {
65
+ UnityEngine.Debug.LogError("The Progression Database could not be found");
66
+
67
+ Close();
68
+ }
69
+ }
70
+
71
+ /// <summary>
72
+ ///
73
+ /// </summary>
74
+ protected virtual void DisplayProgressionGUI()
75
+ {
76
+ using (new EditorGUILayout.VerticalScope())
77
+ {
78
+ chapterIndex = HandyFields.IntField("Chapter:", chapterIndex, 50, 8, false);
79
+
80
+ chapter = progressionDatabase.Chapters[chapterIndex];
81
+
82
+ objectiveIndex = EditorGUILayout.Popup(objectiveIndex, chapter.GetObjectives(), GUILayout.Width(200));
83
+
84
+ objective = chapter.Objectives[objectiveIndex];
85
+
86
+ GUILayout.FlexibleSpace();
87
+ }
88
+ }
89
+ }
90
+ }
91
+ #endif
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: 4ac3ddb18d969174faf018f57c36567d
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -0,0 +1,75 @@
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ #if UNITY_EDITOR
3
+ using DREditor.Editor.Utility;
4
+ using DREditor.Progressing;
5
+ using System.Collections.Generic;
6
+ using UnityEditor;
7
+ using UnityEngine;
8
+
9
+ namespace DREditor.RoomBuilding.Editor
10
+ {
11
+ /// <summary>
12
+ ///
13
+ /// </summary>
14
+ public class ScanRoomBuilders : RoomBuilderScanWizard
15
+ {
16
+ /// <summary>
17
+ ///
18
+ /// </summary>
19
+ [Header("")]
20
+ [Divider]
21
+ [Tooltip("")]
22
+ [SerializeField] protected Objective replacement;
23
+
24
+
25
+ [MenuItem("DREditor/Utility/Scan/Replace Objective in Room Builders")]
26
+ public static void CreateWizard() => DisplayWizard<ScanRoomBuilders>("Scan Builders", "Show Replacement");
27
+
28
+ protected virtual void OnWizardCreate() => ChangeObjectiveSafely(replacement);
29
+
30
+
31
+ /// <summary>
32
+ ///
33
+ /// </summary>
34
+ /// <param name="replacement"></param>
35
+ protected virtual void ChangeObjectiveSafely(Objective replacement)
36
+ {
37
+ AssetDatabase.StartAssetEditing();
38
+
39
+ List<RoomStateBuilder> builders = BuilderUtility.FindAssetsByType<RoomStateBuilder>();
40
+
41
+ foreach (RoomStateBuilder builder in builders)
42
+ ReplaceObjectiveInBuilder(builder, replacement);
43
+
44
+ progressionDatabase.Chapters[chapterIndex].Objectives[objectiveIndex] = replacement;
45
+
46
+ EditorUtility.SetDirty(progressionDatabase.Chapters[chapterIndex]);
47
+
48
+ AssetDatabase.StopAssetEditing();
49
+ }
50
+
51
+ /// <summary>
52
+ ///
53
+ /// </summary>
54
+ /// <param name="builder"></param>
55
+ /// <param name="replacement"></param>
56
+ protected virtual void ReplaceObjectiveInBuilder(RoomStateBuilder builder, Objective replacement)
57
+ {
58
+ RoomStateSection section = builder.GetSectionWithObjective(chapter, objective);
59
+
60
+ if (section != null)
61
+ {
62
+ int sectionNum = builder.Sections.IndexOf(section);
63
+
64
+ RoomStateData room = (RoomStateData)section.GetDataWithObjective(objective);
65
+
66
+ int roomNum = section.Rooms.IndexOf(room);
67
+
68
+ builder.Sections[sectionNum].Rooms[roomNum].SetProgressionValue((Objective)replacement.Clone());
69
+
70
+ EditorUtility.SetDirty(builder);
71
+ }
72
+ }
73
+ }
74
+ }
75
+ #endif
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: bacdb3c45ee99df4794a4f49ba2e02f6
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
package/Editor.meta ADDED
@@ -0,0 +1,8 @@
1
+ fileFormatVersion: 2
2
+ guid: e83762f6c8dda54479f370571fb35263
3
+ folderAsset: yes
4
+ DefaultImporter:
5
+ externalObjects: {}
6
+ userData:
7
+ assetBundleName:
8
+ assetBundleVariant:
@@ -0,0 +1,116 @@
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ using DREditor.Actors;
3
+ using DREditor.LocalDialogues;
4
+ using System;
5
+ using System.Collections.Generic;
6
+ using UnityEngine;
7
+ using UnityEngine.Serialization;
8
+
9
+ namespace DREditor.RoomBuilding.Implementation.Actors
10
+ {
11
+ /// <summary>
12
+ ///
13
+ /// </summary>
14
+ [Serializable]
15
+ public class ActorData
16
+ {
17
+ /// <summary>
18
+ ///
19
+ /// </summary>
20
+ public string aReference;
21
+
22
+ /// <summary>
23
+ ///
24
+ /// </summary>
25
+ public Vector3 position;
26
+
27
+ /// <summary>
28
+ ///
29
+ /// </summary>
30
+ public Vector3 rotation;
31
+
32
+ /// <summary>
33
+ ///
34
+ /// </summary>
35
+ [FormerlySerializedAs("aData")]
36
+ public List<LocalDialogue> actorDialogues;
37
+
38
+ /// <summary>
39
+ ///
40
+ /// </summary>
41
+ public bool identified = true;
42
+
43
+ /// <summary>
44
+ ///
45
+ /// </summary>
46
+ public Material mat;
47
+
48
+ /// <summary>
49
+ ///
50
+ /// </summary>
51
+ public string matName = "";
52
+
53
+ /// <summary>
54
+ ///
55
+ /// </summary>
56
+ public string displayName = "";
57
+
58
+
59
+ public ActorData() { }
60
+
61
+ public ActorData(string refName, Actor actor)
62
+ {
63
+ position = actor.transform.position;
64
+
65
+ rotation = actor.transform.eulerAngles;
66
+
67
+ aReference = refName;
68
+
69
+ actorDialogues = actor.conversations;
70
+
71
+ var mesh = actor.GetComponentInChildren<MeshRenderer>();
72
+
73
+ mat = mesh.sharedMaterial;
74
+
75
+ matName = mesh.sharedMaterial.name;
76
+
77
+ identified = actor.GetIdentified();
78
+
79
+ displayName = actor.GetSaveDisplayName();
80
+ }
81
+
82
+
83
+ /// <summary>
84
+ ///
85
+ /// </summary>
86
+ /// <returns></returns>
87
+ public virtual object Clone()
88
+ {
89
+ ActorData newActorData = new();
90
+
91
+ ActorData copy = (ActorData)MemberwiseClone();
92
+
93
+ newActorData.aReference = copy.aReference;
94
+
95
+ newActorData.position = copy.position;
96
+
97
+ newActorData.rotation = copy.rotation;
98
+
99
+ newActorData.mat = copy.mat;
100
+
101
+ newActorData.matName = copy.matName;
102
+
103
+ newActorData.identified = copy.identified;
104
+
105
+ newActorData.displayName = copy.displayName;
106
+
107
+ newActorData.actorDialogues = new List<LocalDialogue>();
108
+
109
+ if (copy.actorDialogues != null)
110
+ foreach (LocalDialogue localDialogue in copy.actorDialogues)
111
+ newActorData.actorDialogues.Add((LocalDialogue)localDialogue.Clone());
112
+
113
+ return newActorData;
114
+ }
115
+ }
116
+ }
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: 282f180f785fd92448587fb3c07934be
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -0,0 +1,11 @@
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ using System;
3
+
4
+ namespace DREditor.RoomBuilding.Implementation.Actors
5
+ {
6
+ /// <summary>
7
+ ///
8
+ /// </summary>
9
+ [Serializable]
10
+ public class ActorStateData : StateDataAsset<ActorData> { }
11
+ }
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: 0f2cd2f90bc532d4b8d81bebf9cdde8e
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant: