From eba2befc5ff236989afd5135595a9fa4521506dc Mon Sep 17 00:00:00 2001 From: AlexanderT Date: Thu, 6 Nov 2025 17:49:44 +0100 Subject: [PATCH] Good-enough-for-now appswitcher --- .../UI/AppSwitcher/AppSwitcher.controller | 118 +++++- .../Prefabs/UI/AppSwitcher/AppSwitcher.prefab | 276 +++++++++----- Assets/Prefabs/UI/AppSwitcher/GamesHide.anim | 336 ++++++++++++++++++ .../UI/AppSwitcher/GamesHide.anim.meta | 8 + .../Prefabs/UI/AppSwitcher/GamesReveal.anim | 286 ++++++++++++++- .../Prefabs/UI/AppSwitcher/GradientMask_L.png | Bin 0 -> 23238 bytes .../UI/AppSwitcher/GradientMask_L.png.meta | 182 ++++++++++ Assets/Prefabs/UI/AppSwitcher/Nothing.anim | 53 +++ .../Prefabs/UI/AppSwitcher/Nothing.anim.meta | 8 + Assets/Scripts/AppleHillsScripts.asmdef | 4 +- Assets/Scripts/UI/AppSwitcher.cs | 64 +++- 11 files changed, 1221 insertions(+), 114 deletions(-) create mode 100644 Assets/Prefabs/UI/AppSwitcher/GamesHide.anim create mode 100644 Assets/Prefabs/UI/AppSwitcher/GamesHide.anim.meta create mode 100644 Assets/Prefabs/UI/AppSwitcher/GradientMask_L.png create mode 100644 Assets/Prefabs/UI/AppSwitcher/GradientMask_L.png.meta create mode 100644 Assets/Prefabs/UI/AppSwitcher/Nothing.anim create mode 100644 Assets/Prefabs/UI/AppSwitcher/Nothing.anim.meta diff --git a/Assets/Prefabs/UI/AppSwitcher/AppSwitcher.controller b/Assets/Prefabs/UI/AppSwitcher/AppSwitcher.controller index 7a89d071..cca9d2bf 100644 --- a/Assets/Prefabs/UI/AppSwitcher/AppSwitcher.controller +++ b/Assets/Prefabs/UI/AppSwitcher/AppSwitcher.controller @@ -1,5 +1,58 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!1102 &-7925442279578022247 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GamesReveal + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 7062606085433768137} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: d98c1c5a56614f14dbcbfaae924b11c4, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1102 &-892202757677891130 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Nothing + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: [] + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 03e9ebef6e8f3714dadb35518db48d9e, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: --- !u!91 &9100000 AnimatorController: m_ObjectHideFlags: 0 @@ -22,17 +75,18 @@ AnimatorController: m_IKPass: 0 m_SyncedLayerAffectsTiming: 0 m_Controller: {fileID: 9100000} ---- !u!1102 &7459218172547977365 +--- !u!1102 &1937208649765278840 AnimatorState: serializedVersion: 6 m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: GamesReveal + m_Name: GamesHide m_Speed: 1 m_CycleOffset: 0 - m_Transitions: [] + m_Transitions: + - {fileID: 9045810123333709691} m_StateMachineBehaviours: [] m_Position: {x: 50, y: 50, z: 0} m_IKOnFeet: 0 @@ -42,12 +96,34 @@ AnimatorState: m_MirrorParameterActive: 0 m_CycleOffsetParameterActive: 0 m_TimeParameterActive: 0 - m_Motion: {fileID: 7400000, guid: d98c1c5a56614f14dbcbfaae924b11c4, type: 2} + m_Motion: {fileID: 7400000, guid: 7dbf741cd423141499b1004b03179040, type: 2} m_Tag: m_SpeedParameter: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: +--- !u!1101 &7062606085433768137 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: [] + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -892202757677891130} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0.2500002 + m_ExitTime: 1 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1107 &7747089605097924253 AnimatorStateMachine: serializedVersion: 6 @@ -58,8 +134,14 @@ AnimatorStateMachine: m_Name: Base Layer m_ChildStates: - serializedVersion: 1 - m_State: {fileID: 7459218172547977365} - m_Position: {x: 200, y: 0, z: 0} + m_State: {fileID: -7925442279578022247} + m_Position: {x: 400, y: 370, z: 0} + - serializedVersion: 1 + m_State: {fileID: -892202757677891130} + m_Position: {x: -20, y: 260, z: 0} + - serializedVersion: 1 + m_State: {fileID: 1937208649765278840} + m_Position: {x: 489.1548, y: 156.18289, z: 0} m_ChildStateMachines: [] m_AnyStateTransitions: [] m_EntryTransitions: [] @@ -69,4 +151,26 @@ AnimatorStateMachine: m_EntryPosition: {x: 50, y: 120, z: 0} m_ExitPosition: {x: 800, y: 120, z: 0} m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} - m_DefaultState: {fileID: 7459218172547977365} + m_DefaultState: {fileID: -892202757677891130} +--- !u!1101 &9045810123333709691 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: [] + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -892202757677891130} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0.2500002 + m_ExitTime: 1 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 diff --git a/Assets/Prefabs/UI/AppSwitcher/AppSwitcher.prefab b/Assets/Prefabs/UI/AppSwitcher/AppSwitcher.prefab index 569597b2..595b70b9 100644 --- a/Assets/Prefabs/UI/AppSwitcher/AppSwitcher.prefab +++ b/Assets/Prefabs/UI/AppSwitcher/AppSwitcher.prefab @@ -33,10 +33,10 @@ RectTransform: m_Children: [] m_Father: {fileID: 808554455652734252} 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_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 575, y: -175} + m_SizeDelta: {x: 350, y: 350} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &7670686293654581447 CanvasRenderer: @@ -140,7 +140,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &808554455652734252 RectTransform: m_ObjectHideFlags: 0 @@ -213,7 +213,7 @@ MonoBehaviour: m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 0 + m_PresetInfoIsWorld: 1 --- !u!114 &2067723300378757955 MonoBehaviour: m_ObjectHideFlags: 0 @@ -302,9 +302,10 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 1495118611075801417} - {fileID: 6108475066390421500} + - {fileID: 1495118611075801417} - {fileID: 808554455652734252} + - {fileID: 2831878373711017175} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} @@ -330,7 +331,7 @@ Canvas: m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_VertexColorAlwaysGammaSpace: 0 - m_AdditionalShaderChannelsFlag: 0 + m_AdditionalShaderChannelsFlag: 25 m_UpdateRectTransformForStandalone: 0 m_SortingLayerID: 0 m_SortingOrder: 0 @@ -391,6 +392,10 @@ MonoBehaviour: iconEstablish: {fileID: 4900000, guid: 975218623da47f8428c484d886554a6c, type: 3} rainbowEstablish: {fileID: 4900000, guid: 622be2ef9d5e27d45a9deaf7ed805f5f, type: 3} rainbowRemove: {fileID: 4900000, guid: 589505308c5daf449800f30dd4b92ce7, type: 3} + rainbow: {fileID: 5382650426034128680} + icon: {fileID: 6784053660381911346} + gameLayoutContainer: {fileID: 904161782565348054} + exitButton: {fileID: 8427602740714176801} --- !u!95 &1630362919770549177 Animator: serializedVersion: 7 @@ -403,7 +408,7 @@ Animator: m_Avatar: {fileID: 0} m_Controller: {fileID: 9100000, guid: fc380d833ededb441a23b106de60bedd, type: 2} m_CullingMode: 0 - m_UpdateMode: 0 + m_UpdateMode: 2 m_ApplyRootMotion: 0 m_LinearVelocityBlending: 0 m_StabilizeFeet: 0 @@ -446,10 +451,10 @@ RectTransform: m_Children: [] m_Father: {fileID: 808554455652734252} 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_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 175, y: -175} + m_SizeDelta: {x: 350, y: 350} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &5202528408868194557 CanvasRenderer: @@ -566,10 +571,10 @@ RectTransform: m_Children: [] m_Father: {fileID: 808554455652734252} 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_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 575, y: -525} + m_SizeDelta: {x: 350, y: 350} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &7111319629604953586 CanvasRenderer: @@ -686,10 +691,10 @@ RectTransform: m_Children: [] m_Father: {fileID: 808554455652734252} 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_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 1375, y: -525} + m_SizeDelta: {x: 350, y: 350} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2798344154664392825 CanvasRenderer: @@ -785,7 +790,6 @@ GameObject: - component: {fileID: 2398693306920598044} - component: {fileID: 7920249735731934357} - component: {fileID: 3566391948883171773} - - component: {fileID: 4945899005621043885} m_Layer: 5 m_Name: Rainbow m_TagString: Untagged @@ -863,66 +867,10 @@ MonoBehaviour: customResolution: 0 resWidth: 250 resHeight: 250 - stateName: Establish + stateName: resetAfterFinished: 0 - autoPlay: 1 - loop: 1 ---- !u!114 &4945899005621043885 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5382650426034128680} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Button - 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: 7920249735731934357} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 8074691980395114238} - m_TargetAssemblyTypeName: AppSwitcher, AppleHillsScripts - m_MethodName: OpenAppSwitcher - m_Mode: 1 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 + autoPlay: 0 + loop: 0 --- !u!1 &5867455130109727138 GameObject: m_ObjectHideFlags: 0 @@ -956,10 +904,10 @@ RectTransform: m_Children: [] m_Father: {fileID: 808554455652734252} 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_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 975, y: -525} + m_SizeDelta: {x: 350, y: 350} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &4463585802635716478 CanvasRenderer: @@ -1080,7 +1028,7 @@ RectTransform: m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 200.00006, y: 200} + m_SizeDelta: {x: 200, y: 200} m_Pivot: {x: 1, y: 1} --- !u!222 &9118909078554628244 CanvasRenderer: @@ -1226,10 +1174,10 @@ RectTransform: m_Children: [] m_Father: {fileID: 808554455652734252} 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_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 975, y: -175} + m_SizeDelta: {x: 350, y: 350} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &1837100814706501290 CanvasRenderer: @@ -1346,10 +1294,10 @@ RectTransform: m_Children: [] m_Father: {fileID: 808554455652734252} 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_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 1375, y: -175} + m_SizeDelta: {x: 350, y: 350} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2558485289845989124 CanvasRenderer: @@ -1466,10 +1414,10 @@ RectTransform: m_Children: [] m_Father: {fileID: 808554455652734252} 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_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 175, y: -525} + m_SizeDelta: {x: 350, y: 350} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8886872053420634697 CanvasRenderer: @@ -1553,3 +1501,135 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: [] +--- !u!1 &8427602740714176801 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2831878373711017175} + - component: {fileID: 5972191288640444065} + - component: {fileID: 236099612463072939} + - component: {fileID: 447310668687539451} + m_Layer: 5 + m_Name: CloseUIButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &2831878373711017175 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8427602740714176801} + 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: 1315170081792486277} + 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: 300} + m_SizeDelta: {x: 128, y: 128} + m_Pivot: {x: 0.5, y: 0} +--- !u!222 &5972191288640444065 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8427602740714176801} + m_CullTransparentMesh: 1 +--- !u!114 &236099612463072939 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8427602740714176801} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image + 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: 607773040016097035, guid: ee014bd71cac2bc4ab845f435726f383, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &447310668687539451 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8427602740714176801} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Button + 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: 236099612463072939} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 8074691980395114238} + m_TargetAssemblyTypeName: AppSwitcher, AppleHillsScripts + m_MethodName: CloseAppSwitcher + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 diff --git a/Assets/Prefabs/UI/AppSwitcher/GamesHide.anim b/Assets/Prefabs/UI/AppSwitcher/GamesHide.anim new file mode 100644 index 00000000..a102b49f --- /dev/null +++ b/Assets/Prefabs/UI/AppSwitcher/GamesHide.anim @@ -0,0 +1,336 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GamesHide + serializedVersion: 7 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 1700 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.x + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.y + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.z + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.w + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + m_PPtrCurves: [] + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 785497345 + attribute: 1842203508 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + typeID: 114 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 785497345 + attribute: 449510370 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + typeID: 114 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 785497345 + attribute: 2210638424 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + typeID: 114 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 785497345 + attribute: 4252161765 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + typeID: 114 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 0.6666667 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 0 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 1700 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.x + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.y + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.z + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.w + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: + - time: 0.6666667 + functionName: GamesHiddenAnimationEvent + data: + objectReferenceParameter: {fileID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 diff --git a/Assets/Prefabs/UI/AppSwitcher/GamesHide.anim.meta b/Assets/Prefabs/UI/AppSwitcher/GamesHide.anim.meta new file mode 100644 index 00000000..2a5ec3e7 --- /dev/null +++ b/Assets/Prefabs/UI/AppSwitcher/GamesHide.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7dbf741cd423141499b1004b03179040 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/UI/AppSwitcher/GamesReveal.anim b/Assets/Prefabs/UI/AppSwitcher/GamesReveal.anim index 9dab2cf9..6d94219e 100644 --- a/Assets/Prefabs/UI/AppSwitcher/GamesReveal.anim +++ b/Assets/Prefabs/UI/AppSwitcher/GamesReveal.anim @@ -16,7 +16,127 @@ AnimationClip: m_EulerCurves: [] m_PositionCurves: [] m_ScaleCurves: [] - m_FloatCurves: [] + m_FloatCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1700 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.x + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.y + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.z + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.w + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 m_PPtrCurves: [] m_SampleRate: 60 m_WrapMode: 0 @@ -24,19 +144,55 @@ AnimationClip: m_Center: {x: 0, y: 0, z: 0} m_Extent: {x: 0, y: 0, z: 0} m_ClipBindingConstant: - genericBindings: [] + genericBindings: + - serializedVersion: 2 + path: 785497345 + attribute: 1842203508 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + typeID: 114 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 785497345 + attribute: 449510370 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + typeID: 114 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 785497345 + attribute: 2210638424 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + typeID: 114 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 785497345 + attribute: 4252161765 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + typeID: 114 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 pptrCurveMapping: [] m_AnimationClipSettings: serializedVersion: 2 m_AdditiveReferencePoseClip: {fileID: 0} m_AdditiveReferencePoseTime: 0 m_StartTime: 0 - m_StopTime: 1 + m_StopTime: 0.6666667 m_OrientationOffsetY: 0 m_Level: 0 m_CycleOffset: 0 m_HasAdditiveReferencePose: 0 - m_LoopTime: 1 + m_LoopTime: 0 m_LoopBlend: 0 m_LoopBlendOrientation: 0 m_LoopBlendPositionY: 0 @@ -46,7 +202,127 @@ AnimationClip: m_KeepOriginalPositionXZ: 0 m_HeightFromFeet: 0 m_Mirror: 0 - m_EditorCurves: [] + m_EditorCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1700 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.x + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.y + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.z + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Padding.w + path: GameLayoutCanvas + classID: 114 + script: {fileID: 11500000, guid: 3312d7739989d2b4e91e6319e9a96d76, type: 3} + flags: 0 m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 diff --git a/Assets/Prefabs/UI/AppSwitcher/GradientMask_L.png b/Assets/Prefabs/UI/AppSwitcher/GradientMask_L.png new file mode 100644 index 0000000000000000000000000000000000000000..8826dafe50644f594da9fdfeb479a3f7d984acbd GIT binary patch literal 23238 zcmeHPYfKbZ7`=CPSVlqIisdEBgrq)+pd>^Ex=XVJNsSu&5F_nwTdHDIpr9^-JG0iN z_=spstAyHZN*mj1Tzs`sg&ip^RwYw3)*_FgqO2|AsvBK~VP`u#DDh|e!^WoHk4@&@ z-I;sy<=%77J>R#pZSlgaF{5KfBZS6e&o?eXh*T~~L}?MiRLq3umDZ@j`OAtC3i~1O z!OaC<+-wOUcsjF+vR7~CEKeyc+e4TE(QIh9A*(Z-* zZ<1r=^|8%@!!8eqUhi24Uob^TA8hI8>%BskHCcSn7k5&;y6hWgBcY{p<>*cn#hx;x zHAHf#Dd_sWdZeXi>MGqqNvOzXDNkf^MMzUm84fk%(vyS`GrCUP8+a3GbdeR!UIK1? zmcpcqWB29DJ#(yQtdj46+hf0M5~Mp1T^&+y4Z}#zPWf=VNw9ia9hd!CyTkMoSri+t$~XT7(--~R6XzB0XQJHtGP8YpEdxVaWN-at?9#uX8X zDYjQQjX8|k8kB~9zn?j!8z*VVMq(0MD1IJ(7wyNyTX?MDRC((t3%ZDGwQMk*+i;6a zLn~NA4yV!0G?fsOP_lte=*HB(#Cdou8%^sX?xL+1A`h^^T&Ru;v7pAAI~FR#Xki!# z+JAGUS?Xp>$|mDe<31|T`%B$dor8kgx6#=r`16^r609$=qo7cu!rIW>|k>#N!=O!Kb3D zw3ly~&ez+EuQ>hTp|Wq~(0QKKPr$^YadYAb<~iEHB23J}A%??+MWb{|lbdG7Nx>wg zT+>s{nEH6;Y)mN4+JGz!bnC{~BJ$iFYBw2_ zfX-gZoUD!#p(sYRdkYc4n*WFoR|gMKq@&uMp-iH-WRE%tHb~h+fo|JpY!IFE{W*0$ z9HEHGK(}ErN9YpX$W!N|OjiTbB_O(iMF5Kdwi+M<1-J_|0VEvI3ZNPO?~07Ou(YK- zwpm?BBEpzFt>z3_Yp^ z0F?qN1$-m0xxhpO&l4PFFu)UIpII|ibiJ-jcK;jb0 zGk0VU8_lY%jES{4nBCyNG|UHTxr0*uVB|17@^P3TmXDT&y0%~uJ=$Vwf(CYv8io-l z0@xUd2fzlvh7tk5OTbGd0zecazzF&hw7NvU@PoE)QOP*#&D8?LkFTltd8Q>V; z7{%d) literal 0 HcmV?d00001 diff --git a/Assets/Prefabs/UI/AppSwitcher/GradientMask_L.png.meta b/Assets/Prefabs/UI/AppSwitcher/GradientMask_L.png.meta new file mode 100644 index 00000000..18d73de4 --- /dev/null +++ b/Assets/Prefabs/UI/AppSwitcher/GradientMask_L.png.meta @@ -0,0 +1,182 @@ +fileFormatVersion: 2 +guid: 3dd88a6e49433d647856a0402dc493e1 +TextureImporter: + internalIDToNameTable: + - first: + 213: -6355740580260418945 + second: GradientMask_L_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: iOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: GradientMask_L_0 + rect: + serializedVersion: 2 + x: 76 + y: 0 + width: 948 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: f7aea0dcd9fdbc7a0800000000000000 + internalID: -6355740580260418945 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + GradientMask_L_0: -6355740580260418945 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/UI/AppSwitcher/Nothing.anim b/Assets/Prefabs/UI/AppSwitcher/Nothing.anim new file mode 100644 index 00000000..0d6d83c2 --- /dev/null +++ b/Assets/Prefabs/UI/AppSwitcher/Nothing.anim @@ -0,0 +1,53 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Nothing + serializedVersion: 7 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: [] + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: [] + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 1 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 1 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Prefabs/UI/AppSwitcher/Nothing.anim.meta b/Assets/Prefabs/UI/AppSwitcher/Nothing.anim.meta new file mode 100644 index 00000000..080caead --- /dev/null +++ b/Assets/Prefabs/UI/AppSwitcher/Nothing.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 03e9ebef6e8f3714dadb35518db48d9e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/AppleHillsScripts.asmdef b/Assets/Scripts/AppleHillsScripts.asmdef index 6086c19f..b1a805d1 100644 --- a/Assets/Scripts/AppleHillsScripts.asmdef +++ b/Assets/Scripts/AppleHillsScripts.asmdef @@ -12,7 +12,9 @@ "Unity.Cinemachine", "AudioSourceEvents", "NewAssembly", - "SkiaSharp.Unity" + "SkiaSharp.Unity", + "SkiaSharp.Editor", + "SkiaSharp" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Assets/Scripts/UI/AppSwitcher.cs b/Assets/Scripts/UI/AppSwitcher.cs index 5938c5af..7bfb0faa 100644 --- a/Assets/Scripts/UI/AppSwitcher.cs +++ b/Assets/Scripts/UI/AppSwitcher.cs @@ -1,5 +1,8 @@ using UnityEngine; using SkiaSharp.Unity; +using Input; +using AppleHills.Core; +using UnityEngine.Events; public class AppSwitcher : MonoBehaviour { @@ -8,17 +11,72 @@ public class AppSwitcher : MonoBehaviour public TextAsset iconEstablish; public TextAsset rainbowEstablish; public TextAsset rainbowRemove; + public GameObject rainbow; + public GameObject icon; + public GameObject gameLayoutContainer; + public GameObject exitButton; + + private SkottiePlayerV2 iconPlayer; + private SkottiePlayerV2 rainbowPlayer; + private Animator animator; - private SkottiePlayerV2 skottiePlayer; private void OnEnable() { - skottiePlayer = GetComponent(); + iconPlayer = icon.GetComponentInChildren(); + rainbowPlayer = rainbow.GetComponentInChildren(); + animator = GetComponent(); } public void OpenAppSwitcher() { - Debug.Log("I'm mr. frog, hello!"); + //Activate players + rainbow.SetActive(true); + gameLayoutContainer.SetActive(true); + + // Play establishing animations + rainbowPlayer.LoadAnimation(rainbowEstablish.text); + rainbowPlayer.PlayAnimation(false); + rainbowPlayer.loop = false; + gameLayoutContainer.SetActive(true); + animator.Play("GamesReveal"); + + // Show the exit button + exitButton.SetActive(true); + + // Set input mode to UI + QuickAccess.Instance.PlayerController.InterruptMoveTo(); + InputManager.Instance.SetInputMode(InputMode.UI); + + rainbowPlayer.OnAnimationFinished += AnimFinished; } + public void CloseAppSwitcher() + { + rainbowPlayer.resetAfterFinished = true; + rainbowPlayer.LoadAnimation(rainbowRemove.text); + rainbowPlayer.PlayAnimation(false); + rainbowPlayer.loop = false; + animator.Play("GamesHide"); + + // Set input mode to game and ui + InputManager.Instance.SetInputMode(InputMode.GameAndUI); + + // Hide the exit button + exitButton.SetActive(false); + } + + public void GamesHiddenAnimationEvent() + { + rainbow.SetActive(false); + gameLayoutContainer.SetActive(false); + + } + + private void AnimFinished(string str) + { + + } + + }