requirements foundation
This commit is contained in:
@@ -12,8 +12,9 @@ MonoBehaviour:
|
|||||||
m_Script: {fileID: 11500000, guid: f5c1202346c34ebc9c3f701a98b50877, type: 3}
|
m_Script: {fileID: 11500000, guid: f5c1202346c34ebc9c3f701a98b50877, type: 3}
|
||||||
m_Name: Generic Door Entrance
|
m_Name: Generic Door Entrance
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
|
types: 00000000
|
||||||
modulePrefab: {fileID: 5399176795272327488, guid: da9b7a57e7c37d149827fe17188bdeea,
|
modulePrefab: {fileID: 5399176795272327488, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
type: 3}
|
||||||
doorType: 0
|
requirements: []
|
||||||
connectedDoorDescription: {fileID: 11400000, guid: 29e2ae36585f4e65966bc9ea2f95ac4a,
|
connectedDoorDescription: {fileID: 11400000, guid: 29e2ae36585f4e65966bc9ea2f95ac4a,
|
||||||
type: 2}
|
type: 2}
|
||||||
|
|||||||
@@ -12,8 +12,10 @@ MonoBehaviour:
|
|||||||
m_Script: {fileID: 11500000, guid: f5c1202346c34ebc9c3f701a98b50877, type: 3}
|
m_Script: {fileID: 11500000, guid: f5c1202346c34ebc9c3f701a98b50877, type: 3}
|
||||||
m_Name: Generic Door Exit
|
m_Name: Generic Door Exit
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
|
types: 01000000
|
||||||
modulePrefab: {fileID: 5399176795272327488, guid: d877ee36ba6ace440aebce2c20cf70d6,
|
modulePrefab: {fileID: 5399176795272327488, guid: d877ee36ba6ace440aebce2c20cf70d6,
|
||||||
type: 3}
|
type: 3}
|
||||||
|
requirements: []
|
||||||
doorType: 1
|
doorType: 1
|
||||||
connectedDoorDescription: {fileID: 11400000, guid: a70cb93176094309a847f1928d6b950d,
|
connectedDoorDescription: {fileID: 11400000, guid: a70cb93176094309a847f1928d6b950d,
|
||||||
type: 2}
|
type: 2}
|
||||||
|
|||||||
@@ -12,5 +12,7 @@ MonoBehaviour:
|
|||||||
m_Script: {fileID: 11500000, guid: abf4a405f6c64073995bded39977563e, type: 3}
|
m_Script: {fileID: 11500000, guid: abf4a405f6c64073995bded39977563e, type: 3}
|
||||||
m_Name: Generic Module
|
m_Name: Generic Module
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
|
types:
|
||||||
modulePrefab: {fileID: 3864228228344123331, guid: ad2655de8289afa40aa520f9fc474681,
|
modulePrefab: {fileID: 3864228228344123331, guid: ad2655de8289afa40aa520f9fc474681,
|
||||||
type: 3}
|
type: 3}
|
||||||
|
requirements: []
|
||||||
|
|||||||
@@ -12,5 +12,8 @@ MonoBehaviour:
|
|||||||
m_Script: {fileID: 11500000, guid: f928b97941e3469a9015316bb5ac1309, type: 3}
|
m_Script: {fileID: 11500000, guid: f928b97941e3469a9015316bb5ac1309, type: 3}
|
||||||
m_Name: Generic Puzzle
|
m_Name: Generic Puzzle
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
|
types: 02000000
|
||||||
modulePrefab: {fileID: 1780958886295268827, guid: e419cb35bd744b24ea973860d8b1405d,
|
modulePrefab: {fileID: 1780958886295268827, guid: e419cb35bd744b24ea973860d8b1405d,
|
||||||
type: 3}
|
type: 3}
|
||||||
|
requirements:
|
||||||
|
- {fileID: 11400000, guid: d34a7e9c8d3eaf946ade02be9eff0041, type: 2}
|
||||||
|
|||||||
@@ -12,7 +12,9 @@ MonoBehaviour:
|
|||||||
m_Script: {fileID: 11500000, guid: f5c1202346c34ebc9c3f701a98b50877, type: 3}
|
m_Script: {fileID: 11500000, guid: f5c1202346c34ebc9c3f701a98b50877, type: 3}
|
||||||
m_Name: Spawn
|
m_Name: Spawn
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
modulePrefab: {fileID: 278361332033420131, guid: db5350cd22f3a0f4f818a5f985342136,
|
types: 00000000
|
||||||
|
modulePrefab: {fileID: 641449049689494886, guid: db5350cd22f3a0f4f818a5f985342136,
|
||||||
type: 3}
|
type: 3}
|
||||||
|
requirements: []
|
||||||
doorType: 0
|
doorType: 0
|
||||||
connectedDoorDescription: {fileID: 11400000}
|
connectedDoorDescription: {fileID: 11400000}
|
||||||
|
|||||||
@@ -72,5 +72,10 @@ PrefabInstance:
|
|||||||
propertyPath: m_LocalEulerAnglesHint.z
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 8741597917111152084, guid: 30bf75759c019b843afd4c6aeb694159,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_Materials.Array.data[0]
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 2100000, guid: 94d63268ac1ac034d8c0af72dd04a346, type: 2}
|
||||||
m_RemovedComponents: []
|
m_RemovedComponents: []
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: 30bf75759c019b843afd4c6aeb694159, type: 3}
|
m_SourcePrefab: {fileID: 100100000, guid: 30bf75759c019b843afd4c6aeb694159, type: 3}
|
||||||
|
|||||||
@@ -72,5 +72,10 @@ PrefabInstance:
|
|||||||
propertyPath: m_LocalEulerAnglesHint.z
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 8741597917111152084, guid: 30bf75759c019b843afd4c6aeb694159,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_Materials.Array.data[0]
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 2100000, guid: 3e334d6799a0d0040a41fe4794da90f5, type: 2}
|
||||||
m_RemovedComponents: []
|
m_RemovedComponents: []
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: 30bf75759c019b843afd4c6aeb694159, type: 3}
|
m_SourcePrefab: {fileID: 100100000, guid: 30bf75759c019b843afd4c6aeb694159, type: 3}
|
||||||
|
|||||||
@@ -1,5 +1,88 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &714560894994709254
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 6287965203426599350}
|
||||||
|
- component: {fileID: 5368003019011713868}
|
||||||
|
- component: {fileID: 4637598171471972507}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: Cube
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &6287965203426599350
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 714560894994709254}
|
||||||
|
m_LocalRotation: {x: -0.15643595, y: 0.37715694, z: -0.06479774, w: 0.91053927}
|
||||||
|
m_LocalPosition: {x: 0, y: 0.262, z: 0.075}
|
||||||
|
m_LocalScale: {x: 0.5, y: 0.5, z: 0.5}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 7279153380729290489}
|
||||||
|
m_RootOrder: 0
|
||||||
|
m_LocalEulerAnglesHint: {x: -13.651, y: 46.691, z: -14.056}
|
||||||
|
--- !u!33 &5368003019011713868
|
||||||
|
MeshFilter:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 714560894994709254}
|
||||||
|
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
|
||||||
|
--- !u!23 &4637598171471972507
|
||||||
|
MeshRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 714560894994709254}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_CastShadows: 1
|
||||||
|
m_ReceiveShadows: 1
|
||||||
|
m_DynamicOccludee: 1
|
||||||
|
m_StaticShadowCaster: 0
|
||||||
|
m_MotionVectors: 1
|
||||||
|
m_LightProbeUsage: 1
|
||||||
|
m_ReflectionProbeUsage: 1
|
||||||
|
m_RayTracingMode: 2
|
||||||
|
m_RayTraceProcedural: 0
|
||||||
|
m_RenderingLayerMask: 1
|
||||||
|
m_RendererPriority: 0
|
||||||
|
m_Materials:
|
||||||
|
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
|
||||||
|
m_StaticBatchInfo:
|
||||||
|
firstSubMesh: 0
|
||||||
|
subMeshCount: 0
|
||||||
|
m_StaticBatchRoot: {fileID: 0}
|
||||||
|
m_ProbeAnchor: {fileID: 0}
|
||||||
|
m_LightProbeVolumeOverride: {fileID: 0}
|
||||||
|
m_ScaleInLightmap: 1
|
||||||
|
m_ReceiveGI: 1
|
||||||
|
m_PreserveUVs: 0
|
||||||
|
m_IgnoreNormalsForChartDetection: 0
|
||||||
|
m_ImportantGI: 0
|
||||||
|
m_StitchLightmapSeams: 1
|
||||||
|
m_SelectedEditorRenderState: 3
|
||||||
|
m_MinimumChartSize: 4
|
||||||
|
m_AutoUVMaxDistance: 0.5
|
||||||
|
m_AutoUVMaxAngle: 89
|
||||||
|
m_LightmapParameters: {fileID: 0}
|
||||||
|
m_SortingLayerID: 0
|
||||||
|
m_SortingLayer: 0
|
||||||
|
m_SortingOrder: 0
|
||||||
|
m_AdditionalVertexStreams: {fileID: 0}
|
||||||
--- !u!1 &3864228228344123331
|
--- !u!1 &3864228228344123331
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -43,7 +126,6 @@ GameObject:
|
|||||||
- component: {fileID: 7279153380729290489}
|
- component: {fileID: 7279153380729290489}
|
||||||
- component: {fileID: 609314626751263072}
|
- component: {fileID: 609314626751263072}
|
||||||
- component: {fileID: 8884008595548699417}
|
- component: {fileID: 8884008595548699417}
|
||||||
- component: {fileID: 3037682669808127519}
|
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: Cube
|
m_Name: Cube
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
@@ -59,10 +141,11 @@ Transform:
|
|||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 4439105426094897912}
|
m_GameObject: {fileID: 4439105426094897912}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0.5, y: 0.5, z: 0.5}
|
m_LocalPosition: {x: 0, y: 0.5, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children: []
|
m_Children:
|
||||||
|
- {fileID: 6287965203426599350}
|
||||||
m_Father: {fileID: 7860513085978939562}
|
m_Father: {fileID: 7860513085978939562}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
@@ -116,16 +199,3 @@ MeshRenderer:
|
|||||||
m_SortingLayer: 0
|
m_SortingLayer: 0
|
||||||
m_SortingOrder: 0
|
m_SortingOrder: 0
|
||||||
m_AdditionalVertexStreams: {fileID: 0}
|
m_AdditionalVertexStreams: {fileID: 0}
|
||||||
--- !u!65 &3037682669808127519
|
|
||||||
BoxCollider:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 4439105426094897912}
|
|
||||||
m_Material: {fileID: 0}
|
|
||||||
m_IsTrigger: 0
|
|
||||||
m_Enabled: 1
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Size: {x: 1, y: 1, z: 1}
|
|
||||||
m_Center: {x: 0, y: 0, z: 0}
|
|
||||||
|
|||||||
@@ -12,6 +12,16 @@ PrefabInstance:
|
|||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
value: Generic Puzzle
|
value: Generic Puzzle
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4637598171471972507, guid: ad2655de8289afa40aa520f9fc474681,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_Materials.Array.data[0]
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 2100000, guid: 46455800cc2ce524c92336599f5ec772, type: 2}
|
||||||
|
- target: {fileID: 7279153380729290489, guid: ad2655de8289afa40aa520f9fc474681,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_LocalRotation.w
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7860513085978939562, guid: ad2655de8289afa40aa520f9fc474681,
|
- target: {fileID: 7860513085978939562, guid: ad2655de8289afa40aa520f9fc474681,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_RootOrder
|
propertyPath: m_RootOrder
|
||||||
|
|||||||
@@ -1,179 +1,76 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
--- !u!1 &6011647874759208035
|
--- !u!1001 &4758994409158878246
|
||||||
GameObject:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
serializedVersion: 6
|
|
||||||
m_Component:
|
|
||||||
- component: {fileID: 5928148369176390461}
|
|
||||||
- component: {fileID: 5083806700704616900}
|
|
||||||
- component: {fileID: 3214657300310728549}
|
|
||||||
- component: {fileID: 8608837451192070870}
|
|
||||||
m_Layer: 0
|
|
||||||
m_Name: Sphere
|
|
||||||
m_TagString: Untagged
|
|
||||||
m_Icon: {fileID: 0}
|
|
||||||
m_NavMeshLayer: 0
|
|
||||||
m_StaticEditorFlags: 0
|
|
||||||
m_IsActive: 1
|
|
||||||
--- !u!4 &5928148369176390461
|
|
||||||
Transform:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 6011647874759208035}
|
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
||||||
m_ConstrainProportionsScale: 0
|
|
||||||
m_Children: []
|
|
||||||
m_Father: {fileID: 6587262333262160906}
|
|
||||||
m_RootOrder: 1
|
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
||||||
--- !u!33 &5083806700704616900
|
|
||||||
MeshFilter:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 6011647874759208035}
|
|
||||||
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
--- !u!23 &3214657300310728549
|
|
||||||
MeshRenderer:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 6011647874759208035}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_CastShadows: 1
|
|
||||||
m_ReceiveShadows: 1
|
|
||||||
m_DynamicOccludee: 1
|
|
||||||
m_StaticShadowCaster: 0
|
|
||||||
m_MotionVectors: 1
|
|
||||||
m_LightProbeUsage: 1
|
|
||||||
m_ReflectionProbeUsage: 1
|
|
||||||
m_RayTracingMode: 2
|
|
||||||
m_RayTraceProcedural: 0
|
|
||||||
m_RenderingLayerMask: 1
|
|
||||||
m_RendererPriority: 0
|
|
||||||
m_Materials:
|
|
||||||
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
|
|
||||||
m_StaticBatchInfo:
|
|
||||||
firstSubMesh: 0
|
|
||||||
subMeshCount: 0
|
|
||||||
m_StaticBatchRoot: {fileID: 0}
|
|
||||||
m_ProbeAnchor: {fileID: 0}
|
|
||||||
m_LightProbeVolumeOverride: {fileID: 0}
|
|
||||||
m_ScaleInLightmap: 1
|
|
||||||
m_ReceiveGI: 1
|
|
||||||
m_PreserveUVs: 0
|
|
||||||
m_IgnoreNormalsForChartDetection: 0
|
|
||||||
m_ImportantGI: 0
|
|
||||||
m_StitchLightmapSeams: 1
|
|
||||||
m_SelectedEditorRenderState: 3
|
|
||||||
m_MinimumChartSize: 4
|
|
||||||
m_AutoUVMaxDistance: 0.5
|
|
||||||
m_AutoUVMaxAngle: 89
|
|
||||||
m_LightmapParameters: {fileID: 0}
|
|
||||||
m_SortingLayerID: 0
|
|
||||||
m_SortingLayer: 0
|
|
||||||
m_SortingOrder: 0
|
|
||||||
m_AdditionalVertexStreams: {fileID: 0}
|
|
||||||
--- !u!135 &8608837451192070870
|
|
||||||
SphereCollider:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 6011647874759208035}
|
|
||||||
m_Material: {fileID: 0}
|
|
||||||
m_IsTrigger: 0
|
|
||||||
m_Enabled: 1
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Radius: 0.5
|
|
||||||
m_Center: {x: 0, y: 0, z: 0}
|
|
||||||
--- !u!1001 &1112641151226188271
|
|
||||||
PrefabInstance:
|
PrefabInstance:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_Modification:
|
m_Modification:
|
||||||
m_TransformParent: {fileID: 0}
|
m_TransformParent: {fileID: 0}
|
||||||
m_Modifications:
|
m_Modifications:
|
||||||
- target: {fileID: 330650459340005303, guid: 30bf75759c019b843afd4c6aeb694159,
|
- target: {fileID: 1322900129209232937, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
|
||||||
propertyPath: m_IsActive
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 913127997918145164, guid: 30bf75759c019b843afd4c6aeb694159,
|
|
||||||
type: 3}
|
|
||||||
propertyPath: m_Name
|
|
||||||
value: Spawn
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_RootOrder
|
propertyPath: m_RootOrder
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
- target: {fileID: 1322900129209232937, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_LocalPosition.x
|
propertyPath: m_LocalPosition.x
|
||||||
value: 0.5
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
- target: {fileID: 1322900129209232937, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_LocalPosition.y
|
propertyPath: m_LocalPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
- target: {fileID: 1322900129209232937, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_LocalPosition.z
|
propertyPath: m_LocalPosition.z
|
||||||
value: 0.5
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
- target: {fileID: 1322900129209232937, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_LocalRotation.w
|
propertyPath: m_LocalRotation.w
|
||||||
value: 1
|
value: 1
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
- target: {fileID: 1322900129209232937, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_LocalRotation.x
|
propertyPath: m_LocalRotation.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
- target: {fileID: 1322900129209232937, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_LocalRotation.y
|
propertyPath: m_LocalRotation.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
- target: {fileID: 1322900129209232937, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_LocalRotation.z
|
propertyPath: m_LocalRotation.z
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
- target: {fileID: 1322900129209232937, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_LocalEulerAnglesHint.x
|
propertyPath: m_LocalEulerAnglesHint.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
- target: {fileID: 1322900129209232937, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_LocalEulerAnglesHint.y
|
propertyPath: m_LocalEulerAnglesHint.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
- target: {fileID: 1322900129209232937, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_LocalEulerAnglesHint.z
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
m_RemovedComponents: []
|
- target: {fileID: 1894180114262114426, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: 30bf75759c019b843afd4c6aeb694159, type: 3}
|
|
||||||
--- !u!4 &6587262333262160906 stripped
|
|
||||||
Transform:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 6060240960858060261, guid: 30bf75759c019b843afd4c6aeb694159,
|
|
||||||
type: 3}
|
type: 3}
|
||||||
m_PrefabInstance: {fileID: 1112641151226188271}
|
propertyPath: m_LocalPosition.y
|
||||||
m_PrefabAsset: {fileID: 0}
|
value: -0.90000004
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 5399176795272327488, guid: da9b7a57e7c37d149827fe17188bdeea,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_Name
|
||||||
|
value: Spawn
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
m_RemovedComponents: []
|
||||||
|
m_SourcePrefab: {fileID: 100100000, guid: da9b7a57e7c37d149827fe17188bdeea, type: 3}
|
||||||
|
|||||||
8
Assets/Escape Room Engine/Engine/Requirements.meta
Normal file
8
Assets/Escape Room Engine/Engine/Requirements.meta
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 1491a0a32aa61104b9a742535e2dd3f9
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &11400000
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 8ec2cdf0145347e18e7c68221333be2c, type: 3}
|
||||||
|
m_Name: Place Along Space Edges
|
||||||
|
m_EditorClassIdentifier:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ed4830127e9381245a6af07e42c52422
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &11400000
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: aa4ff365b4e844e782cd12d8aeebd3d4, type: 3}
|
||||||
|
m_Name: Place Anywhere
|
||||||
|
m_EditorClassIdentifier:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d34a7e9c8d3eaf946ade02be9eff0041
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
using UnityEngine;
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
namespace Escape_Room_Engine.Engine.Scripts
|
namespace Escape_Room_Engine.Engine.Scripts
|
||||||
{
|
{
|
||||||
@@ -39,6 +40,24 @@ namespace Escape_Room_Engine.Engine.Scripts
|
|||||||
|
|
||||||
public int Area => width * length;
|
public int Area => width * length;
|
||||||
|
|
||||||
|
public HashSet<Vector2Int> EveryPosition
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
var positions = new HashSet<Vector2Int>();
|
||||||
|
|
||||||
|
for (var zIter = 0; zIter < length; zIter++)
|
||||||
|
{
|
||||||
|
for (var xIter = 0; xIter < width; xIter++)
|
||||||
|
{
|
||||||
|
positions.Add(new Vector2Int(xIter, zIter));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return positions;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public override string ToString() => $"({width}, {length}) at ({x}, {z})";
|
public override string ToString() => $"({width}, {length}) at ({x}, {z})";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -82,17 +82,31 @@ namespace Escape_Room_Engine.Engine.Scripts
|
|||||||
// add puzzles
|
// add puzzles
|
||||||
for (var i = 0; i < Utilities.Utilities.RandomInclusive(minPuzzleCount, maxPuzzleCount); i++)
|
for (var i = 0; i < Utilities.Utilities.RandomInclusive(minPuzzleCount, maxPuzzleCount); i++)
|
||||||
{
|
{
|
||||||
var puzzle = new PuzzleModule(space, puzzleTypes.RandomElement());
|
GeneratePuzzle(space);
|
||||||
puzzle.Place(new Vector2Int(
|
|
||||||
Random.Range(0, rrDimensions.width),
|
|
||||||
Random.Range(0, rrDimensions.length)
|
|
||||||
));
|
|
||||||
space.AddModule(puzzle);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
room.AddSpace(space, exit);
|
room.AddSpace(space, exit);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void GeneratePuzzle(Space space)
|
||||||
|
{
|
||||||
|
var puzzle = new PuzzleModule(space, puzzleTypes.RandomElement());
|
||||||
|
|
||||||
|
// place puzzle
|
||||||
|
var placementCandidates = space.rrDimensions.EveryPosition;
|
||||||
|
puzzle._description.PlacementRequirements.ForEach(requirement =>
|
||||||
|
placementCandidates.IntersectWith(requirement.PlacementCandidates(puzzle, space)));
|
||||||
|
if (placementCandidates.Count > 0)
|
||||||
|
{
|
||||||
|
puzzle.Place(placementCandidates.RandomElement());
|
||||||
|
space.AddModule(puzzle);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Logger.Log("Could not find suitable placement for puzzle", LogType.PuzzleGeneration);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Generate space dimensions that fit the required size constraints and cover the position of the entrance.
|
/// Generate space dimensions that fit the required size constraints and cover the position of the entrance.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -16,7 +16,6 @@ namespace Escape_Room_Engine.Engine.Scripts.Modules
|
|||||||
|
|
||||||
internal DoorModule(Space space, DoorModuleDescription description) : base(space, description)
|
internal DoorModule(Space space, DoorModuleDescription description) : base(space, description)
|
||||||
{
|
{
|
||||||
_description.types.Add((ModuleType)description.doorType);
|
|
||||||
srDimensions.Size = Vector2Int.one; // door always has size 1x1
|
srDimensions.Size = Vector2Int.one; // door always has size 1x1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ namespace Escape_Room_Engine.Engine.Scripts.Modules
|
|||||||
[CreateAssetMenu(menuName = "Modules/Door")]
|
[CreateAssetMenu(menuName = "Modules/Door")]
|
||||||
public class DoorModuleDescription : ModuleDescription
|
public class DoorModuleDescription : ModuleDescription
|
||||||
{
|
{
|
||||||
public DoorType doorType;
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The description for the door that should be connected with this one.
|
/// The description for the door that should be connected with this one.
|
||||||
/// <example>If this is a teleporter entrance, the connected door should be a teleporter exit.</example>
|
/// <example>If this is a teleporter entrance, the connected door should be a teleporter exit.</example>
|
||||||
|
|||||||
@@ -8,6 +8,11 @@ using Object = UnityEngine.Object;
|
|||||||
|
|
||||||
namespace Escape_Room_Engine.Engine.Scripts.Modules
|
namespace Escape_Room_Engine.Engine.Scripts.Modules
|
||||||
{
|
{
|
||||||
|
public enum Orientation
|
||||||
|
{
|
||||||
|
North = 0, East = 90, South = 180, West = 270
|
||||||
|
}
|
||||||
|
|
||||||
public class Module
|
public class Module
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -25,6 +30,7 @@ namespace Escape_Room_Engine.Engine.Scripts.Modules
|
|||||||
/// The space relative (<i>SR</i>) dimensions of this module.
|
/// The space relative (<i>SR</i>) dimensions of this module.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected Dimensions srDimensions;
|
protected Dimensions srDimensions;
|
||||||
|
protected Orientation orientation;
|
||||||
|
|
||||||
private readonly Space _space;
|
private readonly Space _space;
|
||||||
|
|
||||||
@@ -65,7 +71,8 @@ namespace Escape_Room_Engine.Engine.Scripts.Modules
|
|||||||
{
|
{
|
||||||
_moduleObject = new GameObject(ToString());
|
_moduleObject = new GameObject(ToString());
|
||||||
_moduleObject.transform.SetParent(parent, false);
|
_moduleObject.transform.SetParent(parent, false);
|
||||||
_moduleObject.transform.localPosition = new Vector3(srDimensions.x, 0, srDimensions.z);
|
_moduleObject.transform.localPosition = new Vector3(srDimensions.x + .5f, 0, srDimensions.z + .5f);
|
||||||
|
_moduleObject.transform.Rotate(Vector3.up, (float)orientation);
|
||||||
|
|
||||||
Object.Instantiate(_description.modulePrefab, _moduleObject.transform, false);
|
Object.Instantiate(_description.modulePrefab, _moduleObject.transform, false);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using Escape_Room_Engine.Engine.Scripts.Requirements;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace Escape_Room_Engine.Engine.Scripts.Modules
|
namespace Escape_Room_Engine.Engine.Scripts.Modules
|
||||||
@@ -6,7 +7,12 @@ namespace Escape_Room_Engine.Engine.Scripts.Modules
|
|||||||
[CreateAssetMenu(menuName = "Modules/Generic Module")]
|
[CreateAssetMenu(menuName = "Modules/Generic Module")]
|
||||||
public class ModuleDescription : ScriptableObject
|
public class ModuleDescription : ScriptableObject
|
||||||
{
|
{
|
||||||
public readonly HashSet<ModuleType> types = new();
|
public List<ModuleType> types = new();
|
||||||
public GameObject modulePrefab;
|
public GameObject modulePrefab;
|
||||||
|
public List<Requirement> requirements = new();
|
||||||
|
|
||||||
|
public List<PlacementRequirement> PlacementRequirements => requirements
|
||||||
|
.FindAll(requirement => requirement is PlacementRequirement)
|
||||||
|
.ConvertAll(requirement => (PlacementRequirement)requirement);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -6,7 +6,6 @@ namespace Escape_Room_Engine.Engine.Scripts.Modules
|
|||||||
{
|
{
|
||||||
internal PuzzleModule(Space space, PuzzleModuleDescription description) : base(space, description)
|
internal PuzzleModule(Space space, PuzzleModuleDescription description) : base(space, description)
|
||||||
{
|
{
|
||||||
_description.types.Add(ModuleType.Puzzle);
|
|
||||||
srDimensions.Size = Vector2Int.one; // TODO: larger modules
|
srDimensions.Size = Vector2Int.one; // TODO: larger modules
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 629d8948cbb04005b050a6aa1e66c0f4
|
||||||
|
timeCreated: 1667874124
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using Escape_Room_Engine.Engine.Scripts.Modules;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Escape_Room_Engine.Engine.Scripts.Requirements
|
||||||
|
{
|
||||||
|
[CreateAssetMenu(menuName = "Requirements/Place Along Space Edges")]
|
||||||
|
public class PlaceAlongSpaceEdges : PlacementRequirement
|
||||||
|
{
|
||||||
|
public override HashSet<Vector2Int> PlacementCandidates(Module module, Space space)
|
||||||
|
{
|
||||||
|
var edgePositions = new HashSet<Vector2Int>();
|
||||||
|
|
||||||
|
for (var x = 0; x < space.rrDimensions.width; x++)
|
||||||
|
{
|
||||||
|
edgePositions.Add(new Vector2Int(x, 0));
|
||||||
|
edgePositions.Add(new Vector2Int(x, space.rrDimensions.length));
|
||||||
|
}
|
||||||
|
for (var z = 0; z < space.rrDimensions.length; z++)
|
||||||
|
{
|
||||||
|
edgePositions.Add(new Vector2Int(0, z));
|
||||||
|
edgePositions.Add(new Vector2Int(space.rrDimensions.width, z));
|
||||||
|
}
|
||||||
|
|
||||||
|
return edgePositions;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8ec2cdf0145347e18e7c68221333be2c
|
||||||
|
timeCreated: 1667876484
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using Escape_Room_Engine.Engine.Scripts.Modules;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Escape_Room_Engine.Engine.Scripts.Requirements
|
||||||
|
{
|
||||||
|
[CreateAssetMenu(menuName = "Requirements/Place Anywhere")]
|
||||||
|
public class PlaceAnywhere : PlacementRequirement
|
||||||
|
{
|
||||||
|
public override HashSet<Vector2Int> PlacementCandidates(Module module, Space space)
|
||||||
|
{
|
||||||
|
return space.rrDimensions.EveryPosition;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: aa4ff365b4e844e782cd12d8aeebd3d4
|
||||||
|
timeCreated: 1667876850
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using Escape_Room_Engine.Engine.Scripts.Modules;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Escape_Room_Engine.Engine.Scripts.Requirements
|
||||||
|
{
|
||||||
|
public abstract class PlacementRequirement : Requirement
|
||||||
|
{
|
||||||
|
public abstract HashSet<Vector2Int> PlacementCandidates(Module module, Space space);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 65f297b8d32b4f09b89c21b88b43b646
|
||||||
|
timeCreated: 1667876036
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Escape_Room_Engine.Engine.Scripts.Requirements
|
||||||
|
{
|
||||||
|
public abstract class Requirement : ScriptableObject
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 9123b592f74444c8b6225f725b6407b3
|
||||||
|
timeCreated: 1667874140
|
||||||
@@ -5,7 +5,7 @@ namespace Escape_Room_Engine.Engine.Scripts.Utilities
|
|||||||
{
|
{
|
||||||
public enum LogType
|
public enum LogType
|
||||||
{
|
{
|
||||||
Important, ModulePlacement, PassageConnection, RoomGeneration
|
Important, ModulePlacement, PassageConnection, RoomGeneration, PuzzleGeneration
|
||||||
}
|
}
|
||||||
|
|
||||||
public class Logger : MonoBehaviour
|
public class Logger : MonoBehaviour
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace Escape_Room_Engine.Engine.Scripts.Utilities
|
namespace Escape_Room_Engine.Engine.Scripts.Utilities
|
||||||
@@ -24,6 +25,7 @@ namespace Escape_Room_Engine.Engine.Scripts.Utilities
|
|||||||
public static int RandomInclusive(int from, int to) => Random.Range(from, to + 1);
|
public static int RandomInclusive(int from, int to) => Random.Range(from, to + 1);
|
||||||
|
|
||||||
public static T RandomElement<T>(this List<T> list) => list[Random.Range(0, list.Count)];
|
public static T RandomElement<T>(this List<T> list) => list[Random.Range(0, list.Count)];
|
||||||
|
public static T RandomElement<T>(this HashSet<T> set) => set.ElementAt(Random.Range(0, set.Count));
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1271,7 +1271,7 @@ MonoBehaviour:
|
|||||||
m_Name:
|
m_Name:
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
loggingEnabled: 1
|
loggingEnabled: 1
|
||||||
typeFilter: 00000000010000000200000003000000
|
typeFilter: 0000000001000000020000000300000004000000
|
||||||
--- !u!1 &1718957584
|
--- !u!1 &1718957584
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|||||||
Reference in New Issue
Block a user