com.wallstop-studios.dxmessaging 3.2.0 → 3.2.1

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 (61) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/Editor/Analyzers/DxMessagingConsoleHarvester.cs +8 -8
  3. package/Editor/CustomEditors/MessageAwareComponentFallbackEditor.cs +171 -13
  4. package/Editor/CustomEditors/MessageAwareComponentInspectorOverlay.cs +391 -96
  5. package/Editor/CustomEditors/MessageAwareComponentInspectorView.cs +279 -0
  6. package/Editor/CustomEditors/MessageAwareComponentInspectorView.cs.meta +11 -0
  7. package/Editor/DxMessagingEditorPalette.cs +66 -0
  8. package/Editor/DxMessagingEditorPalette.cs.meta +11 -0
  9. package/Editor/DxMessagingEditorTheme.cs +200 -0
  10. package/Editor/DxMessagingEditorTheme.cs.meta +11 -0
  11. package/Editor/Icons/dxmessaging-icon-256.png +0 -0
  12. package/Editor/Icons/dxmessaging-icon-256.png.meta +156 -0
  13. package/Editor/Icons/dxmessaging-icon-32.png +0 -0
  14. package/Editor/Icons/dxmessaging-icon-32.png.meta +156 -0
  15. package/Editor/Icons/dxmessaging-icon-48.png +0 -0
  16. package/Editor/Icons/dxmessaging-icon-48.png.meta +156 -0
  17. package/Editor/Icons.meta +8 -0
  18. package/Editor/Settings/DxMessagingSettingsProvider.cs +368 -33
  19. package/Editor/Testing/MessagingComponentEditorHarness.cs +11 -4
  20. package/Editor/Theme/DxMessagingTheme.uss +255 -0
  21. package/Editor/Theme/DxMessagingTheme.uss.meta +11 -0
  22. package/Editor/Theme/DxTokens.uss +90 -0
  23. package/Editor/Theme/DxTokens.uss.meta +11 -0
  24. package/Editor/Theme.meta +8 -0
  25. package/Editor/Windows/DxMessagingFlowGraphWindow.cs +5513 -0
  26. package/Editor/Windows/DxMessagingFlowGraphWindow.cs.meta +11 -0
  27. package/Editor/Windows/DxMessagingMessageMonitorWindow.cs +2288 -0
  28. package/Editor/Windows/DxMessagingMessageMonitorWindow.cs.meta +11 -0
  29. package/Editor/Windows.meta +8 -0
  30. package/README.md +84 -35
  31. package/Runtime/AssemblyInfo.cs +1 -0
  32. package/Runtime/Core/Diagnostics/MessageEmissionData.cs +29 -1
  33. package/Runtime/Core/Extensions/MessageExtensions.cs +4 -5
  34. package/Runtime/Core/Helper/MessageCache.cs +56 -23
  35. package/Runtime/Core/Internal/FlatDispatch.cs +32 -0
  36. package/Runtime/Core/Internal/TypedSlots.cs +3 -7
  37. package/Runtime/Core/MessageBus/MessageBus.cs +577 -142
  38. package/Runtime/Core/MessageBus/RegistrationLog.cs +25 -12
  39. package/Runtime/Core/MessageHandler.cs +774 -786
  40. package/Runtime/Core/MessageRegistrationHandle.cs +19 -5
  41. package/Runtime/Core/MessageRegistrationToken.cs +1080 -520
  42. package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingExerciser.cs +173 -0
  43. package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingExerciser.cs.meta +11 -0
  44. package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingExerciser.unity +424 -0
  45. package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingExerciser.unity.meta +7 -0
  46. package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingReceiver.cs +185 -0
  47. package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingReceiver.cs.meta +11 -0
  48. package/Samples~/Diagnostics Tooling Exerciser/Messages.cs +46 -0
  49. package/Samples~/Diagnostics Tooling Exerciser/Messages.cs.meta +11 -0
  50. package/Samples~/Diagnostics Tooling Exerciser/README.md +53 -0
  51. package/Samples~/Diagnostics Tooling Exerciser/README.md.meta +7 -0
  52. package/Samples~/Diagnostics Tooling Exerciser/WallstopStudios.DxMessaging.DiagnosticsToolingExerciser.Sample.asmdef +13 -0
  53. package/Samples~/Diagnostics Tooling Exerciser/WallstopStudios.DxMessaging.DiagnosticsToolingExerciser.Sample.asmdef.meta +7 -0
  54. package/Samples~/Diagnostics Tooling Exerciser.meta +8 -0
  55. package/Samples~/Mini Combat/README.md +1 -1
  56. package/Samples~/Mini Combat/Walkthrough.md +3 -3
  57. package/docs/images/DxMessaging-banner.svg +79 -0
  58. package/docs/images/DxMessaging-banner.svg.meta +53 -0
  59. package/docs/images.meta +8 -0
  60. package/docs.meta +8 -0
  61. package/package.json +13 -4
@@ -0,0 +1,173 @@
1
+ namespace WallstopStudios.DxMessagingSamples.DiagnosticsToolingExerciser
2
+ {
3
+ using System;
4
+ using System.Collections;
5
+ using DxMessaging.Core;
6
+ using DxMessaging.Core.Extensions;
7
+ using DxMessaging.Core.MessageBus;
8
+ using UnityEngine;
9
+
10
+ [DisallowMultipleComponent]
11
+ public sealed class DiagnosticsToolingExerciser : MonoBehaviour
12
+ {
13
+ [SerializeField]
14
+ private DiagnosticsToolingReceiver[] receivers = Array.Empty<DiagnosticsToolingReceiver>();
15
+
16
+ [SerializeField]
17
+ private GameObject[] broadcastSources = Array.Empty<GameObject>();
18
+
19
+ [SerializeField]
20
+ private bool enableGlobalDiagnostics = true;
21
+
22
+ [SerializeField]
23
+ private bool emitOnStart = true;
24
+
25
+ [SerializeField]
26
+ private int burstCount = 3;
27
+
28
+ [SerializeField]
29
+ private float repeatSeconds;
30
+
31
+ [SerializeField]
32
+ private bool logSummary = true;
33
+
34
+ [SerializeField]
35
+ private int sequence;
36
+
37
+ [SerializeField]
38
+ private string lastRunSummary = "Not run yet";
39
+
40
+ public int Sequence => sequence;
41
+
42
+ public string LastRunSummary => lastRunSummary;
43
+
44
+ private void Start()
45
+ {
46
+ ConfigureDiagnostics();
47
+
48
+ if (emitOnStart)
49
+ {
50
+ StartCoroutine(EmitAfterSceneStartup());
51
+ }
52
+ else
53
+ {
54
+ StartRepeatingIfRequested();
55
+ }
56
+ }
57
+
58
+ private IEnumerator EmitAfterSceneStartup()
59
+ {
60
+ yield return null;
61
+ EmitBurst();
62
+ StartRepeatingIfRequested();
63
+ }
64
+
65
+ private void StartRepeatingIfRequested()
66
+ {
67
+ if (repeatSeconds > 0)
68
+ {
69
+ InvokeRepeating(nameof(EmitBurst), repeatSeconds, repeatSeconds);
70
+ }
71
+ }
72
+
73
+ [ContextMenu("Emit Burst")]
74
+ public void EmitBurst()
75
+ {
76
+ int count = Mathf.Max(1, burstCount);
77
+ for (int index = 0; index < count; index++)
78
+ {
79
+ EmitOneOfEach();
80
+ }
81
+ }
82
+
83
+ [ContextMenu("Emit One Of Each")]
84
+ public void EmitOneOfEach()
85
+ {
86
+ EnsureReceiversReady();
87
+ sequence++;
88
+
89
+ ToolingPulse pulse = new(
90
+ CreateTraceId("pulse"),
91
+ "Diagnostics sample global pulse",
92
+ sequence
93
+ );
94
+ pulse.EmitUntargeted();
95
+
96
+ int targetedEmits = 0;
97
+ foreach (DiagnosticsToolingReceiver receiver in receivers)
98
+ {
99
+ if (receiver == null)
100
+ {
101
+ continue;
102
+ }
103
+
104
+ ToolingCommand command = new(
105
+ CreateTraceId("target"),
106
+ $"Command for {receiver.ListenerLabel}",
107
+ sequence
108
+ );
109
+ command.EmitGameObjectTargeted(receiver.gameObject);
110
+ targetedEmits++;
111
+ }
112
+
113
+ int broadcastEmits = 0;
114
+ GameObject[] sources =
115
+ broadcastSources == null || broadcastSources.Length == 0
116
+ ? new[] { gameObject }
117
+ : broadcastSources;
118
+ foreach (GameObject source in sources)
119
+ {
120
+ if (source == null)
121
+ {
122
+ continue;
123
+ }
124
+
125
+ ToolingSignal signal = new(CreateTraceId("signal"), source.name, sequence);
126
+ InstanceId sourceId = source;
127
+ MessageHandler.MessageBus.SourcedBroadcast(ref sourceId, ref signal);
128
+ broadcastEmits++;
129
+ }
130
+
131
+ lastRunSummary =
132
+ $"Sequence {sequence}: 1 untargeted, {targetedEmits} targeted, {broadcastEmits} broadcast";
133
+
134
+ if (logSummary)
135
+ {
136
+ Debug.Log(lastRunSummary, this);
137
+ }
138
+ }
139
+
140
+ private void ConfigureDiagnostics()
141
+ {
142
+ if (!enableGlobalDiagnostics)
143
+ {
144
+ return;
145
+ }
146
+
147
+ if (MessageHandler.MessageBus is MessageBus messageBus)
148
+ {
149
+ messageBus.DiagnosticsMode = true;
150
+ }
151
+ else
152
+ {
153
+ Debug.LogWarning(
154
+ "DxMessaging global diagnostics could not be enabled because the active global bus is not the default MessageBus.",
155
+ this
156
+ );
157
+ }
158
+ }
159
+
160
+ private string CreateTraceId(string route)
161
+ {
162
+ return $"sample-{route}-{sequence:000}";
163
+ }
164
+
165
+ private void EnsureReceiversReady()
166
+ {
167
+ foreach (DiagnosticsToolingReceiver receiver in receivers)
168
+ {
169
+ receiver?.EnsureToolingRegistrations();
170
+ }
171
+ }
172
+ }
173
+ }
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: 8c25269c4bc0008d13063031282321a7
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,424 @@
1
+ %YAML 1.1
2
+ %TAG !u! tag:unity3d.com,2011:
3
+ --- !u!29 &1
4
+ OcclusionCullingSettings:
5
+ m_ObjectHideFlags: 0
6
+ serializedVersion: 2
7
+ m_OcclusionBakeSettings:
8
+ smallestOccluder: 5
9
+ smallestHole: 0.25
10
+ backfaceThreshold: 100
11
+ m_SceneGUID: 00000000000000000000000000000000
12
+ m_OcclusionCullingData: {fileID: 0}
13
+ --- !u!104 &2
14
+ RenderSettings:
15
+ m_ObjectHideFlags: 0
16
+ serializedVersion: 9
17
+ m_Fog: 0
18
+ m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
19
+ m_FogMode: 3
20
+ m_FogDensity: 0.01
21
+ m_LinearFogStart: 0
22
+ m_LinearFogEnd: 300
23
+ m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
24
+ m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
25
+ m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
26
+ m_AmbientIntensity: 1
27
+ m_AmbientMode: 0
28
+ m_SubtractiveShadowColor: {r: 0.42, g: 0.48, b: 0.62, a: 1}
29
+ m_SkyboxMaterial: {fileID: 0}
30
+ m_HaloStrength: 0.5
31
+ m_FlareStrength: 1
32
+ m_FlareFadeSpeed: 3
33
+ m_HaloTexture: {fileID: 0}
34
+ m_SpotCookie: {fileID: 0}
35
+ m_DefaultReflectionMode: 0
36
+ m_DefaultReflectionResolution: 128
37
+ m_ReflectionBounces: 1
38
+ m_ReflectionIntensity: 1
39
+ m_CustomReflection: {fileID: 0}
40
+ m_Sun: {fileID: 0}
41
+ m_UseRadianceAmbientProbe: 0
42
+ --- !u!157 &3
43
+ LightmapSettings:
44
+ m_ObjectHideFlags: 0
45
+ serializedVersion: 12
46
+ m_GIWorkflowMode: 1
47
+ m_GISettings:
48
+ serializedVersion: 2
49
+ m_BounceScale: 1
50
+ m_IndirectOutputScale: 1
51
+ m_AlbedoBoost: 1
52
+ m_EnvironmentLightingMode: 0
53
+ m_EnableBakedLightmaps: 1
54
+ m_EnableRealtimeLightmaps: 0
55
+ m_LightmapEditorSettings:
56
+ serializedVersion: 12
57
+ m_Resolution: 2
58
+ m_BakeResolution: 40
59
+ m_AtlasSize: 1024
60
+ m_AO: 0
61
+ m_AOMaxDistance: 1
62
+ m_CompAOExponent: 1
63
+ m_CompAOExponentDirect: 0
64
+ m_ExtractAmbientOcclusion: 0
65
+ m_Padding: 2
66
+ m_LightmapParameters: {fileID: 0}
67
+ m_LightmapsBakeMode: 1
68
+ m_TextureCompression: 1
69
+ m_FinalGather: 0
70
+ m_FinalGatherFiltering: 1
71
+ m_FinalGatherRayCount: 256
72
+ m_ReflectionCompression: 2
73
+ m_MixedBakeMode: 2
74
+ m_BakeBackend: 1
75
+ m_PVRSampling: 1
76
+ m_PVRDirectSampleCount: 32
77
+ m_PVRSampleCount: 500
78
+ m_PVRBounces: 2
79
+ m_PVREnvironmentSampleCount: 500
80
+ m_PVREnvironmentReferencePointCount: 2048
81
+ m_PVRFilteringMode: 2
82
+ m_PVRDenoiserTypeDirect: 0
83
+ m_PVRDenoiserTypeIndirect: 0
84
+ m_PVRDenoiserTypeAO: 0
85
+ m_PVRFilterTypeDirect: 0
86
+ m_PVRFilterTypeIndirect: 0
87
+ m_PVRFilterTypeAO: 0
88
+ m_PVREnvironmentMIS: 0
89
+ m_ExportTrainingData: 0
90
+ m_TrainingDataDestination: TrainingData
91
+ m_LightProbeSampleCountMultiplier: 4
92
+ m_LightingDataAsset: {fileID: 0}
93
+ m_LightingSettings: {fileID: 0}
94
+ --- !u!196 &4
95
+ NavMeshSettings:
96
+ serializedVersion: 2
97
+ m_ObjectHideFlags: 0
98
+ m_BuildSettings:
99
+ serializedVersion: 3
100
+ agentTypeID: 0
101
+ agentRadius: 0.5
102
+ agentHeight: 2
103
+ agentSlope: 45
104
+ agentClimb: 0.4
105
+ ledgeDropHeight: 0
106
+ maxJumpAcrossDistance: 0
107
+ minRegionArea: 2
108
+ manualCellSize: 0
109
+ cellSize: 0.16666667
110
+ manualTileSize: 0
111
+ tileSize: 256
112
+ buildHeightMesh: 0
113
+ maxJobWorkers: 0
114
+ preserveTilesOutsideBounds: 0
115
+ debug:
116
+ m_Flags: 0
117
+ m_NavMeshData: {fileID: 0}
118
+ --- !u!1 &100000
119
+ GameObject:
120
+ m_ObjectHideFlags: 0
121
+ m_CorrespondingSourceObject: {fileID: 0}
122
+ m_PrefabInstance: {fileID: 0}
123
+ m_PrefabAsset: {fileID: 0}
124
+ serializedVersion: 6
125
+ m_Component:
126
+ - component: {fileID: 100001}
127
+ - component: {fileID: 100002}
128
+ m_Layer: 0
129
+ m_Name: DxMessaging Tooling Exerciser
130
+ m_TagString: Untagged
131
+ m_Icon: {fileID: 0}
132
+ m_NavMeshLayer: 0
133
+ m_StaticEditorFlags: 0
134
+ m_IsActive: 1
135
+ --- !u!4 &100001
136
+ Transform:
137
+ m_ObjectHideFlags: 0
138
+ m_CorrespondingSourceObject: {fileID: 0}
139
+ m_PrefabInstance: {fileID: 0}
140
+ m_PrefabAsset: {fileID: 0}
141
+ m_GameObject: {fileID: 100000}
142
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
143
+ m_LocalPosition: {x: 0, y: 0, z: 0}
144
+ m_LocalScale: {x: 1, y: 1, z: 1}
145
+ m_ConstrainProportionsScale: 0
146
+ m_Children:
147
+ - {fileID: 110001}
148
+ - {fileID: 120001}
149
+ - {fileID: 130001}
150
+ - {fileID: 140001}
151
+ m_Father: {fileID: 0}
152
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
153
+ --- !u!114 &100002
154
+ MonoBehaviour:
155
+ m_ObjectHideFlags: 0
156
+ m_CorrespondingSourceObject: {fileID: 0}
157
+ m_PrefabInstance: {fileID: 0}
158
+ m_PrefabAsset: {fileID: 0}
159
+ m_GameObject: {fileID: 100000}
160
+ m_Enabled: 1
161
+ m_EditorHideFlags: 0
162
+ m_Script: {fileID: 11500000, guid: 8c25269c4bc0008d13063031282321a7, type: 3}
163
+ m_Name:
164
+ m_EditorClassIdentifier:
165
+ receivers:
166
+ - {fileID: 120003}
167
+ - {fileID: 130003}
168
+ - {fileID: 140003}
169
+ broadcastSources:
170
+ - {fileID: 120000}
171
+ - {fileID: 130000}
172
+ enableGlobalDiagnostics: 1
173
+ emitOnStart: 1
174
+ burstCount: 3
175
+ repeatSeconds: 0
176
+ logSummary: 1
177
+ sequence: 0
178
+ lastRunSummary: Not run yet
179
+ --- !u!1 &110000
180
+ GameObject:
181
+ m_ObjectHideFlags: 0
182
+ m_CorrespondingSourceObject: {fileID: 0}
183
+ m_PrefabInstance: {fileID: 0}
184
+ m_PrefabAsset: {fileID: 0}
185
+ serializedVersion: 6
186
+ m_Component:
187
+ - component: {fileID: 110001}
188
+ m_Layer: 0
189
+ m_Name: Instructions
190
+ m_TagString: Untagged
191
+ m_Icon: {fileID: 0}
192
+ m_NavMeshLayer: 0
193
+ m_StaticEditorFlags: 0
194
+ m_IsActive: 1
195
+ --- !u!4 &110001
196
+ Transform:
197
+ m_ObjectHideFlags: 0
198
+ m_CorrespondingSourceObject: {fileID: 0}
199
+ m_PrefabInstance: {fileID: 0}
200
+ m_PrefabAsset: {fileID: 0}
201
+ m_GameObject: {fileID: 110000}
202
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
203
+ m_LocalPosition: {x: 0, y: 1, z: 0}
204
+ m_LocalScale: {x: 1, y: 1, z: 1}
205
+ m_ConstrainProportionsScale: 0
206
+ m_Children: []
207
+ m_Father: {fileID: 100001}
208
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
209
+ --- !u!1 &120000
210
+ GameObject:
211
+ m_ObjectHideFlags: 0
212
+ m_CorrespondingSourceObject: {fileID: 0}
213
+ m_PrefabInstance: {fileID: 0}
214
+ m_PrefabAsset: {fileID: 0}
215
+ serializedVersion: 6
216
+ m_Component:
217
+ - component: {fileID: 120001}
218
+ - component: {fileID: 120002}
219
+ - component: {fileID: 120003}
220
+ m_Layer: 0
221
+ m_Name: Player Ship
222
+ m_TagString: Untagged
223
+ m_Icon: {fileID: 0}
224
+ m_NavMeshLayer: 0
225
+ m_StaticEditorFlags: 0
226
+ m_IsActive: 1
227
+ --- !u!4 &120001
228
+ Transform:
229
+ m_ObjectHideFlags: 0
230
+ m_CorrespondingSourceObject: {fileID: 0}
231
+ m_PrefabInstance: {fileID: 0}
232
+ m_PrefabAsset: {fileID: 0}
233
+ m_GameObject: {fileID: 120000}
234
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
235
+ m_LocalPosition: {x: -2, y: 0, z: 0}
236
+ m_LocalScale: {x: 1, y: 1, z: 1}
237
+ m_ConstrainProportionsScale: 0
238
+ m_Children: []
239
+ m_Father: {fileID: 100001}
240
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
241
+ --- !u!114 &120002
242
+ MonoBehaviour:
243
+ m_ObjectHideFlags: 0
244
+ m_CorrespondingSourceObject: {fileID: 0}
245
+ m_PrefabInstance: {fileID: 0}
246
+ m_PrefabAsset: {fileID: 0}
247
+ m_GameObject: {fileID: 120000}
248
+ m_Enabled: 1
249
+ m_EditorHideFlags: 0
250
+ m_Script: {fileID: 11500000, guid: 98ea04ea326660845ba49942dacbf907, type: 3}
251
+ m_Name:
252
+ m_EditorClassIdentifier:
253
+ emitMessagesWhenDisabled: 0
254
+ autoConfigureSerializedProviderOnAwake: 0
255
+ _serializedProviderHandle:
256
+ providerAsset: {fileID: 0}
257
+ --- !u!114 &120003
258
+ MonoBehaviour:
259
+ m_ObjectHideFlags: 0
260
+ m_CorrespondingSourceObject: {fileID: 0}
261
+ m_PrefabInstance: {fileID: 0}
262
+ m_PrefabAsset: {fileID: 0}
263
+ m_GameObject: {fileID: 120000}
264
+ m_Enabled: 1
265
+ m_EditorHideFlags: 0
266
+ m_Script: {fileID: 11500000, guid: a45996c05f2e369169f682be7e6de42a, type: 3}
267
+ m_Name:
268
+ m_EditorClassIdentifier:
269
+ listenerLabel: Player Ship
270
+ broadcastSourceFilter: {fileID: 120000}
271
+ enableLocalDiagnostics: 1
272
+ registerGlobalAcceptAll: 1
273
+ logMessages: 0
274
+ untargetedCount: 0
275
+ targetedCount: 0
276
+ broadcastCount: 0
277
+ globalAcceptAllCount: 0
278
+ lastTraceId: None
279
+ lastRoute: None
280
+ lastPayload: None
281
+ --- !u!1 &130000
282
+ GameObject:
283
+ m_ObjectHideFlags: 0
284
+ m_CorrespondingSourceObject: {fileID: 0}
285
+ m_PrefabInstance: {fileID: 0}
286
+ m_PrefabAsset: {fileID: 0}
287
+ serializedVersion: 6
288
+ m_Component:
289
+ - component: {fileID: 130001}
290
+ - component: {fileID: 130002}
291
+ - component: {fileID: 130003}
292
+ m_Layer: 0
293
+ m_Name: Enemy Drone
294
+ m_TagString: Untagged
295
+ m_Icon: {fileID: 0}
296
+ m_NavMeshLayer: 0
297
+ m_StaticEditorFlags: 0
298
+ m_IsActive: 1
299
+ --- !u!4 &130001
300
+ Transform:
301
+ m_ObjectHideFlags: 0
302
+ m_CorrespondingSourceObject: {fileID: 0}
303
+ m_PrefabInstance: {fileID: 0}
304
+ m_PrefabAsset: {fileID: 0}
305
+ m_GameObject: {fileID: 130000}
306
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
307
+ m_LocalPosition: {x: 0, y: 0, z: 0}
308
+ m_LocalScale: {x: 1, y: 1, z: 1}
309
+ m_ConstrainProportionsScale: 0
310
+ m_Children: []
311
+ m_Father: {fileID: 100001}
312
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
313
+ --- !u!114 &130002
314
+ MonoBehaviour:
315
+ m_ObjectHideFlags: 0
316
+ m_CorrespondingSourceObject: {fileID: 0}
317
+ m_PrefabInstance: {fileID: 0}
318
+ m_PrefabAsset: {fileID: 0}
319
+ m_GameObject: {fileID: 130000}
320
+ m_Enabled: 1
321
+ m_EditorHideFlags: 0
322
+ m_Script: {fileID: 11500000, guid: 98ea04ea326660845ba49942dacbf907, type: 3}
323
+ m_Name:
324
+ m_EditorClassIdentifier:
325
+ emitMessagesWhenDisabled: 0
326
+ autoConfigureSerializedProviderOnAwake: 0
327
+ _serializedProviderHandle:
328
+ providerAsset: {fileID: 0}
329
+ --- !u!114 &130003
330
+ MonoBehaviour:
331
+ m_ObjectHideFlags: 0
332
+ m_CorrespondingSourceObject: {fileID: 0}
333
+ m_PrefabInstance: {fileID: 0}
334
+ m_PrefabAsset: {fileID: 0}
335
+ m_GameObject: {fileID: 130000}
336
+ m_Enabled: 1
337
+ m_EditorHideFlags: 0
338
+ m_Script: {fileID: 11500000, guid: a45996c05f2e369169f682be7e6de42a, type: 3}
339
+ m_Name:
340
+ m_EditorClassIdentifier:
341
+ listenerLabel: Enemy Drone
342
+ broadcastSourceFilter: {fileID: 130000}
343
+ enableLocalDiagnostics: 1
344
+ registerGlobalAcceptAll: 1
345
+ logMessages: 0
346
+ untargetedCount: 0
347
+ targetedCount: 0
348
+ broadcastCount: 0
349
+ globalAcceptAllCount: 0
350
+ lastTraceId: None
351
+ lastRoute: None
352
+ lastPayload: None
353
+ --- !u!1 &140000
354
+ GameObject:
355
+ m_ObjectHideFlags: 0
356
+ m_CorrespondingSourceObject: {fileID: 0}
357
+ m_PrefabInstance: {fileID: 0}
358
+ m_PrefabAsset: {fileID: 0}
359
+ serializedVersion: 6
360
+ m_Component:
361
+ - component: {fileID: 140001}
362
+ - component: {fileID: 140002}
363
+ - component: {fileID: 140003}
364
+ m_Layer: 0
365
+ m_Name: HUD Console
366
+ m_TagString: Untagged
367
+ m_Icon: {fileID: 0}
368
+ m_NavMeshLayer: 0
369
+ m_StaticEditorFlags: 0
370
+ m_IsActive: 1
371
+ --- !u!4 &140001
372
+ Transform:
373
+ m_ObjectHideFlags: 0
374
+ m_CorrespondingSourceObject: {fileID: 0}
375
+ m_PrefabInstance: {fileID: 0}
376
+ m_PrefabAsset: {fileID: 0}
377
+ m_GameObject: {fileID: 140000}
378
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
379
+ m_LocalPosition: {x: 2, y: 0, z: 0}
380
+ m_LocalScale: {x: 1, y: 1, z: 1}
381
+ m_ConstrainProportionsScale: 0
382
+ m_Children: []
383
+ m_Father: {fileID: 100001}
384
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
385
+ --- !u!114 &140002
386
+ MonoBehaviour:
387
+ m_ObjectHideFlags: 0
388
+ m_CorrespondingSourceObject: {fileID: 0}
389
+ m_PrefabInstance: {fileID: 0}
390
+ m_PrefabAsset: {fileID: 0}
391
+ m_GameObject: {fileID: 140000}
392
+ m_Enabled: 1
393
+ m_EditorHideFlags: 0
394
+ m_Script: {fileID: 11500000, guid: 98ea04ea326660845ba49942dacbf907, type: 3}
395
+ m_Name:
396
+ m_EditorClassIdentifier:
397
+ emitMessagesWhenDisabled: 0
398
+ autoConfigureSerializedProviderOnAwake: 0
399
+ _serializedProviderHandle:
400
+ providerAsset: {fileID: 0}
401
+ --- !u!114 &140003
402
+ MonoBehaviour:
403
+ m_ObjectHideFlags: 0
404
+ m_CorrespondingSourceObject: {fileID: 0}
405
+ m_PrefabInstance: {fileID: 0}
406
+ m_PrefabAsset: {fileID: 0}
407
+ m_GameObject: {fileID: 140000}
408
+ m_Enabled: 1
409
+ m_EditorHideFlags: 0
410
+ m_Script: {fileID: 11500000, guid: a45996c05f2e369169f682be7e6de42a, type: 3}
411
+ m_Name:
412
+ m_EditorClassIdentifier:
413
+ listenerLabel: HUD Console
414
+ broadcastSourceFilter: {fileID: 120000}
415
+ enableLocalDiagnostics: 1
416
+ registerGlobalAcceptAll: 1
417
+ logMessages: 0
418
+ untargetedCount: 0
419
+ targetedCount: 0
420
+ broadcastCount: 0
421
+ globalAcceptAllCount: 0
422
+ lastTraceId: None
423
+ lastRoute: None
424
+ lastPayload: None
@@ -0,0 +1,7 @@
1
+ fileFormatVersion: 2
2
+ guid: 42dad188093765900d4030c2c4b0022c
3
+ DefaultImporter:
4
+ externalObjects: {}
5
+ userData:
6
+ assetBundleName:
7
+ assetBundleVariant: