From fc22f2060f8da7667d4f469c79b0903e7284527e Mon Sep 17 00:00:00 2001 From: CoderGamester Date: Wed, 8 Jan 2025 18:35:05 +0000 Subject: [PATCH] UiService and Services package updated Added new Pause PopUp and Complience screens Added Session data for analytics on open for the first time Screens adjusted to improve visibility --- Assets/Addressables/Configs/UiConfigs.asset | 12 + .../Prefabs/UI/Compliance Screen.prefab | 1913 +++++++++++++++++ .../Prefabs/UI/Compliance Screen.prefab.meta | 7 + .../Addressables/Prefabs/UI/GameOver.prefab | 265 +-- .../Addressables/Prefabs/UI/Main Menu.prefab | 186 ++ Assets/Addressables/Prefabs/UI/MainHud.prefab | 283 ++- .../Prefabs/UI/Pause PopUp.prefab | 1166 ++++++++++ .../Prefabs/UI/Pause PopUp.prefab.meta | 7 + Assets/Src/BootSplashscreen.cs | 2 +- .../Src/Commands/AcceptComplianceCommand.cs | 27 + .../Commands/AcceptComplianceCommand.cs.meta | 3 + Assets/Src/Commands/RestartGameCommand.cs | 2 + .../Commands/SetupFirstTimePlayerCommand.cs | 2 +- Assets/Src/Data/AppData.cs | 1 + Assets/Src/Ids/AddressableId.cs | 34 +- Assets/Src/Logic/Client/AppLogic.cs | 15 + Assets/Src/Logic/GameLogicLocator.cs | 4 +- Assets/Src/Main.cs | 14 +- .../Src/Messages/ApplicationStateMessages.cs | 1 + Assets/Src/Messages/GameplayMessages.cs | 4 +- .../Presenters/ComplianceScreenPresenter.cs | 73 + .../ComplianceScreenPresenter.cs.meta | 3 + .../Src/Presenters/GameOverScreenPresenter.cs | 17 +- Assets/Src/Presenters/MainHudPresenter.cs | 32 +- Assets/Src/Presenters/MainMenuPresenter.cs | 24 +- Assets/Src/Presenters/PausePopUpPresenter.cs | 44 + .../Presenters/PausePopUpPresenter.cs.meta | 11 + .../AnalyticsHelpers/AnalyticsSession.cs | 57 +- Assets/Src/Services/AnalyticsServices.cs | 15 +- Assets/Src/Services/GameServicesLocator.cs | 20 + Assets/Src/StateMachines/GameStateMachine.cs | 9 +- Assets/Src/StateMachines/GameplayState.cs | 66 +- .../Src/StateMachines/InitialLoadingState.cs | 47 +- Assets/Src/StateMachines/MainMenuState.cs | 26 +- Assets/Src/Utils/Constants.cs | 12 + .../Src/ViewControllers/ViewControllerBase.cs | 30 + .../ViewControllerBase.cs.meta | 11 + Packages/packages-lock.json | 11 +- ProjectSettings/ProjectSettings.asset | 3 +- ProjectSettings/QualitySettings.asset | 7 +- README.md | 2 +- 41 files changed, 3946 insertions(+), 522 deletions(-) create mode 100644 Assets/Addressables/Prefabs/UI/Compliance Screen.prefab create mode 100644 Assets/Addressables/Prefabs/UI/Compliance Screen.prefab.meta create mode 100644 Assets/Addressables/Prefabs/UI/Pause PopUp.prefab create mode 100644 Assets/Addressables/Prefabs/UI/Pause PopUp.prefab.meta create mode 100644 Assets/Src/Commands/AcceptComplianceCommand.cs create mode 100644 Assets/Src/Commands/AcceptComplianceCommand.cs.meta create mode 100644 Assets/Src/Presenters/ComplianceScreenPresenter.cs create mode 100644 Assets/Src/Presenters/ComplianceScreenPresenter.cs.meta create mode 100644 Assets/Src/Presenters/PausePopUpPresenter.cs create mode 100644 Assets/Src/Presenters/PausePopUpPresenter.cs.meta create mode 100644 Assets/Src/ViewControllers/ViewControllerBase.cs create mode 100644 Assets/Src/ViewControllers/ViewControllerBase.cs.meta diff --git a/Assets/Addressables/Configs/UiConfigs.asset b/Assets/Addressables/Configs/UiConfigs.asset index 4e87b6d..b316bee 100644 --- a/Assets/Addressables/Configs/UiConfigs.asset +++ b/Assets/Addressables/Configs/UiConfigs.asset @@ -14,6 +14,10 @@ MonoBehaviour: m_EditorClassIdentifier: _loadingSpinnerType: _configs: + - AddressableAddress: Addressables/Prefabs/UI/Compliance Screen.prefab + Layer: 10 + UiType: Game.Presenters.ComplianceScreenPresenter, Assembly-CSharp, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null - AddressableAddress: Addressables/Prefabs/UI/GameOver.prefab Layer: 0 UiType: Game.Presenters.GameOverScreenPresenter, Assembly-CSharp, Version=0.0.0.0, @@ -30,11 +34,17 @@ MonoBehaviour: Layer: 1 UiType: Game.Presenters.MainHudPresenter, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + - AddressableAddress: Addressables/Prefabs/UI/Pause PopUp.prefab + Layer: 0 + UiType: Game.Presenters.PausePopUpPresenter, Assembly-CSharp, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null _sets: - SetId: 0 UiConfigsType: - Game.Presenters.LoadingScreenPresenter, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + - Game.Presenters.LoadingScreenPresenter, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null - SetId: 1 UiConfigsType: - Game.Presenters.MainMenuPresenter, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, @@ -45,3 +55,5 @@ MonoBehaviour: Culture=neutral, PublicKeyToken=null - Game.Presenters.MainHudPresenter, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + - Game.Presenters.PausePopUpPresenter, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null diff --git a/Assets/Addressables/Prefabs/UI/Compliance Screen.prefab b/Assets/Addressables/Prefabs/UI/Compliance Screen.prefab new file mode 100644 index 0000000..08c1cc6 --- /dev/null +++ b/Assets/Addressables/Prefabs/UI/Compliance Screen.prefab @@ -0,0 +1,1913 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &411982945241063337 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3402459653523440223} + - component: {fileID: 1914077748440583934} + - component: {fileID: 4348379090372110736} + - component: {fileID: 3304714088150404509} + - component: {fileID: 4220200852546652010} + m_Layer: 0 + m_Name: Title + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3402459653523440223 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 411982945241063337} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.000014091814} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 564535670855408240} + m_Father: {fileID: 4850789454853288318} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 1} + m_AnchorMax: {x: 0.5, y: 1} + m_AnchoredPosition: {x: 0, y: -120} + m_SizeDelta: {x: 900, y: 150} + m_Pivot: {x: 0.5, y: 1} +--- !u!222 &1914077748440583934 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 411982945241063337} + m_CullTransparentMesh: 1 +--- !u!114 &4348379090372110736 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 411982945241063337} + 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: 0.14901961, g: 0.45098042, b: 0.20784315, 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: 0} + 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 &3304714088150404509 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 411982945241063337} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: 500 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: 900 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!114 &4220200852546652010 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 411982945241063337} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7e95eeedee57a194d865316493962f74, type: 3} + m_Name: + m_EditorClassIdentifier: + _padding: + m_Left: 20 + m_Right: 20 + m_Top: 0 + m_Bottom: 0 + _canvasTransform: {fileID: 4850789454853288318} + _rectTransform: {fileID: 3402459653523440223} +--- !u!1 &1942848556530012343 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4850789454853288318} + - component: {fileID: 3022353799706504421} + - component: {fileID: 4732466838908597902} + - component: {fileID: 708290456865470065} + - component: {fileID: 7331701693935532865} + m_Layer: 0 + m_Name: Compliance Screen + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &4850789454853288318 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1942848556530012343} + 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: 7672561633102850407} + - {fileID: 3402459653523440223} + - {fileID: 4654868148549276536} + - {fileID: 5334829148732001165} + - {fileID: 4984816945355760816} + - {fileID: 3062189088248555907} + - {fileID: 804688702734324022} + - {fileID: 5084875814056517677} + 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 &3022353799706504421 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1942848556530012343} + 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: 10 + m_TargetDisplay: 0 +--- !u!114 &4732466838908597902 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1942848556530012343} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 1 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 750, y: 1334} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 1 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!114 &708290456865470065 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1942848556530012343} + 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 &7331701693935532865 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1942848556530012343} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 04843fdfde254fdc981f02d71b9efc9a, type: 3} + m_Name: + m_EditorClassIdentifier: + _acceptButton: {fileID: 3594852726836260553} + _ageText: {fileID: 3856024409663845496} + _interactableTextViews: [] + _ageSlider: {fileID: 7537549761393264470} +--- !u!1 &2109016267919784980 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4654868148549276536} + - component: {fileID: 2210010631150421864} + - component: {fileID: 3518217046386783794} + - component: {fileID: 8779276827457481343} + - component: {fileID: 2923112018619238970} + - component: {fileID: 349499865322425339} + m_Layer: 5 + m_Name: Terms Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4654868148549276536 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2109016267919784980} + 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: 4850789454853288318} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 1} + m_AnchorMax: {x: 0.5, y: 1} + m_AnchoredPosition: {x: 0, y: -300} + m_SizeDelta: {x: 900, y: 300} + m_Pivot: {x: 0.5, y: 1} +--- !u!222 &2210010631150421864 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2109016267919784980} + m_CullTransparentMesh: 0 +--- !u!114 &3518217046386783794 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2109016267919784980} + 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: To start playing please accept our Terms of Service, + which describes the rules and conditions that apply when you are playing the + game. You can also check out our Privacy Policy + on what data we collect and how we use it to make the game experience better. + Thank you. + 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: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, 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: 30 + m_fontSizeBase: 30 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 32 + m_VerticalAlignment: 256 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 0 + 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: 1 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 1 + 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!114 &8779276827457481343 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2109016267919784980} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c892eed10da43ed4b97acce141c343ac, type: 3} + m_Name: + m_EditorClassIdentifier: + OnLinkedInfoClicked: + m_PersistentCalls: + m_Calls: [] + InteractableType: 0 + _text: {fileID: 3518217046386783794} +--- !u!114 &2923112018619238970 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2109016267919784980} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: 550 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: 900 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!114 &349499865322425339 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2109016267919784980} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7e95eeedee57a194d865316493962f74, type: 3} + m_Name: + m_EditorClassIdentifier: + _padding: + m_Left: 20 + m_Right: 20 + m_Top: 0 + m_Bottom: 0 + _canvasTransform: {fileID: 4850789454853288318} + _rectTransform: {fileID: 4654868148549276536} +--- !u!1 &2786703150809409145 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5084875814056517677} + - component: {fileID: 7775003288360986727} + - component: {fileID: 4954979150520540917} + - component: {fileID: 3594852726836260553} + m_Layer: 0 + m_Name: Accept Button + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5084875814056517677 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2786703150809409145} + 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: 5966398365350512133} + m_Father: {fileID: 4850789454853288318} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0} + m_AnchorMax: {x: 0.5, y: 0} + m_AnchoredPosition: {x: 0, y: 100} + m_SizeDelta: {x: 350, y: 80} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &7775003288360986727 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2786703150809409145} + m_CullTransparentMesh: 1 +--- !u!114 &4954979150520540917 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2786703150809409145} + 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: 0.15592737, g: 0.4528302, b: 0.212899, 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: 0} + 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 &3594852726836260553 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2786703150809409145} + 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: 4954979150520540917} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &3333918181730215083 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4984816945355760816} + - component: {fileID: 8010161014330975730} + - component: {fileID: 1468230240002766599} + m_Layer: 0 + m_Name: Age + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4984816945355760816 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3333918181730215083} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.000014091814} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 5492538384248786368} + m_Father: {fileID: 4850789454853288318} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0} + m_AnchorMax: {x: 0.5, y: 0} + m_AnchoredPosition: {x: 0, y: 380} + m_SizeDelta: {x: 200, y: 200} + m_Pivot: {x: 0.5, y: 0} +--- !u!222 &8010161014330975730 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3333918181730215083} + m_CullTransparentMesh: 1 +--- !u!114 &1468230240002766599 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3333918181730215083} + 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: 0.7877358, g: 0.9101959, 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: 0} + 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!1 &3365727638303625293 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5334829148732001165} + - component: {fileID: 9122565909433525754} + - component: {fileID: 8476489211846277469} + - component: {fileID: 8583923629299713110} + - component: {fileID: 1930035835179652282} + m_Layer: 0 + m_Name: Title Age Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5334829148732001165 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3365727638303625293} + 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: 4850789454853288318} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0} + m_AnchorMax: {x: 0.5, y: 0} + m_AnchoredPosition: {x: 0, y: 600} + m_SizeDelta: {x: 900, y: 120} + m_Pivot: {x: 0.5, y: 0} +--- !u!222 &9122565909433525754 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3365727638303625293} + m_CullTransparentMesh: 1 +--- !u!114 &8476489211846277469 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3365727638303625293} + 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: Please select your age + 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: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, 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: 45 + m_fontSizeBase: 45 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 1 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 1024 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 0 + 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!114 &8583923629299713110 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3365727638303625293} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: 550 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: 900 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!114 &1930035835179652282 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3365727638303625293} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7e95eeedee57a194d865316493962f74, type: 3} + m_Name: + m_EditorClassIdentifier: + _padding: + m_Left: 20 + m_Right: 20 + m_Top: 0 + m_Bottom: 0 + _canvasTransform: {fileID: 4850789454853288318} + _rectTransform: {fileID: 5334829148732001165} +--- !u!1 &3401473064100447233 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3061066596265018836} + m_Layer: 0 + m_Name: Fill Area + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3061066596265018836 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3401473064100447233} + 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: 6788700909016596469} + m_Father: {fileID: 3062189088248555907} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.25} + m_AnchorMax: {x: 1, y: 0.75} + m_AnchoredPosition: {x: -5, y: 0} + m_SizeDelta: {x: -20, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &3622825385621027358 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7948806818841964819} + m_Layer: 0 + m_Name: Handle Slide Area + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7948806818841964819 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3622825385621027358} + 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: 4015975817147641079} + m_Father: {fileID: 3062189088248555907} + 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: -20, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &5232374697997425519 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 804688702734324022} + - component: {fileID: 4038592662150015341} + - component: {fileID: 2784570626448628664} + - component: {fileID: 2438868192883363062} + - component: {fileID: 2943666154357407542} + - component: {fileID: 5037358072917066326} + m_Layer: 5 + m_Name: Accept Terms + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &804688702734324022 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5232374697997425519} + 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: 4850789454853288318} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0} + m_AnchorMax: {x: 0.5, y: 0} + m_AnchoredPosition: {x: 0, y: 160} + m_SizeDelta: {x: 900, y: 150} + m_Pivot: {x: 0.5, y: 0} +--- !u!222 &4038592662150015341 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5232374697997425519} + m_CullTransparentMesh: 0 +--- !u!114 &2784570626448628664 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5232374697997425519} + 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: I have read and accepted the Terms of Service + and Privacy Policy + 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: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, 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: 32 + m_fontSizeBase: 32 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 1024 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 0 + 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: 1 + 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!114 &2438868192883363062 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5232374697997425519} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c892eed10da43ed4b97acce141c343ac, type: 3} + m_Name: + m_EditorClassIdentifier: + OnLinkedInfoClicked: + m_PersistentCalls: + m_Calls: [] + InteractableType: 0 + _text: {fileID: 2784570626448628664} +--- !u!114 &2943666154357407542 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5232374697997425519} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: 550 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: 900 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!114 &5037358072917066326 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5232374697997425519} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7e95eeedee57a194d865316493962f74, type: 3} + m_Name: + m_EditorClassIdentifier: + _padding: + m_Left: 20 + m_Right: 20 + m_Top: 0 + m_Bottom: 0 + _canvasTransform: {fileID: 4850789454853288318} + _rectTransform: {fileID: 804688702734324022} +--- !u!1 &6207888931668384929 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1082145150374751302} + - component: {fileID: 245767635721238980} + - component: {fileID: 8878415901166528132} + m_Layer: 0 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1082145150374751302 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6207888931668384929} + 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: 3062189088248555907} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.25} + m_AnchorMax: {x: 1, y: 0.75} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &245767635721238980 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6207888931668384929} + m_CullTransparentMesh: 1 +--- !u!114 &8878415901166528132 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6207888931668384929} + 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: 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 &6812732533245378429 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7672561633102850407} + - component: {fileID: 102284955177240920} + - component: {fileID: 5379178445829463977} + m_Layer: 0 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7672561633102850407 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6812732533245378429} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.000014091813} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4850789454853288318} + 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 &102284955177240920 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6812732533245378429} + m_CullTransparentMesh: 1 +--- !u!114 &5379178445829463977 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6812732533245378429} + 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: 0.7264151, g: 0.37649563, b: 0, 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: 0} + 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!1 &7064616212706733121 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5966398365350512133} + - component: {fileID: 429167937781934764} + - component: {fileID: 377777281903320227} + m_Layer: 0 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5966398365350512133 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7064616212706733121} + 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: 5084875814056517677} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.5} + m_AnchorMax: {x: 1, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 80} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &429167937781934764 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7064616212706733121} + m_CullTransparentMesh: 1 +--- !u!114 &377777281903320227 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7064616212706733121} + 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: Accept + 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: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, 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: 55 + m_fontSizeBase: 55 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 1 + 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: 0 + 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 &7828916196631203860 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6788700909016596469} + - component: {fileID: 8864841897410154552} + - component: {fileID: 3569065602490301971} + m_Layer: 0 + m_Name: Fill + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6788700909016596469 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7828916196631203860} + 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: 3061066596265018836} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 10, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8864841897410154552 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7828916196631203860} + m_CullTransparentMesh: 1 +--- !u!114 &3569065602490301971 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7828916196631203860} + 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!1 &7883170070955411281 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4015975817147641079} + - component: {fileID: 4589520447425182575} + - component: {fileID: 4404084328844096348} + m_Layer: 0 + m_Name: Handle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4015975817147641079 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7883170070955411281} + 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: 7948806818841964819} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &4589520447425182575 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7883170070955411281} + m_CullTransparentMesh: 1 +--- !u!114 &4404084328844096348 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7883170070955411281} + 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: 10913, guid: 0000000000000000f000000000000000, type: 0} + 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!1 &7893350487106835203 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 564535670855408240} + - component: {fileID: 2841138912118976492} + - component: {fileID: 3750023122513187522} + m_Layer: 0 + m_Name: Title Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &564535670855408240 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7893350487106835203} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -0.000014091813} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 3402459653523440223} + 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 &2841138912118976492 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7893350487106835203} + m_CullTransparentMesh: 1 +--- !u!114 &3750023122513187522 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7893350487106835203} + 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: Legal Terms and Privacy + 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: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, 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: 50 + m_fontSizeBase: 50 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 1 + 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: 0 + 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 &7974027981088642785 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5492538384248786368} + - component: {fileID: 7626006561389355029} + - component: {fileID: 3856024409663845496} + m_Layer: 0 + m_Name: Age Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5492538384248786368 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7974027981088642785} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -0.000014091813} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4984816945355760816} + 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 &7626006561389355029 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7974027981088642785} + m_CullTransparentMesh: 1 +--- !u!114 &3856024409663845496 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7974027981088642785} + 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: 75+ + 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: 4283387727 + m_fontColor: {r: 0.31132078, g: 0.31132078, b: 0.31132078, 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: 70 + m_fontSizeBase: 70 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 1 + 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: 0 + 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 &9119726070845483207 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3062189088248555907} + - component: {fileID: 7537549761393264470} + - component: {fileID: 4753969890993058274} + - component: {fileID: 3519219885681603125} + m_Layer: 0 + m_Name: Age Slider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3062189088248555907 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9119726070845483207} + 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: 1082145150374751302} + - {fileID: 3061066596265018836} + - {fileID: 7948806818841964819} + m_Father: {fileID: 4850789454853288318} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0} + m_AnchorMax: {x: 0.5, y: 0} + m_AnchoredPosition: {x: 0, y: 260} + m_SizeDelta: {x: 600, y: 100} + m_Pivot: {x: 0.5, y: 0} +--- !u!114 &7537549761393264470 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9119726070845483207} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, 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: 4404084328844096348} + m_FillRect: {fileID: 6788700909016596469} + m_HandleRect: {fileID: 4015975817147641079} + m_Direction: 0 + m_MinValue: 0 + m_MaxValue: 1 + m_WholeNumbers: 0 + m_Value: 0 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &4753969890993058274 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9119726070845483207} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: 400 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: 600 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!114 &3519219885681603125 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9119726070845483207} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7e95eeedee57a194d865316493962f74, type: 3} + m_Name: + m_EditorClassIdentifier: + _padding: + m_Left: 50 + m_Right: 50 + m_Top: 0 + m_Bottom: 0 + _canvasTransform: {fileID: 4850789454853288318} + _rectTransform: {fileID: 3062189088248555907} diff --git a/Assets/Addressables/Prefabs/UI/Compliance Screen.prefab.meta b/Assets/Addressables/Prefabs/UI/Compliance Screen.prefab.meta new file mode 100644 index 0000000..8beceb5 --- /dev/null +++ b/Assets/Addressables/Prefabs/UI/Compliance Screen.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ef7c21e1a03525049902a5900d97296b +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Addressables/Prefabs/UI/GameOver.prefab b/Assets/Addressables/Prefabs/UI/GameOver.prefab index d616b58..ae2e8c0 100644 --- a/Assets/Addressables/Prefabs/UI/GameOver.prefab +++ b/Assets/Addressables/Prefabs/UI/GameOver.prefab @@ -31,7 +31,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: - {fileID: 8888393764403680137} - - {fileID: 1916564910930412822} - {fileID: 6155545497478531591} m_Father: {fileID: 8040406546790943630} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -275,142 +274,6 @@ MonoBehaviour: m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} ---- !u!1 &5308423537317920190 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1067198263523647385} - - component: {fileID: 719925189273626985} - - component: {fileID: 5053560022103381018} - m_Layer: 0 - m_Name: Text (TMP) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1067198263523647385 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5308423537317920190} - 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: 1916564910930412822} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0.5} - m_AnchorMax: {x: 1, y: 0.5} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 80} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &719925189273626985 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5308423537317920190} - m_CullTransparentMesh: 1 ---- !u!114 &5053560022103381018 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5308423537317920190} - 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: 'Main 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: 4294967295 - m_fontColor: {r: 1, g: 1, b: 1, 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: 55 - m_fontSizeBase: 55 - m_fontWeight: 400 - m_enableAutoSizing: 0 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 1 - 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: 0 - 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 &5547511152738785224 GameObject: m_ObjectHideFlags: 0 @@ -447,7 +310,7 @@ RectTransform: 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: -103} + m_AnchoredPosition: {x: 0, y: -50} m_SizeDelta: {x: 350, y: 80} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2225631717637103938 @@ -544,7 +407,7 @@ GameObject: - component: {fileID: 1667870358566172999} - component: {fileID: 4050196260001609621} - component: {fileID: 1738692008402236969} - - component: {fileID: 3444425678785541353} + - component: {fileID: 3430453974107673424} m_Layer: 0 m_Name: GameOver m_TagString: Untagged @@ -636,7 +499,7 @@ MonoBehaviour: m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 ---- !u!114 &3444425678785541353 +--- !u!114 &3430453974107673424 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -649,7 +512,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _restartButton: {fileID: 7919024974407248782} - _menuButton: {fileID: 3389894622908879729} --- !u!1 &8674405699159418164 GameObject: m_ObjectHideFlags: 0 @@ -784,124 +646,3 @@ MonoBehaviour: m_hasFontAssetChanged: 0 m_baseMaterial: {fileID: 0} m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!1 &9213485934605681848 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1916564910930412822} - - component: {fileID: 5241422979271185606} - - component: {fileID: 4594187078491169493} - - component: {fileID: 3389894622908879729} - m_Layer: 0 - m_Name: Menu Button - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1916564910930412822 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 9213485934605681848} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: -0.000014091813} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1067198263523647385} - m_Father: {fileID: 5979233946907160210} - 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: 2} - m_SizeDelta: {x: 350, y: 80} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &5241422979271185606 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 9213485934605681848} - m_CullTransparentMesh: 1 ---- !u!114 &4594187078491169493 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 9213485934605681848} - 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: 0.2742079, g: 0.41926694, b: 0.735849, 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: 0} - 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 &3389894622908879729 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 9213485934605681848} - 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: 4594187078491169493} - m_OnClick: - m_PersistentCalls: - m_Calls: [] diff --git a/Assets/Addressables/Prefabs/UI/Main Menu.prefab b/Assets/Addressables/Prefabs/UI/Main Menu.prefab index 6b7e6ac..70a25b4 100644 --- a/Assets/Addressables/Prefabs/UI/Main Menu.prefab +++ b/Assets/Addressables/Prefabs/UI/Main Menu.prefab @@ -36,6 +36,154 @@ RectTransform: m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0} +--- !u!1 &1322375912994663265 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6172804682591351759} + - component: {fileID: 5638967585537996033} + - component: {fileID: 1596324847906166226} + - component: {fileID: 8919142581489200711} + 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 &6172804682591351759 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1322375912994663265} + 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: 3782523780173138154} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: -100} + m_SizeDelta: {x: 0, y: 50} + m_Pivot: {x: 0.5, y: 1} +--- !u!222 &5638967585537996033 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1322375912994663265} + m_CullTransparentMesh: 0 +--- !u!114 &1596324847906166226 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1322375912994663265} + 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: New Text + 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: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, 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: 40 + m_fontSizeBase: 40 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 1024 + 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: 1 + 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!114 &8919142581489200711 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1322375912994663265} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b274e99333ac4aa1b398a6dd1b3e5544, type: 3} + m_Name: + m_EditorClassIdentifier: + _timeText: {fileID: 1596324847906166226} --- !u!1 &3540289814875555426 GameObject: m_ObjectHideFlags: 0 @@ -323,6 +471,7 @@ RectTransform: m_LocalScale: {x: 0, y: 0, z: 0} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 3782523780173138154} - {fileID: 6175287794206889969} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -407,3 +556,40 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _playButton: {fileID: 4130411051365883866} + _version: {fileID: 1596324847906166226} +--- !u!1 &7230541496343160329 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3782523780173138154} + m_Layer: 5 + m_Name: Top Anchor + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3782523780173138154 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7230541496343160329} + 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: 6172804682591351759} + m_Father: {fileID: 2484784257732393607} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 1} + m_Pivot: {x: 0.5, y: 1} diff --git a/Assets/Addressables/Prefabs/UI/MainHud.prefab b/Assets/Addressables/Prefabs/UI/MainHud.prefab index f652a3c..ac40e1f 100644 --- a/Assets/Addressables/Prefabs/UI/MainHud.prefab +++ b/Assets/Addressables/Prefabs/UI/MainHud.prefab @@ -33,11 +33,11 @@ RectTransform: m_Children: [] m_Father: {fileID: 1061084300570601370} 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: 99.5, y: -24.500061} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 19, y: -98} m_SizeDelta: {x: 200, y: 50} - m_Pivot: {x: 0.5, y: 0.5} + m_Pivot: {x: 0, y: 1} --- !u!222 &3453288947424691203 CanvasRenderer: m_ObjectHideFlags: 0 @@ -148,42 +148,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _timeText: {fileID: 2862778468884989277} ---- !u!1 &402287111311505682 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 6175287794206889969} - m_Layer: 5 - m_Name: Bottom Anchor - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &6175287794206889969 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 402287111311505682} - 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: 3775999967614233812} - m_Father: {fileID: 2484784257732393607} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0} - m_AnchorMax: {x: 0.5, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 1, y: 1} - m_Pivot: {x: 0.5, y: 0} --- !u!1 &754513942413332678 GameObject: m_ObjectHideFlags: 0 @@ -759,7 +723,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1061084300570601370} - - {fileID: 6175287794206889969} - {fileID: 2809302583125553861} - {fileID: 4646406758553945604} m_Father: {fileID: 0} @@ -845,10 +808,10 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _timer: {fileID: 7376234558003491297} - _version: {fileID: 8640848767783946953} _softCurrencyText: {fileID: 4740854481510900994} _hardCurrencyText: {fileID: 6358101415435684319} - _gameOverButton: {fileID: 4130411051365883866} + _pauseButton: {fileID: 2884148396236297823} + _gameOverCheatButton: {fileID: 4130411051365883866} --- !u!1 &6034930665432211601 GameObject: m_ObjectHideFlags: 0 @@ -877,6 +840,7 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 3404461263616995330} - {fileID: 6684522148409624340} m_Father: {fileID: 2484784257732393607} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -961,7 +925,7 @@ MonoBehaviour: m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 ---- !u!1 &7348712305036357961 +--- !u!1 &6972155121548819066 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -969,35 +933,120 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 4646406758553945604} + - component: {fileID: 3404461263616995330} + - component: {fileID: 4419325059332059328} + - component: {fileID: 4831058375906054780} + - component: {fileID: 2884148396236297823} m_Layer: 5 - m_Name: Bottom Right Anchor + m_Name: Pause Button m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &4646406758553945604 +--- !u!224 &3404461263616995330 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7348712305036357961} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_GameObject: {fileID: 6972155121548819066} + 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: 1777578717436243243} - m_Father: {fileID: 2484784257732393607} + - {fileID: 4285633881848256465} + m_Father: {fileID: 1061084300570601370} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 1, y: 0} - m_AnchorMax: {x: 1, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 1, y: 1} - m_Pivot: {x: 1, y: 0} ---- !u!1 &8309188452387143197 + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 20, y: -20} + m_SizeDelta: {x: 140, y: 60} + m_Pivot: {x: 0, y: 1} +--- !u!222 &4419325059332059328 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972155121548819066} + m_CullTransparentMesh: 1 +--- !u!114 &4831058375906054780 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972155121548819066} + 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 &2884148396236297823 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972155121548819066} + 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: 4831058375906054780} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &7228304480214592484 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -1005,9 +1054,9 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 9013291691210764010} - - component: {fileID: 1543650639770374770} - - component: {fileID: 6358101415435684319} + - component: {fileID: 4285633881848256465} + - component: {fileID: 5188181919099505688} + - component: {fileID: 7530710508147386512} m_Layer: 5 m_Name: Text (TMP) m_TagString: Untagged @@ -1015,40 +1064,40 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &9013291691210764010 +--- !u!224 &4285633881848256465 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8309188452387143197} + m_GameObject: {fileID: 7228304480214592484} 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: 5057211921069769458} + m_Father: {fileID: 3404461263616995330} 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 &1543650639770374770 +--- !u!222 &5188181919099505688 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8309188452387143197} - m_CullTransparentMesh: 0 ---- !u!114 &6358101415435684319 + m_GameObject: {fileID: 7228304480214592484} + m_CullTransparentMesh: 1 +--- !u!114 &7530710508147386512 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8309188452387143197} + m_GameObject: {fileID: 7228304480214592484} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} @@ -1062,7 +1111,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: 'HC: 10' + m_text: Pause m_isRightToLeft: 0 m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} @@ -1122,7 +1171,7 @@ MonoBehaviour: m_uvLineOffset: 0 m_geometrySortingOrder: 0 m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 1 + m_VertexBufferAutoSizeReduction: 0 m_useMaxVisibleDescender: 1 m_pageToDisplay: 1 m_margin: {x: 0, y: 0, z: 0, w: 0} @@ -1131,7 +1180,7 @@ MonoBehaviour: m_hasFontAssetChanged: 0 m_baseMaterial: {fileID: 0} m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!1 &8329191128115295354 +--- !u!1 &7348712305036357961 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -1139,10 +1188,45 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 3775999967614233812} - - component: {fileID: 3426287096340343322} - - component: {fileID: 8640848767783946953} - - component: {fileID: 1876336648527589724} + - component: {fileID: 4646406758553945604} + m_Layer: 5 + m_Name: Bottom Right Anchor + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4646406758553945604 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7348712305036357961} + 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: 1777578717436243243} + m_Father: {fileID: 2484784257732393607} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 1, y: 1} + m_Pivot: {x: 1, y: 0} +--- !u!1 &8309188452387143197 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 9013291691210764010} + - component: {fileID: 1543650639770374770} + - component: {fileID: 6358101415435684319} m_Layer: 5 m_Name: Text (TMP) m_TagString: Untagged @@ -1150,40 +1234,40 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &3775999967614233812 +--- !u!224 &9013291691210764010 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8329191128115295354} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_GameObject: {fileID: 8309188452387143197} + 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: 6175287794206889969} + m_Father: {fileID: 5057211921069769458} 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: 30} - m_SizeDelta: {x: 1000, y: 50} + 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 &3426287096340343322 +--- !u!222 &1543650639770374770 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8329191128115295354} + m_GameObject: {fileID: 8309188452387143197} m_CullTransparentMesh: 0 ---- !u!114 &8640848767783946953 +--- !u!114 &6358101415435684319 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8329191128115295354} + m_GameObject: {fileID: 8309188452387143197} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} @@ -1197,7 +1281,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: New Text + m_text: 'HC: 10' m_isRightToLeft: 0 m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} @@ -1206,8 +1290,8 @@ MonoBehaviour: m_fontMaterials: [] m_fontColor32: serializedVersion: 2 - rgba: 4294967295 - m_fontColor: {r: 1, g: 1, b: 1, a: 1} + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_enableVertexGradient: 0 m_colorMode: 3 m_fontColorGradient: @@ -1224,15 +1308,15 @@ MonoBehaviour: m_faceColor: serializedVersion: 2 rgba: 4294967295 - m_fontSize: 36 - m_fontSizeBase: 36 + m_fontSize: 24 + m_fontSizeBase: 24 m_fontWeight: 400 m_enableAutoSizing: 0 m_fontSizeMin: 18 m_fontSizeMax: 72 m_fontStyle: 0 m_HorizontalAlignment: 2 - m_VerticalAlignment: 1024 + m_VerticalAlignment: 512 m_textAlignment: 65535 m_characterSpacing: 0 m_wordSpacing: 0 @@ -1266,16 +1350,3 @@ MonoBehaviour: m_hasFontAssetChanged: 0 m_baseMaterial: {fileID: 0} m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!114 &1876336648527589724 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8329191128115295354} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: b274e99333ac4aa1b398a6dd1b3e5544, type: 3} - m_Name: - m_EditorClassIdentifier: - _timeText: {fileID: 8640848767783946953} diff --git a/Assets/Addressables/Prefabs/UI/Pause PopUp.prefab b/Assets/Addressables/Prefabs/UI/Pause PopUp.prefab new file mode 100644 index 0000000..e2b0ccf --- /dev/null +++ b/Assets/Addressables/Prefabs/UI/Pause PopUp.prefab @@ -0,0 +1,1166 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &754100402450272233 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5979233946907160210} + - component: {fileID: 6362614313602623654} + - component: {fileID: 8316180234624900637} + m_Layer: 0 + m_Name: PopUp + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5979233946907160210 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 754100402450272233} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.000014091813} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 8888393764403680137} + - {fileID: 4252097829230161629} + - {fileID: 1916564910930412822} + - {fileID: 6155545497478531591} + m_Father: {fileID: 8040406546790943630} + 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: 500, y: 350} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &6362614313602623654 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 754100402450272233} + m_CullTransparentMesh: 1 +--- !u!114 &8316180234624900637 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 754100402450272233} + 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: 0.7264151, g: 0.37649563, b: 0, 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: 0} + 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!1 &2331147589467892209 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4252097829230161629} + - component: {fileID: 1908581749711221794} + - component: {fileID: 7538376750090057150} + - component: {fileID: 3137452627984002173} + m_Layer: 0 + m_Name: Close Button + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4252097829230161629 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2331147589467892209} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -0.000014091813} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1449403047858634590} + m_Father: {fileID: 5979233946907160210} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -10, y: -10} + m_SizeDelta: {x: 60, y: 60} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1908581749711221794 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2331147589467892209} + m_CullTransparentMesh: 1 +--- !u!114 &7538376750090057150 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2331147589467892209} + 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: 0.53333336, g: 0, b: 0, 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: 0} + 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 &3137452627984002173 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2331147589467892209} + 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: 7538376750090057150} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &3117317406813199169 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1206896152911657450} + - component: {fileID: 2816503065540020525} + - component: {fileID: 8364285453142054092} + m_Layer: 0 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1206896152911657450 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3117317406813199169} + 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: 6155545497478531591} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.5} + m_AnchorMax: {x: 1, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 80} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &2816503065540020525 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3117317406813199169} + m_CullTransparentMesh: 1 +--- !u!114 &8364285453142054092 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3117317406813199169} + 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: 'Try Again + +' + 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: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, 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: 55 + m_fontSizeBase: 55 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 1 + 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: 0 + 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 &3464220761432571880 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5361836733299957035} + - component: {fileID: 1690625919455122978} + - component: {fileID: 2399588961572317327} + m_Layer: 0 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5361836733299957035 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3464220761432571880} + 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: 8040406546790943630} + 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 &1690625919455122978 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3464220761432571880} + m_CullTransparentMesh: 1 +--- !u!114 &2399588961572317327 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3464220761432571880} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6cd32b1e563d84059882296172ef8959, 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} +--- !u!1 &5308423537317920190 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1067198263523647385} + - component: {fileID: 719925189273626985} + - component: {fileID: 5053560022103381018} + m_Layer: 0 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1067198263523647385 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5308423537317920190} + 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: 1916564910930412822} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.5} + m_AnchorMax: {x: 1, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 80} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &719925189273626985 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5308423537317920190} + m_CullTransparentMesh: 1 +--- !u!114 &5053560022103381018 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5308423537317920190} + 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: 'Main 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: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, 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: 55 + m_fontSizeBase: 55 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 1 + 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: 0 + 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 &5408581371250289475 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1449403047858634590} + - component: {fileID: 4172213231053633688} + - component: {fileID: 8269197189512927105} + m_Layer: 0 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1449403047858634590 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5408581371250289475} + 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: 4252097829230161629} + 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 &4172213231053633688 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5408581371250289475} + m_CullTransparentMesh: 1 +--- !u!114 &8269197189512927105 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5408581371250289475} + 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: 'X + +' + 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: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, 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: 50 + m_fontSizeBase: 50 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 1 + 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: 0 + 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 &5547511152738785224 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6155545497478531591} + - component: {fileID: 2225631717637103938} + - component: {fileID: 7522316297946901352} + - component: {fileID: 7919024974407248782} + m_Layer: 0 + m_Name: Restart Button + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6155545497478531591 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5547511152738785224} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -0.000014091813} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1206896152911657450} + m_Father: {fileID: 5979233946907160210} + 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: -103} + m_SizeDelta: {x: 350, y: 80} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &2225631717637103938 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5547511152738785224} + m_CullTransparentMesh: 1 +--- !u!114 &7522316297946901352 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5547511152738785224} + 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: 0.15592737, g: 0.4528302, b: 0.212899, 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: 0} + 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 &7919024974407248782 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5547511152738785224} + 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: 7522316297946901352} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &7586352933427688475 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8040406546790943630} + - component: {fileID: 1667870358566172999} + - component: {fileID: 4050196260001609621} + - component: {fileID: 1738692008402236969} + - component: {fileID: 8034019530628614791} + m_Layer: 0 + m_Name: Pause PopUp + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &8040406546790943630 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7586352933427688475} + 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: 5361836733299957035} + - {fileID: 5979233946907160210} + m_Father: {fileID: 0} + 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: 300, y: 200} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!223 &1667870358566172999 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7586352933427688475} + 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: 0 + m_TargetDisplay: 0 +--- !u!114 &4050196260001609621 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7586352933427688475} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 1 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 750, y: 1334} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 1 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!114 &1738692008402236969 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7586352933427688475} + 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 &8034019530628614791 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7586352933427688475} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d2ce905c9bda57147aaa3e907eb6bc4e, type: 3} + m_Name: + m_EditorClassIdentifier: + _restartButton: {fileID: 7919024974407248782} + _menuButton: {fileID: 3389894622908879729} + _closeButton: {fileID: 3137452627984002173} +--- !u!1 &8674405699159418164 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8888393764403680137} + - component: {fileID: 4787496773054069580} + - component: {fileID: 2126504691442195618} + m_Layer: 0 + m_Name: Title + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8888393764403680137 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8674405699159418164} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -0.000014091813} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5979233946907160210} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.5} + m_AnchorMax: {x: 1, y: 0.5} + m_AnchoredPosition: {x: 0, y: 120} + m_SizeDelta: {x: 0, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &4787496773054069580 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8674405699159418164} + m_CullTransparentMesh: 1 +--- !u!114 &2126504691442195618 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8674405699159418164} + 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: PAUSED + 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: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, 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: 65 + m_fontSizeBase: 65 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 1 + 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: 0 + 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 &9213485934605681848 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1916564910930412822} + - component: {fileID: 5241422979271185606} + - component: {fileID: 4594187078491169493} + - component: {fileID: 3389894622908879729} + m_Layer: 0 + m_Name: Menu Button + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1916564910930412822 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9213485934605681848} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -0.000014091813} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1067198263523647385} + m_Father: {fileID: 5979233946907160210} + 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: 2} + m_SizeDelta: {x: 350, y: 80} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &5241422979271185606 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9213485934605681848} + m_CullTransparentMesh: 1 +--- !u!114 &4594187078491169493 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9213485934605681848} + 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: 0.2742079, g: 0.41926694, b: 0.735849, 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: 0} + 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 &3389894622908879729 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9213485934605681848} + 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: 4594187078491169493} + m_OnClick: + m_PersistentCalls: + m_Calls: [] diff --git a/Assets/Addressables/Prefabs/UI/Pause PopUp.prefab.meta b/Assets/Addressables/Prefabs/UI/Pause PopUp.prefab.meta new file mode 100644 index 0000000..991a495 --- /dev/null +++ b/Assets/Addressables/Prefabs/UI/Pause PopUp.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 424894bafcbe3b849ad798f009a8238e +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Src/BootSplashscreen.cs b/Assets/Src/BootSplashscreen.cs index 8508bda..92b9ef4 100644 --- a/Assets/Src/BootSplashscreen.cs +++ b/Assets/Src/BootSplashscreen.cs @@ -10,7 +10,7 @@ namespace Game /// /// The first entry object that shows the splash screen and boots the scene reference /// - public class BootSplashscreen : MonoBehaviour + public class BootSplashScreen : MonoBehaviour { [SerializeField] private AudioSource _audioSource; diff --git a/Assets/Src/Commands/AcceptComplianceCommand.cs b/Assets/Src/Commands/AcceptComplianceCommand.cs new file mode 100644 index 0000000..8b4e68f --- /dev/null +++ b/Assets/Src/Commands/AcceptComplianceCommand.cs @@ -0,0 +1,27 @@ +using Game.Logic; +using Game.Messages; +using GameLovers.Services; + +namespace Game.Commands +{ + /// + /// This command is responsible to handle the logic when the player accepts the terms of service and policy compliance + /// + public readonly struct AcceptComplianceCommand : IGameCommand + { + private readonly int _age; + + public AcceptComplianceCommand(int age) + { + _age = age; + } + + /// + public void Execute(IGameLogicLocator gameLogic, IMessageBrokerService messageBrokerService) + { + gameLogic.AppLogic.IsComplianceAccepted = true; + + messageBrokerService.PublishSafe(new ApplicationComplianceAcceptedMessage { Age = _age }); + } + } +} \ No newline at end of file diff --git a/Assets/Src/Commands/AcceptComplianceCommand.cs.meta b/Assets/Src/Commands/AcceptComplianceCommand.cs.meta new file mode 100644 index 0000000..44d2004 --- /dev/null +++ b/Assets/Src/Commands/AcceptComplianceCommand.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 13f3e71b63b641aa884df999936d45d5 +timeCreated: 1736355034 \ No newline at end of file diff --git a/Assets/Src/Commands/RestartGameCommand.cs b/Assets/Src/Commands/RestartGameCommand.cs index 509bc85..3c55677 100644 --- a/Assets/Src/Commands/RestartGameCommand.cs +++ b/Assets/Src/Commands/RestartGameCommand.cs @@ -1,4 +1,5 @@ using Game.Logic; +using Game.Messages; using GameLovers.Services; namespace Game.Commands @@ -13,6 +14,7 @@ public struct RestartGameCommand : IGameCommand public void Execute(IGameLogicLocator gameLogic, IMessageBrokerService messageBroker) { // Restart the Game data + messageBroker.Publish(new OnGameRestartMessage()); } } } \ No newline at end of file diff --git a/Assets/Src/Commands/SetupFirstTimePlayerCommand.cs b/Assets/Src/Commands/SetupFirstTimePlayerCommand.cs index c834dbf..171670e 100644 --- a/Assets/Src/Commands/SetupFirstTimePlayerCommand.cs +++ b/Assets/Src/Commands/SetupFirstTimePlayerCommand.cs @@ -11,7 +11,7 @@ public struct SetupFirstTimePlayerCommand : IGameCommand /// public void Execute(IGameLogicLocator gameLogic, IMessageBrokerService messageBroker) { - // Restart the Game data + // Setup Game data in logic } } } diff --git a/Assets/Src/Data/AppData.cs b/Assets/Src/Data/AppData.cs index bf1761f..27aafcb 100644 --- a/Assets/Src/Data/AppData.cs +++ b/Assets/Src/Data/AppData.cs @@ -30,6 +30,7 @@ public enum QualityLevel public QualityLevel GraphicQuality = QualityLevel.Medium; public bool IsFirstSession => SessionCount <= 1; + public bool IsComplianceAccepted; /// /// Copies base values for when user logs in to a new environment. diff --git a/Assets/Src/Ids/AddressableId.cs b/Assets/Src/Ids/AddressableId.cs index 62679bb..328cd2a 100644 --- a/Assets/Src/Ids/AddressableId.cs +++ b/Assets/Src/Ids/AddressableId.cs @@ -15,10 +15,12 @@ public enum AddressableId Addressables_Configs_GameConfigs, Addressables_Configs_SceneAssetConfigs, Addressables_Configs_UiConfigs, + Addressables_Prefabs_UI_Compliance_Screen, Addressables_Prefabs_UI_GameOver, Addressables_Prefabs_UI_Loading_Screen, Addressables_Prefabs_UI_Main_Menu, Addressables_Prefabs_UI_MainHud, + Addressables_Prefabs_UI_Pause_PopUp, Addressables_Scenes_Game, Addressables_Scenes_Menu } @@ -71,14 +73,16 @@ public static string ToLabelString(this AddressableLabel label) { new AddressableConfig(0, "Addressables/Scenes/Menu.unity", "Assets/Addressables/Scenes/Menu.unity", typeof(UnityEngine.SceneManagement.Scene), new [] {"GenerateIds"}), new AddressableConfig(1, "Addressables/Scenes/Game.unity", "Assets/Addressables/Scenes/Game.unity", typeof(UnityEngine.SceneManagement.Scene), new [] {"GenerateIds"}), - new AddressableConfig(2, "Addressables/Prefabs/UI/MainHud.prefab", "Assets/Addressables/Prefabs/UI/MainHud.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), - new AddressableConfig(3, "Addressables/Prefabs/UI/Main Menu.prefab", "Assets/Addressables/Prefabs/UI/Main Menu.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), - new AddressableConfig(4, "Addressables/Prefabs/UI/Loading Screen.prefab", "Assets/Addressables/Prefabs/UI/Loading Screen.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), - new AddressableConfig(5, "Addressables/Prefabs/UI/GameOver.prefab", "Assets/Addressables/Prefabs/UI/GameOver.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), - new AddressableConfig(6, "Addressables/Configs/UiConfigs.asset", "Assets/Addressables/Configs/UiConfigs.asset", typeof(GameLovers.UiService.UiConfigs), new [] {"GenerateIds"}), - new AddressableConfig(7, "Addressables/Configs/SceneAssetConfigs.asset", "Assets/Addressables/Configs/SceneAssetConfigs.asset", typeof(Game.Configs.SceneAssetConfigs), new [] {"GenerateIds"}), - new AddressableConfig(8, "Addressables/Configs/GameConfigs.asset", "Assets/Addressables/Configs/GameConfigs.asset", typeof(Game.Configs.GameConfigs), new [] {"GenerateIds"}), - new AddressableConfig(9, "Addressables/Configs/DataConfigs.asset", "Assets/Addressables/Configs/DataConfigs.asset", typeof(Game.Configs.DataConfigs), new [] {"GenerateIds"}), + new AddressableConfig(2, "Addressables/Prefabs/UI/Pause PopUp.prefab", "Assets/Addressables/Prefabs/UI/Pause PopUp.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(3, "Addressables/Prefabs/UI/MainHud.prefab", "Assets/Addressables/Prefabs/UI/MainHud.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(4, "Addressables/Prefabs/UI/Main Menu.prefab", "Assets/Addressables/Prefabs/UI/Main Menu.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(5, "Addressables/Prefabs/UI/Loading Screen.prefab", "Assets/Addressables/Prefabs/UI/Loading Screen.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(6, "Addressables/Prefabs/UI/GameOver.prefab", "Assets/Addressables/Prefabs/UI/GameOver.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(7, "Addressables/Prefabs/UI/Compliance Screen.prefab", "Assets/Addressables/Prefabs/UI/Compliance Screen.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(8, "Addressables/Configs/UiConfigs.asset", "Assets/Addressables/Configs/UiConfigs.asset", typeof(GameLovers.UiService.UiConfigs), new [] {"GenerateIds"}), + new AddressableConfig(9, "Addressables/Configs/SceneAssetConfigs.asset", "Assets/Addressables/Configs/SceneAssetConfigs.asset", typeof(Game.Configs.SceneAssetConfigs), new [] {"GenerateIds"}), + new AddressableConfig(10, "Addressables/Configs/GameConfigs.asset", "Assets/Addressables/Configs/GameConfigs.asset", typeof(Game.Configs.GameConfigs), new [] {"GenerateIds"}), + new AddressableConfig(11, "Addressables/Configs/DataConfigs.asset", "Assets/Addressables/Configs/DataConfigs.asset", typeof(Game.Configs.DataConfigs), new [] {"GenerateIds"}), }.AsReadOnly()} }); @@ -88,12 +92,14 @@ public static string ToLabelString(this AddressableLabel label) new AddressableConfig(1, "Addressables/Configs/GameConfigs.asset", "Assets/Addressables/Configs/GameConfigs.asset", typeof(Game.Configs.GameConfigs), new [] {"GenerateIds"}), new AddressableConfig(2, "Addressables/Configs/SceneAssetConfigs.asset", "Assets/Addressables/Configs/SceneAssetConfigs.asset", typeof(Game.Configs.SceneAssetConfigs), new [] {"GenerateIds"}), new AddressableConfig(3, "Addressables/Configs/UiConfigs.asset", "Assets/Addressables/Configs/UiConfigs.asset", typeof(GameLovers.UiService.UiConfigs), new [] {"GenerateIds"}), - new AddressableConfig(4, "Addressables/Prefabs/UI/GameOver.prefab", "Assets/Addressables/Prefabs/UI/GameOver.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), - new AddressableConfig(5, "Addressables/Prefabs/UI/Loading Screen.prefab", "Assets/Addressables/Prefabs/UI/Loading Screen.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), - new AddressableConfig(6, "Addressables/Prefabs/UI/Main Menu.prefab", "Assets/Addressables/Prefabs/UI/Main Menu.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), - new AddressableConfig(7, "Addressables/Prefabs/UI/MainHud.prefab", "Assets/Addressables/Prefabs/UI/MainHud.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), - new AddressableConfig(8, "Addressables/Scenes/Game.unity", "Assets/Addressables/Scenes/Game.unity", typeof(UnityEngine.SceneManagement.Scene), new [] {"GenerateIds"}), - new AddressableConfig(9, "Addressables/Scenes/Menu.unity", "Assets/Addressables/Scenes/Menu.unity", typeof(UnityEngine.SceneManagement.Scene), new [] {"GenerateIds"}) + new AddressableConfig(4, "Addressables/Prefabs/UI/Compliance Screen.prefab", "Assets/Addressables/Prefabs/UI/Compliance Screen.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(5, "Addressables/Prefabs/UI/GameOver.prefab", "Assets/Addressables/Prefabs/UI/GameOver.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(6, "Addressables/Prefabs/UI/Loading Screen.prefab", "Assets/Addressables/Prefabs/UI/Loading Screen.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(7, "Addressables/Prefabs/UI/Main Menu.prefab", "Assets/Addressables/Prefabs/UI/Main Menu.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(8, "Addressables/Prefabs/UI/MainHud.prefab", "Assets/Addressables/Prefabs/UI/MainHud.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(9, "Addressables/Prefabs/UI/Pause PopUp.prefab", "Assets/Addressables/Prefabs/UI/Pause PopUp.prefab", typeof(UnityEngine.GameObject), new [] {"GenerateIds"}), + new AddressableConfig(10, "Addressables/Scenes/Game.unity", "Assets/Addressables/Scenes/Game.unity", typeof(UnityEngine.SceneManagement.Scene), new [] {"GenerateIds"}), + new AddressableConfig(11, "Addressables/Scenes/Menu.unity", "Assets/Addressables/Scenes/Menu.unity", typeof(UnityEngine.SceneManagement.Scene), new [] {"GenerateIds"}) }.AsReadOnly(); } } diff --git a/Assets/Src/Logic/Client/AppLogic.cs b/Assets/Src/Logic/Client/AppLogic.cs index 5b4651c..52ff1e3 100644 --- a/Assets/Src/Logic/Client/AppLogic.cs +++ b/Assets/Src/Logic/Client/AppLogic.cs @@ -16,6 +16,11 @@ public interface IAppDataProvider /// Requests the information if the current game session is the first time the player is playing the game or not /// bool IsFirstSession { get; } + + /// + /// Requests the information if the player already accepted the terms of service and compliance for this game + /// + bool IsComplianceAccepted { get; } /// /// Requests the information if the game was or not yet reviewed @@ -76,6 +81,9 @@ public interface IAppDataProvider /// public interface IAppLogic : IAppDataProvider, IGameLogicInitializer { + /// + new bool IsComplianceAccepted { get; set; } + /// /// Marks the date when the game was last time reviewed /// @@ -93,6 +101,13 @@ public class AppLogic : AbstractBaseLogic, IAppLogic { private readonly DateTime _defaultZeroTime = new(2020, 1, 1); + /// + public bool IsComplianceAccepted + { + get => Data.IsComplianceAccepted; + set => Data.IsComplianceAccepted = value; + } + /// public bool IsFirstSession => Data.IsFirstSession; diff --git a/Assets/Src/Logic/GameLogicLocator.cs b/Assets/Src/Logic/GameLogicLocator.cs index b941776..03e0215 100644 --- a/Assets/Src/Logic/GameLogicLocator.cs +++ b/Assets/Src/Logic/GameLogicLocator.cs @@ -57,7 +57,7 @@ public interface IGameLogicLocator : IGameDataProviderLocator /// /// This interface provides the contract to initialize the Game Logic /// - public interface IGameLogicLocatorInit + public interface IGameLogicLocatorInit : IGameLogicLocator { /// /// Initializes the Game Logic state to it's default initial values @@ -66,7 +66,7 @@ public interface IGameLogicLocatorInit } /// - public class GameLogicLocator : IGameLogicLocator, IGameLogicLocatorInit + public class GameLogicLocator : IGameLogicLocatorInit { /// public IAppDataProvider AppDataProvider => AppLogic; diff --git a/Assets/Src/Main.cs b/Assets/Src/Main.cs index 03499dd..cf262c1 100644 --- a/Assets/Src/Main.cs +++ b/Assets/Src/Main.cs @@ -82,7 +82,7 @@ private void OnDestroy() private void Start() { - _ = OnStart(); + OnStart().Forget(); } private async UniTask OnStart() @@ -91,9 +91,9 @@ private async UniTask OnStart() EnhancedTouchSupport.Enable(); InitAtt(); - await Task.WhenAll(VersionServices.LoadVersionDataAsync(), UnityServices.InitializeAsync()); + await UniTask.WhenAll(VersionServices.LoadVersionDataAsync().AsUniTask(), UnityServices.InitializeAsync().AsUniTask()); - InitAnalytics(); + _services.Init(); _stateMachine.Run(); } @@ -135,7 +135,6 @@ private void OnApplicationQuit() _onApplicationAlreadyQuitFlag = true; _dataService.SaveAllData(); - _stateMachine.Dispose(); _services.MessageBrokerService.Publish(new ApplicationQuitMessage()); _services.AnalyticsService.SessionCalls.SessionEnd(_gameLogic.AppLogic.QuitReason); } @@ -162,13 +161,6 @@ private void TaskExceptionLogging(object sender, UnobservedTaskExceptionEventArg _services.AnalyticsService.ErrorsCalls.CrashLog(e.Exception); } - private void InitAnalytics() - { - // TODO: request data collection permition (use ask age screen for example) - Unity.Services.Analytics.AnalyticsService.Instance.StartDataCollection(); - _services.AnalyticsService.SessionCalls.PlayerLogin(SystemInfo.deviceUniqueIdentifier); - } - private void InitAtt() { #if UNITY_IOS diff --git a/Assets/Src/Messages/ApplicationStateMessages.cs b/Assets/Src/Messages/ApplicationStateMessages.cs index e402ccc..a5c72c6 100644 --- a/Assets/Src/Messages/ApplicationStateMessages.cs +++ b/Assets/Src/Messages/ApplicationStateMessages.cs @@ -4,4 +4,5 @@ namespace Game.Messages { public struct ApplicationQuitMessage : IMessage { } public struct ApplicationPausedMessage : IMessage { public bool IsPaused; } + public struct ApplicationComplianceAcceptedMessage : IMessage { public int Age; } } \ No newline at end of file diff --git a/Assets/Src/Messages/GameplayMessages.cs b/Assets/Src/Messages/GameplayMessages.cs index 1f92c09..1120a8b 100644 --- a/Assets/Src/Messages/GameplayMessages.cs +++ b/Assets/Src/Messages/GameplayMessages.cs @@ -4,7 +4,5 @@ namespace Game.Messages { public struct OnGameInitMessage : IMessage { } public struct OnGameOverMessage : IMessage { } - public struct OnGameRestartClickedMessage : IMessage { } - public struct OnReturnMenuClickedMessage : IMessage { } - public struct OnPlayClickedMessage : IMessage { } + public struct OnGameRestartMessage : IMessage { } } diff --git a/Assets/Src/Presenters/ComplianceScreenPresenter.cs b/Assets/Src/Presenters/ComplianceScreenPresenter.cs new file mode 100644 index 0000000..a10f6e9 --- /dev/null +++ b/Assets/Src/Presenters/ComplianceScreenPresenter.cs @@ -0,0 +1,73 @@ +using System.Collections.Generic; +using Freya; +using Game.Commands; +using Game.Services; +using Game.Utils; +using GameLovers.Services; +using GameLovers.UiService; +using GameLovers.UiService.Views; +using TMPro; +using UnityEngine; +using UnityEngine.UI; + +namespace Game.Presenters +{ + /// + /// This Presenter handles the Compliance Screen by: + /// - Presenting the terms of service and policy compliance for the player to read + /// - Allowing the user to accept the terms of service and policy and start the game + /// - Set the player's age + /// + public class ComplianceScreenPresenter : UiPresenter + { + [SerializeField] private Button _acceptButton; + [SerializeField] private TextMeshProUGUI _ageText; + [SerializeField] private InteractableTextView[] _interactableTextViews; + [SerializeField] private Slider _ageSlider; + + private readonly Dictionary _links = new Dictionary() + { + { "Terms", Constants.Settings.Terms_Link }, + { "Policy", Constants.Settings.Policy_Link }, + }; + + private int _age; + private IGameServicesLocator _services; + + private void Awake() + { + _services = MainInstaller.Resolve(); + + _ageSlider.onValueChanged.AddListener(OnAgeSliderValueChanged); + _acceptButton.onClick.AddListener(AcceptButtonClicked); + OnAgeSliderValueChanged(0); + + foreach (var view in _interactableTextViews) + { + view.OnLinkedInfoClicked.AddListener(OnLinkedInfoClicked); + } + } + + private void OnAgeSliderValueChanged(float newValue) + { + _age = Mathf.Lerp(0, Constants.Settings.Age_Max_Value, newValue).RoundToInt(); + _ageText.text = _age.ToString(); + _acceptButton.interactable = _age > Constants.Settings.Age_Min_Value; + + if (_age == Constants.Settings.Age_Max_Value) + { + _ageText.text += "+"; + } + } + + private void AcceptButtonClicked() + { + _services.CommandService.ExecuteCommand(new AcceptComplianceCommand(_age)); + } + + private void OnLinkedInfoClicked(TMP_LinkInfo info) + { + Application.OpenURL(_links[info.GetLinkID()]); + } + } +} \ No newline at end of file diff --git a/Assets/Src/Presenters/ComplianceScreenPresenter.cs.meta b/Assets/Src/Presenters/ComplianceScreenPresenter.cs.meta new file mode 100644 index 0000000..d120dac --- /dev/null +++ b/Assets/Src/Presenters/ComplianceScreenPresenter.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 04843fdfde254fdc981f02d71b9efc9a +timeCreated: 1736354963 \ No newline at end of file diff --git a/Assets/Src/Presenters/GameOverScreenPresenter.cs b/Assets/Src/Presenters/GameOverScreenPresenter.cs index dbacc06..b4d2bd4 100644 --- a/Assets/Src/Presenters/GameOverScreenPresenter.cs +++ b/Assets/Src/Presenters/GameOverScreenPresenter.cs @@ -1,21 +1,20 @@ -using Game.Messages; +using Game.Commands; using Game.Services; using GameLovers.Services; using GameLovers.UiService; -using System; using UnityEngine; +using UnityEngine.Events; using UnityEngine.UI; namespace Game.Presenters { /// - /// This Presenter handles the Game Over UI by: - /// - Allowing the user to restart the game by clicking the restart button button + /// This Presenter handles the Game Over Screen by: + /// - Allowing the user to restart the game /// public class GameOverScreenPresenter : UiPresenter { [SerializeField] private Button _restartButton; - [SerializeField] private Button _menuButton; private IGameServicesLocator _services; @@ -24,17 +23,11 @@ private void Awake() _services = MainInstaller.Resolve(); _restartButton.onClick.AddListener(Restart); - _menuButton.onClick.AddListener(ReturnMenu); - } - - private void ReturnMenu() - { - _services.MessageBrokerService.PublishSafe(new OnReturnMenuClickedMessage()); } private void Restart() { - _services.MessageBrokerService.PublishSafe(new OnGameRestartClickedMessage()); + _services.CommandService.ExecuteCommand(new RestartGameCommand()); } } } diff --git a/Assets/Src/Presenters/MainHudPresenter.cs b/Assets/Src/Presenters/MainHudPresenter.cs index a24ebcb..a2bf5b8 100644 --- a/Assets/Src/Presenters/MainHudPresenter.cs +++ b/Assets/Src/Presenters/MainHudPresenter.cs @@ -1,15 +1,15 @@ -using GameLovers; using GameLovers.Services; using GameLovers.UiService; +using GameLovers; using Game.Ids; using Game.Logic; +using Game.Messages; using Game.Services; using TMPro; using UnityEngine; using Game.Views; using UnityEngine.UI; -using System; -using Game.Messages; +using UnityEngine.Events; namespace Game.Presenters { @@ -17,13 +17,18 @@ namespace Game.Presenters /// This Presenter handles the Main HUD UI by: /// - Showing the HUD visual status /// - public class MainHudPresenter : UiPresenter + public class MainHudPresenter : UiPresenter { + public struct PresenterData + { + public UnityAction OnPauseClicked; + } + [SerializeField] private TimerView _timer; - [SerializeField] private TextMeshProUGUI _version; [SerializeField] private TextMeshProUGUI _softCurrencyText; [SerializeField] private TextMeshProUGUI _hardCurrencyText; - [SerializeField] private Button _gameOverButton; + [SerializeField] private Button _pauseButton; + [SerializeField] private Button _gameOverCheatButton; private IGameDataProviderLocator _dataProvider; private IGameServicesLocator _services; @@ -34,15 +39,13 @@ private void Awake() _services = MainInstaller.Resolve(); _timer.Init(_services); - _gameOverButton.onClick.AddListener(GameOverClicked); + _pauseButton.onClick.AddListener(() => Data.OnPauseClicked.Invoke()); + _gameOverCheatButton.onClick.AddListener(OnGameOverCheatButtonClicked); } - private void Start() + private void OnGameOverCheatButtonClicked() { - _version.text = - $"internal = v{VersionServices.VersionInternal}\n" + - $"external = v{VersionServices.VersionExternal}\n" + - $"build number = {VersionServices.BuildNumber}"; + _services.MessageBrokerService.Publish(new OnGameOverMessage()); } protected override void OnOpened() @@ -60,10 +63,5 @@ private void OnHardCurrencyUpdated(GameId currency, int amountBefore, int amount { _hardCurrencyText.text = $"HC: {amountAfter.ToString()}"; } - - private void GameOverClicked() - { - _services.MessageBrokerService.Publish(new OnGameOverMessage()); - } } } \ No newline at end of file diff --git a/Assets/Src/Presenters/MainMenuPresenter.cs b/Assets/Src/Presenters/MainMenuPresenter.cs index 2fa7a20..089b5f9 100644 --- a/Assets/Src/Presenters/MainMenuPresenter.cs +++ b/Assets/Src/Presenters/MainMenuPresenter.cs @@ -1,8 +1,11 @@ using Game.Messages; using Game.Services; +using GameLovers; using GameLovers.Services; using GameLovers.UiService; +using TMPro; using UnityEngine; +using UnityEngine.Events; using UnityEngine.UI; namespace Game.Presenters @@ -12,22 +15,27 @@ namespace Game.Presenters /// - Showing the Main Menu button to start the game /// - Showing game instructions and objectives about the game for the player to plat /// - public class MainMenuPresenter : UiPresenter + public class MainMenuPresenter : UiPresenter { + public struct PresenterData + { + public UnityAction OnPlayButtonClicked; + } + [SerializeField] private Button _playButton; - - private IGameServicesLocator _services; + [SerializeField] private TextMeshProUGUI _version; private void Awake() { - _services = MainInstaller.Resolve(); - - _playButton.onClick.AddListener(OnPlayButtonClicked); + _playButton.onClick.AddListener(() => Data.OnPlayButtonClicked.Invoke()); } - private void OnPlayButtonClicked() + private void Start() { - _services.MessageBrokerService.PublishSafe(new OnPlayClickedMessage()); + _version.text = + $"internal = v{VersionServices.VersionInternal}\n" + + $"external = v{VersionServices.VersionExternal}\n" + + $"build number = {VersionServices.BuildNumber}"; } } } diff --git a/Assets/Src/Presenters/PausePopUpPresenter.cs b/Assets/Src/Presenters/PausePopUpPresenter.cs new file mode 100644 index 0000000..a6a9fde --- /dev/null +++ b/Assets/Src/Presenters/PausePopUpPresenter.cs @@ -0,0 +1,44 @@ +using Game.Commands; +using Game.Services; +using GameLovers.Services; +using GameLovers.UiService; +using UnityEngine; +using UnityEngine.Events; +using UnityEngine.UI; + +namespace Game.Presenters +{ + /// + /// This Presenter handles the Pause Pop Up UI by: + /// - Allowing the user to restart the game + /// - Allowing the user to return to the main menu and leave the game at the same state + /// + public class PausePopUpPresenter : UiPresenter + { + public struct PresenterData + { + public UnityAction OnCloseClicked; + public UnityAction OnReturnMenuClicked; + } + + [SerializeField] private Button _restartButton; + [SerializeField] private Button _menuButton; + [SerializeField] private Button _closeButton; + + private IGameServicesLocator _services; + + private void Awake() + { + _services = MainInstaller.Resolve(); + + _restartButton.onClick.AddListener(Restart); + _menuButton.onClick.AddListener(() => Data.OnReturnMenuClicked.Invoke()); + _closeButton.onClick.AddListener(() => Data.OnCloseClicked.Invoke()); + } + + private void Restart() + { + _services.CommandService.ExecuteCommand(new RestartGameCommand()); + } + } +} \ No newline at end of file diff --git a/Assets/Src/Presenters/PausePopUpPresenter.cs.meta b/Assets/Src/Presenters/PausePopUpPresenter.cs.meta new file mode 100644 index 0000000..e987768 --- /dev/null +++ b/Assets/Src/Presenters/PausePopUpPresenter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d2ce905c9bda57147aaa3e907eb6bc4e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Src/Services/AnalyticsHelpers/AnalyticsSession.cs b/Assets/Src/Services/AnalyticsHelpers/AnalyticsSession.cs index e74bff0..922616f 100644 --- a/Assets/Src/Services/AnalyticsHelpers/AnalyticsSession.cs +++ b/Assets/Src/Services/AnalyticsHelpers/AnalyticsSession.cs @@ -38,10 +38,46 @@ private static bool IsTablet } } + private static Dictionary StartData => new Dictionary + { + { "client_version", VersionServices.VersionInternal }, + { "platform", Application.platform.ToString() }, + { "device", SystemInfo.deviceModel }, + { "tablet", IsTablet }, +#if UNITY_IOS + {"ios_generation", UnityEngine.iOS.Device.generation.ToString()}, + {"ios_att_enabled", UnityEngine.iOS.Device.advertisingTrackingEnabled}, +#else + { "cpu", SystemInfo.processorType }, + { "gpu_api", SystemInfo.graphicsDeviceType.ToString() }, +#endif + { "language", Application.systemLanguage.ToString() }, + { "os", SystemInfo.operatingSystem }, + //{"memory_readable", SRFileUtil.GetBytesReadable((long) SystemInfo.systemMemorySize*1024*1024)}, + }; + public AnalyticsSession(IAnalyticsService analyticsService) : base(analyticsService) { } + /// + /// Sends the mark of starting a game session + /// + public void SessionStart() + { + var loginData = StartData; + // ReSharper disable once RedundantAssignment + var source = Application.platform.ToString(); + +#if !UNITY_EDITOR && UNITY_WEBGL + source = new Uri(Application.absoluteURL).Host; +#endif + + loginData.Add("session_source", source); + + LogEvent(AnalyticsEvents.SessionStart, StartData); + } + /// /// Sends the mark of ending a game session /// @@ -144,24 +180,9 @@ public void PlayerLogin(string id) { UnityEngine.CrashReportHandler.CrashReportHandler.SetUserMetadata("player_id", id); - var loginData = new Dictionary - { - {"user_id", id }, - {"client_version", VersionServices.VersionInternal }, - {"platform", Application.platform.ToString()}, - {"device", SystemInfo.deviceModel}, - {"tablet", IsTablet}, -#if UNITY_IOS - {"ios_generation", UnityEngine.iOS.Device.generation.ToString()}, - {"ios_att_enabled", UnityEngine.iOS.Device.advertisingTrackingEnabled}, -#else - {"cpu", SystemInfo.processorType}, - {"gpu_api", SystemInfo.graphicsDeviceType.ToString()}, -#endif - {"language", Application.systemLanguage.ToString()}, - {"os", SystemInfo.operatingSystem}, - //{"memory_readable", SRFileUtil.GetBytesReadable((long) SystemInfo.systemMemorySize*1024*1024)}, - }; + var loginData = StartData; + + loginData.Add("user_id", id); LogEvent(AnalyticsEvents.PlayerLogin, loginData); } diff --git a/Assets/Src/Services/AnalyticsServices.cs b/Assets/Src/Services/AnalyticsServices.cs index 893bf9a..a9ba4df 100644 --- a/Assets/Src/Services/AnalyticsServices.cs +++ b/Assets/Src/Services/AnalyticsServices.cs @@ -1,4 +1,5 @@ using Game.Services.Analytics; +using UnityEngine.Device; namespace Game.Services { @@ -37,11 +38,10 @@ public interface IAnalyticsService AnalyticsUI UiCalls { get; } /// AnalyticsMainMenu MainMenuCalls { get; } - /// } - /// - public class AnalyticsService : IAnalyticsService + /// + public class AnalyticsService : IAnalyticsService, IGameServicesInitializer { /// public AnalyticsSession SessionCalls { get; } @@ -62,5 +62,14 @@ public AnalyticsService() UiCalls = new AnalyticsUI(this); MainMenuCalls = new AnalyticsMainMenu(this); } + + /// + public void Init() + { + // TODO: request data collection permission (use ask age screen for example) + Unity.Services.Analytics.AnalyticsService.Instance.StartDataCollection(); + SessionCalls.SessionStart(); + SessionCalls.PlayerLogin(SystemInfo.deviceUniqueIdentifier); + } } } diff --git a/Assets/Src/Services/GameServicesLocator.cs b/Assets/Src/Services/GameServicesLocator.cs index dae2cd5..a51d03a 100644 --- a/Assets/Src/Services/GameServicesLocator.cs +++ b/Assets/Src/Services/GameServicesLocator.cs @@ -6,6 +6,17 @@ namespace Game.Services { + /// + /// This interface marks the Game Service as one that needs to initialize it's internal state + /// + public interface IGameServicesInitializer + { + /// + /// Initializes the Game Service state to it's default initial values + /// + void Init(); + } + /// /// Provides access to all game's common helper services /// This services are stateless interfaces that establishes a set of available operations with deterministic response @@ -74,5 +85,14 @@ public GameServicesLocator(IInstaller installer) ConfigsProvider = installer.Resolve(); AnalyticsService = installer.Resolve(); } + + /// + /// Initializes the Game Service state to it's default initial values + /// + public void Init() + { + // ReSharper disable PossibleNullReferenceException + (AnalyticsService as IGameServicesInitializer).Init(); + } } } \ No newline at end of file diff --git a/Assets/Src/StateMachines/GameStateMachine.cs b/Assets/Src/StateMachines/GameStateMachine.cs index b8017d1..6df980a 100644 --- a/Assets/Src/StateMachines/GameStateMachine.cs +++ b/Assets/Src/StateMachines/GameStateMachine.cs @@ -9,7 +9,7 @@ namespace Game.StateMachines /// /// The State Machine that controls the entire flow of the game /// - public class GameStateMachine : IDisposable + public class GameStateMachine { private readonly IStatechart _stateMachine; private readonly IGameServicesLocator _services; @@ -30,7 +30,7 @@ public GameStateMachine(IInstaller installer) _services = installer.Resolve(); _uiService = installer.Resolve(); - _initialLoadingState = new InitialLoadingState(installer); + _initialLoadingState = new InitialLoadingState(installer, Trigger); _gameplayState = new GameplayState(installer, Trigger); _mainMenuState = new MainMenuState(installer, Trigger); _stateMachine = new Statechart(Setup); @@ -42,11 +42,6 @@ public void Run() _stateMachine.Run(); } - /// - public void Dispose() - { - } - private void Trigger(IStatechartEvent eventTrigger) { _stateMachine.Trigger(eventTrigger); diff --git a/Assets/Src/StateMachines/GameplayState.cs b/Assets/Src/StateMachines/GameplayState.cs index 919581a..ff2362c 100644 --- a/Assets/Src/StateMachines/GameplayState.cs +++ b/Assets/Src/StateMachines/GameplayState.cs @@ -19,10 +19,12 @@ namespace Game.StateMachines /// public class GameplayState { - public static readonly IStatechartEvent GAME_OVER_EVENT = new StatechartEvent("Game Over Event"); - - private static readonly IStatechartEvent RESTART_CLICKED_EVENT = new StatechartEvent("Restart Button Clicked Event"); - private static readonly IStatechartEvent MENU_CLICKED_EVENT = new StatechartEvent("Menu Clicked Event"); + public static readonly IStatechartEvent Game_Over_Event = new StatechartEvent("Game Over Event"); + public static readonly IStatechartEvent Game_Restart_Event = new StatechartEvent("Game Restart Event"); + + private static readonly IStatechartEvent _pause_Clicked_Event = new StatechartEvent("Pause Clicked Event"); + private static readonly IStatechartEvent _menu_Clicked_Event = new StatechartEvent("Menu Clicked Event"); + private static readonly IStatechartEvent _close_Clicked_Event = new StatechartEvent("Close Clicked Event"); private readonly IGameUiService _uiService; private readonly IGameServicesLocator _services; @@ -48,23 +50,31 @@ public void Setup(IStateFactory stateFactory) var gameStateCheck = stateFactory.Choice("GameOver Check"); var gameplay = stateFactory.State("Gameplay"); var gameOver = stateFactory.State("GameOver"); + var pauseScreen = stateFactory.State("Pause Screen"); initial.Transition().Target(gameplayLoading); initial.OnExit(SubscribeEvents); - - gameplayLoading.WaitingFor(LoadGameplayAssets).Target(gameplay); + + gameplayLoading.WaitingFor(LoadGameplayAssets).Target(gameStateCheck); gameStateCheck.OnEnter(GameInit); gameStateCheck.Transition().Condition(IsGameOver).Target(gameOver); gameStateCheck.Transition().Target(gameplay); gameplay.OnEnter(OpenGameplayUi); - gameplay.Event(GAME_OVER_EVENT).Target(gameOver); + gameplay.Event(Game_Over_Event).Target(gameOver); + gameplay.Event(_pause_Clicked_Event).Target(pauseScreen); gameplay.OnExit(CloseGameplayUi); + + pauseScreen.OnEnter(OpenPauseScreenUi); + pauseScreen.Event(Game_Over_Event).Target(gameOver); + pauseScreen.Event(Game_Restart_Event).Target(gameStateCheck); + pauseScreen.Event(_close_Clicked_Event).Target(gameplay); + pauseScreen.Event(_menu_Clicked_Event).Target(final); + pauseScreen.OnExit(ClosePauseScreenUi); gameOver.OnEnter(OpenGameOverUi); - gameOver.Event(RESTART_CLICKED_EVENT).OnTransition(RestartGame).Target(gameStateCheck); - gameOver.Event(MENU_CLICKED_EVENT).Target(final); + gameOver.Event(Game_Restart_Event).Target(gameStateCheck); gameOver.OnExit(CloseGameOverUi); final.OnEnter(UnloadAssets); @@ -74,8 +84,7 @@ public void Setup(IStateFactory stateFactory) private void SubscribeEvents() { _services.MessageBrokerService.Subscribe(OnGameOverMessage); - _services.MessageBrokerService.Subscribe(OnGameRestartClickedMessage); - _services.MessageBrokerService.Subscribe(OnMenutClickedMessage); + _services.MessageBrokerService.Subscribe(OnGameRestartMessage); } private void UnsubscribeEvents() @@ -85,37 +94,48 @@ private void UnsubscribeEvents() private void OnGameOverMessage(OnGameOverMessage message) { - _statechartTrigger(GAME_OVER_EVENT); + _statechartTrigger(Game_Over_Event); } - private void OnMenutClickedMessage(OnReturnMenuClickedMessage message) + private void OnGameRestartMessage(OnGameRestartMessage message) { - _statechartTrigger(MENU_CLICKED_EVENT); + _statechartTrigger(Game_Restart_Event); } - private void OnGameRestartClickedMessage(OnGameRestartClickedMessage message) + private void GameInit() { - _statechartTrigger(RESTART_CLICKED_EVENT); + _services.MessageBrokerService.Publish(new OnGameInitMessage()); } - private void GameInit() + private bool IsGameOver() { - _services.MessageBrokerService.Publish(new OnGameInitMessage()); + return false; } - private void RestartGame() + private void OpenPauseScreenUi() { - _services.CommandService.ExecuteCommand(new RestartGameCommand()); + var data = new PausePopUpPresenter.PresenterData + { + OnReturnMenuClicked = () => _statechartTrigger(_menu_Clicked_Event), + OnCloseClicked = () => _statechartTrigger(_close_Clicked_Event) + }; + + _uiService.OpenUiAsync(data).Forget(); } - private bool IsGameOver() + private void ClosePauseScreenUi() { - return false; + _uiService.CloseUi(); } private void OpenGameplayUi() { - _uiService.OpenUiAsync().Forget(); + var data = new MainHudPresenter.PresenterData + { + OnPauseClicked = () => _statechartTrigger(_pause_Clicked_Event) + }; + + _uiService.OpenUiAsync(data).Forget(); } private void CloseGameplayUi() diff --git a/Assets/Src/StateMachines/InitialLoadingState.cs b/Assets/Src/StateMachines/InitialLoadingState.cs index ade6305..eced01e 100644 --- a/Assets/Src/StateMachines/InitialLoadingState.cs +++ b/Assets/Src/StateMachines/InitialLoadingState.cs @@ -1,3 +1,4 @@ +using System; using Game.Configs; using Game.Data; using GameLovers.ConfigsProvider; @@ -10,6 +11,9 @@ using UnityEngine; using Game.Commands; using Cysharp.Threading.Tasks; +using Game.Messages; +using Game.Presenters; +using Game.Utils; using GameLovers.AssetsImporter; namespace Game.StateMachines @@ -19,14 +23,17 @@ namespace Game.StateMachines /// internal class InitialLoadingState { + private static readonly IStatechartEvent _compliance_Clicked_Event = new StatechartEvent("Compliance Accept Clicked Event"); + private readonly IGameServicesLocator _services; private readonly IGameLogicLocatorInit _gameLogic; private readonly IGameUiServiceInit _uiService; private readonly IConfigsAdder _configsAdder; private readonly IDataService _dataService; private readonly IAssetAdderService _assetAdderService; + private readonly Action _statechartTrigger; - public InitialLoadingState(IInstaller installer) + public InitialLoadingState(IInstaller installer, Action statechartTrigger) { _gameLogic = installer.Resolve(); _services = installer.Resolve(); @@ -34,6 +41,7 @@ public InitialLoadingState(IInstaller installer) _configsAdder = installer.Resolve(); _dataService = installer.Resolve(); _assetAdderService = installer.Resolve(); + _statechartTrigger = statechartTrigger; } /// @@ -45,17 +53,26 @@ public void Setup(IStateFactory stateFactory) var final = stateFactory.Final("Final"); var dataLoading = stateFactory.TaskWait("Initial device data loading"); var uiLoading = stateFactory.TaskWait("Initial Ui loading"); + var compliance = stateFactory.State("Compliance Pop Up"); + var complianceCheck = stateFactory.Choice("Compliance Check"); initial.Transition().Target(dataLoading); initial.OnExit(SubscribeEvents); dataLoading.OnEnter(InitPlugins); - dataLoading.OnEnter(LoadGameData); dataLoading.WaitingFor(LoadConfigs).Target(uiLoading); dataLoading.OnExit(InitGameLogic); - uiLoading.WaitingFor(LoadInitialUi).Target(final); + uiLoading.WaitingFor(LoadInitialUi).Target(complianceCheck); + complianceCheck.Transition().Condition(IsComplianceAccepted).Target(final); + complianceCheck.Transition().Target(compliance); + + compliance.OnEnter(OpenCompliancePopUp); + compliance.Event(_compliance_Clicked_Event).Target(final); + compliance.OnExit(CloseCompliancePopUp); + + final.OnEnter(FirstTimeSetup); final.OnEnter(UnsubscribeEvents); } @@ -86,9 +103,18 @@ private void InitGameLogic() { LoadGameData(); _gameLogic.Init(_dataService, _services); + } + + private void FirstTimeSetup() + { _services.CommandService.ExecuteCommand(new SetupFirstTimePlayerCommand()); } + private bool IsComplianceAccepted() + { + return _gameLogic.AppLogic.IsComplianceAccepted || !Constants.Settings.IsComplianceEnabled; + } + private async UniTask LoadConfigs() { var tasks = new UniTask[] @@ -141,5 +167,20 @@ private void LoadGameData() appData.LastLoginTime = appData.LoginTime; appData.LoginTime = time; } + + private void OnApplicationComplianceAcceptedMessage(ApplicationComplianceAcceptedMessage obj) + { + _statechartTrigger(_compliance_Clicked_Event); + } + + private void OpenCompliancePopUp() + { + _uiService.OpenUiAsync().Forget(); + } + + private void CloseCompliancePopUp() + { + _uiService.CloseUi(true); + } } } \ No newline at end of file diff --git a/Assets/Src/StateMachines/MainMenuState.cs b/Assets/Src/StateMachines/MainMenuState.cs index 1f3700d..8a7c278 100644 --- a/Assets/Src/StateMachines/MainMenuState.cs +++ b/Assets/Src/StateMachines/MainMenuState.cs @@ -1,21 +1,13 @@ using Cysharp.Threading.Tasks; using Game.Ids; using Game.Logic; -using Game.Messages; using Game.Presenters; using Game.Services; -using Game.Utils; using GameLovers.Services; using GameLovers.StatechartMachine; using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; using UnityEngine; -using UnityEngine.Analytics; using UnityEngine.SceneManagement; -using static Game.Utils.Constants; namespace Game.StateMachines { @@ -24,7 +16,7 @@ namespace Game.StateMachines /// public class MainMenuState { - private static readonly IStatechartEvent PLAY_CLICKED_EVENT = new StatechartEvent("Play Button Clicked Event"); + private static readonly IStatechartEvent _play_Clicked_Event = new StatechartEvent("Play Button Clicked Event"); private readonly IGameUiService _uiService; private readonly IGameServicesLocator _services; @@ -52,7 +44,7 @@ public void Setup(IStateFactory stateFactory) menuLoading.WaitingFor(LoadMenuAssets).Target(mainScreen); mainScreen.OnEnter(OpenMainScreenUi); - mainScreen.Event(PLAY_CLICKED_EVENT).Target(final); + mainScreen.Event(_play_Clicked_Event).Target(final); mainScreen.OnExit(CloseMainScreenUi); final.OnEnter(UnloadAssets); @@ -61,7 +53,7 @@ public void Setup(IStateFactory stateFactory) private void SubscribeEvents() { - _services.MessageBrokerService.Subscribe(OnPlayClickedMessage); + // Subscribe to any events } private void UnsubscribeEvents() @@ -71,7 +63,12 @@ private void UnsubscribeEvents() private void OpenMainScreenUi() { - _uiService.OpenUiAsync().Forget(); + var data = new MainMenuPresenter.PresenterData + { + OnPlayButtonClicked = () => _statechartTrigger(_play_Clicked_Event) + }; + + _uiService.OpenUiAsync(data).Forget(); } private void CloseMainScreenUi() @@ -79,11 +76,6 @@ private void CloseMainScreenUi() _uiService.CloseUi(); } - private void OnPlayClickedMessage(OnPlayClickedMessage messagage) - { - _statechartTrigger(PLAY_CLICKED_EVENT); - } - private async UniTask LoadMenuAssets() { await UniTask.WhenAll( diff --git a/Assets/Src/Utils/Constants.cs b/Assets/Src/Utils/Constants.cs index d74f17a..a93e5e4 100644 --- a/Assets/Src/Utils/Constants.cs +++ b/Assets/Src/Utils/Constants.cs @@ -22,6 +22,18 @@ public static class Prefabs // TODO: Add prefab-related constants here. } + /// + /// Constants related to the game's settings + /// + public static class Settings + { + public const bool IsComplianceEnabled = false; + public const int Age_Max_Value = 75; + public const int Age_Min_Value = 13; + public const string Policy_Link = "https://www.termsfeed.com/live/0bc5d145-ec29-484d-ba2d-b99eeba1e3fd"; + public const string Terms_Link = "https://www.termsfeed.com/live/44fc48bf-77f7-4720-9bf4-4409391295f5"; + } + /// /// Constants related to the game's gameplay mechanics. /// diff --git a/Assets/Src/ViewControllers/ViewControllerBase.cs b/Assets/Src/ViewControllers/ViewControllerBase.cs new file mode 100644 index 0000000..f5f4299 --- /dev/null +++ b/Assets/Src/ViewControllers/ViewControllerBase.cs @@ -0,0 +1,30 @@ +using UnityEngine; + +namespace Game.ViewControllers +{ + /// + /// Base class for all View Controllers in the project. + /// + [RequireComponent(typeof(RectTransform))] + public class ViewControllerBase : MonoBehaviour + { + [SerializeField] private RectTransform _rectTransform; + + /// + /// The RectTransform component attached to this GameObject. + /// + public RectTransform RectTransform => _rectTransform; + + private void OnValidate() + { + _rectTransform = _rectTransform != null ? _rectTransform : GetComponent(); + + OnEditorValidate(); + } + + /// + /// Called only in the Editor. Called in the end of this object MonoBehaviour's OnValidate() -> + /// + protected virtual void OnEditorValidate() { } + } +} \ No newline at end of file diff --git a/Assets/Src/ViewControllers/ViewControllerBase.cs.meta b/Assets/Src/ViewControllers/ViewControllerBase.cs.meta new file mode 100644 index 0000000..de9f442 --- /dev/null +++ b/Assets/Src/ViewControllers/ViewControllerBase.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b3d49e27c1954574b82fe8973f710038 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 3cb5974..98f3b62 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -24,7 +24,7 @@ "com.gamelovers.configsprovider": "0.1.1", "com.cysharp.unitask": "2.5.10" }, - "hash": "9bfd59efb1d2ecc2f3925270f523b996ae9e5888" + "hash": "2c212648e4addf3a353d332ef40a128a09d41623" }, "com.gamelovers.configsprovider": { "version": "https://github.com/CoderGamester/Unity-ConfigsProvider.git", @@ -38,7 +38,7 @@ "depth": 0, "source": "git", "dependencies": {}, - "hash": "adfa87b6b0b52577f3133eb76d6746be74e34362" + "hash": "740ad1ac6da65170f0e55e9305e1f26172783de6" }, "com.gamelovers.googlesheetimporter": { "version": "https://github.com/CoderGamester/Unity-GoogleSheet-Importer.git", @@ -58,7 +58,7 @@ "dependencies": { "com.gamelovers.dataextensions": "0.6.2" }, - "hash": "ee0c43ea82daed8e12e242a399d02c0de439cae4" + "hash": "9cf72f85d107f7f292881bb47f05ddaa698f339f" }, "com.gamelovers.statechart": { "version": "https://github.com/CoderGamester/com.gamelovers.statechart.git", @@ -75,9 +75,10 @@ "source": "git", "dependencies": { "com.unity.addressables": "1.22.0", - "com.cysharp.unitask": "2.5.10" + "com.cysharp.unitask": "2.5.10", + "com.unity.textmeshpro": "3.0.9" }, - "hash": "cc8cccd73382f1cf4935a5cc95399a0eb8a39de8" + "hash": "97e607dee6f704870105a7ed165edf566520baff" }, "com.unity.2d.sprite": { "version": "1.0.0", diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index 5717214..4900a37 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -141,8 +141,7 @@ PlayerSettings: visionOSBundleVersion: 1.0 tvOSBundleVersion: 1.0 bundleVersion: 1.0 - preloadedAssets: - - {fileID: 11400000, guid: c3452a039b34041249d840c527f7b803, type: 2} + preloadedAssets: [] metroInputSource: 0 wsaTransparentSwapchain: 0 m_HolographicPauseOnTrackingLoss: 1 diff --git a/ProjectSettings/QualitySettings.asset b/ProjectSettings/QualitySettings.asset index 871daa5..5c3ae71 100644 --- a/ProjectSettings/QualitySettings.asset +++ b/ProjectSettings/QualitySettings.asset @@ -301,9 +301,4 @@ QualitySettings: terrainMaxTrees: 50 excludedTargetPlatforms: [] m_TextureMipmapLimitGroupNames: [] - m_PerPlatformDefaultQuality: - Android: 0 - Server: 0 - Standalone: 0 - WebGL: 0 - iPhone: 0 + m_PerPlatformDefaultQuality: {} diff --git a/README.md b/README.md index 46338c0..6fcb2bc 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # Core-Game -This project is a the core foundation of a new game project. +This repository is a the core foundation of a new game project. - Open in Unity 2022.3.1f or later - Open Addressables Groups page and generate Addressables settings. Window > Asset Management > Addressables > Groups > Generate Settings