From ea3238ffaf709dece0feafede7f518dd9f4c4eeb Mon Sep 17 00:00:00 2001
From: MaZiFAU <marco.alexander.zimmer@fau.de>
Date: Thu, 16 Sep 2021 00:42:44 +0200
Subject: [PATCH] +PoleTool +WorldCurser: added CameraCurserOption +misc

---
 Assets/Resources/Prefabs/MainPlayer.prefab    | 1707 ++++++++++++++++-
 Assets/Resources/Prefabs/Stage_Default.prefab |   21 +
 Assets/Scenes/Menues/MainMenue.unity          |   46 +-
 Assets/Scripts/GlobalBehaviour.cs             |   11 +
 .../InteractionEngine/Gadgets/AngleTool.cs    |   26 +-
 .../InteractionEngine/Gadgets/ExtraGadget.cs  |   19 +-
 .../InteractionEngine/Gadgets/Gadget.cs       |   16 +-
 .../InteractionEngine/Gadgets/LineTool.cs     |   26 +-
 .../InteractionEngine/Gadgets/LotTool.cs      |   19 +-
 .../InteractionEngine/Gadgets/Pendulum.cs     |   19 +-
 .../InteractionEngine/Gadgets/Pointer.cs      |   19 +-
 .../InteractionEngine/Gadgets/PoleTool.cs     |  114 ++
 .../Gadgets/PoleTool.cs.meta                  |   11 +
 .../InteractionEngine/Gadgets/Remover.cs      |   20 +-
 .../Scripts/InteractionEngine/Gadgets/Tape.cs |   32 +-
 .../Scripts/InteractionEngine/ShinyThings.cs  |    6 -
 .../Scripts/InteractionEngine/WorldCursor.cs  |   79 +-
 Assets/Scripts/UI/HideUI.cs                   |    1 +
 18 files changed, 1902 insertions(+), 290 deletions(-)
 create mode 100644 Assets/Scripts/InteractionEngine/Gadgets/PoleTool.cs
 create mode 100644 Assets/Scripts/InteractionEngine/Gadgets/PoleTool.cs.meta

diff --git a/Assets/Resources/Prefabs/MainPlayer.prefab b/Assets/Resources/Prefabs/MainPlayer.prefab
index 43420d7d..5d0b3336 100644
--- a/Assets/Resources/Prefabs/MainPlayer.prefab
+++ b/Assets/Resources/Prefabs/MainPlayer.prefab
@@ -82,6 +82,169 @@ MeshRenderer:
   m_SortingLayer: 0
   m_SortingOrder: 0
   m_AdditionalVertexStreams: {fileID: 0}
+--- !u!1 &57981806354462040
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 4591794594468451087}
+  - component: {fileID: 1984441910685670139}
+  - component: {fileID: 3367437837120071084}
+  m_Layer: 0
+  m_Name: Tube002
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &4591794594468451087
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 57981806354462040}
+  m_LocalRotation: {x: 0.7071068, y: 0.00000009415696, z: -0.7071067, w: 0.00000009415697}
+  m_LocalPosition: {x: -0, y: -2.359513, z: 0.40296298}
+  m_LocalScale: {x: 1.0640908, y: 1, z: 0.45152956}
+  m_Children: []
+  m_Father: {fileID: 2042657099210439802}
+  m_RootOrder: 8
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &1984441910685670139
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 57981806354462040}
+  m_Mesh: {fileID: -8429489704275616702, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &3367437837120071084
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 57981806354462040}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &178040895070511065
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 5362984487673943468}
+  - component: {fileID: 7906233093391063589}
+  - component: {fileID: 2369646889054936527}
+  m_Layer: 0
+  m_Name: Object005
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &5362984487673943468
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 178040895070511065}
+  m_LocalRotation: {x: 0.000000059604645, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: -0, y: 0.027123343, z: 0}
+  m_LocalScale: {x: 0.877144, y: 1, z: 0.877144}
+  m_Children: []
+  m_Father: {fileID: 2042657099210439802}
+  m_RootOrder: 4
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &7906233093391063589
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 178040895070511065}
+  m_Mesh: {fileID: 9186633843763367028, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &2369646889054936527
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 178040895070511065}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  - {fileID: 5967751492454651251, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &188860016844080717
 GameObject:
   m_ObjectHideFlags: 0
@@ -195,6 +358,66 @@ Transform:
   m_Father: {fileID: 7322425230886007441}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: -100, z: -120}
+--- !u!1 &373845637764807775
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 7484227433324710635}
+  - component: {fileID: 561544836598694202}
+  m_Layer: 9
+  m_Name: PoleTool
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &7484227433324710635
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 373845637764807775}
+  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_Children:
+  - {fileID: 1915547052053663838}
+  m_Father: {fileID: 177187141883897122}
+  m_RootOrder: 6
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &561544836598694202
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 373845637764807775}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: f173d1c5aec16f04893f07d8dd5de8b5, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  id: 7
+  UiName: 
+  Sprite: {fileID: 21300000, guid: ea5873cfd9158664f89459f0c9e1d853, type: 3}
+  FactManager: {fileID: 0}
+  ignoreLayerMask:
+    serializedVersion: 2
+    m_Bits: 96768
+  Cursor: {fileID: 7593098362214606413}
+  MaxRange: 0
+  LayerPendulumHits:
+    serializedVersion: 2
+    m_Bits: 32769
+  lineRenderer: {fileID: 2563576905681239437}
+  linePreviewMaterial: {fileID: 2100000, guid: a8a7bf60a30970f469a9c9d3ae2de6ef, type: 2}
+  poleHeight: 1.5
+  maxHeight: 0
 --- !u!1 &389305042387458208
 GameObject:
   m_ObjectHideFlags: 0
@@ -266,21 +489,306 @@ Transform:
   m_Father: {fileID: 5141688066578765964}
   m_RootOrder: 1
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!33 &7244893778082632360
+--- !u!33 &7244893778082632360
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 396268350532938306}
+  m_Mesh: {fileID: -5208879343037863941, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &4887461029566433428
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 396268350532938306}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  - {fileID: -7161351915816769751, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &706115532896676512
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1025420376872442217}
+  - component: {fileID: 3517043793677702177}
+  - component: {fileID: 7780229788155533122}
+  m_Layer: 0
+  m_Name: GeoSphere002
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &1025420376872442217
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 706115532896676512}
+  m_LocalRotation: {x: 0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: -0, y: 2.3046205, z: 0}
+  m_LocalScale: {x: 0.9365708, y: 0.39187068, z: 0.9365708}
+  m_Children: []
+  m_Father: {fileID: 2042657099210439802}
+  m_RootOrder: 2
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &3517043793677702177
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 706115532896676512}
+  m_Mesh: {fileID: -5008381810204397873, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &7780229788155533122
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 706115532896676512}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: 8290782892783832528, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &745336023734243396
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 3122016423556530789}
+  - component: {fileID: 5791214914938442871}
+  - component: {fileID: 1744934027798425545}
+  m_Layer: 0
+  m_Name: Lamp02
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!4 &3122016423556530789
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 745336023734243396}
+  m_LocalRotation: {x: 0.000000091631094, y: 0.72558, z: 0.6881378, w: -0.000000096616816}
+  m_LocalPosition: {x: -0.1869725, y: 1.6138662, z: -0.20825356}
+  m_LocalScale: {x: 2.2279458, y: 2.5400007, z: 2.2279456}
+  m_Children: []
+  m_Father: {fileID: 1915547052053663838}
+  m_RootOrder: 3
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &5791214914938442871
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 745336023734243396}
+  m_Mesh: {fileID: -4516270096655458733, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &1744934027798425545
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 745336023734243396}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4053520464898690182, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  - {fileID: 5967751492454651251, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &780586488123986751
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 3702358158241763203}
+  m_Layer: 0
+  m_Name: light
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!4 &3702358158241763203
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 780586488123986751}
+  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_Children:
+  - {fileID: 2851029660975025721}
+  - {fileID: 6323463624636478874}
+  - {fileID: 4392927317114338434}
+  - {fileID: 8964512790726183194}
+  - {fileID: 6581128759700083958}
+  - {fileID: 4569952459924619577}
+  - {fileID: 6749695109431917801}
+  - {fileID: 3024825849754206657}
+  - {fileID: 6813259544913962188}
+  m_Father: {fileID: 3234025345537968801}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &797937035475573955
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1750152730093390644}
+  - component: {fileID: 4528068256245017931}
+  - component: {fileID: 5367790157075166949}
+  m_Layer: 0
+  m_Name: Object007
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &1750152730093390644
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 797937035475573955}
+  m_LocalRotation: {x: 0.000000059604645, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: -0, y: 0.027123343, z: 0}
+  m_LocalScale: {x: 0.877144, y: 1, z: 0.877144}
+  m_Children: []
+  m_Father: {fileID: 2042657099210439802}
+  m_RootOrder: 6
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &4528068256245017931
 MeshFilter:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 396268350532938306}
-  m_Mesh: {fileID: -5208879343037863941, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
---- !u!23 &4887461029566433428
+  m_GameObject: {fileID: 797937035475573955}
+  m_Mesh: {fileID: 7733717212360752527, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &5367790157075166949
 MeshRenderer:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 396268350532938306}
+  m_GameObject: {fileID: 797937035475573955}
   m_Enabled: 1
   m_CastShadows: 1
   m_ReceiveShadows: 1
@@ -294,7 +802,6 @@ MeshRenderer:
   m_RendererPriority: 0
   m_Materials:
   - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
-  - {fileID: -7161351915816769751, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
   m_StaticBatchInfo:
     firstSubMesh: 0
     subMeshCount: 0
@@ -316,45 +823,6 @@ MeshRenderer:
   m_SortingLayer: 0
   m_SortingOrder: 0
   m_AdditionalVertexStreams: {fileID: 0}
---- !u!1 &780586488123986751
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 3702358158241763203}
-  m_Layer: 0
-  m_Name: light
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 0
---- !u!4 &3702358158241763203
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 780586488123986751}
-  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_Children:
-  - {fileID: 2851029660975025721}
-  - {fileID: 6323463624636478874}
-  - {fileID: 4392927317114338434}
-  - {fileID: 8964512790726183194}
-  - {fileID: 6581128759700083958}
-  - {fileID: 4569952459924619577}
-  - {fileID: 6749695109431917801}
-  - {fileID: 3024825849754206657}
-  - {fileID: 6813259544913962188}
-  m_Father: {fileID: 3234025345537968801}
-  m_RootOrder: 0
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
 --- !u!1 &805125221386308799
 GameObject:
   m_ObjectHideFlags: 0
@@ -650,6 +1118,7 @@ MonoBehaviour:
     serializedVersion: 2
     m_Bits: 86528
   Cursor: {fileID: 7593098362214606413}
+  MaxRange: 0
   lineRenderer: {fileID: 2563576905681239437}
   linePreviewMaterial: {fileID: 2100000, guid: a8a7bf60a30970f469a9c9d3ae2de6ef, type: 2}
 --- !u!1 &1228471852902103839
@@ -734,6 +1203,87 @@ MeshRenderer:
   m_SortingLayer: 0
   m_SortingOrder: 0
   m_AdditionalVertexStreams: {fileID: 0}
+--- !u!1 &1265065444054836125
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 3943151943602795551}
+  - component: {fileID: 8064762854713721661}
+  - component: {fileID: 1273712083371444546}
+  m_Layer: 0
+  m_Name: Helix002
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &3943151943602795551
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1265065444054836125}
+  m_LocalRotation: {x: 0.6427877, y: -0, z: -0, w: 0.76604444}
+  m_LocalPosition: {x: -0.0000419548, y: -2.3787, z: 0.3713122}
+  m_LocalScale: {x: 0.4913462, y: 0.49134624, z: 0.36618823}
+  m_Children: []
+  m_Father: {fileID: 2042657099210439802}
+  m_RootOrder: 3
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &8064762854713721661
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1265065444054836125}
+  m_Mesh: {fileID: 6016102661566203690, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &1273712083371444546
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1265065444054836125}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: 7626191068330388430, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &1429951131312025000
 GameObject:
   m_ObjectHideFlags: 0
@@ -815,6 +1365,45 @@ MeshRenderer:
   m_SortingLayer: 0
   m_SortingOrder: 0
   m_AdditionalVertexStreams: {fileID: 0}
+--- !u!1 &1444364103797728199
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1915547052053663838}
+  m_Layer: 0
+  m_Name: light
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!4 &1915547052053663838
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1444364103797728199}
+  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_Children:
+  - {fileID: 2042657099210439802}
+  - {fileID: 9183271348452687845}
+  - {fileID: 2464139881136409501}
+  - {fileID: 3122016423556530789}
+  - {fileID: 4009656276517117177}
+  - {fileID: 5070097021843518445}
+  - {fileID: 3369544160381210938}
+  - {fileID: 1196252143343187416}
+  - {fileID: 3305774054170730204}
+  m_Father: {fileID: 7484227433324710635}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
 --- !u!1 &1451455574766130010
 GameObject:
   m_ObjectHideFlags: 0
@@ -1848,7 +2437,6 @@ GameObject:
   - component: {fileID: 7555363165550791964}
   - component: {fileID: 7000905242735826308}
   - component: {fileID: 7765587865077286989}
-  - component: {fileID: 6502477450074706556}
   m_Layer: 0
   m_Name: Cursor
   m_TagString: Untagged
@@ -1935,6 +2523,8 @@ MonoBehaviour:
   snapLayerMask:
     serializedVersion: 2
     m_Bits: 76800
+  MaxRange: 10
+  useCamCurser: 0
 --- !u!120 &2563576905681239437
 LineRenderer:
   m_ObjectHideFlags: 0
@@ -2081,18 +2671,6 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: c75823b1712c4914b987f0e1ba8a5cba, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
---- !u!114 &6502477450074706556
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 2791239035521116974}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: b012182d8506771469478402aa91edbf, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
 --- !u!1 &2841712355696529410
 GameObject:
   m_ObjectHideFlags: 0
@@ -2145,6 +2723,7 @@ MonoBehaviour:
     serializedVersion: 2
     m_Bits: 96768
   Cursor: {fileID: 7593098362214606413}
+  MaxRange: 0
   lineRenderer: {fileID: 2563576905681239437}
   anglePreviewMaterial: {fileID: 2100000, guid: 8a28cccde2536794c97ec91954e34e90,
     type: 2}
@@ -2515,6 +3094,87 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 35056628a424f2947bf79fab29eb6655, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
+--- !u!1 &3053343927530874341
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1196252143343187416}
+  - component: {fileID: 6236758361788252246}
+  - component: {fileID: 8040922807230827375}
+  m_Layer: 0
+  m_Name: Lamp06
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!4 &1196252143343187416
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3053343927530874341}
+  m_LocalRotation: {x: -0.0000000035254462, y: 0.99964947, z: -0.026475651, w: -0.00000013311137}
+  m_LocalPosition: {x: -0.18697327, y: 1.2920719, z: -6.279079}
+  m_LocalScale: {x: 3.0876324, y: 3.0876336, z: 4.1923523}
+  m_Children: []
+  m_Father: {fileID: 1915547052053663838}
+  m_RootOrder: 7
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &6236758361788252246
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3053343927530874341}
+  m_Mesh: {fileID: 7123417763800259717, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &8040922807230827375
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3053343927530874341}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &3076172806551171506
 GameObject:
   m_ObjectHideFlags: 0
@@ -2554,6 +3214,87 @@ Transform:
   m_Father: {fileID: 2536831576210367534}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &3314060213421876499
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 4794400065242884274}
+  - component: {fileID: 6708005215238571327}
+  - component: {fileID: 7983283978678438888}
+  m_Layer: 0
+  m_Name: Cylinder003
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &4794400065242884274
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3314060213421876499}
+  m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071067}
+  m_LocalPosition: {x: -0, y: -2.1821377, z: 0}
+  m_LocalScale: {x: 1.2156034, y: 1.2156034, z: 1.6505318}
+  m_Children: []
+  m_Father: {fileID: 2042657099210439802}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &6708005215238571327
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3314060213421876499}
+  m_Mesh: {fileID: 8245426573784773463, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &7983283978678438888
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3314060213421876499}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &3316235218052276971
 GameObject:
   m_ObjectHideFlags: 0
@@ -3293,10 +4034,11 @@ MonoBehaviour:
   ignoreLayerMask:
     serializedVersion: 2
     m_Bits: 96768
+  Cursor: {fileID: 7593098362214606413}
+  MaxRange: 0
   LayerPendulumHits:
     serializedVersion: 2
     m_Bits: 1
-  Cursor: {fileID: 7593098362214606413}
   lineRenderer: {fileID: 2563576905681239437}
   linePreviewMaterial: {fileID: 2100000, guid: a8a7bf60a30970f469a9c9d3ae2de6ef, type: 2}
 --- !u!1 &4546972694963265692
@@ -3544,6 +4286,87 @@ MeshRenderer:
   m_SortingLayer: 0
   m_SortingOrder: 0
   m_AdditionalVertexStreams: {fileID: 0}
+--- !u!1 &4648829178455133574
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 7959940099550896060}
+  - component: {fileID: 931848901517086085}
+  - component: {fileID: 5979464835907782090}
+  m_Layer: 0
+  m_Name: Object006
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &7959940099550896060
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4648829178455133574}
+  m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071067}
+  m_LocalPosition: {x: -0, y: -2.3663206, z: 0}
+  m_LocalScale: {x: 1.2156034, y: 1.2156034, z: 1.6505318}
+  m_Children: []
+  m_Father: {fileID: 2042657099210439802}
+  m_RootOrder: 5
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &931848901517086085
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4648829178455133574}
+  m_Mesh: {fileID: -2639241166356525208, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &5979464835907782090
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 4648829178455133574}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &4669019790560504808
 GameObject:
   m_ObjectHideFlags: 0
@@ -4368,6 +5191,99 @@ MeshRenderer:
   m_SortingLayer: 0
   m_SortingOrder: 0
   m_AdditionalVertexStreams: {fileID: 0}
+--- !u!1 &5504038681738458230
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 5514518878368431192}
+  - component: {fileID: 4240654380563919769}
+  m_Layer: 0
+  m_Name: Omni002
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &5514518878368431192
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5504038681738458230}
+  m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: -0.7071068}
+  m_LocalPosition: {x: -0, y: 1.2068384, z: -0.00000019378662}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 2042657099210439802}
+  m_RootOrder: 7
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!108 &4240654380563919769
+Light:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5504038681738458230}
+  m_Enabled: 1
+  serializedVersion: 10
+  m_Type: 0
+  m_Shape: 0
+  m_Color: {r: 0.9333334, g: 0.9294118, b: 1, a: 1}
+  m_Intensity: 10
+  m_Range: 8.412479
+  m_SpotAngle: 8.7
+  m_InnerSpotAngle: 8.7
+  m_CookieSize: 10
+  m_Shadows:
+    m_Type: 2
+    m_Resolution: -1
+    m_CustomResolution: -1
+    m_Strength: 1
+    m_Bias: 0.05
+    m_NormalBias: 0.4
+    m_NearPlane: 0.2
+    m_CullingMatrixOverride:
+      e00: 1
+      e01: 0
+      e02: 0
+      e03: 0
+      e10: 0
+      e11: 1
+      e12: 0
+      e13: 0
+      e20: 0
+      e21: 0
+      e22: 1
+      e23: 0
+      e30: 0
+      e31: 0
+      e32: 0
+      e33: 1
+    m_UseCullingMatrixOverride: 0
+  m_Cookie: {fileID: 0}
+  m_DrawHalo: 0
+  m_Flare: {fileID: 0}
+  m_RenderMode: 0
+  m_CullingMask:
+    serializedVersion: 2
+    m_Bits: 4294967295
+  m_RenderingLayerMask: 1
+  m_Lightmapping: 4
+  m_LightShadowCasterMode: 0
+  m_AreaSize: {x: 1, y: 1}
+  m_BounceIntensity: 1
+  m_ColorTemperature: 6570
+  m_UseColorTemperature: 0
+  m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
+  m_UseBoundingSphereOverride: 0
+  m_UseViewFrustumForShadowCasterCull: 1
+  m_ShadowRadius: 0
+  m_ShadowAngle: 0
 --- !u!1 &5515921961601460107
 GameObject:
   m_ObjectHideFlags: 0
@@ -4402,6 +5318,7 @@ Transform:
   - {fileID: 4784987086112188950}
   - {fileID: 2536831576210367534}
   - {fileID: 3234025345537968801}
+  - {fileID: 7484227433324710635}
   - {fileID: 5639660380882869284}
   m_Father: {fileID: 5018390247159723608}
   m_RootOrder: 0
@@ -4453,6 +5370,88 @@ Transform:
   m_Father: {fileID: 4784987086112188950}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: -100, z: -120}
+--- !u!1 &5647406524351989998
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 5070097021843518445}
+  - component: {fileID: 5269246559578374182}
+  - component: {fileID: 3148953952848296623}
+  m_Layer: 0
+  m_Name: Lamp04
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!4 &5070097021843518445
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5647406524351989998}
+  m_LocalRotation: {x: -0.0000000035254462, y: 0.99964947, z: -0.026475651, w: -0.00000013311137}
+  m_LocalPosition: {x: -0.18697172, y: 1.9071897, z: 5.325448}
+  m_LocalScale: {x: 2.5681279, y: 2.5681279, z: 2.5400007}
+  m_Children: []
+  m_Father: {fileID: 1915547052053663838}
+  m_RootOrder: 5
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &5269246559578374182
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5647406524351989998}
+  m_Mesh: {fileID: 6226192841892960075, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &3148953952848296623
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5647406524351989998}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  - {fileID: -7161351915816769751, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &5647863950114993282
 GameObject:
   m_ObjectHideFlags: 0
@@ -4632,7 +5631,7 @@ Camera:
     height: 1
   near clip plane: 0.3
   far clip plane: 1000
-  field of view: 60
+  field of view: 90
   orthographic: 0
   orthographic size: 5
   m_Depth: 0
@@ -5123,6 +6122,7 @@ MonoBehaviour:
     serializedVersion: 2
     m_Bits: 24064
   Cursor: {fileID: 7593098362214606413}
+  MaxRange: 0
 --- !u!1 &6514918780467523717
 GameObject:
   m_ObjectHideFlags: 0
@@ -5153,7 +6153,7 @@ Transform:
   m_Children:
   - {fileID: 2993479576695229492}
   m_Father: {fileID: 177187141883897122}
-  m_RootOrder: 6
+  m_RootOrder: 7
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
 --- !u!114 &7998417669177101955
 MonoBehaviour:
@@ -5167,7 +6167,7 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 9c2c50e559b6f2f438e1bb45ff8856da, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  id: 7
+  id: 8
   UiName: 
   Sprite: {fileID: 21300000, guid: d456617ba2282854d9570dcebcc2b279, type: 3}
   FactManager: {fileID: 0}
@@ -5175,6 +6175,7 @@ MonoBehaviour:
     serializedVersion: 2
     m_Bits: 115217
   Cursor: {fileID: 7593098362214606413}
+  MaxRange: 0
 --- !u!1 &6538023868683449154
 GameObject:
   m_ObjectHideFlags: 0
@@ -5256,6 +6257,127 @@ MeshRenderer:
   m_SortingLayer: 0
   m_SortingOrder: 0
   m_AdditionalVertexStreams: {fileID: 0}
+--- !u!1 &6573921981046144461
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2042657099210439802}
+  m_Layer: 0
+  m_Name: Group002
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &2042657099210439802
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6573921981046144461}
+  m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
+  m_LocalPosition: {x: 0.395, y: -0.143, z: 0.253}
+  m_LocalScale: {x: 0.1, y: 0.1, z: 0.1}
+  m_Children:
+  - {fileID: 4794400065242884274}
+  - {fileID: 1751194418822142881}
+  - {fileID: 1025420376872442217}
+  - {fileID: 3943151943602795551}
+  - {fileID: 5362984487673943468}
+  - {fileID: 7959940099550896060}
+  - {fileID: 1750152730093390644}
+  - {fileID: 5514518878368431192}
+  - {fileID: 4591794594468451087}
+  m_Father: {fileID: 1915547052053663838}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
+--- !u!1 &6574663481225161087
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1751194418822142881}
+  - component: {fileID: 481719545781636004}
+  - component: {fileID: 1469242738361031170}
+  m_Layer: 0
+  m_Name: Cylinder004
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &1751194418822142881
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6574663481225161087}
+  m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071067}
+  m_LocalPosition: {x: -0, y: 2.2088046, z: 0}
+  m_LocalScale: {x: 1.0110741, y: 1.0110741, z: 1}
+  m_Children: []
+  m_Father: {fileID: 2042657099210439802}
+  m_RootOrder: 1
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &481719545781636004
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6574663481225161087}
+  m_Mesh: {fileID: -5208879343037863941, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &1469242738361031170
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6574663481225161087}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  - {fileID: -7161351915816769751, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &6584332639833414933
 GameObject:
   m_ObjectHideFlags: 0
@@ -5458,6 +6580,87 @@ MeshRenderer:
   m_SortingLayer: 0
   m_SortingOrder: 0
   m_AdditionalVertexStreams: {fileID: 0}
+--- !u!1 &6826270988690134690
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 9183271348452687845}
+  - component: {fileID: 7528393574306347706}
+  - component: {fileID: 7393578234884684634}
+  m_Layer: 0
+  m_Name: Lamp00
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!4 &9183271348452687845
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6826270988690134690}
+  m_LocalRotation: {x: 0.00000009163111, y: 0.72558, z: 0.68813795, w: -0.000000096616816}
+  m_LocalPosition: {x: -0.18697172, y: 1.9200721, z: 5.56848}
+  m_LocalScale: {x: 2.3788898, y: 0.99535114, z: 2.3788908}
+  m_Children: []
+  m_Father: {fileID: 1915547052053663838}
+  m_RootOrder: 1
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &7528393574306347706
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6826270988690134690}
+  m_Mesh: {fileID: -3277585872683695184, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &7393578234884684634
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6826270988690134690}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: 8290782892783832528, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &6952430123258629818
 GameObject:
   m_ObjectHideFlags: 0
@@ -5823,24 +7026,105 @@ Transform:
   m_LocalPosition: {x: -0.18697327, y: 1.3168347, z: -5.8119106}
   m_LocalScale: {x: 3.0876324, y: 3.0876336, z: 4.1923523}
   m_Children: []
-  m_Father: {fileID: 7650240631987532191}
+  m_Father: {fileID: 7650240631987532191}
+  m_RootOrder: 2
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &7149240275353192240
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7128779246906048126}
+  m_Mesh: {fileID: -1905102930025053637, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &5225318716151229901
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7128779246906048126}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &7218298296779328241
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 6387231434148247885}
+  - component: {fileID: 8850091055264074245}
+  - component: {fileID: 3617823532243961679}
+  m_Layer: 0
+  m_Name: GeoSphere002
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &6387231434148247885
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7218298296779328241}
+  m_LocalRotation: {x: 0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: -0, y: 2.3046205, z: 0}
+  m_LocalScale: {x: 0.9365708, y: 0.39187068, z: 0.9365708}
+  m_Children: []
+  m_Father: {fileID: 5141688066578765964}
   m_RootOrder: 2
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!33 &7149240275353192240
+--- !u!33 &8850091055264074245
 MeshFilter:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 7128779246906048126}
-  m_Mesh: {fileID: -1905102930025053637, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
---- !u!23 &5225318716151229901
+  m_GameObject: {fileID: 7218298296779328241}
+  m_Mesh: {fileID: -5008381810204397873, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &3617823532243961679
 MeshRenderer:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 7128779246906048126}
+  m_GameObject: {fileID: 7218298296779328241}
   m_Enabled: 1
   m_CastShadows: 1
   m_ReceiveShadows: 1
@@ -5853,7 +7137,7 @@ MeshRenderer:
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
-  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  - {fileID: 8290782892783832528, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
   m_StaticBatchInfo:
     firstSubMesh: 0
     subMeshCount: 0
@@ -5875,7 +7159,7 @@ MeshRenderer:
   m_SortingLayer: 0
   m_SortingOrder: 0
   m_AdditionalVertexStreams: {fileID: 0}
---- !u!1 &7218298296779328241
+--- !u!1 &7242578159649303984
 GameObject:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
@@ -5883,45 +7167,45 @@ GameObject:
   m_PrefabAsset: {fileID: 0}
   serializedVersion: 6
   m_Component:
-  - component: {fileID: 6387231434148247885}
-  - component: {fileID: 8850091055264074245}
-  - component: {fileID: 3617823532243961679}
+  - component: {fileID: 3369544160381210938}
+  - component: {fileID: 6629311718694925951}
+  - component: {fileID: 4928259375385862717}
   m_Layer: 0
-  m_Name: GeoSphere002
+  m_Name: Lamp05
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
   m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!4 &6387231434148247885
+  m_IsActive: 0
+--- !u!4 &3369544160381210938
 Transform:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 7218298296779328241}
-  m_LocalRotation: {x: 0, y: -0, z: -0, w: 1}
-  m_LocalPosition: {x: -0, y: 2.3046205, z: 0}
-  m_LocalScale: {x: 0.9365708, y: 0.39187068, z: 0.9365708}
+  m_GameObject: {fileID: 7242578159649303984}
+  m_LocalRotation: {x: 0.51306266, y: -0.48658693, z: 0.5130625, w: -0.486587}
+  m_LocalPosition: {x: -0.18697327, y: 2.315078, z: -6.3159885}
+  m_LocalScale: {x: 2.7027915, y: 2.5400007, z: 1.146885}
   m_Children: []
-  m_Father: {fileID: 5141688066578765964}
-  m_RootOrder: 2
+  m_Father: {fileID: 1915547052053663838}
+  m_RootOrder: 6
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!33 &8850091055264074245
+--- !u!33 &6629311718694925951
 MeshFilter:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 7218298296779328241}
-  m_Mesh: {fileID: -5008381810204397873, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
---- !u!23 &3617823532243961679
+  m_GameObject: {fileID: 7242578159649303984}
+  m_Mesh: {fileID: -1736445758434401373, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &4928259375385862717
 MeshRenderer:
   m_ObjectHideFlags: 0
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 7218298296779328241}
+  m_GameObject: {fileID: 7242578159649303984}
   m_Enabled: 1
   m_CastShadows: 1
   m_ReceiveShadows: 1
@@ -5934,7 +7218,7 @@ MeshRenderer:
   m_RenderingLayerMask: 1
   m_RendererPriority: 0
   m_Materials:
-  - {fileID: 8290782892783832528, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
   m_StaticBatchInfo:
     firstSubMesh: 0
     subMeshCount: 0
@@ -6851,8 +8135,9 @@ MonoBehaviour:
   ignoreLayerMask:
     serializedVersion: 2
     m_Bits: 96768
-  maxHeight: 2.5
   Cursor: {fileID: 7593098362214606413}
+  MaxRange: 0
+  maxHeight: 2.5
   lineRenderer: {fileID: 2563576905681239437}
   linePreviewMaterial: {fileID: 2100000, guid: a8a7bf60a30970f469a9c9d3ae2de6ef, type: 2}
 --- !u!1 &7756212156643835486
@@ -6936,6 +8221,87 @@ MeshRenderer:
   m_SortingLayer: 0
   m_SortingOrder: 0
   m_AdditionalVertexStreams: {fileID: 0}
+--- !u!1 &7840601277698688859
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 2464139881136409501}
+  - component: {fileID: 256746643441984512}
+  - component: {fileID: 1022373104756252180}
+  m_Layer: 0
+  m_Name: Lamp01
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!4 &2464139881136409501
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7840601277698688859}
+  m_LocalRotation: {x: -0.0000000035254462, y: 0.99964947, z: -0.026475651, w: -0.00000013311137}
+  m_LocalPosition: {x: -0.18697327, y: 1.3168347, z: -5.8119106}
+  m_LocalScale: {x: 3.0876324, y: 3.0876336, z: 4.1923523}
+  m_Children: []
+  m_Father: {fileID: 1915547052053663838}
+  m_RootOrder: 2
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &256746643441984512
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7840601277698688859}
+  m_Mesh: {fileID: -1905102930025053637, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &1022373104756252180
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7840601277698688859}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &7868011882762804149
 GameObject:
   m_ObjectHideFlags: 0
@@ -7325,6 +8691,87 @@ Transform:
   m_Father: {fileID: 2104685099892905041}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &8586700013838687893
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 4009656276517117177}
+  - component: {fileID: 1588398179748588824}
+  - component: {fileID: 1096734482610239289}
+  m_Layer: 0
+  m_Name: Lamp03
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!4 &4009656276517117177
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8586700013838687893}
+  m_LocalRotation: {x: 0.000000008089408, y: 0.99815303, z: 0.060750425, w: -0.00000013291212}
+  m_LocalPosition: {x: -0.18686707, y: 2.232217, z: -6.360401}
+  m_LocalScale: {x: 1.2480193, y: 1.2480197, z: 0.9301182}
+  m_Children: []
+  m_Father: {fileID: 1915547052053663838}
+  m_RootOrder: 4
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &1588398179748588824
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8586700013838687893}
+  m_Mesh: {fileID: 9127768759793400938, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &1096734482610239289
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8586700013838687893}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: 7626191068330388430, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &8712645601309166050
 GameObject:
   m_ObjectHideFlags: 0
@@ -7406,6 +8853,87 @@ MeshRenderer:
   m_SortingLayer: 0
   m_SortingOrder: 0
   m_AdditionalVertexStreams: {fileID: 0}
+--- !u!1 &8804916845592556184
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 3305774054170730204}
+  - component: {fileID: 4504979155449963158}
+  - component: {fileID: 5175664949057534849}
+  m_Layer: 0
+  m_Name: Lamp07
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!4 &3305774054170730204
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8804916845592556184}
+  m_LocalRotation: {x: 0.000000091631094, y: 0.72558, z: 0.6881378, w: -0.000000096616816}
+  m_LocalPosition: {x: -0.1869725, y: 1.6138662, z: -0.20825356}
+  m_LocalScale: {x: 2.2279458, y: 2.5400007, z: 2.2279456}
+  m_Children: []
+  m_Father: {fileID: 1915547052053663838}
+  m_RootOrder: 8
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &4504979155449963158
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8804916845592556184}
+  m_Mesh: {fileID: -5323330051269172871, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+--- !u!23 &5175664949057534849
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8804916845592556184}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: -4963801623029300775, guid: 1ed450acf42d68f4cbe65c36bce3da06, type: 3}
+  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 &8816914964933306758
 GameObject:
   m_ObjectHideFlags: 0
@@ -7458,6 +8986,7 @@ MonoBehaviour:
     serializedVersion: 2
     m_Bits: 96768
   Cursor: {fileID: 7593098362214606413}
+  MaxRange: 0
   lineRenderer: {fileID: 2563576905681239437}
   linePreviewMaterial: {fileID: 2100000, guid: a8a7bf60a30970f469a9c9d3ae2de6ef, type: 2}
 --- !u!1 &8961895004939177439
diff --git a/Assets/Resources/Prefabs/Stage_Default.prefab b/Assets/Resources/Prefabs/Stage_Default.prefab
index 8c77c563..ae345171 100644
--- a/Assets/Resources/Prefabs/Stage_Default.prefab
+++ b/Assets/Resources/Prefabs/Stage_Default.prefab
@@ -139,6 +139,21 @@ PrefabInstance:
   m_Modification:
     m_TransformParent: {fileID: 3020720017683626808}
     m_Modifications:
+    - target: {fileID: 3020977177096787177, guid: 70debc1e3ad46f441b522025e854184d,
+        type: 3}
+      propertyPath: m_FovKick.Camera
+      value: 
+      objectReference: {fileID: 6729715606156841934}
+    - target: {fileID: 3020977177096787177, guid: 70debc1e3ad46f441b522025e854184d,
+        type: 3}
+      propertyPath: m_MouseLook.XSensitivity
+      value: 3
+      objectReference: {fileID: 0}
+    - target: {fileID: 3020977177096787177, guid: 70debc1e3ad46f441b522025e854184d,
+        type: 3}
+      propertyPath: m_MouseLook.YSensitivity
+      value: 3
+      objectReference: {fileID: 0}
     - target: {fileID: 3020977177102835977, guid: 70debc1e3ad46f441b522025e854184d,
         type: 3}
       propertyPath: m_Name
@@ -230,6 +245,12 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 05ec5cf00ca181d45a42ba1870e148c3, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
+--- !u!20 &6729715606156841934 stripped
+Camera:
+  m_CorrespondingSourceObject: {fileID: 4891211944630835841, guid: 70debc1e3ad46f441b522025e854184d,
+    type: 3}
+  m_PrefabInstance: {fileID: 2199396992344377679}
+  m_PrefabAsset: {fileID: 0}
 --- !u!23 &1008004642071067124 stripped
 MeshRenderer:
   m_CorrespondingSourceObject: {fileID: 1403140702898548923, guid: 70debc1e3ad46f441b522025e854184d,
diff --git a/Assets/Scenes/Menues/MainMenue.unity b/Assets/Scenes/Menues/MainMenue.unity
index bacf6d5d..7b028ead 100644
--- a/Assets/Scenes/Menues/MainMenue.unity
+++ b/Assets/Scenes/Menues/MainMenue.unity
@@ -1165,12 +1165,12 @@ PrefabInstance:
     - target: {fileID: 983654861770528227, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
       propertyPath: m_AnchorMax.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 983654861770528227, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
       propertyPath: m_AnchorMin.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 983654861770528227, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
@@ -1190,7 +1190,7 @@ PrefabInstance:
     - target: {fileID: 983654861770528227, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: 0
+      value: -18.064999
       objectReference: {fileID: 0}
     - target: {fileID: 983654862871083801, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
@@ -1305,12 +1305,12 @@ PrefabInstance:
     - target: {fileID: 983654863456641089, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
       propertyPath: m_AnchorMax.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 983654863456641089, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
       propertyPath: m_AnchorMin.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 983654863456641089, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
@@ -1330,7 +1330,7 @@ PrefabInstance:
     - target: {fileID: 983654863456641089, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: 0
+      value: -50.194996
       objectReference: {fileID: 0}
     - target: {fileID: 983654863456641090, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
@@ -1395,12 +1395,12 @@ PrefabInstance:
     - target: {fileID: 3395167095172400700, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
       propertyPath: m_AnchorMax.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 3395167095172400700, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
       propertyPath: m_AnchorMin.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 3395167095172400700, guid: 1c0697c277658ae4da6f6aa522a55164,
         type: 3}
@@ -1630,12 +1630,12 @@ PrefabInstance:
     - target: {fileID: 239876022046447567, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
       propertyPath: m_AnchorMax.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 239876022046447567, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
       propertyPath: m_AnchorMin.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 239876022046447567, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
@@ -1710,12 +1710,12 @@ PrefabInstance:
     - target: {fileID: 2444503958484796432, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
       propertyPath: m_AnchorMax.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 2444503958484796432, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
       propertyPath: m_AnchorMin.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 2444503958484796432, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
@@ -1735,7 +1735,7 @@ PrefabInstance:
     - target: {fileID: 2444503958484796432, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: 0
+      value: -18.064999
       objectReference: {fileID: 0}
     - target: {fileID: 2444503959598721769, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
@@ -1765,7 +1765,7 @@ PrefabInstance:
     - target: {fileID: 2444503959598721770, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
       propertyPath: m_AnchorMax.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 2444503959598721770, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
@@ -1775,7 +1775,7 @@ PrefabInstance:
     - target: {fileID: 2444503959598721770, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
       propertyPath: m_AnchorMin.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 2444503959598721770, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
@@ -1830,7 +1830,7 @@ PrefabInstance:
     - target: {fileID: 2444503959598721770, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: 0
+      value: -52.194996
       objectReference: {fileID: 0}
     - target: {fileID: 2444503959598721770, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
@@ -1855,12 +1855,12 @@ PrefabInstance:
     - target: {fileID: 2444503960154141106, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
       propertyPath: m_AnchorMax.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 2444503960154141106, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
       propertyPath: m_AnchorMin.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 2444503960154141106, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
@@ -1880,7 +1880,7 @@ PrefabInstance:
     - target: {fileID: 2444503960154141106, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: 0
+      value: -68.259995
       objectReference: {fileID: 0}
     - target: {fileID: 3054816506031946634, guid: 1202589d70a040b48b159c6497ed2237,
         type: 3}
@@ -4173,7 +4173,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 0}
   m_AnchorMax: {x: 1, y: 1}
-  m_AnchoredPosition: {x: 15, y: -5}
+  m_AnchoredPosition: {x: 15, y: -5.0000153}
   m_SizeDelta: {x: -30, y: -10.000027}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!114 &795387530
@@ -4947,7 +4947,7 @@ MonoBehaviour:
   m_TargetGraphic: {fileID: 1823219497}
   m_HandleRect: {fileID: 1823219496}
   m_Direction: 2
-  m_Value: 1
+  m_Value: 0
   m_Size: 1
   m_NumberOfSteps: 1
   m_OnValueChanged:
@@ -5868,7 +5868,7 @@ PrefabInstance:
     - target: {fileID: 6153207595148985676, guid: 1c1c6c2f9f2a4434ca1b3e55000a10d2,
         type: 3}
       propertyPath: m_AnchorMax.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 6153207595148985676, guid: 1c1c6c2f9f2a4434ca1b3e55000a10d2,
         type: 3}
@@ -5878,7 +5878,7 @@ PrefabInstance:
     - target: {fileID: 6153207595148985676, guid: 1c1c6c2f9f2a4434ca1b3e55000a10d2,
         type: 3}
       propertyPath: m_AnchorMin.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 6153207595148985676, guid: 1c1c6c2f9f2a4434ca1b3e55000a10d2,
         type: 3}
diff --git a/Assets/Scripts/GlobalBehaviour.cs b/Assets/Scripts/GlobalBehaviour.cs
index 32a448dd..9de3f3b6 100644
--- a/Assets/Scripts/GlobalBehaviour.cs
+++ b/Assets/Scripts/GlobalBehaviour.cs
@@ -12,6 +12,9 @@ public class GlobalBehaviour : MonoBehaviour
     public static Color StageNotYetAccomplished;
     public static Color StageError;
 
+    public static float GadgetLaserDistance = 30f;
+    public static float GadgetPhysicalDistance = 2.5f;
+
     [SerializeField]
     private Color _hintAnimationStartColor;
     [SerializeField]
@@ -26,6 +29,11 @@ public class GlobalBehaviour : MonoBehaviour
     [SerializeField]
     private Color _StageError;
 
+    [SerializeField]
+    private float _GadgetLaserDistance = 30f;
+    [SerializeField]
+    private float _GadgetPhysicalDistance = 2.5f;
+
     void Awake()
     {
         //GenerateDemoFiles.GenerateAll();
@@ -38,6 +46,9 @@ void Awake()
         StageNotYetAccomplished = _StageNotYetAccomplished;
         StageError = _StageError;
 
+        GadgetLaserDistance = _GadgetLaserDistance;
+        GadgetPhysicalDistance = _GadgetPhysicalDistance;
+
 
         StageStatic.ShallowLoadStages();
         //DontDestroyOnLoad(gameObject);
diff --git a/Assets/Scripts/InteractionEngine/Gadgets/AngleTool.cs b/Assets/Scripts/InteractionEngine/Gadgets/AngleTool.cs
index 5efdb501..dceaf813 100644
--- a/Assets/Scripts/InteractionEngine/Gadgets/AngleTool.cs
+++ b/Assets/Scripts/InteractionEngine/Gadgets/AngleTool.cs
@@ -14,7 +14,6 @@ public class AngleTool : Gadget
 
     //Attributes for simulating the drawing of a curve
     private bool curveDrawingActivated;
-    public WorldCursor Cursor;
     public LineRenderer lineRenderer;
     private List<Vector3> linePositions = new List<Vector3>();
     public Material anglePreviewMaterial;
@@ -25,22 +24,23 @@ public class AngleTool : Gadget
     private Vector3 angleMiddlePoint;
     private float curveRadius;
 
-    void Awake()
+    new void Awake()
     {
-        if (FactManager == null)
-            FactManager = GameObject.FindObjectOfType<FactManager>();
-
-        if (this.Cursor == null)
-            this.Cursor = GameObject.FindObjectOfType<WorldCursor>();
-
-        this.UiName = "Angle Mode";
-        CommunicationEvents.TriggerEvent.AddListener(OnHit);
+        base.Awake();
+        UiName = "Angle Mode";
+        if(MaxRange == 0)
+            MaxRange = GlobalBehaviour.GadgetLaserDistance;
     }
 
     //Initialize Gadget when enabled AND activated
-    void OnEnable()
+    new void OnEnable()
+    {
+        base.OnEnable();
+        this.ResetGadget();
+    }
+
+    void OnDisable()
     {
-        this.Cursor.setLayerMask(~this.ignoreLayerMask.value);
         this.ResetGadget();
     }
 
@@ -116,6 +116,7 @@ private void ResetGadget()
     //Expect a LineFact here, where Line.Pid2 will be the Basis-Point of the angle
     public void ActivateCurveDrawing()
     {
+        this.lineRenderer.enabled = true;
         //In AngleMode with 3 Points we want to draw nearly a rectangle so we add a startPoint and an Endpoint to this preview
         this.lineRenderer.positionCount = curveDrawingVertexCount + 2;
         this.lineRenderer.material = this.anglePreviewMaterial;
@@ -167,6 +168,7 @@ public void DeactivateCurveDrawing()
         this.lineRenderer.positionCount = 0;
         this.linePositions = new List<Vector3>();
         this.curveDrawingActivated = false;
+        this.lineRenderer.enabled = false;
     }
 
 }
diff --git a/Assets/Scripts/InteractionEngine/Gadgets/ExtraGadget.cs b/Assets/Scripts/InteractionEngine/Gadgets/ExtraGadget.cs
index 68835b94..944e8f4c 100644
--- a/Assets/Scripts/InteractionEngine/Gadgets/ExtraGadget.cs
+++ b/Assets/Scripts/InteractionEngine/Gadgets/ExtraGadget.cs
@@ -2,23 +2,16 @@
 
 public class ExtraGadget : Gadget
 {
-    public WorldCursor Cursor;
-
-    void Awake()
+    new void Awake()
     {
-        if (FactManager == null)
-            FactManager = GameObject.FindObjectOfType<FactManager>();
-
-        if (this.Cursor == null)
-            this.Cursor = GameObject.FindObjectOfType<WorldCursor>();
-
-        this.UiName = "Extra Mode";
-        CommunicationEvents.TriggerEvent.AddListener(OnHit);
+        base.Awake();
+        UiName = "Extra Mode";
+        MaxRange = GlobalBehaviour.GadgetPhysicalDistance;
     }
 
-    void OnEnable()
+    new void OnEnable()
     {
-        this.Cursor.setLayerMask(~this.ignoreLayerMask.value);
+        base.OnEnable();
     }
 
     public override void OnHit(RaycastHit hit)
diff --git a/Assets/Scripts/InteractionEngine/Gadgets/Gadget.cs b/Assets/Scripts/InteractionEngine/Gadgets/Gadget.cs
index c4981d56..78c6e10f 100644
--- a/Assets/Scripts/InteractionEngine/Gadgets/Gadget.cs
+++ b/Assets/Scripts/InteractionEngine/Gadgets/Gadget.cs
@@ -4,19 +4,29 @@
 public class Gadget : MonoBehaviour
 {
 
-    public int id;
-    public string UiName;
+    public int id = -1;
+    public string UiName = "Name Not Set";
     public Sprite Sprite;
     public FactManager FactManager;
     public LayerMask ignoreLayerMask;
+    public WorldCursor Cursor;
+    public float MaxRange;
 
-    void Awake()
+    protected void Awake()
     {
         if (FactManager == null)
             FactManager = GameObject.FindObjectOfType<FactManager>();
 
+        if (Cursor == null)
+            Cursor = GameObject.FindObjectOfType<WorldCursor>();
+
         CommunicationEvents.TriggerEvent.AddListener(OnHit);
+    }
 
+    protected void OnEnable()
+    {
+        this.Cursor.setLayerMask(~this.ignoreLayerMask.value);
+        Cursor.MaxRange = MaxRange;
     }
 
     public virtual void OnHit(RaycastHit hit) { }
diff --git a/Assets/Scripts/InteractionEngine/Gadgets/LineTool.cs b/Assets/Scripts/InteractionEngine/Gadgets/LineTool.cs
index 43279b5e..3143cf34 100644
--- a/Assets/Scripts/InteractionEngine/Gadgets/LineTool.cs
+++ b/Assets/Scripts/InteractionEngine/Gadgets/LineTool.cs
@@ -11,27 +11,27 @@ public class LineTool : Gadget
 
     //Attributes for simulating the drawing of a line
     private bool lineDrawingActivated;
-    public WorldCursor Cursor;
     public LineRenderer lineRenderer;
     private List<Vector3> linePositions = new List<Vector3>();
     public Material linePreviewMaterial;
 
-    void Awake()
+    new void Awake()
     {
-        if (FactManager == null)
-            FactManager = GameObject.FindObjectOfType<FactManager>();
-
-        if (this.Cursor == null)
-            this.Cursor = GameObject.FindObjectOfType<WorldCursor>();
-
-        this.UiName = "Line Mode";
-        CommunicationEvents.TriggerEvent.AddListener(OnHit);
+        base.Awake();
+        UiName = "Line Mode";
+        if (MaxRange == 0)
+            MaxRange = GlobalBehaviour.GadgetLaserDistance;
     }
 
     //Initialize Gadget when enabled AND activated
-    void OnEnable()
+    new void OnEnable()
+    {
+        base.OnEnable();
+        this.ResetGadget();
+    }
+
+    void OnDisable()
     {
-        this.Cursor.setLayerMask(~this.ignoreLayerMask.value);
         this.ResetGadget();
     }
 
@@ -109,6 +109,7 @@ private void ResetGadget()
 
     private void ActivateLineDrawing()
     {
+        this.lineRenderer.enabled = true;
         this.lineRenderer.positionCount = 2;
         this.lineRenderer.material = this.linePreviewMaterial;
 
@@ -139,5 +140,6 @@ private void DeactivateLineDrawing()
         this.lineRenderer.positionCount = 0;
         this.linePositions = new List<Vector3>();
         this.lineDrawingActivated = false;
+        this.lineRenderer.enabled = false;
     }
 }
diff --git a/Assets/Scripts/InteractionEngine/Gadgets/LotTool.cs b/Assets/Scripts/InteractionEngine/Gadgets/LotTool.cs
index f89edbf3..71348c4f 100644
--- a/Assets/Scripts/InteractionEngine/Gadgets/LotTool.cs
+++ b/Assets/Scripts/InteractionEngine/Gadgets/LotTool.cs
@@ -16,27 +16,22 @@ public class LotTool : Gadget
 
     //Attributes for simulating the drawing of a line
     private bool lineDrawingActivated;
-    public WorldCursor Cursor;
     public LineRenderer lineRenderer;
     private List<Vector3> linePositions = new List<Vector3>();
     public Material linePreviewMaterial;
 
-    void Awake()
+    new void Awake()
     {
-        if (FactManager == null)
-            FactManager = GameObject.FindObjectOfType<FactManager>();
-
-        if (this.Cursor == null)
-            this.Cursor = GameObject.FindObjectOfType<WorldCursor>();
-
+        base.Awake();
         this.UiName = "Lot Mode";
-        CommunicationEvents.TriggerEvent.AddListener(OnHit);
+        if (MaxRange == 0)
+            MaxRange = GlobalBehaviour.GadgetLaserDistance;
     }
 
     //Initialize Gadget when enabled AND activated
-    void OnEnable()
+    new void OnEnable()
     {
-        this.Cursor.setLayerMask(~this.ignoreLayerMask.value);
+        base.OnEnable();
         this.ResetGadget();
     }
 
@@ -144,6 +139,7 @@ private void ResetGadget()
 
     private void ActivateLineDrawing()
     {
+        this.lineRenderer.enabled = true;
         this.lineRenderer.positionCount = 3;
         this.lineRenderer.material = this.linePreviewMaterial;
 
@@ -189,5 +185,6 @@ private void DeactivateLineDrawing()
         this.lineRenderer.positionCount = 0;
         this.linePositions = new List<Vector3>();
         this.lineDrawingActivated = false;
+        this.lineRenderer.enabled = false;
     }
 }
diff --git a/Assets/Scripts/InteractionEngine/Gadgets/Pendulum.cs b/Assets/Scripts/InteractionEngine/Gadgets/Pendulum.cs
index 1c47d928..eab9afe7 100644
--- a/Assets/Scripts/InteractionEngine/Gadgets/Pendulum.cs
+++ b/Assets/Scripts/InteractionEngine/Gadgets/Pendulum.cs
@@ -9,26 +9,21 @@ public class Pendulum : Gadget
     //Attributes for simulating the drawing of a line
     private bool lineDrawingActivated;
     public LayerMask LayerPendulumHits;
-    public WorldCursor Cursor;
     public LineRenderer lineRenderer;
     private List<Vector3> linePositions = new List<Vector3>();
     public Material linePreviewMaterial;
 
-    void Awake()
+    new void Awake()
     {
-        if (FactManager == null)
-            FactManager = GameObject.FindObjectOfType<FactManager>();
-
-        if (this.Cursor == null)
-            this.Cursor = GameObject.FindObjectOfType<WorldCursor>();
-
+        base.Awake();
         this.UiName = "Pendulum";
-        CommunicationEvents.TriggerEvent.AddListener(OnHit);
+        if (MaxRange == 0)
+            MaxRange = GlobalBehaviour.GadgetLaserDistance;
     }
 
-    void OnEnable()
+    new void OnEnable()
     {
-        this.Cursor.setLayerMask(~this.ignoreLayerMask.value);
+        base.OnEnable();
         this.ResetGadget();
         ActivateLineDrawing();
     }
@@ -71,6 +66,7 @@ private void ResetGadget()
 
     private void ActivateLineDrawing()
     {
+        this.lineRenderer.enabled = true;
         this.lineRenderer.positionCount = 2;
         this.lineRenderer.material = this.linePreviewMaterial;
 
@@ -108,6 +104,7 @@ private void DeactivateLineDrawing()
         this.lineRenderer.positionCount = 0;
         this.linePositions = new List<Vector3>();
         this.lineDrawingActivated = false;
+        this.lineRenderer.enabled = false;
     }
 
 }
diff --git a/Assets/Scripts/InteractionEngine/Gadgets/Pointer.cs b/Assets/Scripts/InteractionEngine/Gadgets/Pointer.cs
index 2a24d607..4e3cb1c7 100644
--- a/Assets/Scripts/InteractionEngine/Gadgets/Pointer.cs
+++ b/Assets/Scripts/InteractionEngine/Gadgets/Pointer.cs
@@ -5,23 +5,12 @@
 
 public class Pointer : Gadget
 {
-    public WorldCursor Cursor;
-
-    void Awake()
+    new void Awake()
     {
-        if (FactManager == null)
-            FactManager = GameObject.FindObjectOfType<FactManager>();
-
-        if (this.Cursor == null)
-            this.Cursor = GameObject.FindObjectOfType<WorldCursor>();
-
+        base.Awake();
         this.UiName = "Point Mode";
-        CommunicationEvents.TriggerEvent.AddListener(OnHit);
-    }
-
-    void OnEnable()
-    {
-        this.Cursor.setLayerMask(~this.ignoreLayerMask.value);
+        if (MaxRange == 0)
+            MaxRange = GlobalBehaviour.GadgetLaserDistance;
     }
 
     public override void OnHit(RaycastHit hit)
diff --git a/Assets/Scripts/InteractionEngine/Gadgets/PoleTool.cs b/Assets/Scripts/InteractionEngine/Gadgets/PoleTool.cs
new file mode 100644
index 00000000..d9fa86ff
--- /dev/null
+++ b/Assets/Scripts/InteractionEngine/Gadgets/PoleTool.cs
@@ -0,0 +1,114 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using static CommunicationEvents;
+
+public class PoleTool : Gadget
+    //Acts as a Pendulum starting at a Point
+{
+    //Attributes for simulating the drawing of a line
+    public LayerMask LayerPendulumHits;
+    public LineRenderer lineRenderer;
+    private List<Vector3> linePositions = new List<Vector3>();
+    public Material linePreviewMaterial;
+
+    public float poleHeight = 1f;
+    public float maxHeight;
+
+    new void Awake()
+    {
+        base.Awake();
+        UiName = "PoleTool";
+        if (MaxRange == 0)
+            MaxRange = GlobalBehaviour.GadgetPhysicalDistance;
+        if (maxHeight == 0)
+            maxHeight = 0.1f;
+    }
+
+    new void OnEnable()
+    {
+        base.OnEnable();
+        this.ResetGadget();
+        ActivateLineDrawing();
+    }
+
+    void OnDisable()
+    {
+        this.ResetGadget();
+    }
+
+    public override void OnHit(RaycastHit hit)
+    {
+
+        if (!this.isActiveAndEnabled ||
+            !Physics.Raycast(Cursor.transform.position + Vector3.up * (float)Math3d.vectorPrecission,
+                Vector3.down, maxHeight + (float)Math3d.vectorPrecission, LayerMask.GetMask(new string[]{"Default", "Tree"})))
+            return;
+
+        UpdateLineDrawing();
+
+        if (hit.transform.gameObject.layer == LayerMask.NameToLayer("Point"))
+        {
+            var pid2 = FactManager.AddPointFact(linePositions[1], Vector3.up).Id;
+            FactManager.AddLineFact(hit.transform.gameObject.GetComponent<FactObject>().URI, pid2, true);
+        }
+        else
+        {
+            FactManager.AddPointFact(hit);
+        }
+    }
+
+    void Update()
+    {
+        if (!this.isActiveAndEnabled)
+            return;
+
+        if (lineRenderer.enabled)
+            UpdateLineDrawing();
+    }
+
+    private void ResetGadget()
+    {
+        DeactivateLineDrawing();
+    }
+
+    private void ActivateLineDrawing()
+    {
+        this.lineRenderer.enabled = true;
+        this.lineRenderer.positionCount = 2;
+        this.lineRenderer.material = this.linePreviewMaterial;
+
+        lineRenderer.startWidth = 0.095f;
+        lineRenderer.endWidth = 0.095f;
+
+        //initiate linePositions-Array
+        linePositions.Add(this.Cursor.transform.position);
+        linePositions.Add(this.Cursor.transform.position);
+
+        UpdateLineDrawing();
+    }
+
+    //Updates the points of the Lines when baseLine was selected in LineMode
+    private void UpdateLineDrawing()
+    {
+        this.linePositions[0] = this.Cursor.transform.position;
+
+        //Raycast upwoard
+        if (Physics.Raycast(this.linePositions[0], Vector3.up, out RaycastHit ceiling, poleHeight, this.LayerPendulumHits.value))
+            this.linePositions[1] = ceiling.point;
+        else
+            this.linePositions[1] = this.linePositions[0] + Vector3.up * poleHeight;
+
+        this.lineRenderer.SetPosition(0, this.linePositions[0]);
+        this.lineRenderer.SetPosition(1, this.linePositions[1]);
+    }
+
+    //Deactivate LineDrawing so that no Line gets drawn when Cursor changes
+    private void DeactivateLineDrawing()
+    {
+        this.lineRenderer.positionCount = 0;
+        this.linePositions = new List<Vector3>();
+        this.lineRenderer.enabled = false;
+    }
+
+}
diff --git a/Assets/Scripts/InteractionEngine/Gadgets/PoleTool.cs.meta b/Assets/Scripts/InteractionEngine/Gadgets/PoleTool.cs.meta
new file mode 100644
index 00000000..a0f1c099
--- /dev/null
+++ b/Assets/Scripts/InteractionEngine/Gadgets/PoleTool.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: f173d1c5aec16f04893f07d8dd5de8b5
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Scripts/InteractionEngine/Gadgets/Remover.cs b/Assets/Scripts/InteractionEngine/Gadgets/Remover.cs
index 4eed1221..f12fa415 100644
--- a/Assets/Scripts/InteractionEngine/Gadgets/Remover.cs
+++ b/Assets/Scripts/InteractionEngine/Gadgets/Remover.cs
@@ -5,23 +5,12 @@
 
 public class Remover : Gadget
 {
-    public WorldCursor Cursor;
-
-    void Awake()
+    new void Awake()
     {
-        if (FactManager == null)
-            FactManager = GameObject.FindObjectOfType<FactManager>();
-
-        if (this.Cursor == null)
-            this.Cursor = GameObject.FindObjectOfType<WorldCursor>();
-
+        base.Awake();
         this.UiName = "Remove Mode";
-        CommunicationEvents.TriggerEvent.AddListener(OnHit);
-    }
-
-    void OnEnable()
-    {
-        this.Cursor.setLayerMask(~this.ignoreLayerMask.value);
+        if (MaxRange == 0)
+            MaxRange = GlobalBehaviour.GadgetLaserDistance;
     }
 
     public override void OnHit(RaycastHit hit)
@@ -34,5 +23,4 @@ public override void OnHit(RaycastHit hit)
         var hid = hit.transform.GetComponent<FactObject>().URI;
         StageStatic.stage.factState.Remove(hid);
     }
-  
 }
diff --git a/Assets/Scripts/InteractionEngine/Gadgets/Tape.cs b/Assets/Scripts/InteractionEngine/Gadgets/Tape.cs
index 90d9bd65..feca7181 100644
--- a/Assets/Scripts/InteractionEngine/Gadgets/Tape.cs
+++ b/Assets/Scripts/InteractionEngine/Gadgets/Tape.cs
@@ -12,28 +12,27 @@ public class Tape : Gadget
     private Fact TapeModeFirstPointSelected = null;
 
     //Attributes for simulating the drawing of a line
-    private bool lineDrawingActivated;
-    public WorldCursor Cursor;
     public LineRenderer lineRenderer;
     private List<Vector3> linePositions = new List<Vector3>();
     public Material linePreviewMaterial;
 
-    void Awake()
+    new void Awake()
     {
-        if (FactManager == null)
-            FactManager = GameObject.FindObjectOfType<FactManager>();
-
-        if (this.Cursor == null)
-            this.Cursor = GameObject.FindObjectOfType<WorldCursor>();
-
+        base.Awake();
         this.UiName = "Distance Mode";
-        CommunicationEvents.TriggerEvent.AddListener(OnHit);
+        if (MaxRange == 0)
+            MaxRange = GlobalBehaviour.GadgetPhysicalDistance;
     }
 
     //Initialize Gadget when enabled AND activated
-    void OnEnable()
+    new void OnEnable()
+    {
+        base.OnEnable();
+        this.ResetGadget();
+    }
+
+    void OnDisable()
     {
-        this.Cursor.setLayerMask(~this.ignoreLayerMask.value);
         this.ResetGadget();
     }
 
@@ -71,9 +70,7 @@ public override void OnHit(RaycastHit hit)
         {
             if (this.TapeModeIsFirstPointSelected)
             {
-
                 RaycastHit downHit;
-
                 if (Physics.Raycast(hit.transform.gameObject.transform.position - Vector3.down * 2, Vector3.down, out downHit))
                 {
                     var idA = downHit.transform.gameObject.GetComponent<FactObject>().URI;
@@ -102,7 +99,7 @@ public override void OnHit(RaycastHit hit)
     void Update()
     {
         if (!this.isActiveAndEnabled) return;
-        if (this.lineDrawingActivated)
+        if (lineRenderer.enabled)
             UpdateLineDrawing();
     }
 
@@ -115,13 +112,12 @@ private void ResetGadget()
 
     private void ActivateLineDrawing()
     {
+        this.lineRenderer.enabled = true;
         this.lineRenderer.positionCount = 2;
         this.lineRenderer.material = this.linePreviewMaterial;
 
         lineRenderer.startWidth = 0.095f;
         lineRenderer.endWidth = 0.095f;
-        //Set LineDrawing activated
-        this.lineDrawingActivated = true;
         //Add the position of the Fact for the start of the Line
         linePositions.Add(this.TapeModeFirstPointSelected.Representation.transform.position);
         //The second point is the same point at the moment
@@ -144,6 +140,6 @@ private void DeactivateLineDrawing()
     {
         this.lineRenderer.positionCount = 0;
         this.linePositions = new List<Vector3>();
-        this.lineDrawingActivated = false;
+        this.lineRenderer.enabled = false;
     }
 }
diff --git a/Assets/Scripts/InteractionEngine/ShinyThings.cs b/Assets/Scripts/InteractionEngine/ShinyThings.cs
index dc0bf970..6f93fd1f 100644
--- a/Assets/Scripts/InteractionEngine/ShinyThings.cs
+++ b/Assets/Scripts/InteractionEngine/ShinyThings.cs
@@ -141,8 +141,6 @@ private void OnMouseOverSnapZoneEnd(Transform selection)
                 var oldCol = selectionRenderer.material.color;
                 oldCol.a = .25f;
                 selectionRenderer.material.color = oldCol;
-                //Unhide Mouse cursor
-                UnityEngine.Cursor.visible = true;
             }
         }
     }
@@ -157,10 +155,6 @@ private void OnMouseOverSnapZone(Transform selection)
             var oldCol = selectionRenderer.material.color;
             oldCol.a = .75f;
             selectionRenderer.material.color = oldCol;
-
-            //Hide Mouse cursor
-           UnityEngine.Cursor.visible = false;
-
         }
     }
 
diff --git a/Assets/Scripts/InteractionEngine/WorldCursor.cs b/Assets/Scripts/InteractionEngine/WorldCursor.cs
index 57d3803d..b1edd222 100644
--- a/Assets/Scripts/InteractionEngine/WorldCursor.cs
+++ b/Assets/Scripts/InteractionEngine/WorldCursor.cs
@@ -14,6 +14,8 @@ public class WorldCursor : MonoBehaviour
     private Camera Cam;
     private int layerMask;
     public LayerMask snapLayerMask;
+    public float MaxRange = 10f;
+    public bool useCamCurser = false;
 
     private void Awake()
     {
@@ -35,42 +37,13 @@ public void setLayerMask(int layerMask) {
         this.layerMask = layerMask;
     }
 
-  
-    /// <summary>
-    /// Gets the coordinates of the intersection point of two lines.
-    /// </summary>
-    /// <param name="A1">A point on the first line.</param>
-    /// <param name="A2">Another point on the first line.</param>
-    /// <param name="B1">A point on the second line.</param>
-    /// <param name="B2">Another point on the second line.</param>
-    /// <param name="found">Is set to false of there are no solution. true otherwise.</param>
-    /// <returns>The intersection point coordinates. Returns Vector2.zero if there is no solution.</returns>
-    public Vector2 GetIntersectionPointCoordinates(Vector2 A1, Vector2 A2, Vector2 B1, Vector2 B2, out bool found)
-        {
-            float tmp = (B2.x - B1.x) * (A2.y - A1.y) - (B2.y - B1.y) * (A2.x - A1.x);
-
-            if (tmp == 0)
-            {
-                // No solution!
-                found = false;
-                return Vector2.zero;
-            }
-
-            float mu = ((A1.x - B1.x) * (A2.y - A1.y) - (A1.y - B1.y) * (A2.x - A1.x)) / tmp;
-
-            found = true;
-
-            return new Vector2(
-                B1.x + (B2.x - B1.x) * mu,
-                B1.y + (B2.y - B1.y) * mu
-            );
-        }
-
-
     void Update()
     {
-        Ray ray = Cam.ScreenPointToRay(Input.mousePosition);
-        RaycastHit tempHit;
+        Ray ray = useCamCurser ? new Ray(Cam.transform.position, Cam.transform.forward) : Cam.ScreenPointToRay(Input.mousePosition);
+
+        this.Hit = new RaycastHit();
+        transform.up = Cam.transform.forward;
+        transform.position = ray.GetPoint(GlobalBehaviour.GadgetPhysicalDistance);
 
         int rayCastMask;
         if (Input.GetButton(this.deactivateSnapKey))
@@ -78,10 +51,10 @@ void Update()
         else
             rayCastMask = this.layerMask;
 
-        if (Physics.Raycast(ray, out tempHit, 30f, rayCastMask)){
-
-            this.Hit = tempHit;
-            // Debug.Log(Hit.transform.tag);
+        if (Physics.Raycast(ray, out Hit, MaxRange, rayCastMask)
+            || (MaxRange <= GlobalBehaviour.GadgetPhysicalDistance 
+            && Physics.Raycast(transform.position, Vector3.down, out Hit, GlobalBehaviour.GadgetPhysicalDistance, rayCastMask)))
+        {
             if ((Hit.collider.transform.CompareTag("SnapZone") || Hit.collider.transform.CompareTag("Selectable")) 
                 && !Input.GetButton(this.deactivateSnapKey))
             {
@@ -93,13 +66,11 @@ void Update()
                     PointFact p1 =  StageStatic.stage.factState[lineFact.Pid1] as PointFact;
 
                     Hit.point = Math3d.ProjectPointOnLine(p1.Point, lineFact.Dir, Hit.point);
-                    CheckMouseButtons(true,true);
                 }
                 else
                 {
                     Hit.point = Hit.collider.transform.position;
                     Hit.normal = Vector3.up;
-                    CheckMouseButtons(true);
                 }
 
                 transform.position = Hit.point;
@@ -111,37 +82,23 @@ void Update()
                 transform.position = Hit.point;
                 transform.up = Hit.normal;
                 transform.position += .01f * Hit.normal;
-                CheckMouseButtons();
             }
 
-        }
-        else
-        {
-            this.Hit = new RaycastHit();
-            var dist = 10f;
-            if (tempHit.transform!=null)
-                dist = (Camera.main.transform.position - tempHit.transform.position).magnitude;
-            transform.position = Cam.ScreenToWorldPoint(Input.mousePosition + new Vector3(0,0,1) *dist);
-            transform.up = -Cam.transform.forward;
+            CheckMouseButtons();
+
         }
     }
 
     //Check if left Mouse-Button was pressed and handle it
-    void CheckMouseButtons(bool OnSnap=false, bool onLine = false)
+    void CheckMouseButtons()
     {
         if (Input.GetMouseButtonDown(0))
         {
-            if (EventSystem.current.IsPointerOverGameObject()) return; //this prevents rays from shooting through ui
+            if (EventSystem.current.IsPointerOverGameObject() //this prevents rays from shooting through ui
+                || Hit.transform.gameObject.layer == LayerMask.NameToLayer("Water")) // not allowed to meassure on water
+                return;
 
-            if (!OnSnap)
-            {
-                CommunicationEvents.TriggerEvent.Invoke(Hit);
-            }
-            else{
-                //if(!onLine) Hit.collider.enabled = false;
-                CommunicationEvents.TriggerEvent.Invoke(Hit);
-            //    CommunicationEvents.SnapEvent.Invoke(Hit);
-            }
+            CommunicationEvents.TriggerEvent.Invoke(Hit);
         }
     }
 
diff --git a/Assets/Scripts/UI/HideUI.cs b/Assets/Scripts/UI/HideUI.cs
index dc2a46e0..ad66ba06 100644
--- a/Assets/Scripts/UI/HideUI.cs
+++ b/Assets/Scripts/UI/HideUI.cs
@@ -46,6 +46,7 @@ void Update()
             }
             else
             {
+                Cursor.visible = !UICanvas.enabled;
                 CamControl.enabled = UICanvas.enabled;
                 CursorRenderer.enabled = UICanvas.enabled;
 
-- 
GitLab