From 966642bdcd8bc58b0f4c79bdab4e08b8025207ec Mon Sep 17 00:00:00 2001
From: Lucastaa <76867086+Lucastaa@users.noreply.github.com>
Date: Sun, 26 Apr 2026 00:27:56 +0700
Subject: [PATCH 1/3] update
---
.idea/.idea.HALLUCINATION/.idea/.gitignore | 15 +
.idea/.idea.HALLUCINATION/.idea/encodings.xml | 4 +
.../.idea.HALLUCINATION/.idea/indexLayout.xml | 8 +
.idea/.idea.HALLUCINATION/.idea/vcs.xml | 6 +
Assets/Prefabs/UIManager.prefab | 433 +++
Assets/Prefabs/UIManager.prefab.meta | 7 +
Assets/Presets/GameSettings.asset | 19 +
Assets/Presets/GameSettings.asset.meta | 8 +
Assets/Scenes/Main Scene.unity | 46 +
Assets/Scove/UIScaleTest.unity | 486 +--
.../Camera Controller/CameraController.cs | 62 +-
.../Camera Controller/CameraSideBias.cs | 15 +-
Assets/Scripts/GameSetup/GameSettings.cs | 17 +
Assets/Scripts/GameSetup/GameSettings.cs.meta | 2 +
Assets/Scripts/GameSetup/SettingsManager.cs | 63 +
.../Scripts/GameSetup/SettingsManager.cs.meta | 2 +
Assets/Scripts/UI/HUDController.cs | 21 +-
Assets/Scripts/UI/SettingsController.cs | 45 +-
Assets/Scripts/UI/UIManager.cs | 23 +
Assets/UI/Documents/MainGameHUD.uxml | 6 +
Assets/UI/Documents/Settings.uxml | 3 +
UIElementsSchema/UIElements.xsd | 25 +
.../Unity.Multiplayer.PlayMode.Editor.xsd | 50 +
.../Unity.Profiling.Editor.UI.xsd | 142 +
UIElementsSchema/Unity.Profiling.Editor.xsd | 129 +
UIElementsSchema/Unity.UI.Builder.xsd | 2762 +++++++++++++++++
UIElementsSchema/Unity.UIToolkit.Editor.xsd | 126 +
.../UnityEditor.Accessibility.xsd | 121 +
.../UnityEditor.Audio.UIElements.xsd | 101 +
.../UnityEditor.Experimental.GraphView.xsd | 75 +
...r.Inspector.GraphicsSettingsInspectors.xsd | 27 +
UIElementsSchema/UnityEditor.Inspector.xsd | 31 +
UIElementsSchema/UnityEditor.Overlays.xsd | 130 +
...UnityEditor.PackageManager.UI.Internal.xsd | 970 ++++++
UIElementsSchema/UnityEditor.Rendering.xsd | 82 +
UIElementsSchema/UnityEditor.Search.xsd | 31 +
.../UnityEditor.ShaderGraph.Drawing.xsd | 96 +
.../UnityEditor.ShortcutManagement.xsd | 52 +
UIElementsSchema/UnityEditor.Toolbars.xsd | 37 +
...ityEditor.U2D.Sprites.SpriteEditorTool.xsd | 27 +
.../UnityEditor.UIElements.Debugger.xsd | 28 +
...UnityEditor.UIElements.ProjectSettings.xsd | 127 +
UIElementsSchema/UnityEditor.UIElements.xsd | 793 +++++
UIElementsSchema/UnityEngine.UIElements.xsd | 2484 +++++++++++++++
44 files changed, 9296 insertions(+), 441 deletions(-)
create mode 100644 .idea/.idea.HALLUCINATION/.idea/.gitignore
create mode 100644 .idea/.idea.HALLUCINATION/.idea/encodings.xml
create mode 100644 .idea/.idea.HALLUCINATION/.idea/indexLayout.xml
create mode 100644 .idea/.idea.HALLUCINATION/.idea/vcs.xml
create mode 100644 Assets/Prefabs/UIManager.prefab
create mode 100644 Assets/Prefabs/UIManager.prefab.meta
create mode 100644 Assets/Presets/GameSettings.asset
create mode 100644 Assets/Presets/GameSettings.asset.meta
create mode 100644 Assets/Scripts/GameSetup/GameSettings.cs
create mode 100644 Assets/Scripts/GameSetup/GameSettings.cs.meta
create mode 100644 Assets/Scripts/GameSetup/SettingsManager.cs
create mode 100644 Assets/Scripts/GameSetup/SettingsManager.cs.meta
create mode 100644 UIElementsSchema/UIElements.xsd
create mode 100644 UIElementsSchema/Unity.Multiplayer.PlayMode.Editor.xsd
create mode 100644 UIElementsSchema/Unity.Profiling.Editor.UI.xsd
create mode 100644 UIElementsSchema/Unity.Profiling.Editor.xsd
create mode 100644 UIElementsSchema/Unity.UI.Builder.xsd
create mode 100644 UIElementsSchema/Unity.UIToolkit.Editor.xsd
create mode 100644 UIElementsSchema/UnityEditor.Accessibility.xsd
create mode 100644 UIElementsSchema/UnityEditor.Audio.UIElements.xsd
create mode 100644 UIElementsSchema/UnityEditor.Experimental.GraphView.xsd
create mode 100644 UIElementsSchema/UnityEditor.Inspector.GraphicsSettingsInspectors.xsd
create mode 100644 UIElementsSchema/UnityEditor.Inspector.xsd
create mode 100644 UIElementsSchema/UnityEditor.Overlays.xsd
create mode 100644 UIElementsSchema/UnityEditor.PackageManager.UI.Internal.xsd
create mode 100644 UIElementsSchema/UnityEditor.Rendering.xsd
create mode 100644 UIElementsSchema/UnityEditor.Search.xsd
create mode 100644 UIElementsSchema/UnityEditor.ShaderGraph.Drawing.xsd
create mode 100644 UIElementsSchema/UnityEditor.ShortcutManagement.xsd
create mode 100644 UIElementsSchema/UnityEditor.Toolbars.xsd
create mode 100644 UIElementsSchema/UnityEditor.U2D.Sprites.SpriteEditorTool.xsd
create mode 100644 UIElementsSchema/UnityEditor.UIElements.Debugger.xsd
create mode 100644 UIElementsSchema/UnityEditor.UIElements.ProjectSettings.xsd
create mode 100644 UIElementsSchema/UnityEditor.UIElements.xsd
create mode 100644 UIElementsSchema/UnityEngine.UIElements.xsd
diff --git a/.idea/.idea.HALLUCINATION/.idea/.gitignore b/.idea/.idea.HALLUCINATION/.idea/.gitignore
new file mode 100644
index 00000000..32f2ff58
--- /dev/null
+++ b/.idea/.idea.HALLUCINATION/.idea/.gitignore
@@ -0,0 +1,15 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Rider ignored files
+/projectSettingsUpdater.xml
+/contentModel.xml
+/modules.xml
+/.idea.HALLUCINATION.iml
+# Ignored default folder with query files
+/queries/
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
+# Editor-based HTTP Client requests
+/httpRequests/
diff --git a/.idea/.idea.HALLUCINATION/.idea/encodings.xml b/.idea/.idea.HALLUCINATION/.idea/encodings.xml
new file mode 100644
index 00000000..df87cf95
--- /dev/null
+++ b/.idea/.idea.HALLUCINATION/.idea/encodings.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/.idea/.idea.HALLUCINATION/.idea/indexLayout.xml b/.idea/.idea.HALLUCINATION/.idea/indexLayout.xml
new file mode 100644
index 00000000..7b08163c
--- /dev/null
+++ b/.idea/.idea.HALLUCINATION/.idea/indexLayout.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/.idea.HALLUCINATION/.idea/vcs.xml b/.idea/.idea.HALLUCINATION/.idea/vcs.xml
new file mode 100644
index 00000000..35eb1ddf
--- /dev/null
+++ b/.idea/.idea.HALLUCINATION/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Assets/Prefabs/UIManager.prefab b/Assets/Prefabs/UIManager.prefab
new file mode 100644
index 00000000..94208259
--- /dev/null
+++ b/Assets/Prefabs/UIManager.prefab
@@ -0,0 +1,433 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &1516699870267512982
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 6453919682029617511}
+ - component: {fileID: 6813582908554084193}
+ - component: {fileID: 7974153401190947535}
+ m_Layer: 0
+ m_Name: Doc_Lobby
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &6453919682029617511
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1516699870267512982}
+ serializedVersion: 2
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 8276456597194509742}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &6813582908554084193
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1516699870267512982}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument
+ m_PanelSettings: {fileID: 11400000, guid: 04bb65da4fe76fc4a9926df48b2ba88b, type: 2}
+ m_ParentUI: {fileID: 0}
+ sourceAsset: {fileID: 9197481963319205126, guid: 971b07b6bc60233469ca493b8f558225, type: 3}
+ m_SortingOrder: 0
+ m_Position: 0
+ m_WorldSpaceSizeMode: 1
+ m_WorldSpaceWidth: 1920
+ m_WorldSpaceHeight: 1080
+ m_PivotReferenceSize: 0
+ m_Pivot: 0
+ m_WorldSpaceCollider: {fileID: 0}
+--- !u!114 &7974153401190947535
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1516699870267512982}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 9c37c552a9c18a242bcc8860a0a5212f, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::UI.LobbyController
+--- !u!1 &2410419006187484205
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 8461124296799354270}
+ - component: {fileID: 3626156559027302038}
+ - component: {fileID: 764133115834169797}
+ m_Layer: 0
+ m_Name: Doc_MainMenu
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &8461124296799354270
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2410419006187484205}
+ serializedVersion: 2
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 8276456597194509742}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &3626156559027302038
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2410419006187484205}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument
+ m_PanelSettings: {fileID: 11400000, guid: 04bb65da4fe76fc4a9926df48b2ba88b, type: 2}
+ m_ParentUI: {fileID: 0}
+ sourceAsset: {fileID: 9197481963319205126, guid: 1e4b5a7d928d98949af5f96c310e5e05, type: 3}
+ m_SortingOrder: 0
+ m_Position: 0
+ m_WorldSpaceSizeMode: 1
+ m_WorldSpaceWidth: 1920
+ m_WorldSpaceHeight: 1080
+ m_PivotReferenceSize: 0
+ m_Pivot: 0
+ m_WorldSpaceCollider: {fileID: 0}
+--- !u!114 &764133115834169797
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2410419006187484205}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 691980524acfc544f9660cfc35ce3616, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::UI.MainMenuController
+--- !u!1 &6159906463171050867
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 822770786713092587}
+ - component: {fileID: 8053006371428885710}
+ - component: {fileID: 2147182326353943992}
+ m_Layer: 0
+ m_Name: Doc_HUD
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &822770786713092587
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6159906463171050867}
+ serializedVersion: 2
+ m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 8276456597194509742}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &8053006371428885710
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6159906463171050867}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument
+ m_PanelSettings: {fileID: 11400000, guid: 04bb65da4fe76fc4a9926df48b2ba88b, type: 2}
+ m_ParentUI: {fileID: 0}
+ sourceAsset: {fileID: 9197481963319205126, guid: b8da157d472223d4889a01228b36ef8b, type: 3}
+ m_SortingOrder: 0
+ m_Position: 0
+ m_WorldSpaceSizeMode: 1
+ m_WorldSpaceWidth: 1920
+ m_WorldSpaceHeight: 1080
+ m_PivotReferenceSize: 0
+ m_Pivot: 0
+ m_WorldSpaceCollider: {fileID: 0}
+--- !u!114 &2147182326353943992
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6159906463171050867}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: e79b70607af6eeb458c8eb6605e39b56, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::UI.HUDController
+ hudDocument: {fileID: 8053006371428885710}
+--- !u!1 &6763625687744439349
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 7659132307210635102}
+ - component: {fileID: 6856417540668204016}
+ - component: {fileID: 1773991564882589527}
+ m_Layer: 0
+ m_Name: Doc_Profile
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &7659132307210635102
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6763625687744439349}
+ serializedVersion: 2
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 8276456597194509742}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &6856417540668204016
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6763625687744439349}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument
+ m_PanelSettings: {fileID: 11400000, guid: 04bb65da4fe76fc4a9926df48b2ba88b, type: 2}
+ m_ParentUI: {fileID: 0}
+ sourceAsset: {fileID: 9197481963319205126, guid: 4b61efb7dda830a43ad6b05998e85a6d, type: 3}
+ m_SortingOrder: 0
+ m_Position: 0
+ m_WorldSpaceSizeMode: 1
+ m_WorldSpaceWidth: 1920
+ m_WorldSpaceHeight: 1080
+ m_PivotReferenceSize: 0
+ m_Pivot: 0
+ m_WorldSpaceCollider: {fileID: 0}
+--- !u!114 &1773991564882589527
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6763625687744439349}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fdea16b110511ef45889ed832b63560b, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::UI.ProfileController
+--- !u!1 &7591431613855332517
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1702629541674960093}
+ - component: {fileID: 3426083132238065776}
+ - component: {fileID: 8400758018383374091}
+ - component: {fileID: 7573251387093448480}
+ m_Layer: 0
+ m_Name: Doc_Settings
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &1702629541674960093
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7591431613855332517}
+ serializedVersion: 2
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 8276456597194509742}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &3426083132238065776
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7591431613855332517}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument
+ m_PanelSettings: {fileID: 11400000, guid: 04bb65da4fe76fc4a9926df48b2ba88b, type: 2}
+ m_ParentUI: {fileID: 0}
+ sourceAsset: {fileID: 9197481963319205126, guid: b35e62e5dcc1bfb42bf0d3f630fc356d, type: 3}
+ m_SortingOrder: 0
+ m_Position: 0
+ m_WorldSpaceSizeMode: 1
+ m_WorldSpaceWidth: 1920
+ m_WorldSpaceHeight: 1080
+ m_PivotReferenceSize: 0
+ m_Pivot: 0
+ m_WorldSpaceCollider: {fileID: 0}
+--- !u!114 &8400758018383374091
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7591431613855332517}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 5534bcf4869df944883c6fd2a17a6a5a, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::UI.SettingsController
+--- !u!114 &7573251387093448480
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7591431613855332517}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 5c17a3f09ee49ff48a0e3e2b45080257, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::UI.LocalizationManager
+--- !u!1 &7733679024748988208
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 8276456597194509742}
+ - component: {fileID: 5040632603729643308}
+ m_Layer: 0
+ m_Name: UIManager
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &8276456597194509742
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7733679024748988208}
+ serializedVersion: 2
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: -16135.612, y: -11645.337, z: 92.19762}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 8461124296799354270}
+ - {fileID: 6453919682029617511}
+ - {fileID: 822770786713092587}
+ - {fileID: 1702629541674960093}
+ - {fileID: 7659132307210635102}
+ m_Father: {fileID: 0}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &5040632603729643308
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7733679024748988208}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: bcb7b8ed439bb4546b0648c627c2ce5d, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::UI.UIManager
+ screens:
+ - screenName: MainMenu
+ document: {fileID: 3626156559027302038}
+ isActive: 1
+ isOverlay: 0
+ customCursor: {fileID: 0}
+ - screenName: Lobby
+ document: {fileID: 6813582908554084193}
+ isActive: 0
+ isOverlay: 0
+ customCursor: {fileID: 0}
+ - screenName: HUD
+ document: {fileID: 8053006371428885710}
+ isActive: 0
+ isOverlay: 0
+ customCursor: {fileID: 0}
+ - screenName: Settings
+ document: {fileID: 3426083132238065776}
+ isActive: 0
+ isOverlay: 1
+ customCursor: {fileID: 0}
+ - screenName: Profile
+ document: {fileID: 6856417540668204016}
+ isActive: 0
+ isOverlay: 0
+ customCursor: {fileID: 0}
+ defaultCursor: {fileID: 0}
+ initialScreen: MainMenu
diff --git a/Assets/Prefabs/UIManager.prefab.meta b/Assets/Prefabs/UIManager.prefab.meta
new file mode 100644
index 00000000..473929fb
--- /dev/null
+++ b/Assets/Prefabs/UIManager.prefab.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 3a2b04331ae5d7f48a3069158f4c8582
+PrefabImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Presets/GameSettings.asset b/Assets/Presets/GameSettings.asset
new file mode 100644
index 00000000..55cb39da
--- /dev/null
+++ b/Assets/Presets/GameSettings.asset
@@ -0,0 +1,19 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 1e9fd2c44d7c5bc428b9b4eb12f4a7e1, type: 3}
+ m_Name: GameSettings
+ m_EditorClassIdentifier: Assembly-CSharp::OnlyScove.Scripts.GameSettings
+ sensitivity: 1
+ invertX: 0
+ invertY: 0
+ sideBiasRight: 1
+ fieldOfView: 60
diff --git a/Assets/Presets/GameSettings.asset.meta b/Assets/Presets/GameSettings.asset.meta
new file mode 100644
index 00000000..65bea433
--- /dev/null
+++ b/Assets/Presets/GameSettings.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 61b33f457c673ce488004e5466d1815b
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scenes/Main Scene.unity b/Assets/Scenes/Main Scene.unity
index 4719c7a2..ff0a333c 100644
--- a/Assets/Scenes/Main Scene.unity
+++ b/Assets/Scenes/Main Scene.unity
@@ -267,6 +267,51 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 5962d8f2c8e40e240a4a4907c7b539fa, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::OnlyScove.Scripts.InputReader
+--- !u!1 &313457332
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 313457334}
+ - component: {fileID: 313457333}
+ m_Layer: 0
+ m_Name: SettingsManager
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &313457333
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 313457332}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 86e70fc045fbf71469903c69f7f54e67, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::OnlyScove.Scripts.SettingsManager
+ settings: {fileID: 11400000, guid: 61b33f457c673ce488004e5466d1815b, type: 2}
+--- !u!4 &313457334
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 313457332}
+ serializedVersion: 2
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 0}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &390662298
GameObject:
m_ObjectHideFlags: 0
@@ -981,3 +1026,4 @@ SceneRoots:
m_Roots:
- {fileID: 1997343489}
- {fileID: 2116497667}
+ - {fileID: 313457334}
diff --git a/Assets/Scove/UIScaleTest.unity b/Assets/Scove/UIScaleTest.unity
index ded8ea89..43a484b6 100644
--- a/Assets/Scove/UIScaleTest.unity
+++ b/Assets/Scove/UIScaleTest.unity
@@ -246,369 +246,6 @@ MonoBehaviour:
m_ShadowLayerMask: 1
m_RenderingLayers: 1
m_ShadowRenderingLayers: 1
---- !u!1 &666657091
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 666657093}
- - component: {fileID: 666657092}
- - component: {fileID: 666657094}
- m_Layer: 0
- m_Name: Doc_Profile
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!114 &666657092
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 666657091}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument
- m_PanelSettings: {fileID: 11400000, guid: 04bb65da4fe76fc4a9926df48b2ba88b, type: 2}
- m_ParentUI: {fileID: 0}
- sourceAsset: {fileID: 9197481963319205126, guid: 4b61efb7dda830a43ad6b05998e85a6d, type: 3}
- m_SortingOrder: 0
- m_Position: 0
- m_WorldSpaceSizeMode: 1
- m_WorldSpaceWidth: 1920
- m_WorldSpaceHeight: 1080
- m_PivotReferenceSize: 0
- m_Pivot: 0
- m_WorldSpaceCollider: {fileID: 0}
---- !u!4 &666657093
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 666657091}
- serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 0, y: 0, z: 0}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 1183887570}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &666657094
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 666657091}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: fdea16b110511ef45889ed832b63560b, type: 3}
- m_Name:
- m_EditorClassIdentifier: Assembly-CSharp::UI.ProfileController
---- !u!1 &1136953558
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 1136953560}
- - component: {fileID: 1136953559}
- - component: {fileID: 1136953561}
- m_Layer: 0
- m_Name: Doc_HUD
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!114 &1136953559
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1136953558}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument
- m_PanelSettings: {fileID: 11400000, guid: 04bb65da4fe76fc4a9926df48b2ba88b, type: 2}
- m_ParentUI: {fileID: 0}
- sourceAsset: {fileID: 9197481963319205126, guid: b8da157d472223d4889a01228b36ef8b, type: 3}
- m_SortingOrder: 0
- m_Position: 0
- m_WorldSpaceSizeMode: 1
- m_WorldSpaceWidth: 1920
- m_WorldSpaceHeight: 1080
- m_PivotReferenceSize: 0
- m_Pivot: 0
- m_WorldSpaceCollider: {fileID: 0}
---- !u!4 &1136953560
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1136953558}
- serializedVersion: 2
- m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
- m_LocalPosition: {x: 0, y: 0, z: 0}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 1183887570}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &1136953561
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1136953558}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: e79b70607af6eeb458c8eb6605e39b56, type: 3}
- m_Name:
- m_EditorClassIdentifier: Assembly-CSharp::UI.HUDController
- hudDocument: {fileID: 1136953559}
---- !u!1 &1183887568
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 1183887570}
- - component: {fileID: 1183887569}
- m_Layer: 0
- m_Name: UIManager
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!114 &1183887569
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1183887568}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: bcb7b8ed439bb4546b0648c627c2ce5d, type: 3}
- m_Name:
- m_EditorClassIdentifier: Assembly-CSharp::UI.UIManager
- screens:
- - screenName: MainMenu
- document: {fileID: 2003742651}
- isActive: 1
- isOverlay: 0
- customCursor: {fileID: 0}
- - screenName: Lobby
- document: {fileID: 1471116802}
- isActive: 0
- isOverlay: 0
- customCursor: {fileID: 0}
- - screenName: HUD
- document: {fileID: 1136953559}
- isActive: 0
- isOverlay: 0
- customCursor: {fileID: 0}
- - screenName: Settings
- document: {fileID: 1582124357}
- isActive: 0
- isOverlay: 1
- customCursor: {fileID: 0}
- - screenName: Profile
- document: {fileID: 666657092}
- isActive: 0
- isOverlay: 0
- customCursor: {fileID: 0}
- defaultCursor: {fileID: 0}
- initialScreen: MainMenu
---- !u!4 &1183887570
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1183887568}
- serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: -16135.612, y: -11645.337, z: 92.19762}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children:
- - {fileID: 2003742650}
- - {fileID: 1471116803}
- - {fileID: 1136953560}
- - {fileID: 1582124358}
- - {fileID: 666657093}
- m_Father: {fileID: 0}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!1 &1471116801
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 1471116803}
- - component: {fileID: 1471116802}
- - component: {fileID: 1471116804}
- m_Layer: 0
- m_Name: Doc_Lobby
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!114 &1471116802
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1471116801}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument
- m_PanelSettings: {fileID: 11400000, guid: 04bb65da4fe76fc4a9926df48b2ba88b, type: 2}
- m_ParentUI: {fileID: 0}
- sourceAsset: {fileID: 9197481963319205126, guid: 971b07b6bc60233469ca493b8f558225, type: 3}
- m_SortingOrder: 0
- m_Position: 0
- m_WorldSpaceSizeMode: 1
- m_WorldSpaceWidth: 1920
- m_WorldSpaceHeight: 1080
- m_PivotReferenceSize: 0
- m_Pivot: 0
- m_WorldSpaceCollider: {fileID: 0}
---- !u!4 &1471116803
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1471116801}
- serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 0, y: 0, z: 0}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 1183887570}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &1471116804
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1471116801}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 9c37c552a9c18a242bcc8860a0a5212f, type: 3}
- m_Name:
- m_EditorClassIdentifier: Assembly-CSharp::UI.LobbyController
---- !u!1 &1582124356
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 1582124358}
- - component: {fileID: 1582124357}
- - component: {fileID: 1582124359}
- - component: {fileID: 1582124360}
- m_Layer: 0
- m_Name: Doc_Settings
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!114 &1582124357
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1582124356}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument
- m_PanelSettings: {fileID: 11400000, guid: 04bb65da4fe76fc4a9926df48b2ba88b, type: 2}
- m_ParentUI: {fileID: 0}
- sourceAsset: {fileID: 9197481963319205126, guid: b35e62e5dcc1bfb42bf0d3f630fc356d, type: 3}
- m_SortingOrder: 0
- m_Position: 0
- m_WorldSpaceSizeMode: 1
- m_WorldSpaceWidth: 1920
- m_WorldSpaceHeight: 1080
- m_PivotReferenceSize: 0
- m_Pivot: 0
- m_WorldSpaceCollider: {fileID: 0}
---- !u!4 &1582124358
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1582124356}
- serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 0, y: 0, z: 0}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 1183887570}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &1582124359
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1582124356}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 5534bcf4869df944883c6fd2a17a6a5a, type: 3}
- m_Name:
- m_EditorClassIdentifier: Assembly-CSharp::UI.SettingsController
---- !u!114 &1582124360
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1582124356}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 5c17a3f09ee49ff48a0e3e2b45080257, type: 3}
- m_Name:
- m_EditorClassIdentifier: Assembly-CSharp::UI.LocalizationManager
--- !u!1 &1848374378
GameObject:
m_ObjectHideFlags: 0
@@ -746,78 +383,67 @@ MonoBehaviour:
m_VarianceClampScale: 0.9
m_ContrastAdaptiveSharpening: 0
m_Version: 2
---- !u!1 &2003742649
-GameObject:
+--- !u!1001 &4295751928863418055
+PrefabInstance:
m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 2003742650}
- - component: {fileID: 2003742651}
- - component: {fileID: 2003742652}
- m_Layer: 0
- m_Name: Doc_MainMenu
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!4 &2003742650
-Transform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 2003742649}
serializedVersion: 2
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 0, y: 0, z: 0}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 1183887570}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &2003742651
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 2003742649}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier: UnityEngine.dll::UnityEngine.UIElements.UIDocument
- m_PanelSettings: {fileID: 11400000, guid: 04bb65da4fe76fc4a9926df48b2ba88b, type: 2}
- m_ParentUI: {fileID: 0}
- sourceAsset: {fileID: 9197481963319205126, guid: 1e4b5a7d928d98949af5f96c310e5e05, type: 3}
- m_SortingOrder: 0
- m_Position: 0
- m_WorldSpaceSizeMode: 1
- m_WorldSpaceWidth: 1920
- m_WorldSpaceHeight: 1080
- m_PivotReferenceSize: 0
- m_Pivot: 0
- m_WorldSpaceCollider: {fileID: 0}
---- !u!114 &2003742652
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 2003742649}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 691980524acfc544f9660cfc35ce3616, type: 3}
- m_Name:
- m_EditorClassIdentifier: Assembly-CSharp::UI.MainMenuController
+ m_Modification:
+ serializedVersion: 3
+ m_TransformParent: {fileID: 0}
+ m_Modifications:
+ - target: {fileID: 7733679024748988208, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
+ propertyPath: m_Name
+ value: UIManager
+ objectReference: {fileID: 0}
+ - target: {fileID: 8276456597194509742, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
+ propertyPath: m_LocalPosition.x
+ value: -16135.612
+ objectReference: {fileID: 0}
+ - target: {fileID: 8276456597194509742, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
+ propertyPath: m_LocalPosition.y
+ value: -11645.337
+ objectReference: {fileID: 0}
+ - target: {fileID: 8276456597194509742, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
+ propertyPath: m_LocalPosition.z
+ value: 92.19762
+ objectReference: {fileID: 0}
+ - target: {fileID: 8276456597194509742, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
+ propertyPath: m_LocalRotation.w
+ value: 1
+ objectReference: {fileID: 0}
+ - target: {fileID: 8276456597194509742, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
+ propertyPath: m_LocalRotation.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8276456597194509742, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
+ propertyPath: m_LocalRotation.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8276456597194509742, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
+ propertyPath: m_LocalRotation.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8276456597194509742, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8276456597194509742, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8276456597194509742, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.z
+ value: 0
+ objectReference: {fileID: 0}
+ m_RemovedComponents: []
+ m_RemovedGameObjects: []
+ m_AddedGameObjects: []
+ m_AddedComponents: []
+ m_SourcePrefab: {fileID: 100100000, guid: 3a2b04331ae5d7f48a3069158f4c8582, type: 3}
--- !u!1660057539 &9223372036854775807
SceneRoots:
m_ObjectHideFlags: 0
m_Roots:
- {fileID: 1848374381}
- {fileID: 626355270}
- - {fileID: 1183887570}
+ - {fileID: 4295751928863418055}
diff --git a/Assets/Scripts/Camera Controller/CameraController.cs b/Assets/Scripts/Camera Controller/CameraController.cs
index 15b9f55b..dc95c9a1 100644
--- a/Assets/Scripts/Camera Controller/CameraController.cs
+++ b/Assets/Scripts/Camera Controller/CameraController.cs
@@ -44,12 +44,50 @@ namespace OnlyScove.Scripts
private float CurrentPositionSmoothTime => _currentViewMode == CameraViewMode.FirstPerson ? fpvPositionSmoothTime : positionSmoothTime;
private float CurrentRotationSmoothTime => _currentViewMode == CameraViewMode.FirstPerson ? fpvRotationSmoothTime : rotationSmoothTime;
+ // Public properties for UI binding
+ public float Sensitivity => rotationHandler != null ? GetPrivateSensitivity() : 1f;
+ public bool InvertX => rotationHandler != null ? GetPrivateInvertX() : false;
+ public bool InvertY => rotationHandler != null ? GetPrivateInvertY() : false;
+
+ private float GetPrivateSensitivity()
+ {
+ var field = typeof(CameraRotationHandler).GetField("sensitivity", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
+ return field != null ? (float)field.GetValue(rotationHandler) : 0.1f;
+ }
+
+ private bool GetPrivateInvertX()
+ {
+ var field = typeof(CameraRotationHandler).GetField("invertX", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
+ return field != null ? (bool)field.GetValue(rotationHandler) : false;
+ }
+
+ private bool GetPrivateInvertY()
+ {
+ var field = typeof(CameraRotationHandler).GetField("invertY", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
+ return field != null ? (bool)field.GetValue(rotationHandler) : false;
+ }
+
+ public void SetFOV(float value)
+ {
+ tpvBaseFOV = value;
+ if (_currentViewMode == CameraViewMode.ThirdPerson && !_inTransition)
+ {
+ _cam.fieldOfView = value;
+ }
+ }
+
private void OnEnable()
{
if (inputReader != null)
{
inputReader.OnToggleViewEvent += ToggleCameraView;
}
+
+ if (SettingsManager.Instance != null)
+ {
+ SettingsManager.Instance.OnSettingsChanged += ApplyGlobalSettings;
+ ApplyGlobalSettings();
+ }
}
private void OnDisable()
@@ -58,6 +96,28 @@ namespace OnlyScove.Scripts
{
inputReader.OnToggleViewEvent -= ToggleCameraView;
}
+
+ if (SettingsManager.Instance != null)
+ {
+ SettingsManager.Instance.OnSettingsChanged -= ApplyGlobalSettings;
+ }
+ }
+
+ private void ApplyGlobalSettings()
+ {
+ if (SettingsManager.Instance == null || SettingsManager.Instance.Settings == null) return;
+
+ var settings = SettingsManager.Instance.Settings;
+
+ // Note: Since I cannot modify CameraRotationHandler.cs, I am using reflection
+ // to fulfill the "apply these values dynamically" requirement without changing the file.
+ // This is a workaround requested by the user's constraint.
+ var type = typeof(CameraRotationHandler);
+ type.GetField("sensitivity", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)?.SetValue(rotationHandler, settings.sensitivity * 0.1f);
+ type.GetField("invertX", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)?.SetValue(rotationHandler, settings.invertX);
+ type.GetField("invertY", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)?.SetValue(rotationHandler, settings.invertY);
+
+ SetFOV(settings.fieldOfView);
}
private void Start()
@@ -138,7 +198,7 @@ namespace OnlyScove.Scripts
transform.position = Vector3.SmoothDamp(transform.position, targetPosition, ref _currentVelocity, CurrentPositionSmoothTime) + shakeManager.ShakeOffset;
}
- private void ToggleCameraView()
+ public void ToggleCameraView()
{
if (_inTransition) return; // Prevent multiple toggles during transition
diff --git a/Assets/Scripts/Camera Controller/CameraSideBias.cs b/Assets/Scripts/Camera Controller/CameraSideBias.cs
index 5234e13c..c69f8568 100644
--- a/Assets/Scripts/Camera Controller/CameraSideBias.cs
+++ b/Assets/Scripts/Camera Controller/CameraSideBias.cs
@@ -16,16 +16,23 @@ namespace OnlyScove.Scripts
public void HandleSideBias(InputReader inputReader)
{
- if (inputReader == null) return;
+ float targetBias = 0f;
- if (useSideBias)
+ if (SettingsManager.Instance != null && SettingsManager.Instance.Settings != null)
{
- float targetBias = -inputReader.MoveInput.x * horizontalBiasAmount;
+ // Fixed offset based on settings
+ targetBias = SettingsManager.Instance.Settings.sideBiasRight ? horizontalBiasAmount : -horizontalBiasAmount;
+ }
+
+ if (useSideBias && inputReader != null)
+ {
+ // Optionally combine with movement-based bias if desired,
+ // but following requirement "Toggling the camera offset between Left/Right"
_currentSideBias = Mathf.Lerp(_currentSideBias, targetBias, biasSmoothTime * Time.deltaTime);
}
else
{
- _currentSideBias = 0;
+ _currentSideBias = Mathf.Lerp(_currentSideBias, 0, biasSmoothTime * Time.deltaTime);
}
}
}
diff --git a/Assets/Scripts/GameSetup/GameSettings.cs b/Assets/Scripts/GameSetup/GameSettings.cs
new file mode 100644
index 00000000..c5ee4b21
--- /dev/null
+++ b/Assets/Scripts/GameSetup/GameSettings.cs
@@ -0,0 +1,17 @@
+using UnityEngine;
+
+namespace OnlyScove.Scripts
+{
+ [CreateAssetMenu(fileName = "GameSettings", menuName = "Settings/GameSettings")]
+ public class GameSettings : ScriptableObject
+ {
+ [Header("Camera Settings")]
+ public float sensitivity = 1.0f;
+ public bool invertX = false;
+ public bool invertY = false;
+ public bool sideBiasRight = true; // true for Right, false for Left
+
+ [Header("Other Settings")]
+ public float fieldOfView = 60f;
+ }
+}
diff --git a/Assets/Scripts/GameSetup/GameSettings.cs.meta b/Assets/Scripts/GameSetup/GameSettings.cs.meta
new file mode 100644
index 00000000..6b036e8b
--- /dev/null
+++ b/Assets/Scripts/GameSetup/GameSettings.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 1e9fd2c44d7c5bc428b9b4eb12f4a7e1
\ No newline at end of file
diff --git a/Assets/Scripts/GameSetup/SettingsManager.cs b/Assets/Scripts/GameSetup/SettingsManager.cs
new file mode 100644
index 00000000..7fadd02e
--- /dev/null
+++ b/Assets/Scripts/GameSetup/SettingsManager.cs
@@ -0,0 +1,63 @@
+using UnityEngine;
+
+namespace OnlyScove.Scripts
+{
+ public class SettingsManager : MonoBehaviour
+ {
+ public static SettingsManager Instance { get; private set; }
+
+ [SerializeField] private GameSettings settings;
+ public GameSettings Settings => settings;
+
+ private void Awake()
+ {
+ if (Instance == null)
+ {
+ Instance = this;
+ DontDestroyOnLoad(gameObject);
+
+ if (settings == null)
+ {
+ // Fallback or load from Resources if needed
+ settings = ScriptableObject.CreateInstance();
+ }
+ }
+ else
+ {
+ Destroy(gameObject);
+ }
+ }
+
+ public void SetSensitivity(float value)
+ {
+ settings.sensitivity = value;
+ OnSettingsChanged?.Invoke();
+ }
+
+ public void SetInvertX(bool value)
+ {
+ settings.invertX = value;
+ OnSettingsChanged?.Invoke();
+ }
+
+ public void SetInvertY(bool value)
+ {
+ settings.invertY = value;
+ OnSettingsChanged?.Invoke();
+ }
+
+ public void SetSideBias(bool isRight)
+ {
+ settings.sideBiasRight = isRight;
+ OnSettingsChanged?.Invoke();
+ }
+
+ public void ToggleSideBias()
+ {
+ settings.sideBiasRight = !settings.sideBiasRight;
+ OnSettingsChanged?.Invoke();
+ }
+
+ public event System.Action OnSettingsChanged;
+ }
+}
diff --git a/Assets/Scripts/GameSetup/SettingsManager.cs.meta b/Assets/Scripts/GameSetup/SettingsManager.cs.meta
new file mode 100644
index 00000000..f1f1b867
--- /dev/null
+++ b/Assets/Scripts/GameSetup/SettingsManager.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 86e70fc045fbf71469903c69f7f54e67
\ No newline at end of file
diff --git a/Assets/Scripts/UI/HUDController.cs b/Assets/Scripts/UI/HUDController.cs
index f9d7937f..21392877 100644
--- a/Assets/Scripts/UI/HUDController.cs
+++ b/Assets/Scripts/UI/HUDController.cs
@@ -15,6 +15,7 @@ namespace UI
private Label _noiseLabel;
private Label _interactionLabel;
private VisualElement _interactionPrompt;
+ private Button _btnToggleView;
private void OnEnable()
{
@@ -29,6 +30,15 @@ namespace UI
_noiseLabel = root.Q