From 9a9481eb0451511ab9f1669d6a9c6f7dbbc0dfd8 Mon Sep 17 00:00:00 2001 From: dddushesss <37773701+dddushesss@users.noreply.github.com> Date: Mon, 27 Dec 2021 21:01:37 +0300 Subject: [PATCH] added pause menu, refactored unit canvas, added ui controller --- Assets/Prefab/AimCanvas.prefab | 2 +- Assets/Prefab/GameCanvas.prefab | 4 +- Assets/Prefab/Light.prefab | 220 ++++++++++ Assets/Prefab/Light.prefab.meta | 7 + Assets/Prefab/PauseMenu.prefab | 484 +++++++++++++++++++++ Assets/Prefab/PauseMenu.prefab.meta | 7 + Assets/Resources/Data/CameraData.asset | 2 +- Assets/Resources/Data/UIData.asset | 3 + Assets/Scenes/Level 1.unity | 327 +------------- Assets/Scenes/MainMenu.unity | 77 +++- Assets/Scripts/CamControl/CameraControl.cs | 1 + Assets/Scripts/Controller/GameInit.cs | 8 +- Assets/Scripts/Data/UIData.cs | 10 +- Assets/Scripts/GameUI.meta | 3 + Assets/Scripts/GameUI/GameMenuView.cs | 121 ++++++ Assets/Scripts/GameUI/GameMenuView.cs.meta | 11 + Assets/Scripts/GameUI/UIController.cs | 27 ++ Assets/Scripts/GameUI/UIController.cs.meta | 3 + Assets/Scripts/MainMenu/LevelManager.cs | 10 +- Assets/Scripts/Units/EnemyController.cs | 7 +- Assets/Scripts/Units/PlayerControl.cs | 18 +- Assets/Scripts/Units/Unit.cs | 16 +- 22 files changed, 1013 insertions(+), 355 deletions(-) create mode 100644 Assets/Prefab/Light.prefab create mode 100644 Assets/Prefab/Light.prefab.meta create mode 100644 Assets/Prefab/PauseMenu.prefab create mode 100644 Assets/Prefab/PauseMenu.prefab.meta create mode 100644 Assets/Scripts/GameUI.meta create mode 100644 Assets/Scripts/GameUI/GameMenuView.cs create mode 100644 Assets/Scripts/GameUI/GameMenuView.cs.meta create mode 100644 Assets/Scripts/GameUI/UIController.cs create mode 100644 Assets/Scripts/GameUI/UIController.cs.meta diff --git a/Assets/Prefab/AimCanvas.prefab b/Assets/Prefab/AimCanvas.prefab index 977eacfb..f4bfadc2 100644 --- a/Assets/Prefab/AimCanvas.prefab +++ b/Assets/Prefab/AimCanvas.prefab @@ -83,7 +83,7 @@ MonoBehaviour: m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 1 + m_PresetInfoIsWorld: 0 --- !u!114 &6763014501615571600 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Assets/Prefab/GameCanvas.prefab b/Assets/Prefab/GameCanvas.prefab index 9c7b18e5..b29843ec 100644 --- a/Assets/Prefab/GameCanvas.prefab +++ b/Assets/Prefab/GameCanvas.prefab @@ -166,7 +166,7 @@ PrefabInstance: - target: {fileID: 8170153791668043268, guid: 0d230cc8be529a542a08cb878ab14b18, type: 3} propertyPath: m_SizeDelta.y - value: 0 + value: -200 objectReference: {fileID: 0} - target: {fileID: 8170153791668043268, guid: 0d230cc8be529a542a08cb878ab14b18, type: 3} @@ -355,7 +355,7 @@ PrefabInstance: - target: {fileID: 8170153791668043268, guid: 0d230cc8be529a542a08cb878ab14b18, type: 3} propertyPath: m_SizeDelta.y - value: 0 + value: -200 objectReference: {fileID: 0} - target: {fileID: 8170153791668043268, guid: 0d230cc8be529a542a08cb878ab14b18, type: 3} diff --git a/Assets/Prefab/Light.prefab b/Assets/Prefab/Light.prefab new file mode 100644 index 00000000..bc48462d --- /dev/null +++ b/Assets/Prefab/Light.prefab @@ -0,0 +1,220 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5336165614562949988 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5336165614562950011} + m_Layer: 0 + m_Name: Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5336165614562950011 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5336165614562949988} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -14.18, y: 11.79, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 5336165614865083984} + - {fileID: 5336165615279669001} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &5336165614865083986 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5336165614865083984} + - component: {fileID: 5336165614865083985} + m_Layer: 0 + m_Name: Directional Light Left + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5336165614865083984 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5336165614865083986} + m_LocalRotation: {x: 0.38302222, y: 0.38302222, z: -0.17860618, w: 0.82139385} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 5336165614562950011} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 50, y: 50, z: 0} +--- !u!108 &5336165614865083985 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5336165614865083986} + m_Enabled: 1 + serializedVersion: 10 + m_Type: 1 + m_Shape: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.7 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 0.408 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 1 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &5336165615279669003 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5336165615279669001} + - component: {fileID: 5336165615279669002} + m_Layer: 0 + m_Name: Directional Light Right + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5336165615279669001 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5336165615279669003} + m_LocalRotation: {x: 0.32139382, y: 0.32139382, z: -0.8830222, w: 0.11697779} + m_LocalPosition: {x: 35.65, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 5336165614562950011} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 140, y: 140, z: 0} +--- !u!108 &5336165615279669002 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5336165615279669003} + m_Enabled: 1 + serializedVersion: 10 + m_Type: 1 + m_Shape: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.6 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 0 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 1 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ShadowRadius: 0 + m_ShadowAngle: 0 diff --git a/Assets/Prefab/Light.prefab.meta b/Assets/Prefab/Light.prefab.meta new file mode 100644 index 00000000..e0c09855 --- /dev/null +++ b/Assets/Prefab/Light.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: b65a64902764f84428e8a07b071bad15 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefab/PauseMenu.prefab b/Assets/Prefab/PauseMenu.prefab new file mode 100644 index 00000000..869e5613 --- /dev/null +++ b/Assets/Prefab/PauseMenu.prefab @@ -0,0 +1,484 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5296751824488078361 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5296751824488078437} + - component: {fileID: 5296751824488078438} + - component: {fileID: 5296751824488078439} + - component: {fileID: 5296751824488078360} + - component: {fileID: 5296751824488078436} + m_Layer: 5 + m_Name: PauseMenu + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5296751824488078437 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824488078361} + 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_Children: + - {fileID: 5296751825971116042} + - {fileID: 5296751824509684347} + - {fileID: 5296751824694007057} + m_Father: {fileID: 0} + m_RootOrder: 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 &5296751824488078438 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824488078361} + 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_AdditionalShaderChannelsFlag: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!114 &5296751824488078439 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824488078361} + 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 &5296751824488078360 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824488078361} + 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!114 &5296751824488078436 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824488078361} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7d882cb1df00f4698eac8b446b8df5, type: 3} + m_Name: + m_EditorClassIdentifier: + playPauseButton: {fileID: 5296751825971116041} + settingsButton: {fileID: 5296751824509684346} + exitButton: {fileID: 5296751824694007056} + pauseImage: {fileID: 21300000, guid: 1f6359cc39532464595f4eeeedb325e0, type: 3} + playImage: {fileID: 21300000, guid: 9e8e2254e0d704081931984187b98db6, type: 3} + ease: 5 + animDuration: 0.3 +--- !u!1 &5296751824509684348 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5296751824509684347} + - component: {fileID: 5296751824509684344} + - component: {fileID: 5296751824509684345} + - component: {fileID: 5296751824509684346} + m_Layer: 5 + m_Name: Settings + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5296751824509684347 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824509684348} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 5296751824488078437} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 227, y: -80} + m_SizeDelta: {x: 128, y: 128} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &5296751824509684344 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824509684348} + m_CullTransparentMesh: 1 +--- !u!114 &5296751824509684345 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824509684348} + 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: 21300000, guid: bb686ea4c141046129a10074d93b72fd, type: 3} + m_Type: 0 + 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 &5296751824509684346 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824509684348} + 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: 5296751824509684345} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &5296751824694007058 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5296751824694007057} + - component: {fileID: 5296751824694007070} + - component: {fileID: 5296751824694007071} + - component: {fileID: 5296751824694007056} + m_Layer: 5 + m_Name: Exit + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5296751824694007057 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824694007058} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 5296751824488078437} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 374, y: -80} + m_SizeDelta: {x: 128, y: 128} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &5296751824694007070 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824694007058} + m_CullTransparentMesh: 1 +--- !u!114 &5296751824694007071 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824694007058} + 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: 21300000, guid: cd4f5d6acfdcc49288d2e34761f088bc, type: 3} + m_Type: 0 + 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 &5296751824694007056 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751824694007058} + 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: 5296751824694007071} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &5296751825971116043 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5296751825971116042} + - component: {fileID: 5296751825971116055} + - component: {fileID: 5296751825971116040} + - component: {fileID: 5296751825971116041} + m_Layer: 5 + m_Name: Pause + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5296751825971116042 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751825971116043} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 5296751824488078437} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 80, y: -80} + m_SizeDelta: {x: 128, y: 128} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &5296751825971116055 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751825971116043} + m_CullTransparentMesh: 1 +--- !u!114 &5296751825971116040 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751825971116043} + 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: 21300000, guid: 1f6359cc39532464595f4eeeedb325e0, type: 3} + m_Type: 0 + 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 &5296751825971116041 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5296751825971116043} + 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: 5296751825971116040} + m_OnClick: + m_PersistentCalls: + m_Calls: [] diff --git a/Assets/Prefab/PauseMenu.prefab.meta b/Assets/Prefab/PauseMenu.prefab.meta new file mode 100644 index 00000000..4f029a4d --- /dev/null +++ b/Assets/Prefab/PauseMenu.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7305318dc10267546b643a42c7c21af3 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Data/CameraData.asset b/Assets/Resources/Data/CameraData.asset index df0bb78b..ea8495ce 100644 --- a/Assets/Resources/Data/CameraData.asset +++ b/Assets/Resources/Data/CameraData.asset @@ -12,5 +12,5 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 83b1020f31bf45569f5af6c77fc77d4e, type: 3} m_Name: CameraData m_EditorClassIdentifier: - offset: {x: 0, y: 15, z: -5} + offset: {x: 0, y: 25, z: -10} smoothSpeed: 2 diff --git a/Assets/Resources/Data/UIData.asset b/Assets/Resources/Data/UIData.asset index 519feec9..7ddf5d0c 100644 --- a/Assets/Resources/Data/UIData.asset +++ b/Assets/Resources/Data/UIData.asset @@ -12,5 +12,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d802c0065ac04effbd7685b3eddc7574, type: 3} m_Name: UIData m_EditorClassIdentifier: + _objectsToSpawn: + - {fileID: 5336165614562949988, guid: b65a64902764f84428e8a07b071bad15, type: 3} + - {fileID: 5296751824488078361, guid: 7305318dc10267546b643a42c7c21af3, type: 3} joystickView: {fileID: 4385872142190176059, guid: 4df6913b39f4979429158c344680d83f, type: 3} diff --git a/Assets/Scenes/Level 1.unity b/Assets/Scenes/Level 1.unity index 9e920c6e..816b3e92 100644 --- a/Assets/Scenes/Level 1.unity +++ b/Assets/Scenes/Level 1.unity @@ -38,7 +38,7 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 0.44657892, g: 0.49641353, b: 0.5748163, a: 1} + m_IndirectSpecularColor: {r: 0.37311953, g: 0.38074014, b: 0.3587274, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: @@ -123,105 +123,6 @@ NavMeshSettings: debug: m_Flags: 0 m_NavMeshData: {fileID: 0} ---- !u!1001 &160605515 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 5177366465263722277, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalRotation.w - value: 0.82139385 - objectReference: {fileID: 0} - - target: {fileID: 5177366465263722277, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalRotation.x - value: 0.38302222 - objectReference: {fileID: 0} - - target: {fileID: 5177366465263722277, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalRotation.y - value: 0.38302222 - objectReference: {fileID: 0} - - target: {fileID: 5177366465263722277, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalRotation.z - value: -0.17860618 - objectReference: {fileID: 0} - - target: {fileID: 5177366465263722277, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 50 - objectReference: {fileID: 0} - - target: {fileID: 5177366465263722277, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 50 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781006, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_RootOrder - value: 3 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781006, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalPosition.x - value: -14.18 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781006, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalPosition.y - value: 11.79 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781006, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781006, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781006, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781006, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781006, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781006, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781006, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781006, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 5177366466773781009, guid: a7fb19d4a93bce94bba24aacfe92a572, - type: 3} - propertyPath: m_Name - value: Light - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: a7fb19d4a93bce94bba24aacfe92a572, type: 3} --- !u!1 &763084228 GameObject: m_ObjectHideFlags: 0 @@ -240,7 +141,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!114 &763084229 MonoBehaviour: m_ObjectHideFlags: 0 @@ -315,107 +216,7 @@ RectTransform: m_Children: - {fileID: 1475618469} m_Father: {fileID: 0} - m_RootOrder: 4 - 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!1 &848981950 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 848981954} - - component: {fileID: 848981953} - - component: {fileID: 848981952} - - component: {fileID: 848981951} - m_Layer: 5 - m_Name: PauseMEnu - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &848981951 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 848981950} - 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!114 &848981952 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 848981950} - 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!223 &848981953 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 848981950} - 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_AdditionalShaderChannelsFlag: 0 - m_SortingLayerID: 0 - m_SortingOrder: 0 - m_TargetDisplay: 0 ---- !u!224 &848981954 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 848981950} - 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_Children: - - {fileID: 1257311149} - m_Father: {fileID: 0} - m_RootOrder: 5 + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -500,7 +301,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 963194225} m_LocalRotation: {x: 0.5, y: 0, z: 0, w: 0.8660254} - m_LocalPosition: {x: 14.935106, y: 1.1221166, z: 13.4063225} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} @@ -523,126 +324,6 @@ MonoBehaviour: blendDistance: 0 weight: 1 priority: 0 ---- !u!1 &1257311148 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1257311149} - - component: {fileID: 1257311152} - - component: {fileID: 1257311151} - - component: {fileID: 1257311150} - m_Layer: 5 - m_Name: Pause - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1257311149 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1257311148} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 848981954} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 80, y: -80} - m_SizeDelta: {x: 128, y: 128} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1257311150 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1257311148} - 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: 1257311151} - m_OnClick: - m_PersistentCalls: - m_Calls: [] ---- !u!114 &1257311151 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1257311148} - 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: 21300000, guid: 1f6359cc39532464595f4eeeedb325e0, type: 3} - m_Type: 0 - 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!222 &1257311152 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1257311148} - m_CullTransparentMesh: 1 --- !u!1 &1475618468 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scenes/MainMenu.unity b/Assets/Scenes/MainMenu.unity index 88946d81..13c36b90 100644 --- a/Assets/Scenes/MainMenu.unity +++ b/Assets/Scenes/MainMenu.unity @@ -38,7 +38,7 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 0.37311953, g: 0.38074014, b: 0.3587274, a: 1} + m_IndirectSpecularColor: {r: 0.44657892, g: 0.49641353, b: 0.5748163, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: @@ -563,7 +563,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: -4, y: 0} + m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &62196554 @@ -2441,6 +2441,75 @@ AudioSource: m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 +--- !u!1001 &466855774 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 5336165614562949988, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_Name + value: Light + objectReference: {fileID: 0} + - target: {fileID: 5336165614562950011, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 5336165614562950011, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_LocalPosition.x + value: -14.18 + objectReference: {fileID: 0} + - target: {fileID: 5336165614562950011, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_LocalPosition.y + value: 11.79 + objectReference: {fileID: 0} + - target: {fileID: 5336165614562950011, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5336165614562950011, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5336165614562950011, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5336165614562950011, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5336165614562950011, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5336165614562950011, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5336165614562950011, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5336165614562950011, guid: b65a64902764f84428e8a07b071bad15, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: b65a64902764f84428e8a07b071bad15, type: 3} --- !u!1 &467766965 GameObject: m_ObjectHideFlags: 0 @@ -5235,7 +5304,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: -8, y: 0} + m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1003420332 @@ -9231,7 +9300,7 @@ Camera: m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 - m_BackGroundColor: {r: 0.4056604, g: 0.38301015, b: 0.36547706, a: 0.019607844} + m_BackGroundColor: {r: 1, g: 1, b: 1, a: 0.019607844} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 diff --git a/Assets/Scripts/CamControl/CameraControl.cs b/Assets/Scripts/CamControl/CameraControl.cs index 49cdfc7b..e40a3c2c 100644 --- a/Assets/Scripts/CamControl/CameraControl.cs +++ b/Assets/Scripts/CamControl/CameraControl.cs @@ -23,6 +23,7 @@ namespace CamControl public void InitCameraControl(GameObject target) { _target = target.transform; + _camera.transform.position = _target.position + _offset; } public void FixedExecute() { diff --git a/Assets/Scripts/Controller/GameInit.cs b/Assets/Scripts/Controller/GameInit.cs index aa426836..db4d5afc 100644 --- a/Assets/Scripts/Controller/GameInit.cs +++ b/Assets/Scripts/Controller/GameInit.cs @@ -2,6 +2,7 @@ using CamControl; using Chars; using Data; +using GameUI; using HexFiled; using Units; using UnityEngine; @@ -15,15 +16,17 @@ namespace Controller var hexGrid = new HexGrid(data.FieldData); controllers.Add(hexGrid); hexGrid.OnHexPainted += DoSomething; - Unit player; + UIController uiController = new UIController(data.UIData); + uiController.Spawn(); + Unit player; List units = new List(); data.UnitData.Units.ForEach(unit => { if (unit.isPlayer) { player = new Unit(unit, data.WeaponsData.WeaponsList[0], hexGrid); - PlayerControl playerControl = new PlayerControl(player, data.UIData); + PlayerControl playerControl = new PlayerControl(player, uiController.PlayerControlView); controllers.Add(playerControl); CameraControl cameraControl = new CameraControl(Camera.main, data.CameraData); @@ -42,6 +45,7 @@ namespace Controller }); var unitFactory = new UnitFactory(units); + hexGrid.OnGridLoaded += unitFactory.Spawn; diff --git a/Assets/Scripts/Data/UIData.cs b/Assets/Scripts/Data/UIData.cs index 3ef283ee..fdb0870d 100644 --- a/Assets/Scripts/Data/UIData.cs +++ b/Assets/Scripts/Data/UIData.cs @@ -1,4 +1,5 @@ -using Chars; +using System.Collections.Generic; +using Chars; using UnityEngine; namespace Data @@ -6,6 +7,11 @@ namespace Data [CreateAssetMenu(fileName = "UIData", menuName = "Data/UI Data", order = 0)] public class UIData : ScriptableObject { - public PlayerControlView joystickView; + [SerializeField] private List _objectsToSpawn; + [SerializeField] private PlayerControlView joystickView; + public List ObjectsToSpawn => _objectsToSpawn; + public PlayerControlView PlayerControlView => joystickView; + + } } \ No newline at end of file diff --git a/Assets/Scripts/GameUI.meta b/Assets/Scripts/GameUI.meta new file mode 100644 index 00000000..93e62991 --- /dev/null +++ b/Assets/Scripts/GameUI.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: a146beb5186248a9ba8a2e066b1f3ed0 +timeCreated: 1640622915 \ No newline at end of file diff --git a/Assets/Scripts/GameUI/GameMenuView.cs b/Assets/Scripts/GameUI/GameMenuView.cs new file mode 100644 index 00000000..721b7690 --- /dev/null +++ b/Assets/Scripts/GameUI/GameMenuView.cs @@ -0,0 +1,121 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Security.Cryptography.X509Certificates; +using Data; +using DG.Tweening; +using UnityEngine; +using UnityEngine.Events; +using UnityEngine.SceneManagement; +using UnityEngine.UI; + +struct ButtonNListener +{ + private Button _button; + private UnityAction _action; + private Vector2 _posToMove; + + public Button Button => _button; + public UnityAction Action => _action; + public Vector2 PosToMove => _posToMove; + + public ButtonNListener(Button button, UnityAction action, Vector2 posToMove) + { + _button = button; + _action = action; + _posToMove = posToMove; + } +} + +public class GameMenuView : MonoBehaviour +{ + [SerializeField] private Button playPauseButton; + [SerializeField] private Button settingsButton; + [SerializeField] private Button exitButton; + [SerializeField] private Sprite pauseImage; + [SerializeField] private Sprite playImage; + + [SerializeField] private Ease ease; + [SerializeField] private float animDuration; + + private Vector2 _settingsButtonActivePosition; + private Vector2 _exitButtonActivePosition; + private List _buttonsToHide; + private bool toShow = false; + + private void Awake() + { + _buttonsToHide = new List() + { + new ButtonNListener(settingsButton, ShowSettings, settingsButton.transform.position), + new ButtonNListener(exitButton, Exit, exitButton.transform.position) + }; + + settingsButton.gameObject.SetActive(false); + exitButton.gameObject.SetActive(false); + + settingsButton.image.DOFade(0f, 0f); + exitButton.image.DOFade(0f, 0f); + + settingsButton.transform.position = playPauseButton.transform.position; + exitButton.transform.position = playPauseButton.transform.position; + + playPauseButton.onClick.AddListener(() => + { + SwitchMenu(!toShow); + toShow = !toShow; + }); + } + + + + private void SwitchMenu(bool toShow) + { + if (toShow) + { + _buttonsToHide.ForEach(x => + { + x.Button.onClick.AddListener(x.Action); + x.Button.image + .DOFade(1f, animDuration) + .SetEase(ease); + x.Button.transform + .DOMove(x.PosToMove, animDuration) + .SetEase(ease) + .OnComplete(() => Time.timeScale = 0f); + x.Button.gameObject.SetActive(true); + }); + + playPauseButton.image.sprite = playImage; + + } + else + { + Time.timeScale = 1f; + _buttonsToHide.ForEach(x => + { + x.Button.onClick.RemoveAllListeners(); + x.Button.image.DOFade(0f, animDuration).SetEase(ease); + x.Button.transform + .DOMove(playPauseButton.transform.position, animDuration) + .SetEase(ease) + .OnComplete(() => x.Button.gameObject.SetActive(false)); + }); + + playPauseButton.image.sprite = pauseImage; + } + } + + + + private void Exit() + { + Time.timeScale = 1f; + DOTween.CompleteAll(); + SceneManager.LoadScene(0); + } + + private void ShowSettings() + { + } +} \ No newline at end of file diff --git a/Assets/Scripts/GameUI/GameMenuView.cs.meta b/Assets/Scripts/GameUI/GameMenuView.cs.meta new file mode 100644 index 00000000..43e2d2b5 --- /dev/null +++ b/Assets/Scripts/GameUI/GameMenuView.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5f7d882cb1df00f4698eac8b446b8df5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/GameUI/UIController.cs b/Assets/Scripts/GameUI/UIController.cs new file mode 100644 index 00000000..99904bf1 --- /dev/null +++ b/Assets/Scripts/GameUI/UIController.cs @@ -0,0 +1,27 @@ + +using Chars; +using Data; +using UnityEngine; + +namespace GameUI +{ + public class UIController + { + private readonly UIData _uiData; + private PlayerControlView _playerControlView; + + public PlayerControlView PlayerControlView => _playerControlView; + + public UIController(UIData uiData) + { + _uiData = uiData; + } + + public void Spawn() + { + _playerControlView = Object.Instantiate(_uiData.PlayerControlView); + + _uiData.ObjectsToSpawn.ForEach(x => Object.Instantiate(x)); + } + } +} \ No newline at end of file diff --git a/Assets/Scripts/GameUI/UIController.cs.meta b/Assets/Scripts/GameUI/UIController.cs.meta new file mode 100644 index 00000000..a4bf293b --- /dev/null +++ b/Assets/Scripts/GameUI/UIController.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: fb3fbf6aa01e4aa8bb9283b33c403f31 +timeCreated: 1640622933 \ No newline at end of file diff --git a/Assets/Scripts/MainMenu/LevelManager.cs b/Assets/Scripts/MainMenu/LevelManager.cs index 94a07f67..7d7ce2e4 100644 --- a/Assets/Scripts/MainMenu/LevelManager.cs +++ b/Assets/Scripts/MainMenu/LevelManager.cs @@ -21,6 +21,7 @@ namespace DefaultNamespace private void Start() { + loadUI.GetComponent().DOFade(0f, 0f); _curLevel = _data.Levels[0]; SetLevelImage(); _percentText = loadUI.GetComponentInChildren(); @@ -51,12 +52,13 @@ namespace DefaultNamespace public void LoadLevel() { - loadUI.GetComponent().DOFade(1, 0.3f).OnComplete( () => + loadUI.SetActive(true); + loadUI.GetComponent().DOFade(1f, 0.3f).OnComplete( () => { _isLoadingLevel = true; _loadOpertion = SceneManager.LoadSceneAsync(_curLevel.sceneName); - }); - loadUI.SetActive(true); + }).SetEase(Ease.InQuad); + } private void Update() @@ -65,7 +67,7 @@ namespace DefaultNamespace { float progressValue = Mathf.Clamp01(_loadOpertion.progress / 0.9f); - _percentText.text = Mathf.Round(progressValue * 100) + "%"; + _percentText.text = Mathf.Round(progressValue * 100) + " %"; } } } diff --git a/Assets/Scripts/Units/EnemyController.cs b/Assets/Scripts/Units/EnemyController.cs index 7e90c458..0bc69b8b 100644 --- a/Assets/Scripts/Units/EnemyController.cs +++ b/Assets/Scripts/Units/EnemyController.cs @@ -1,5 +1,6 @@ using Controller; using Data; +using DG.Tweening; using Runtime.Controller; using Units; using UnityEngine; @@ -27,9 +28,9 @@ namespace Chars { if (_enemy.UnitView != null) { - _enemy.UnitView.BarCanvas.transform.LookAt( - _enemy.UnitView.BarCanvas.transform.position + _camera.transform.rotation * Vector3.back, - _camera.transform.rotation * Vector3.up); + _enemy.UnitView.BarCanvas.transform.DOLookAt( + _enemy.UnitView.BarCanvas.transform.position + _camera.transform.rotation * Vector3.back, 0f, + up: _camera.transform.rotation * Vector3.up); } } } diff --git a/Assets/Scripts/Units/PlayerControl.cs b/Assets/Scripts/Units/PlayerControl.cs index 2939e302..b3ac6e18 100644 --- a/Assets/Scripts/Units/PlayerControl.cs +++ b/Assets/Scripts/Units/PlayerControl.cs @@ -1,6 +1,7 @@ using System; using Controller; using Data; +using DG.Tweening; using HexFiled; using Runtime.Controller; using Units; @@ -18,10 +19,9 @@ namespace Chars private Vector2 _attackDircetion; - public PlayerControl(Unit unit, UIData uiData) + public PlayerControl(Unit unit, PlayerControlView joyView) { _unit = unit; - var joyView = Object.Instantiate(uiData.joystickView); _moveJoystick = joyView.MoveJoystick; _attackJoystick = joyView.AttackJoystick; _camera = Camera.main; @@ -37,9 +37,10 @@ namespace Chars private void AimCanvas() { - _unit.UnitView.AimCanvas.SetActive(true); + if (!_unit.IsBusy) + _unit.UnitView.AimCanvas.SetActive(true); } - + public void FixedExecute() { if (!_unit.IsBusy && _moveJoystick.Direction != Vector2.zero) @@ -52,7 +53,6 @@ namespace Chars _attackDircetion = _attackJoystick.Direction.normalized; _unit.Aim(_attackDircetion); } - } private static HexDirection VectorToDirection(Vector2 dir) @@ -93,11 +93,11 @@ namespace Chars public void Execute() { - if (_unit.UnitView != null) + if (_unit.IsAlive) { - _unit.UnitView.BarCanvas.transform.LookAt( - _unit.UnitView.BarCanvas.transform.position + _camera.transform.rotation * Vector3.back, - _camera.transform.rotation * Vector3.up); + _unit.UnitView.BarCanvas.transform.DOLookAt( + _unit.UnitView.BarCanvas.transform.position + _camera.transform.rotation * Vector3.back, 0f, + up: _camera.transform.rotation * Vector3.up); } } } diff --git a/Assets/Scripts/Units/Unit.cs b/Assets/Scripts/Units/Unit.cs index d565b832..cf4a7320 100644 --- a/Assets/Scripts/Units/Unit.cs +++ b/Assets/Scripts/Units/Unit.cs @@ -33,6 +33,7 @@ namespace Units public bool IsBusy => _isBusy; public GameObject PlayerInstance => _instance; public UnitView UnitView => _unitView; + public bool IsAlive => _isAlive; public Unit(UnitInfo unitData, Weapon weapon, HexGrid hexGrid) { @@ -63,7 +64,8 @@ namespace Units { _isBusy = true; _cell = _cell.GetNeighbor(direction); - _instance.transform.DOLookAt(_cell.transform.position, 0.1f); + + RotateUnit(new Vector2((_cell.transform.position - _instance.transform.position).normalized.x, (_cell.transform.position - _instance.transform.position).normalized.z)); _animator.SetTrigger("Move"); _animator.SetBool("isMoving", _isBusy); _instance.transform.DOMove(_cell.transform.position, _animLength.Move); @@ -138,6 +140,7 @@ namespace Units if (_direction.Equals(Vector2.zero)) { _direction = new Vector2(_unitView.transform.forward.x, _unitView.transform.forward.z); + Aim(_direction); } var ball = Object.Instantiate(_weapon.objectToThrow, @@ -193,13 +196,18 @@ namespace Units { _isBusy = true; if (!_direction.Equals(Vector2.zero)) - _unitView.transform.DOLookAt( - new Vector3(_direction.x, 0, _direction.y) + _unitView.transform.position, - 0.3f); + RotateUnit(_direction); + _animator.SetTrigger("Attack"); } } + private void RotateUnit(Vector2 direction) + { + _unitView.transform.DOLookAt(new Vector3(direction.x, 0, direction.y) + _unitView.transform.position, + 0.1f); + } + public void Aim(Vector2 direction) { _unitView.AimCanvas.transform.LookAt(