From 23341177d9a80186762436c9067e13e8b7b2b7db Mon Sep 17 00:00:00 2001 From: Guillaume MORET <90462045+AyakorK@users.noreply.github.com> Date: Sun, 20 Oct 2024 14:25:24 +0200 Subject: [PATCH 1/5] merge: Merge menu and develop and fix little issues (#10) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * merge: Merge develop to menu (#9) * feat: Level move (#7) * feature: First try to add level move in Unity * feat: fix Arrow, upgrade door system * feat: Fix multiple problem * fix: fix door teleport with disable player public selected * feat: Addition of traps using sockets (#6) * feat: Add auto implementation from website of traps * chore: Add environment variables to UnityProject (#5) * fix: Remove useless Log that was crashed * fix(level_move): Replace hard-coded values ​​with variables for better flexibility Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Thomas Lamiable Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat: Add Socket to props to send them to back-end (#8) * feature: First try to add level move in Unity * feat: fix Arrow, upgrade door system * feat: Fix multiple problem * fix: fix door teleport with disable player public selected * feat: Addition of traps using sockets (#6) * feat: Add auto implementation from website of traps * chore: Add environment variables to UnityProject (#5) * fix: Remove useless Log that was crashed * feat: Add link to props using sockets * feat: Add a unique socket system manager --------- Co-authored-by: Thomas Lamiable --------- Co-authored-by: Thomas Lamiable Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: Remove duplication of code * fix: Fix Idle animation --------- Co-authored-by: Thomas Lamiable Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- .gitignore | 4 + Assets/Animations/Idle.anim | 9 +- Assets/Animations/Idle.anim.meta | 2 +- ...layerMovementAnimatorController.controller | 2 +- Assets/Prefabs/Player.prefab | 13 ++ .../RoomSystem/Corridor/CorridorX7.prefab | 13 ++ .../Prefabs/RoomSystem/Corridor/Room.prefab | 13 ++ Assets/Scenes/EmptyRoom_2.unity | 20 +- Assets/Scenes/TestRoom.unity | 216 ++++++++++++++---- Assets/Scripts/Map Control/DoorSystem.cs | 9 +- Assets/Scripts/Map Control/PropsSystem.cs | 120 ++++++++++ .../Scripts/Map Control/PropsSystem.cs.meta | 11 + Assets/Scripts/PlayerController.cs | 9 +- Assets/Scripts/SocketManager.cs | 53 +++++ Assets/Scripts/SocketManager.cs.meta | 11 + Assets/Scripts/Trap/TrapManager.cs | 109 +++++++-- Packages/manifest.json | 2 + Packages/packages-lock.json | 9 +- ProjectSettings/TagManager.asset | 1 + 19 files changed, 538 insertions(+), 88 deletions(-) create mode 100644 Assets/Scripts/Map Control/PropsSystem.cs create mode 100644 Assets/Scripts/Map Control/PropsSystem.cs.meta create mode 100644 Assets/Scripts/SocketManager.cs create mode 100644 Assets/Scripts/SocketManager.cs.meta diff --git a/.gitignore b/.gitignore index 7fbba8f6..33aba243 100644 --- a/.gitignore +++ b/.gitignore @@ -290,4 +290,8 @@ $RECYCLE.BIN/ # Windows shortcuts *.lnk + +# Environment file +.env + # End of https://www.toptal.com/developers/gitignore/api/macos,windows,linux,unity,intellij+all,clion+all \ No newline at end of file diff --git a/Assets/Animations/Idle.anim b/Assets/Animations/Idle.anim index c83538ba..8bbc33fe 100644 --- a/Assets/Animations/Idle.anim +++ b/Assets/Animations/Idle.anim @@ -72,11 +72,4 @@ AnimationClip: m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 - m_Events: - - time: 0 - functionName: - data: - objectReferenceParameter: {fileID: 0} - floatParameter: 0 - intParameter: 0 - messageOptions: 0 + m_Events: [] diff --git a/Assets/Animations/Idle.anim.meta b/Assets/Animations/Idle.anim.meta index dd9867ac..0e7f9204 100644 --- a/Assets/Animations/Idle.anim.meta +++ b/Assets/Animations/Idle.anim.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 35d46c531904e4f318de4b74f3406e3c +guid: 12864ee0eccb6402590333ee01067028 NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 diff --git a/Assets/PlayerMovementAnimatorController.controller b/Assets/PlayerMovementAnimatorController.controller index 3a5b2554..36654f5c 100644 --- a/Assets/PlayerMovementAnimatorController.controller +++ b/Assets/PlayerMovementAnimatorController.controller @@ -74,7 +74,7 @@ AnimatorState: m_MirrorParameterActive: 0 m_CycleOffsetParameterActive: 0 m_TimeParameterActive: 0 - m_Motion: {fileID: 7400000, guid: 35d46c531904e4f318de4b74f3406e3c, type: 2} + m_Motion: {fileID: 7400000, guid: 12864ee0eccb6402590333ee01067028, type: 2} m_Tag: m_SpeedParameter: m_MirrorParameter: diff --git a/Assets/Prefabs/Player.prefab b/Assets/Prefabs/Player.prefab index 7ead723c..112da2b0 100644 --- a/Assets/Prefabs/Player.prefab +++ b/Assets/Prefabs/Player.prefab @@ -14,6 +14,7 @@ GameObject: - component: {fileID: 1803017460098482366} - component: {fileID: 2136192976700920181} - component: {fileID: 2952415180134692435} + - component: {fileID: 7904266034163262073} m_Layer: 0 m_Name: Player m_TagString: Untagged @@ -212,3 +213,15 @@ PolygonCollider2D: - {x: 0.057479188, y: -0.12709153} - {x: 0.046700563, y: -0.12571843} m_UseDelaunayMesh: 0 +--- !u!114 &7904266034163262073 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1463738777561398421} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9d1d8695cfa6948278518a6a55e0b730, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git a/Assets/Prefabs/RoomSystem/Corridor/CorridorX7.prefab b/Assets/Prefabs/RoomSystem/Corridor/CorridorX7.prefab index 4404662e..822ef877 100644 --- a/Assets/Prefabs/RoomSystem/Corridor/CorridorX7.prefab +++ b/Assets/Prefabs/RoomSystem/Corridor/CorridorX7.prefab @@ -1328,6 +1328,7 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 3022020511561805294} + - component: {fileID: 1349095506272017240} m_Layer: 0 m_Name: CorridorX7 m_TagString: Map @@ -1352,6 +1353,18 @@ Transform: - {fileID: 1238582843666978988} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1349095506272017240 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6369746937129949933} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9880ea29492da44c995f334244a5d19e, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &7452483412117750499 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Prefabs/RoomSystem/Corridor/Room.prefab b/Assets/Prefabs/RoomSystem/Corridor/Room.prefab index 9852a198..7f06052a 100644 --- a/Assets/Prefabs/RoomSystem/Corridor/Room.prefab +++ b/Assets/Prefabs/RoomSystem/Corridor/Room.prefab @@ -2254,6 +2254,7 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 3176463435939833076} + - component: {fileID: 3498959641617480557} m_Layer: 0 m_Name: Room m_TagString: Map @@ -2278,6 +2279,18 @@ Transform: - {fileID: 8436259702988649751} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &3498959641617480557 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6459706332820108789} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9880ea29492da44c995f334244a5d19e, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &8327367539400217474 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scenes/EmptyRoom_2.unity b/Assets/Scenes/EmptyRoom_2.unity index e698f038..35649546 100644 --- a/Assets/Scenes/EmptyRoom_2.unity +++ b/Assets/Scenes/EmptyRoom_2.unity @@ -122,7 +122,7 @@ NavMeshSettings: debug: m_Flags: 0 m_NavMeshData: {fileID: 0} ---- !u!1 &98536830 +--- !u!1 &6611451 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -130,10 +130,11 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 98536832} - - component: {fileID: 98536831} - m_Layer: 0 - m_Name: TrapManager + - component: {fileID: 6611452} + - component: {fileID: 6611454} + - component: {fileID: 6611453} + m_Layer: 5 + m_Name: Image m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -145,6 +146,7 @@ MonoBehaviour: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} +: {fileID: 1250698880} m_GameObject: {fileID: 98536830} m_Enabled: 1 m_EditorHideFlags: 0 @@ -630,8 +632,11 @@ PrefabInstance: m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 583d4dca14d33eb4094ca6f875781ab9, type: 3} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 6459706332820108789, guid: 35bed5d2a54129845bcff6b3abaa746b, type: 3} + insertIndex: -1 + addedObject: {fileID: 791950512} + m_SourcePrefab: {fileID: 100100000, guid: 35bed5d2a54129845bcff6b3abaa746b, type: 3} --- !u!1001 &8803801296905376457 PrefabInstance: m_ObjectHideFlags: 0 @@ -760,3 +765,4 @@ SceneRoots: - {fileID: 8615776833325847340} - {fileID: 8803801296905376457} - {fileID: 1166055672053893236} + - {fileID: 1655521569} diff --git a/Assets/Scenes/TestRoom.unity b/Assets/Scenes/TestRoom.unity index cba86288..828c1cb0 100644 --- a/Assets/Scenes/TestRoom.unity +++ b/Assets/Scenes/TestRoom.unity @@ -132,6 +132,7 @@ GameObject: m_Component: - component: {fileID: 166584760} - component: {fileID: 166584759} + - component: {fileID: 166584761} m_Layer: 0 m_Name: Grid m_TagString: Untagged @@ -170,6 +171,18 @@ Transform: - {fileID: 542654705} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &166584761 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 166584758} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9880ea29492da44c995f334244a5d19e, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &371089590 GameObject: m_ObjectHideFlags: 0 @@ -184,7 +197,7 @@ GameObject: - component: {fileID: 371089592} m_Layer: 0 m_Name: Props - m_TagString: Untagged + m_TagString: Props m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 @@ -280,7 +293,7 @@ TilemapRenderer: m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 - m_SortingOrder: 2 + m_SortingOrder: 10 m_ChunkSize: {x: 32, y: 32, z: 32} m_ChunkCullingBounds: {x: 0, y: 0, z: 0} m_MaxChunkCount: 16 @@ -297,7 +310,77 @@ Tilemap: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 371089590} m_Enabled: 1 - m_Tiles: {} + m_Tiles: + - first: {x: 5, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 16 + m_TileSpriteIndex: 16 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 15 + m_TileSpriteIndex: 15 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 14 + m_TileSpriteIndex: 14 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 13 + m_TileSpriteIndex: 13 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 12 + m_TileSpriteIndex: 12 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 11 + m_TileSpriteIndex: 11 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 17 + m_TileSpriteIndex: 17 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 m_AnimatedTiles: {} m_TileAssetArray: - m_RefCount: 0 @@ -322,20 +405,20 @@ Tilemap: m_Data: {fileID: 0} - m_RefCount: 0 m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} + - m_RefCount: 1 + m_Data: {fileID: 11400000, guid: 20a107a89fc4a45e9a6943b56316bdb8, type: 2} + - m_RefCount: 1 + m_Data: {fileID: 11400000, guid: 4b68c7dccf4024034a0e5bbf76946e58, type: 2} + - m_RefCount: 1 + m_Data: {fileID: 11400000, guid: 64041abb85b474ca8bc6ac42116f1a85, type: 2} + - m_RefCount: 1 + m_Data: {fileID: 11400000, guid: 6b71a2339c12b42f4b7bd7a4b09b6034, type: 2} + - m_RefCount: 1 + m_Data: {fileID: 11400000, guid: 51ca0b128c1864a00a6ad2934f8dd7dd, type: 2} + - m_RefCount: 1 + m_Data: {fileID: 11400000, guid: fb3afcb689bb1455094d893aa9ab5628, type: 2} + - m_RefCount: 1 + m_Data: {fileID: 11400000, guid: c121db5a25a0e412bb83365aa0c6f778, type: 2} m_TileSpriteArray: - m_RefCount: 0 m_Data: {fileID: 0} @@ -359,22 +442,22 @@ Tilemap: m_Data: {fileID: 0} - m_RefCount: 0 m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} + - m_RefCount: 1 + m_Data: {fileID: -1457016805, guid: ad684922a8aff654ebccc527594e7603, type: 3} + - m_RefCount: 1 + m_Data: {fileID: 1866999083, guid: ad684922a8aff654ebccc527594e7603, type: 3} + - m_RefCount: 1 + m_Data: {fileID: -2127686085, guid: ad684922a8aff654ebccc527594e7603, type: 3} + - m_RefCount: 1 + m_Data: {fileID: 2105632713, guid: ad684922a8aff654ebccc527594e7603, type: 3} + - m_RefCount: 1 + m_Data: {fileID: -1052406375, guid: ad684922a8aff654ebccc527594e7603, type: 3} + - m_RefCount: 1 + m_Data: {fileID: 1681623567, guid: ad684922a8aff654ebccc527594e7603, type: 3} + - m_RefCount: 1 + m_Data: {fileID: 1026215578, guid: ad684922a8aff654ebccc527594e7603, type: 3} m_TileMatrixArray: - - m_RefCount: 0 + - m_RefCount: 7 m_Data: e00: 1 e01: 0 @@ -393,13 +476,13 @@ Tilemap: e32: 0 e33: 1 m_TileColorArray: - - m_RefCount: 0 + - m_RefCount: 7 m_Data: {r: 1, g: 1, b: 1, a: 1} m_TileObjectToInstantiateArray: [] m_AnimationFrameRate: 1 m_Color: {r: 1, g: 1, b: 1, a: 1} m_Origin: {x: 0, y: 0, z: 0} - m_Size: {x: 9, y: 7, z: 1} + m_Size: {x: 9, y: 9, z: 1} m_TileAnchor: {x: 0.5, y: 0.5, z: 0} m_TileOrientation: 0 m_TileOrientationMatrix: @@ -988,8 +1071,8 @@ Tilemap: - first: {x: 1, y: 4, z: 0} second: serializedVersion: 2 - m_TileIndex: 16 - m_TileSpriteIndex: 15 + m_TileIndex: 15 + m_TileSpriteIndex: 16 m_TileMatrixIndex: 0 m_TileColorIndex: 0 m_TileObjectToInstantiateIndex: 65535 @@ -1457,9 +1540,9 @@ Tilemap: m_Data: {fileID: 0} - m_RefCount: 0 m_Data: {fileID: 0} - - m_RefCount: 0 - m_Data: {fileID: 0} - - m_RefCount: 40 + - m_RefCount: 1 + m_Data: {fileID: 11400000, guid: 6d8f4121c2ddc4126ab09a32de00e2a6, type: 2} + - m_RefCount: 39 m_Data: {fileID: 11400000, guid: 8b2babf76b74e4944a6bb0895e3d4647, type: 2} - m_RefCount: 41 m_Data: {fileID: 11400000, guid: dcca059947b4d724f90a78f2915a478b, type: 2} @@ -1494,10 +1577,10 @@ Tilemap: m_Data: {fileID: 0} - m_RefCount: 0 m_Data: {fileID: 0} - - m_RefCount: 40 + - m_RefCount: 39 m_Data: {fileID: 92044262, guid: 3ef9fd33020450a4c845f8e9166d5558, type: 3} - - m_RefCount: 0 - m_Data: {fileID: 0} + - m_RefCount: 1 + m_Data: {fileID: 976511200, guid: ad684922a8aff654ebccc527594e7603, type: 3} - m_RefCount: 41 m_Data: {fileID: -1574383922, guid: 3ef9fd33020450a4c845f8e9166d5558, type: 3} m_TileMatrixArray: @@ -2814,6 +2897,54 @@ Tilemap: e31: 0 e32: 0 e33: 1 +--- !u!1 &1314584499 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1314584501} + - component: {fileID: 1314584500} + m_Layer: 0 + m_Name: TrapManager + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1314584500 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1314584499} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3e906695758a3d04197ddceb298f6c86, type: 3} + m_Name: + m_EditorClassIdentifier: + trapPrefabs: + - {fileID: 6097000079642511365, guid: 127c53d14a0062f41a16963a87a85dc5, type: 3} + - {fileID: 7646078152559978388, guid: 40bc1f37707e62f4297f85bf5c7b01b4, type: 3} + - {fileID: 6762149095286452822, guid: d7c2a5ac1f23afe428f872343ed56d71, type: 3} +--- !u!4 &1314584501 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1314584499} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.21531442, y: 0.33767503, z: 0.020564094} + 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 &1621253959 GameObject: m_ObjectHideFlags: 0 @@ -3460,6 +3591,7 @@ SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 519420032} + - {fileID: 1314584501} - {fileID: 619394802} - {fileID: 647252271} - {fileID: 166584760} diff --git a/Assets/Scripts/Map Control/DoorSystem.cs b/Assets/Scripts/Map Control/DoorSystem.cs index 3b891b82..5a27bd34 100644 --- a/Assets/Scripts/Map Control/DoorSystem.cs +++ b/Assets/Scripts/Map Control/DoorSystem.cs @@ -6,13 +6,11 @@ public class RoomManager : MonoBehaviour { - - // public DialogueManager dialogueManager; public GameObject newRoomPrefab; // Le prefab de la nouvelle pièce à générer private Transform player; // Le joueur à téléporter private GameObject currentRoom; // La pièce actuelle - private void Start() + private void Start() { // Trouver le joueur au début, en supposant qu'il a le tag "Player" GameObject playerObject = GameObject.FindGameObjectWithTag("Player"); @@ -34,7 +32,8 @@ private void OnTriggerEnter2D(Collider2D other) // dialogueManager.DisplayDialogue(null, "Salut ! Bagarre", "Talios"); currentRoom = GameObject.FindGameObjectWithTag("Map"); DeleteCurrentRoom(); - GameObject newRoom = Instantiate(newRoomPrefab, new Vector3(4.1f,2.8f,0.0f), Quaternion.identity); + Vector3 newRoomPosition = new Vector3(4.1f, 2.8f, 0.0f); + GameObject newRoom = Instantiate(newRoomPrefab, newRoomPosition, Quaternion.identity); PlacePlayerInNewRoom(newRoom); currentRoom = newRoom; } @@ -48,7 +47,7 @@ void PlacePlayerInNewRoom(GameObject newRoom) { Transform spawnPoint = newRoom.transform.Find("SpawnPoint"); - bool test = newRoom.transform.Find("SpawnPoint"); + bool test = newRoom.transform.Find("SpawnPoint"); Vector3 spawnPosition = spawnPoint.position; player.position = spawnPosition; //GameObject spawnPointObject = GameObject.FindWithTag("Respawn"); diff --git a/Assets/Scripts/Map Control/PropsSystem.cs b/Assets/Scripts/Map Control/PropsSystem.cs new file mode 100644 index 00000000..bb7175f8 --- /dev/null +++ b/Assets/Scripts/Map Control/PropsSystem.cs @@ -0,0 +1,120 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using UnityEngine; +using UnityEngine.Tilemaps; +using SocketIOClient; +using CandyCoded.env; + +public class PropsManager : MonoBehaviour +{ + private Tilemap propsTilemap; // Reference to the Tilemap component + private SocketIOUnity clientSocket; + private bool PropsSent = false; + + private void Start() + { + clientSocket = SocketManager.Instance.ClientSocket; + InvokeRepeating(nameof(CheckSocketAndSendProps), 0f, 5f); // Check connection every 5 seconds + } + + // Check if the socket is connected before sending props + private async void CheckSocketAndSendProps() + { + Debug.Log("Checking socket connection..."); + + if (!PropsSent && clientSocket != null && clientSocket.Connected) + { + await FindAndSendProps(); + } + else + { + Debug.LogWarning("Socket not connected, skipping props send."); + } + } + + // Find the grid and the props tilemap, then send props positions to the server + private async Task FindAndSendProps() + { + GameObject grid = GameObject.Find("Grid"); + + if (grid != null) + { + propsTilemap = grid.transform.Find("Props")?.GetComponent(); + + if (propsTilemap != null) + { + List propsPositions = GetPropsPositions(); + + if (propsPositions.Count > 0) + { + List propsPositionsString = ConvertPositionsToString(propsPositions); + await EmitPropsToServer(propsPositionsString); + + CancelInvoke(nameof(CheckSocketAndSendProps)); // Stop repeating checks after sending + } + } + else + { + Debug.LogError("Props Tilemap not found in Grid!"); + } + } + else + { + Debug.LogError("Grid object not found!"); + } + } + + // Get all positions where there are props on the Tilemap + private List GetPropsPositions() + { + BoundsInt bounds = propsTilemap.cellBounds; + List propsPositions = new List(); + + for (int x = bounds.xMin; x < bounds.xMax; x++) + { + for (int y = bounds.yMin; y < bounds.yMax; y++) + { + Vector3Int tilePosition = new Vector3Int(x, y, 0); + + if (propsTilemap.HasTile(tilePosition)) + { + propsPositions.Add(tilePosition); + } + } + } + + Debug.Log($"Total props found: {propsPositions.Count}"); + return propsPositions; + } + + // Convert Vector3 positions to strings + private List ConvertPositionsToString(List propsPositions) + { + List propsPositionsString = new List(); + + foreach (Vector3 position in propsPositions) + { + string positionString = $"{position.x}, {position.y}"; + propsPositionsString.Add(positionString); + } + + return propsPositionsString; + } + + // Emit the props positions to the server + private async Task EmitPropsToServer(List propsPositionsString) + { + try + { + Debug.Log("Emitting props to server..."); + await clientSocket.EmitAsync("rooms:create", propsPositionsString); + PropsSent = true; + Debug.Log("Props successfully sent to server."); + } + catch (Exception e) + { + Debug.LogError("Failed to emit props: " + e.Message); + } + } +} diff --git a/Assets/Scripts/Map Control/PropsSystem.cs.meta b/Assets/Scripts/Map Control/PropsSystem.cs.meta new file mode 100644 index 00000000..f3a0d26f --- /dev/null +++ b/Assets/Scripts/Map Control/PropsSystem.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9880ea29492da44c995f334244a5d19e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/PlayerController.cs b/Assets/Scripts/PlayerController.cs index aae600c0..fdd58f08 100644 --- a/Assets/Scripts/PlayerController.cs +++ b/Assets/Scripts/PlayerController.cs @@ -3,6 +3,7 @@ using System.Text; using UnityEngine; using SocketIOClient; +using CandyCoded.env; public class PlayerMovement : MonoBehaviour { @@ -23,14 +24,14 @@ public class PlayerMovement : MonoBehaviour private Vector2 previousMovement = Vector2.zero; + private string socketUrl; async void Start() { try { - var uri = new Uri("http://localhost:3000"); - clientSocket = new SocketIOUnity(uri); - - await clientSocket.ConnectAsync(); + env.TryParseEnvironmentVariable("SOCKET_URL", out string socketUrl); + var uri = new Uri(socketUrl); + clientSocket = SocketManager.Instance.ClientSocket; animator = GetComponent(); } diff --git a/Assets/Scripts/SocketManager.cs b/Assets/Scripts/SocketManager.cs new file mode 100644 index 00000000..14eddfc6 --- /dev/null +++ b/Assets/Scripts/SocketManager.cs @@ -0,0 +1,53 @@ +using System; +using System.Threading.Tasks; +using UnityEngine; +using SocketIOClient; +using CandyCoded.env; + +public class SocketManager : MonoBehaviour +{ + private static SocketManager _instance; + public static SocketManager Instance => _instance; + + public SocketIOUnity ClientSocket { get; private set; } + + private void Awake() + { + if (_instance != null && _instance != this) + { + Destroy(this.gameObject); + } + else + { + _instance = this; + DontDestroyOnLoad(this.gameObject); // Keep the socket alive across scenes + SetupSocket().ConfigureAwait(false); // Ensure proper async handling + } + } + + private async Task SetupSocket() + { + try + { + env.TryParseEnvironmentVariable("SOCKET_URL", out string socketUrl); + var uri = new Uri(socketUrl); + ClientSocket = new SocketIOUnity(uri); + + // Connect to the server + await ClientSocket.ConnectAsync(); + Debug.Log("Connected to backend via SocketManager."); + } + catch (Exception e) + { + Debug.LogError("Socket connection error: " + e.Message); + } + } + + private void OnApplicationQuit() + { + if (ClientSocket != null) + { + ClientSocket.Dispose(); // Properly close the connection + } + } +} diff --git a/Assets/Scripts/SocketManager.cs.meta b/Assets/Scripts/SocketManager.cs.meta new file mode 100644 index 00000000..7f14c6f6 --- /dev/null +++ b/Assets/Scripts/SocketManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9d1d8695cfa6948278518a6a55e0b730 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Trap/TrapManager.cs b/Assets/Scripts/Trap/TrapManager.cs index 4fb5169a..329f7df5 100644 --- a/Assets/Scripts/Trap/TrapManager.cs +++ b/Assets/Scripts/Trap/TrapManager.cs @@ -1,62 +1,133 @@ +using System; using System.Collections; using System.Collections.Generic; -using System.Diagnostics; using UnityEngine; +using SocketIOClient; +using Newtonsoft.Json.Linq; +using CandyCoded.env; public class TrapManager : MonoBehaviour { - public List trapPrefabs = new List(); private Dictionary trapPrefabDictionary = new Dictionary(); private int gridSizeX = 9; private int gridSizeY = 9; private string[,] grid; + private Queue placementQueue = new Queue(); + private SocketIOUnity clientSocket; // SocketIO client + + private string socketUrl; + void Start() { - + // Initialize the grid grid = new string[gridSizeX, gridSizeY]; - + // Map trap names to their prefabs trapPrefabDictionary.Add("crossbow_down_prefab", trapPrefabs[0]); trapPrefabDictionary.Add("crossbow_up_prefab", trapPrefabs[1]); trapPrefabDictionary.Add("crossbow_side_prefab", trapPrefabs[2]); - // Exemple - SpawnTrapAtPosition(3, 5, "crossbow_down_prefab"); + // Set up Socket.IO client + StartCoroutine(ProcessPlacementQueue()); } + public void Update() + { + clientSocket = SocketManager.Instance.ClientSocket; + + clientSocket.On("traps:place", response => + { + JArray trapDataArray = JArray.Parse(response.ToString()); + + foreach (var trapData in trapDataArray) + { + JObject trap = (JObject)trapData["trap"]; - public void SpawnTrapAtPosition(int x, int y, string trapType) + int x = trap["x"].Value(); + int y = trap["y"].Value(); + string trapType = trap["trapType"].Value(); + + EnqueuePlacementOrder(x, y, trapType); + } + }); + } + + private void EnqueuePlacementOrder(int x, int y, string trapType) { + placementQueue.Enqueue(new TrapPlacement(x, y, trapType)); + } + private IEnumerator ProcessPlacementQueue() + { + while (true) + { + if (placementQueue.Count > 0) + { + TrapPlacement placement = placementQueue.Dequeue(); + SpawnTrapAtPosition(placement.x, placement.y, placement.trapType); + } + + yield return null; // Wait for the next frame + } + } + + private void SpawnTrapAtPosition(int x, int y, string trapType) + { + + // Check if the coordinates are valid and the spot is not occupied if (x >= 0 && x < gridSizeX && y >= 0 && y < gridSizeY && grid[x, y] == null) { - - if (trapPrefabDictionary.ContainsKey(trapType)) + + // Check if the trap type exists in the dictionary + if (trapPrefabDictionary.TryGetValue(trapType, out GameObject prefabToSpawn)) { - GameObject prefabToSpawn = trapPrefabDictionary[trapType]; + if (prefabToSpawn != null) + { - Vector3 spawnPosition = new Vector3(x, y, 0); - Instantiate(prefabToSpawn, spawnPosition, Quaternion.identity); + // Instantiate the prefab at the calculated position + Vector3 spawnPosition = new Vector3(x, y, 0); + GameObject spawnedTrap = Instantiate(prefabToSpawn, spawnPosition, Quaternion.identity); - - grid[x, y] = trapType; + // Mark the grid spot as occupied + grid[x, y] = trapType; + } + else + { + Debug.LogError($"Prefab for '{trapType}' is null! Check if the prefab is correctly assigned in the Inspector."); + } } else { - UnityEngine.Debug.LogWarning($"Le type de prefab '{trapType}' n'existe pas."); + Debug.LogWarning($"The trap type '{trapType}' does not exist in the dictionary."); } } else { - UnityEngine.Debug.LogWarning($"Position ({x}, {y}) est d�j� occup�e ou hors de la grille."); + Debug.LogWarning($"Position ({x}, {y}) is either occupied or out of bounds."); } } - public void ReceivePlacementOrder(int x, int y, string trapType) + void OnApplicationQuit() { - // M�thode pour recevoir des commandes WebSocket et placer les pi�ges - SpawnTrapAtPosition(x, y, trapType); + if (clientSocket != null) + { + clientSocket.Dispose(); // Properly close the connection + } + } + + private class TrapPlacement + { + public int x; + public int y; + public string trapType; + + public TrapPlacement(int x, int y, string trapType) + { + this.x = x; + this.y = y; + this.trapType = trapType; + } } } diff --git a/Packages/manifest.json b/Packages/manifest.json index 209847d3..8c67d776 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -4,8 +4,10 @@ "com.unity.2d.animation": "9.1.2", "com.unity.2d.sprite": "1.0.0", "com.unity.2d.tilemap": "1.0.0", + "com.unity.nuget.newtonsoft-json": "3.2.1", "com.unity.textmeshpro": "3.0.9", "com.unity.ugui": "1.0.0", + "xyz.candycoded.env": "https://github.com/CandyCoded/env.git#v1.1.0", "com.unity.modules.ai": "1.0.0", "com.unity.modules.androidjni": "1.0.0", "com.unity.modules.animation": "1.0.0", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index d6e9c572..5b6f7321 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -86,7 +86,7 @@ }, "com.unity.nuget.newtonsoft-json": { "version": "3.2.1", - "depth": 1, + "depth": 0, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" @@ -120,6 +120,13 @@ "com.unity.modules.imgui": "1.0.0" } }, + "xyz.candycoded.env": { + "version": "https://github.com/CandyCoded/env.git#v1.1.0", + "depth": 0, + "source": "git", + "dependencies": {}, + "hash": "c6951bc02488dbe99f48509a9e289ee73c74acda" + }, "com.unity.modules.ai": { "version": "1.0.0", "depth": 0, diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset index efde76ec..eed87517 100644 --- a/ProjectSettings/TagManager.asset +++ b/ProjectSettings/TagManager.asset @@ -8,6 +8,7 @@ TagManager: - Wall - Enemy - Map + - Props - Dialogue layers: - Default From 0bdef31db430493a07eee4609e676ac9a698ab26 Mon Sep 17 00:00:00 2001 From: AyakorK Date: Sun, 20 Oct 2024 16:00:35 +0200 Subject: [PATCH 2/5] revert: Revert changes from EmptyRoom that breaked doors --- Assets/Scenes/EmptyRoom_2.unity | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/Assets/Scenes/EmptyRoom_2.unity b/Assets/Scenes/EmptyRoom_2.unity index 35649546..e698f038 100644 --- a/Assets/Scenes/EmptyRoom_2.unity +++ b/Assets/Scenes/EmptyRoom_2.unity @@ -122,7 +122,7 @@ NavMeshSettings: debug: m_Flags: 0 m_NavMeshData: {fileID: 0} ---- !u!1 &6611451 +--- !u!1 &98536830 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -130,11 +130,10 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 6611452} - - component: {fileID: 6611454} - - component: {fileID: 6611453} - m_Layer: 5 - m_Name: Image + - component: {fileID: 98536832} + - component: {fileID: 98536831} + m_Layer: 0 + m_Name: TrapManager m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -146,7 +145,6 @@ MonoBehaviour: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} -: {fileID: 1250698880} m_GameObject: {fileID: 98536830} m_Enabled: 1 m_EditorHideFlags: 0 @@ -632,11 +630,8 @@ PrefabInstance: m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] - m_AddedComponents: - - targetCorrespondingSourceObject: {fileID: 6459706332820108789, guid: 35bed5d2a54129845bcff6b3abaa746b, type: 3} - insertIndex: -1 - addedObject: {fileID: 791950512} - m_SourcePrefab: {fileID: 100100000, guid: 35bed5d2a54129845bcff6b3abaa746b, type: 3} + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 583d4dca14d33eb4094ca6f875781ab9, type: 3} --- !u!1001 &8803801296905376457 PrefabInstance: m_ObjectHideFlags: 0 @@ -765,4 +760,3 @@ SceneRoots: - {fileID: 8615776833325847340} - {fileID: 8803801296905376457} - {fileID: 1166055672053893236} - - {fileID: 1655521569} From 0a4fe3e4ecb10791d14eced4d1c9155e11ebb5d1 Mon Sep 17 00:00:00 2001 From: Thomlam Date: Mon, 21 Oct 2024 09:04:33 +0200 Subject: [PATCH 3/5] feat:Some menu option had --- Assets/Prefabs/GameSystem.meta | 8 + Assets/Prefabs/GameSystem/GameTracker.prefab | 60 ++ .../GameSystem/GameTracker.prefab.meta | 7 + .../RoomSystem/Corridor/CorridorX7.prefab | 3 +- Assets/Prefabs/UI/Pause.prefab | 947 ++++++++++++++++++ Assets/Prefabs/UI/Pause.prefab.meta | 7 + Assets/Scenes/DevRoom.unity | 58 ++ Assets/Scenes/EmptyRoom_2.unity | 62 ++ Assets/Scripts/UI/GameOverManager.cs | 18 + Assets/Scripts/UI/GameOverManager.cs.meta | 11 + Assets/Scripts/UI/PauseMenu.cs | 32 + Assets/Scripts/UI/PauseMenu.cs.meta | 11 + 12 files changed, 1222 insertions(+), 2 deletions(-) create mode 100644 Assets/Prefabs/GameSystem.meta create mode 100644 Assets/Prefabs/GameSystem/GameTracker.prefab create mode 100644 Assets/Prefabs/GameSystem/GameTracker.prefab.meta create mode 100644 Assets/Prefabs/UI/Pause.prefab create mode 100644 Assets/Prefabs/UI/Pause.prefab.meta create mode 100644 Assets/Scripts/UI/GameOverManager.cs create mode 100644 Assets/Scripts/UI/GameOverManager.cs.meta create mode 100644 Assets/Scripts/UI/PauseMenu.cs create mode 100644 Assets/Scripts/UI/PauseMenu.cs.meta diff --git a/Assets/Prefabs/GameSystem.meta b/Assets/Prefabs/GameSystem.meta new file mode 100644 index 00000000..2211c528 --- /dev/null +++ b/Assets/Prefabs/GameSystem.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b9974b215fea07d49815a3104396fb5e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/GameSystem/GameTracker.prefab b/Assets/Prefabs/GameSystem/GameTracker.prefab new file mode 100644 index 00000000..8a840786 --- /dev/null +++ b/Assets/Prefabs/GameSystem/GameTracker.prefab @@ -0,0 +1,60 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &728652353996278025 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7355719168583625714} + - component: {fileID: 6993523190865074784} + - component: {fileID: 3400266234795620559} + m_Layer: 0 + m_Name: GameTracker + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7355719168583625714 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 728652353996278025} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 416, y: 234, 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 &6993523190865074784 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 728652353996278025} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dff3208a6c8451246867bd209a69143f, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &3400266234795620559 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 728652353996278025} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 40d8f146f3d8ff74fa753f33896dae95, type: 3} + m_Name: + m_EditorClassIdentifier: + pauseMenuUI: {fileID: 0} diff --git a/Assets/Prefabs/GameSystem/GameTracker.prefab.meta b/Assets/Prefabs/GameSystem/GameTracker.prefab.meta new file mode 100644 index 00000000..6397bdd8 --- /dev/null +++ b/Assets/Prefabs/GameSystem/GameTracker.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9e9537c65eb0dd649899a676ec5b08c5 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/RoomSystem/Corridor/CorridorX7.prefab b/Assets/Prefabs/RoomSystem/Corridor/CorridorX7.prefab index 4404662e..637e9b54 100644 --- a/Assets/Prefabs/RoomSystem/Corridor/CorridorX7.prefab +++ b/Assets/Prefabs/RoomSystem/Corridor/CorridorX7.prefab @@ -91,7 +91,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: newRoomPrefab: {fileID: 6459706332820108789, guid: 35bed5d2a54129845bcff6b3abaa746b, type: 3} - player: {fileID: 6754384466861484289, guid: 2359570f2fea24215ae3f989d41b590e, type: 3} --- !u!1 &1874311396987187176 GameObject: m_ObjectHideFlags: 0 @@ -1344,7 +1343,7 @@ Transform: m_GameObject: {fileID: 6369746937129949933} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 4.1000004, y: 2.8000002, z: 0} + m_LocalPosition: {x: 0.1, y: 2.8000002, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: diff --git a/Assets/Prefabs/UI/Pause.prefab b/Assets/Prefabs/UI/Pause.prefab new file mode 100644 index 00000000..0b23ffe5 --- /dev/null +++ b/Assets/Prefabs/UI/Pause.prefab @@ -0,0 +1,947 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1626543372989701258 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 511087795120045391} + - component: {fileID: 5665324349013636719} + - component: {fileID: 757824501942452676} + - component: {fileID: 2613821864936506506} + m_Layer: 5 + m_Name: ReturnMenu + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &511087795120045391 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1626543372989701258} + 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: + - {fileID: 7501952676578006891} + m_Father: {fileID: 6444893862270744911} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -25} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &5665324349013636719 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1626543372989701258} + m_CullTransparentMesh: 1 +--- !u!114 &757824501942452676 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1626543372989701258} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &2613821864936506506 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1626543372989701258} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 757824501942452676} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &1996484061423813742 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1760157996235013161} + - component: {fileID: 1032437328409204695} + - component: {fileID: 5044718449960573870} + - component: {fileID: 5774316335748078177} + m_Layer: 5 + m_Name: Pause + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1760157996235013161 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1996484061423813742} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 6444893862270744911} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!223 &1032437328409204695 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1996484061423813742} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 100 + m_TargetDisplay: 0 +--- !u!114 &5044718449960573870 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1996484061423813742} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!114 &5774316335748078177 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1996484061423813742} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!1 &2104880630390483844 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7501952676578006891} + - component: {fileID: 8389174466373503736} + - component: {fileID: 3512783980219609432} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7501952676578006891 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2104880630390483844} + 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: 511087795120045391} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8389174466373503736 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2104880630390483844} + m_CullTransparentMesh: 1 +--- !u!114 &3512783980219609432 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2104880630390483844} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Retour au Menu + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 16 + m_fontSizeBase: 16 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &3997913692559397583 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4228598247051851} + - component: {fileID: 3203408390753865630} + - component: {fileID: 8735824722418109610} + - component: {fileID: 9072452814779182297} + m_Layer: 5 + m_Name: Option + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4228598247051851 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3997913692559397583} + 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: + - {fileID: 358782186224517917} + m_Father: {fileID: 6444893862270744911} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 25} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3203408390753865630 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3997913692559397583} + m_CullTransparentMesh: 1 +--- !u!114 &8735824722418109610 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3997913692559397583} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &9072452814779182297 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3997913692559397583} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 8735824722418109610} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &4929272649713988768 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 358782186224517917} + - component: {fileID: 6886612829125866375} + - component: {fileID: 5235847502782704627} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &358782186224517917 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4929272649713988768} + 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: 4228598247051851} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &6886612829125866375 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4929272649713988768} + m_CullTransparentMesh: 1 +--- !u!114 &5235847502782704627 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4929272649713988768} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Option + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 16 + m_fontSizeBase: 16 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &5309100355968146197 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6444893862270744911} + - component: {fileID: 2234550690463424965} + - component: {fileID: 6225358343584269740} + m_Layer: 5 + m_Name: Pause + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6444893862270744911 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5309100355968146197} + 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: + - {fileID: 511087795120045391} + - {fileID: 4228598247051851} + - {fileID: 9098491086964350072} + m_Father: {fileID: 1760157996235013161} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &2234550690463424965 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5309100355968146197} + m_CullTransparentMesh: 1 +--- !u!114 &6225358343584269740 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5309100355968146197} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 0.392} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &6738860940381083147 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3145649506018809211} + - component: {fileID: 5053472827594643202} + - component: {fileID: 3878416461479011701} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3145649506018809211 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6738860940381083147} + 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: 9098491086964350072} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &5053472827594643202 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6738860940381083147} + m_CullTransparentMesh: 1 +--- !u!114 &3878416461479011701 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6738860940381083147} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Resume + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 16 + m_fontSizeBase: 16 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &7739809368342964413 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 9098491086964350072} + - component: {fileID: 3442187751590091136} + - component: {fileID: 1984253255382701639} + - component: {fileID: 1792906670280704987} + m_Layer: 5 + m_Name: Resume + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &9098491086964350072 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7739809368342964413} + 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: + - {fileID: 3145649506018809211} + m_Father: {fileID: 6444893862270744911} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 75} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3442187751590091136 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7739809368342964413} + m_CullTransparentMesh: 1 +--- !u!114 &1984253255382701639 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7739809368342964413} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &1792906670280704987 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7739809368342964413} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1984253255382701639} + m_OnClick: + m_PersistentCalls: + m_Calls: [] diff --git a/Assets/Prefabs/UI/Pause.prefab.meta b/Assets/Prefabs/UI/Pause.prefab.meta new file mode 100644 index 00000000..bb7c8722 --- /dev/null +++ b/Assets/Prefabs/UI/Pause.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 53e2b8f955031c64faddff8b6828d100 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/DevRoom.unity b/Assets/Scenes/DevRoom.unity index df1b2510..ae382e30 100644 --- a/Assets/Scenes/DevRoom.unity +++ b/Assets/Scenes/DevRoom.unity @@ -3252,6 +3252,63 @@ Tilemap: e31: 0 e32: 0 e33: 1 +--- !u!1001 &3439551436732605697 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 728652353996278025, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_Name + value: GameTracker + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalPosition.x + value: 416 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalPosition.y + value: 234 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 @@ -3261,3 +3318,4 @@ SceneRoots: - {fileID: 766254909} - {fileID: 183371198} - {fileID: 228139817} + - {fileID: 3439551436732605697} diff --git a/Assets/Scenes/EmptyRoom_2.unity b/Assets/Scenes/EmptyRoom_2.unity index e698f038..c3990089 100644 --- a/Assets/Scenes/EmptyRoom_2.unity +++ b/Assets/Scenes/EmptyRoom_2.unity @@ -381,6 +381,10 @@ PrefabInstance: propertyPath: m_SortingLayerID value: -1791178601 objectReference: {fileID: 0} + - target: {fileID: 8005840514781608459, guid: 2359570f2fea24215ae3f989d41b590e, type: 3} + propertyPath: moveSpeed + value: 4 + objectReference: {fileID: 0} - target: {fileID: 8005840514781608459, guid: 2359570f2fea24215ae3f989d41b590e, type: 3} propertyPath: mainCamera value: @@ -434,6 +438,63 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 5978902062025093567, guid: fc0db64e6e1fd4a4b89718f12ab347f7, type: 3} m_PrefabInstance: {fileID: 8803801296905376457} m_PrefabAsset: {fileID: 0} +--- !u!1001 &2117950151 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 728652353996278025, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_Name + value: GameTracker + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalPosition.x + value: 416 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalPosition.y + value: 234 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} --- !u!1001 &1166055672053893236 PrefabInstance: m_ObjectHideFlags: 0 @@ -760,3 +821,4 @@ SceneRoots: - {fileID: 8615776833325847340} - {fileID: 8803801296905376457} - {fileID: 1166055672053893236} + - {fileID: 2117950151} diff --git a/Assets/Scripts/UI/GameOverManager.cs b/Assets/Scripts/UI/GameOverManager.cs new file mode 100644 index 00000000..082341d9 --- /dev/null +++ b/Assets/Scripts/UI/GameOverManager.cs @@ -0,0 +1,18 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class GameOverManager : MonoBehaviour +{ + // Start is called before the first frame update + void Start() + { + + } + + // Update is called once per frame + void Update() + { + + } +} diff --git a/Assets/Scripts/UI/GameOverManager.cs.meta b/Assets/Scripts/UI/GameOverManager.cs.meta new file mode 100644 index 00000000..e38584b2 --- /dev/null +++ b/Assets/Scripts/UI/GameOverManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dff3208a6c8451246867bd209a69143f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/UI/PauseMenu.cs b/Assets/Scripts/UI/PauseMenu.cs new file mode 100644 index 00000000..337110e2 --- /dev/null +++ b/Assets/Scripts/UI/PauseMenu.cs @@ -0,0 +1,32 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class PauseMenu : MonoBehaviour +{ + public static bool gameIsPaused = false; + public GameObject pauseMenuUI; + + void Update(){ + if (Input.GetKeyDown(KeyCode.Escape)) + { + if (gameIsPaused) Resume(); + else Paused(); + } + + } + + void Paused() + { + pauseMenuUI.SetActive(true); + Time.timeScale = 0; + gameIsPaused = true; + } + + void Resume(){ + pauseMenuUI.SetActive(false); + Time.timeScale = 1; + gameIsPaused = true; + } + +} diff --git a/Assets/Scripts/UI/PauseMenu.cs.meta b/Assets/Scripts/UI/PauseMenu.cs.meta new file mode 100644 index 00000000..11ea4f9b --- /dev/null +++ b/Assets/Scripts/UI/PauseMenu.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 40d8f146f3d8ff74fa753f33896dae95 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: From 614fba187cfb4695710be5a6219c9e8852e6670c Mon Sep 17 00:00:00 2001 From: Thomlam Date: Mon, 21 Oct 2024 11:03:28 +0200 Subject: [PATCH 4/5] feat: Add pause system, return to menu and restart game, fix OnLoadScene in unity for hard reset player state --- Assets/Scenes/EmptyRoom_2.unity | 275 +++++++++++++++++++++++++++++ Assets/Scripts/Trap/TrapManager.cs | 26 +-- Assets/Scripts/UI/MainMenu.cs | 3 +- Assets/Scripts/UI/PauseMenu.cs | 15 +- 4 files changed, 303 insertions(+), 16 deletions(-) diff --git a/Assets/Scenes/EmptyRoom_2.unity b/Assets/Scenes/EmptyRoom_2.unity index c3990089..0fbe4a36 100644 --- a/Assets/Scenes/EmptyRoom_2.unity +++ b/Assets/Scenes/EmptyRoom_2.unity @@ -408,6 +408,17 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: ae92ebd4d5916514996eb568425857d8, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!114 &983807668 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 3400266234795620559, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + m_PrefabInstance: {fileID: 2117950151} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 40d8f146f3d8ff74fa753f33896dae95, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &1236749853 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1463738777561398421, guid: 2359570f2fea24215ae3f989d41b590e, type: 3} @@ -433,6 +444,256 @@ Transform: m_CorrespondingSourceObject: {fileID: 6754384466861484289, guid: 2359570f2fea24215ae3f989d41b590e, type: 3} m_PrefabInstance: {fileID: 647252271} m_PrefabAsset: {fileID: 0} +--- !u!1 &1376743782 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 1996484061423813742, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + m_PrefabInstance: {fileID: 1762927023} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1612387718 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1612387721} + - component: {fileID: 1612387720} + - component: {fileID: 1612387719} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1612387719 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1612387718} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1612387720 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1612387718} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1612387721 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1612387718} + 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!1001 &1762927023 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_Pivot.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_Pivot.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalScale.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalScale.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalScale.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760157996235013161, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1792906670280704987, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1792906670280704987, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1792906670280704987, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 983807668} + - target: {fileID: 1792906670280704987, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 1792906670280704987, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: Resume + objectReference: {fileID: 0} + - target: {fileID: 1792906670280704987, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: PauseMenu, Assembly-CSharp + objectReference: {fileID: 0} + - target: {fileID: 1792906670280704987, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 1996484061423813742, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_Name + value: Pause + objectReference: {fileID: 0} + - target: {fileID: 1996484061423813742, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2613821864936506506, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2613821864936506506, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2613821864936506506, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 983807668} + - target: {fileID: 2613821864936506506, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 2613821864936506506, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: LoadMainMenu + objectReference: {fileID: 0} + - target: {fileID: 2613821864936506506, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: PauseMenu, Assembly-CSharp + objectReference: {fileID: 0} + - target: {fileID: 2613821864936506506, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 5044718449960573870, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_PresetInfoIsWorld + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5309100355968146197, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 53e2b8f955031c64faddff8b6828d100, type: 3} --- !u!224 &1872161324 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 5978902062025093567, guid: fc0db64e6e1fd4a4b89718f12ab347f7, type: 3} @@ -450,6 +711,10 @@ PrefabInstance: propertyPath: m_Name value: GameTracker objectReference: {fileID: 0} + - target: {fileID: 3400266234795620559, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} + propertyPath: pauseMenuUI + value: + objectReference: {fileID: 1376743782} - target: {fileID: 7355719168583625714, guid: 9e9537c65eb0dd649899a676ec5b08c5, type: 3} propertyPath: m_LocalPosition.x value: 416 @@ -688,6 +953,10 @@ PrefabInstance: propertyPath: m_Name value: Dialogue objectReference: {fileID: 0} + - target: {fileID: 8920930660426854267, guid: 583d4dca14d33eb4094ca6f875781ab9, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] @@ -705,6 +974,10 @@ PrefabInstance: propertyPath: m_Name value: LifeCanvas objectReference: {fileID: 0} + - target: {fileID: 340918141599231381, guid: fc0db64e6e1fd4a4b89718f12ab347f7, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} - target: {fileID: 3816679404089340725, guid: fc0db64e6e1fd4a4b89718f12ab347f7, type: 3} propertyPath: m_LocalScale.x value: 5 @@ -821,4 +1094,6 @@ SceneRoots: - {fileID: 8615776833325847340} - {fileID: 8803801296905376457} - {fileID: 1166055672053893236} + - {fileID: 1762927023} - {fileID: 2117950151} + - {fileID: 1612387721} diff --git a/Assets/Scripts/Trap/TrapManager.cs b/Assets/Scripts/Trap/TrapManager.cs index 329f7df5..21c83c44 100644 --- a/Assets/Scripts/Trap/TrapManager.cs +++ b/Assets/Scripts/Trap/TrapManager.cs @@ -35,23 +35,23 @@ void Start() public void Update() { - clientSocket = SocketManager.Instance.ClientSocket; + // clientSocket = SocketManager.Instance.ClientSocket; - clientSocket.On("traps:place", response => - { - JArray trapDataArray = JArray.Parse(response.ToString()); + // clientSocket.On("traps:place", response => + // { + // JArray trapDataArray = JArray.Parse(response.ToString()); - foreach (var trapData in trapDataArray) - { - JObject trap = (JObject)trapData["trap"]; + // foreach (var trapData in trapDataArray) + // { + // JObject trap = (JObject)trapData["trap"]; - int x = trap["x"].Value(); - int y = trap["y"].Value(); - string trapType = trap["trapType"].Value(); + // int x = trap["x"].Value(); + // int y = trap["y"].Value(); + // string trapType = trap["trapType"].Value(); - EnqueuePlacementOrder(x, y, trapType); - } - }); + // EnqueuePlacementOrder(x, y, trapType); + // } + // }); } private void EnqueuePlacementOrder(int x, int y, string trapType) diff --git a/Assets/Scripts/UI/MainMenu.cs b/Assets/Scripts/UI/MainMenu.cs index 82c65c55..a0d691e6 100644 --- a/Assets/Scripts/UI/MainMenu.cs +++ b/Assets/Scripts/UI/MainMenu.cs @@ -14,7 +14,8 @@ public void QuitGame(){ public void StartRoom(){ - SceneManager.LoadScene(selectedScene); + + SceneManager.LoadScene(selectedScene); } } diff --git a/Assets/Scripts/UI/PauseMenu.cs b/Assets/Scripts/UI/PauseMenu.cs index 337110e2..f3bdf5b9 100644 --- a/Assets/Scripts/UI/PauseMenu.cs +++ b/Assets/Scripts/UI/PauseMenu.cs @@ -1,6 +1,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; +using UnityEngine.SceneManagement; public class PauseMenu : MonoBehaviour { @@ -8,6 +9,7 @@ public class PauseMenu : MonoBehaviour public GameObject pauseMenuUI; void Update(){ + if (Input.GetKeyDown(KeyCode.Escape)) { if (gameIsPaused) Resume(); @@ -23,10 +25,19 @@ void Paused() gameIsPaused = true; } - void Resume(){ + public void Resume(){ pauseMenuUI.SetActive(false); Time.timeScale = 1; - gameIsPaused = true; + gameIsPaused = false; + } + + public void LoadMainMenu() + { + Resume(); + GameObject player = GameObject.FindWithTag("Player"); + if (player != null) Destroy(player.gameObject); + SceneManager.LoadScene("Menu"); + } } From a432d441093c945169557b28575eb952e6ecbb07 Mon Sep 17 00:00:00 2001 From: Thomlam Date: Mon, 21 Oct 2024 11:04:05 +0200 Subject: [PATCH 5/5] chore: remove commentary for trap manager --- Assets/Scripts/Trap/TrapManager.cs | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Assets/Scripts/Trap/TrapManager.cs b/Assets/Scripts/Trap/TrapManager.cs index 21c83c44..329f7df5 100644 --- a/Assets/Scripts/Trap/TrapManager.cs +++ b/Assets/Scripts/Trap/TrapManager.cs @@ -35,23 +35,23 @@ void Start() public void Update() { - // clientSocket = SocketManager.Instance.ClientSocket; + clientSocket = SocketManager.Instance.ClientSocket; - // clientSocket.On("traps:place", response => - // { - // JArray trapDataArray = JArray.Parse(response.ToString()); + clientSocket.On("traps:place", response => + { + JArray trapDataArray = JArray.Parse(response.ToString()); - // foreach (var trapData in trapDataArray) - // { - // JObject trap = (JObject)trapData["trap"]; + foreach (var trapData in trapDataArray) + { + JObject trap = (JObject)trapData["trap"]; - // int x = trap["x"].Value(); - // int y = trap["y"].Value(); - // string trapType = trap["trapType"].Value(); + int x = trap["x"].Value(); + int y = trap["y"].Value(); + string trapType = trap["trapType"].Value(); - // EnqueuePlacementOrder(x, y, trapType); - // } - // }); + EnqueuePlacementOrder(x, y, trapType); + } + }); } private void EnqueuePlacementOrder(int x, int y, string trapType)