From c103ffb3390009326f5f1b7f386fe635d0dc8ecb Mon Sep 17 00:00:00 2001 From: Max Date: Thu, 6 Mar 2025 12:12:13 +0100 Subject: [PATCH] Implemented How To Play Pop up on start --- .../Resources/PerformanceTestRunInfo.json | 1 + .../PerformanceTestRunInfo.json.meta | 7 + .../Resources/PerformanceTestRunSettings.json | 1 + .../PerformanceTestRunSettings.json.meta | 7 + PuzzleGameProject/Assets/Scenes/Start.unity | 111 +++++++++ .../Scripts/DungeonSelection/UIEvents.cs | 2 + .../Scripts/DungeonSelection/UIManager.cs | 26 +++ .../DungeonSelection/UIManager.cs.meta | 3 + .../Scripts/UI/DungeonSelectMenuController.cs | 2 + .../Assets/Scripts/UI/RulesPageController.cs | 22 ++ .../Scripts/UI/RulesPageController.cs.meta | 2 + PuzzleGameProject/Assets/Sprites/Armor.png | Bin 0 -> 95845 bytes .../Assets/Sprites/Armor.png.meta | 218 ++++++++++++++++++ .../Assets/UI/DungeonSelect.uxml | 1 + PuzzleGameProject/Assets/UI/Rules.uxml | 38 +++ PuzzleGameProject/Assets/UI/Rules.uxml.meta | 10 + PuzzleGameProject/Assets/UI/Styles/style1.uss | 56 +++++ ...niversalRenderPipelineGlobalSettings.asset | 48 ++-- PuzzleGameProject/Assets/rules.uss | 16 ++ PuzzleGameProject/Assets/rules.uss.meta | 11 + 20 files changed, 558 insertions(+), 24 deletions(-) create mode 100644 PuzzleGameProject/Assets/Resources/PerformanceTestRunInfo.json create mode 100644 PuzzleGameProject/Assets/Resources/PerformanceTestRunInfo.json.meta create mode 100644 PuzzleGameProject/Assets/Resources/PerformanceTestRunSettings.json create mode 100644 PuzzleGameProject/Assets/Resources/PerformanceTestRunSettings.json.meta create mode 100644 PuzzleGameProject/Assets/Scripts/DungeonSelection/UIManager.cs create mode 100644 PuzzleGameProject/Assets/Scripts/DungeonSelection/UIManager.cs.meta create mode 100644 PuzzleGameProject/Assets/Scripts/UI/RulesPageController.cs create mode 100644 PuzzleGameProject/Assets/Scripts/UI/RulesPageController.cs.meta create mode 100644 PuzzleGameProject/Assets/Sprites/Armor.png create mode 100644 PuzzleGameProject/Assets/Sprites/Armor.png.meta create mode 100644 PuzzleGameProject/Assets/UI/Rules.uxml create mode 100644 PuzzleGameProject/Assets/UI/Rules.uxml.meta create mode 100644 PuzzleGameProject/Assets/rules.uss create mode 100644 PuzzleGameProject/Assets/rules.uss.meta diff --git a/PuzzleGameProject/Assets/Resources/PerformanceTestRunInfo.json b/PuzzleGameProject/Assets/Resources/PerformanceTestRunInfo.json new file mode 100644 index 0000000..9ceebf2 --- /dev/null +++ b/PuzzleGameProject/Assets/Resources/PerformanceTestRunInfo.json @@ -0,0 +1 @@ +{"TestSuite":"","Date":0,"Player":{"Development":false,"ScreenWidth":0,"ScreenHeight":0,"ScreenRefreshRate":0,"Fullscreen":false,"Vsync":0,"AntiAliasing":0,"Batchmode":false,"RenderThreadingMode":"MultiThreaded","GpuSkinning":false,"Platform":"","ColorSpace":"","AnisotropicFiltering":"","BlendWeights":"","GraphicsApi":"","ScriptingBackend":"IL2CPP","AndroidTargetSdkVersion":"AndroidApiLevelAuto","AndroidBuildSystem":"Gradle","BuildTarget":"WebGL","StereoRenderingPath":"MultiPass"},"Hardware":{"OperatingSystem":"","DeviceModel":"","DeviceName":"","ProcessorType":"","ProcessorCount":0,"GraphicsDeviceName":"","SystemMemorySizeMB":0},"Editor":{"Version":"6000.0.34f1","Branch":"6000.0/staging","Changeset":"5ab2d9ed9190","Date":1736176501},"Dependencies":["com.unity.collab-proxy@2.6.0","com.unity.feature.2d@2.0.1","com.unity.feature.mobile@1.0.0","com.unity.ide.rider@3.0.31","com.unity.ide.visualstudio@2.0.22","com.unity.inputsystem@1.11.2","com.unity.multiplayer.center@1.0.0","com.unity.render-pipelines.universal@17.0.3","com.unity.timeline@1.8.7","com.unity.ugui@2.0.0","com.unity.visualscripting@1.9.5","com.unity.modules.accessibility@1.0.0","com.unity.modules.ai@1.0.0","com.unity.modules.androidjni@1.0.0","com.unity.modules.animation@1.0.0","com.unity.modules.assetbundle@1.0.0","com.unity.modules.audio@1.0.0","com.unity.modules.cloth@1.0.0","com.unity.modules.director@1.0.0","com.unity.modules.imageconversion@1.0.0","com.unity.modules.imgui@1.0.0","com.unity.modules.jsonserialize@1.0.0","com.unity.modules.particlesystem@1.0.0","com.unity.modules.physics@1.0.0","com.unity.modules.physics2d@1.0.0","com.unity.modules.screencapture@1.0.0","com.unity.modules.terrain@1.0.0","com.unity.modules.terrainphysics@1.0.0","com.unity.modules.tilemap@1.0.0","com.unity.modules.ui@1.0.0","com.unity.modules.uielements@1.0.0","com.unity.modules.umbra@1.0.0","com.unity.modules.unityanalytics@1.0.0","com.unity.modules.unitywebrequest@1.0.0","com.unity.modules.unitywebrequestassetbundle@1.0.0","com.unity.modules.unitywebrequestaudio@1.0.0","com.unity.modules.unitywebrequesttexture@1.0.0","com.unity.modules.unitywebrequestwww@1.0.0","com.unity.modules.vehicles@1.0.0","com.unity.modules.video@1.0.0","com.unity.modules.vr@1.0.0","com.unity.modules.wind@1.0.0","com.unity.modules.xr@1.0.0","com.unity.modules.subsystems@1.0.0","com.unity.modules.hierarchycore@1.0.0","com.unity.render-pipelines.core@17.0.3","com.unity.shadergraph@17.0.3","com.unity.render-pipelines.universal-config@17.0.3","com.unity.test-framework@1.4.5","com.unity.ext.nunit@2.0.5","com.unity.mobile.android-logcat@1.4.4","com.unity.adaptiveperformance@5.1.0","com.unity.mobile.notifications@2.4.0","com.unity.2d.animation@10.1.4","com.unity.2d.pixel-perfect@5.0.3","com.unity.2d.psdimporter@9.0.3","com.unity.2d.sprite@1.0.0","com.unity.2d.spriteshape@10.0.7","com.unity.2d.tilemap@1.0.0","com.unity.2d.tilemap.extras@4.1.0","com.unity.2d.aseprite@1.1.7","com.unity.searcher@4.9.2","com.unity.burst@1.8.18","com.unity.mathematics@1.3.2","com.unity.collections@2.5.1","com.unity.rendering.light-transport@1.0.1","com.unity.profiling.core@1.0.2","com.unity.2d.common@9.0.7","com.unity.nuget.mono-cecil@1.11.4","com.unity.test-framework.performance@3.0.3"],"Results":[]} \ No newline at end of file diff --git a/PuzzleGameProject/Assets/Resources/PerformanceTestRunInfo.json.meta b/PuzzleGameProject/Assets/Resources/PerformanceTestRunInfo.json.meta new file mode 100644 index 0000000..a672bb8 --- /dev/null +++ b/PuzzleGameProject/Assets/Resources/PerformanceTestRunInfo.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: fd2f131e858fd504b9dbc37e51f92acc +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/PuzzleGameProject/Assets/Resources/PerformanceTestRunSettings.json b/PuzzleGameProject/Assets/Resources/PerformanceTestRunSettings.json new file mode 100644 index 0000000..49438ae --- /dev/null +++ b/PuzzleGameProject/Assets/Resources/PerformanceTestRunSettings.json @@ -0,0 +1 @@ +{"MeasurementCount":-1} \ No newline at end of file diff --git a/PuzzleGameProject/Assets/Resources/PerformanceTestRunSettings.json.meta b/PuzzleGameProject/Assets/Resources/PerformanceTestRunSettings.json.meta new file mode 100644 index 0000000..8cbfaaa --- /dev/null +++ b/PuzzleGameProject/Assets/Resources/PerformanceTestRunSettings.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: e4138449aacb29a4193c131477ff92cb +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/PuzzleGameProject/Assets/Scenes/Start.unity b/PuzzleGameProject/Assets/Scenes/Start.unity index c22bd86..d760f15 100644 --- a/PuzzleGameProject/Assets/Scenes/Start.unity +++ b/PuzzleGameProject/Assets/Scenes/Start.unity @@ -244,6 +244,70 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 1c6d26f9a8f2855469ad6ac0874795b1, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!1 &1131314918 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1131314920} + - component: {fileID: 1131314919} + - component: {fileID: 1131314921} + m_Layer: 5 + m_Name: RulesPage + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1131314919 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1131314918} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_PanelSettings: {fileID: 11400000, guid: 79ea83e6353cc60439227b4505222385, type: 2} + m_ParentUI: {fileID: 0} + sourceAsset: {fileID: 9197481963319205126, guid: 9dbb5ec480f334846b45e80a82cefb64, type: 3} + m_SortingOrder: 0 + m_WorldSpaceSizeMode: 1 + m_WorldSpaceWidth: 1920 + m_WorldSpaceHeight: 1080 +--- !u!4 &1131314920 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1131314918} + 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!114 &1131314921 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1131314918} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2a5aa3e2c35674149847602fe21313a4, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &1250110425 GameObject: m_ObjectHideFlags: 0 @@ -336,6 +400,51 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1963856832 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1963856834} + - component: {fileID: 1963856833} + m_Layer: 0 + m_Name: UIManager + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1963856833 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1963856832} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9ccfd39425234a2a9c67229f57a62b10, type: 3} + m_Name: + m_EditorClassIdentifier: + rulesPageGO: {fileID: 1131314918} +--- !u!4 &1963856834 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1963856832} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0.773548, y: 1.0709885, z: -0.04651529} + 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!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 @@ -343,3 +452,5 @@ SceneRoots: - {fileID: 1250110428} - {fileID: 830877627} - {fileID: 455091938} + - {fileID: 1131314920} + - {fileID: 1963856834} diff --git a/PuzzleGameProject/Assets/Scripts/DungeonSelection/UIEvents.cs b/PuzzleGameProject/Assets/Scripts/DungeonSelection/UIEvents.cs index 3a726bf..488e937 100644 --- a/PuzzleGameProject/Assets/Scripts/DungeonSelection/UIEvents.cs +++ b/PuzzleGameProject/Assets/Scripts/DungeonSelection/UIEvents.cs @@ -8,5 +8,7 @@ namespace DungeonSelection public static Action NextDungeonClicked; public static Action PreviousDungeonClicked; public static Action EnterDungeonClicked; + public static Action CloseRules; + public static Action ShowRules; } } \ No newline at end of file diff --git a/PuzzleGameProject/Assets/Scripts/DungeonSelection/UIManager.cs b/PuzzleGameProject/Assets/Scripts/DungeonSelection/UIManager.cs new file mode 100644 index 0000000..bbf02bb --- /dev/null +++ b/PuzzleGameProject/Assets/Scripts/DungeonSelection/UIManager.cs @@ -0,0 +1,26 @@ +using System; +using UnityEngine; + +namespace DungeonSelection +{ + public class UIManager : MonoBehaviour + { + [SerializeField] private GameObject rulesPageGO; + + private void OnEnable() + { + UIEvents.ShowRules += ShowRules; + } + + private void OnDisable() + { + UIEvents.ShowRules -= ShowRules; + + } + + private void ShowRules() + { + rulesPageGO.SetActive(true); + } + } +} \ No newline at end of file diff --git a/PuzzleGameProject/Assets/Scripts/DungeonSelection/UIManager.cs.meta b/PuzzleGameProject/Assets/Scripts/DungeonSelection/UIManager.cs.meta new file mode 100644 index 0000000..87a75ac --- /dev/null +++ b/PuzzleGameProject/Assets/Scripts/DungeonSelection/UIManager.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 9ccfd39425234a2a9c67229f57a62b10 +timeCreated: 1741259289 \ No newline at end of file diff --git a/PuzzleGameProject/Assets/Scripts/UI/DungeonSelectMenuController.cs b/PuzzleGameProject/Assets/Scripts/UI/DungeonSelectMenuController.cs index b3be882..6addcec 100644 --- a/PuzzleGameProject/Assets/Scripts/UI/DungeonSelectMenuController.cs +++ b/PuzzleGameProject/Assets/Scripts/UI/DungeonSelectMenuController.cs @@ -20,6 +20,8 @@ public class DungeonSelectMenuController : MonoBehaviour { VisualElement root = GetComponent().rootVisualElement; + Button rules = root.Q