add back booster pack giver
This commit is contained in:
@@ -0,0 +1,447 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &1439929750438628637
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1966378914653314124}
|
||||||
|
- component: {fileID: 1175208421330333144}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: MiniGameBoosterGiver
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &1966378914653314124
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1439929750438628637}
|
||||||
|
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: 2499229096808986326}
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
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!114 &1175208421330333144
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1439929750438628637}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 7d8f3e9a2b4c5f6d1a8e9c0b3d4f5a6b, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: AppleHillsScripts::UI.CardSystem.MinigameBoosterGiver
|
||||||
|
visualContainer: {fileID: 8617171489468030463}
|
||||||
|
boosterImage: {fileID: 3680365639323743419}
|
||||||
|
glowImage: {fileID: 4006246129058447062}
|
||||||
|
continueButton: {fileID: 2988510625873934392}
|
||||||
|
hoverAmount: 20
|
||||||
|
hoverDuration: 1.5
|
||||||
|
glowPulseMin: 0.9
|
||||||
|
glowPulseMax: 1.1
|
||||||
|
glowPulseDuration: 1.2
|
||||||
|
targetBottomLeftOffset: {x: 100, y: 100}
|
||||||
|
disappearDuration: 0.8
|
||||||
|
disappearScale: 0.2
|
||||||
|
--- !u!1 &4323719263405703996
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 6841858894429745291}
|
||||||
|
- component: {fileID: 1590188508543769496}
|
||||||
|
- component: {fileID: 4489841151491567959}
|
||||||
|
- component: {fileID: 2988510625873934392}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: Button
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &6841858894429745291
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4323719263405703996}
|
||||||
|
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: 2499229096808986326}
|
||||||
|
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: 250, y: 250}
|
||||||
|
m_Pivot: {x: 0.5, y: 0}
|
||||||
|
--- !u!222 &1590188508543769496
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4323719263405703996}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &4489841151491567959
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4323719263405703996}
|
||||||
|
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: 2636902231072113825, 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 &2988510625873934392
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4323719263405703996}
|
||||||
|
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: 4489841151491567959}
|
||||||
|
m_OnClick:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
--- !u!1 &5931931042366245593
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 4006246129058447062}
|
||||||
|
- component: {fileID: 5796229481733252802}
|
||||||
|
- component: {fileID: 6215049078676414306}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: Glow
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &4006246129058447062
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 5931931042366245593}
|
||||||
|
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: 2499229096808986326}
|
||||||
|
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: -250}
|
||||||
|
m_SizeDelta: {x: 800, y: 800}
|
||||||
|
m_Pivot: {x: 0.5, y: 1}
|
||||||
|
--- !u!222 &5796229481733252802
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 5931931042366245593}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &6215049078676414306
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 5931931042366245593}
|
||||||
|
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: -8836962644236845764, guid: c5cc7367a37a7944abb3876352b0e0ff, 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!1 &8617171489468030463
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 2499229096808986326}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: VisualContainer
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &2499229096808986326
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 8617171489468030463}
|
||||||
|
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: 1338508664922812659}
|
||||||
|
- {fileID: 4006246129058447062}
|
||||||
|
- {fileID: 3680365639323743419}
|
||||||
|
- {fileID: 6841858894429745291}
|
||||||
|
m_Father: {fileID: 1966378914653314124}
|
||||||
|
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!1 &8914844459546715980
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1338508664922812659}
|
||||||
|
- component: {fileID: 4173866009683612467}
|
||||||
|
- component: {fileID: 570826085774513514}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: Background
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &1338508664922812659
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 8914844459546715980}
|
||||||
|
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: 2499229096808986326}
|
||||||
|
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 &4173866009683612467
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 8914844459546715980}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &570826085774513514
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 8914844459546715980}
|
||||||
|
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: 0, g: 0, b: 0, a: 0.49411765}
|
||||||
|
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 &9035675646436554328
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 3680365639323743419}
|
||||||
|
- component: {fileID: 8906420622179058179}
|
||||||
|
- component: {fileID: 3765065913677958559}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: BoosterPack
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &3680365639323743419
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9035675646436554328}
|
||||||
|
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: 2499229096808986326}
|
||||||
|
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: -250}
|
||||||
|
m_SizeDelta: {x: 411, y: 729}
|
||||||
|
m_Pivot: {x: 0.5, y: 1}
|
||||||
|
--- !u!222 &8906420622179058179
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9035675646436554328}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &3765065913677958559
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9035675646436554328}
|
||||||
|
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: 4365544765984126881, guid: 9dac643e78ad86e4988c11a92f9c7a6d, 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
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a855ba60e86bf1e449197f1f5f9b9b73
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
File diff suppressed because one or more lines are too long
@@ -38,7 +38,7 @@ public class SoundGenerator : MonoBehaviour
|
|||||||
{
|
{
|
||||||
audioSource.audioSource.PlayOneShot(enterSound);
|
audioSource.audioSource.PlayOneShot(enterSound);
|
||||||
}
|
}
|
||||||
if (soundBirdSMRef != null && soundBirdSMRef.currentState.name.ToLower().Contains("soundbird") && soundbirdHearingCheck.canFly == true)
|
if (soundBirdSMRef != null && soundBirdSMRef.currentState.name.ToLower().Contains("soundbird_slot") && soundbirdHearingCheck.canFly == true)
|
||||||
{
|
{
|
||||||
soundBirdSMRef.ChangeState("SoundBirdTakeoff");
|
soundBirdSMRef.ChangeState("SoundBirdTakeoff");
|
||||||
|
|
||||||
|
|||||||
@@ -662,18 +662,14 @@ namespace Minigames.DivingForPictures
|
|||||||
|
|
||||||
// 1) Call the booster pack giver if available
|
// 1) Call the booster pack giver if available
|
||||||
bool completed = false;
|
bool completed = false;
|
||||||
var giver = UI.CardSystem.BoosterPackGiver.Instance;
|
var giver = UI.CardSystem.MinigameBoosterGiver.Instance;
|
||||||
if (giver != null)
|
if (giver != null)
|
||||||
{
|
{
|
||||||
// Temporarily subscribe to completion
|
|
||||||
UnityAction onDone = null;
|
|
||||||
onDone = () => { completed = true; giver.OnCompleted.RemoveListener(onDone); };
|
|
||||||
giver.OnCompleted.AddListener(onDone);
|
|
||||||
UIPageController.Instance.ShowAllUI();
|
UIPageController.Instance.ShowAllUI();
|
||||||
giver.GiveBoosterPack();
|
giver.GiveBooster(() => { completed = true; });
|
||||||
|
|
||||||
// 2) Wait for it to finish (with a safety timeout in case it's not wired)
|
// 2) Wait for it to finish (with a safety timeout in case it's not wired)
|
||||||
float timeout = 5f; // fallback to avoid blocking forever
|
float timeout = 10f; // fallback to avoid blocking forever
|
||||||
float elapsed = 0f;
|
float elapsed = 0f;
|
||||||
while (!completed && elapsed < timeout)
|
while (!completed && elapsed < timeout)
|
||||||
{
|
{
|
||||||
@@ -684,7 +680,7 @@ namespace Minigames.DivingForPictures
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
// If no giver is present, proceed immediately
|
// If no giver is present, proceed immediately
|
||||||
Logging.Debug("[DivingGameManager] BoosterPackGiver not found; skipping booster animation.");
|
Logging.Debug("[DivingGameManager] MinigameBoosterGiver not found; skipping booster animation.");
|
||||||
}
|
}
|
||||||
|
|
||||||
// 3) Only then show the game over screen
|
// 3) Only then show the game over screen
|
||||||
|
|||||||
242
Assets/Scripts/UI/CardSystem/MinigameBoosterGiver.cs
Normal file
242
Assets/Scripts/UI/CardSystem/MinigameBoosterGiver.cs
Normal file
@@ -0,0 +1,242 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections;
|
||||||
|
using Data.CardSystem;
|
||||||
|
using Pixelplacement;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
|
||||||
|
namespace UI.CardSystem
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Singleton UI component for granting booster packs from minigames.
|
||||||
|
/// Displays a booster pack with glow effect, waits for user to click continue,
|
||||||
|
/// then animates the pack flying to bottom-left corner before granting the reward.
|
||||||
|
/// </summary>
|
||||||
|
public class MinigameBoosterGiver : MonoBehaviour
|
||||||
|
{
|
||||||
|
public static MinigameBoosterGiver Instance { get; private set; }
|
||||||
|
|
||||||
|
[Header("Visual References")]
|
||||||
|
[SerializeField] private GameObject visualContainer;
|
||||||
|
[SerializeField] private RectTransform boosterImage;
|
||||||
|
[SerializeField] private RectTransform glowImage;
|
||||||
|
[SerializeField] private Button continueButton;
|
||||||
|
|
||||||
|
[Header("Animation Settings")]
|
||||||
|
[SerializeField] private float hoverAmount = 20f;
|
||||||
|
[SerializeField] private float hoverDuration = 1.5f;
|
||||||
|
[SerializeField] private float glowPulseMin = 0.9f;
|
||||||
|
[SerializeField] private float glowPulseMax = 1.1f;
|
||||||
|
[SerializeField] private float glowPulseDuration = 1.2f;
|
||||||
|
|
||||||
|
[Header("Disappear Animation")]
|
||||||
|
[SerializeField] private Vector2 targetBottomLeftOffset = new Vector2(100f, 100f);
|
||||||
|
[SerializeField] private float disappearDuration = 0.8f;
|
||||||
|
[SerializeField] private float disappearScale = 0.2f;
|
||||||
|
|
||||||
|
private Vector3 _boosterInitialPosition;
|
||||||
|
private Vector3 _boosterInitialScale;
|
||||||
|
private Vector3 _glowInitialScale;
|
||||||
|
private Coroutine _currentSequence;
|
||||||
|
private Action _onCompleteCallback;
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
// Singleton pattern
|
||||||
|
if (Instance != null && Instance != this)
|
||||||
|
{
|
||||||
|
Debug.LogWarning("[MinigameBoosterGiver] Duplicate instance found. Destroying.");
|
||||||
|
Destroy(gameObject);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Instance = this;
|
||||||
|
|
||||||
|
// Cache initial values
|
||||||
|
if (boosterImage != null)
|
||||||
|
{
|
||||||
|
_boosterInitialPosition = boosterImage.localPosition;
|
||||||
|
_boosterInitialScale = boosterImage.localScale;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (glowImage != null)
|
||||||
|
{
|
||||||
|
_glowInitialScale = glowImage.localScale;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Setup button listener
|
||||||
|
if (continueButton != null)
|
||||||
|
{
|
||||||
|
continueButton.onClick.AddListener(OnContinueClicked);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Start hidden
|
||||||
|
if (visualContainer != null)
|
||||||
|
{
|
||||||
|
visualContainer.SetActive(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDestroy()
|
||||||
|
{
|
||||||
|
if (Instance == this)
|
||||||
|
{
|
||||||
|
Instance = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (continueButton != null)
|
||||||
|
{
|
||||||
|
continueButton.onClick.RemoveListener(OnContinueClicked);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Public API to give a booster pack. Displays UI, starts animations, and waits for user interaction.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="onComplete">Optional callback when the sequence completes and pack is granted</param>
|
||||||
|
public void GiveBooster(Action onComplete = null)
|
||||||
|
{
|
||||||
|
if (_currentSequence != null)
|
||||||
|
{
|
||||||
|
Debug.LogWarning("[MinigameBoosterGiver] Already running a sequence. Ignoring new request.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
_onCompleteCallback = onComplete;
|
||||||
|
_currentSequence = StartCoroutine(GiveBoosterSequence());
|
||||||
|
}
|
||||||
|
|
||||||
|
private IEnumerator GiveBoosterSequence()
|
||||||
|
{
|
||||||
|
// Show the visual
|
||||||
|
if (visualContainer != null)
|
||||||
|
{
|
||||||
|
visualContainer.SetActive(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reset positions and scales
|
||||||
|
if (boosterImage != null)
|
||||||
|
{
|
||||||
|
boosterImage.localPosition = _boosterInitialPosition;
|
||||||
|
boosterImage.localScale = _boosterInitialScale;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (glowImage != null)
|
||||||
|
{
|
||||||
|
glowImage.localScale = _glowInitialScale;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Enable the continue button
|
||||||
|
if (continueButton != null)
|
||||||
|
{
|
||||||
|
continueButton.interactable = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Start idle hovering animation on booster (ping-pong)
|
||||||
|
if (boosterImage != null)
|
||||||
|
{
|
||||||
|
Vector3 hoverTarget = _boosterInitialPosition + Vector3.up * hoverAmount;
|
||||||
|
Tween.LocalPosition(boosterImage, hoverTarget, hoverDuration, 0f, Tween.EaseLinear, Tween.LoopType.PingPong);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Start pulsing animation on glow (ping-pong scale)
|
||||||
|
if (glowImage != null)
|
||||||
|
{
|
||||||
|
Vector3 glowPulseScale = _glowInitialScale * glowPulseMax;
|
||||||
|
Tween.LocalScale(glowImage, glowPulseScale, glowPulseDuration, 0f, Tween.EaseOut, Tween.LoopType.PingPong);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Wait for button click (handled by OnContinueClicked)
|
||||||
|
yield return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnContinueClicked()
|
||||||
|
{
|
||||||
|
if (_currentSequence == null)
|
||||||
|
{
|
||||||
|
return; // Not in a sequence
|
||||||
|
}
|
||||||
|
|
||||||
|
// Disable button to prevent double-clicks
|
||||||
|
if (continueButton != null)
|
||||||
|
{
|
||||||
|
continueButton.interactable = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Stop the ongoing animations by stopping all tweens on these objects
|
||||||
|
if (boosterImage != null)
|
||||||
|
{
|
||||||
|
Tween.Stop(boosterImage.GetInstanceID());
|
||||||
|
}
|
||||||
|
|
||||||
|
if (glowImage != null)
|
||||||
|
{
|
||||||
|
Tween.Stop(glowImage.GetInstanceID());
|
||||||
|
// Fade out the glow
|
||||||
|
Tween.LocalScale(glowImage, Vector3.zero, disappearDuration * 0.5f, 0f, Tween.EaseInBack);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Start disappear animation
|
||||||
|
StartCoroutine(DisappearSequence());
|
||||||
|
}
|
||||||
|
|
||||||
|
private IEnumerator DisappearSequence()
|
||||||
|
{
|
||||||
|
if (boosterImage == null)
|
||||||
|
{
|
||||||
|
yield break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Calculate bottom-left corner position in local space
|
||||||
|
RectTransform canvasRect = GetComponentInParent<Canvas>()?.GetComponent<RectTransform>();
|
||||||
|
Vector3 targetPosition;
|
||||||
|
|
||||||
|
if (canvasRect != null)
|
||||||
|
{
|
||||||
|
// Convert bottom-left corner with offset to local position
|
||||||
|
Vector2 bottomLeft = new Vector2(-canvasRect.rect.width / 2f, -canvasRect.rect.height / 2f);
|
||||||
|
targetPosition = bottomLeft + targetBottomLeftOffset;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Fallback if no canvas found
|
||||||
|
targetPosition = _boosterInitialPosition + new Vector3(-500f, -500f, 0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Tween to bottom-left corner
|
||||||
|
Tween.LocalPosition(boosterImage, targetPosition, disappearDuration, 0f, Tween.EaseInBack);
|
||||||
|
|
||||||
|
// Scale down
|
||||||
|
Vector3 targetScale = _boosterInitialScale * disappearScale;
|
||||||
|
Tween.LocalScale(boosterImage, targetScale, disappearDuration, 0f, Tween.EaseInBack);
|
||||||
|
|
||||||
|
// Wait for animation to complete
|
||||||
|
yield return new WaitForSeconds(disappearDuration);
|
||||||
|
|
||||||
|
// Grant the booster pack
|
||||||
|
if (CardSystemManager.Instance != null)
|
||||||
|
{
|
||||||
|
CardSystemManager.Instance.AddBoosterPack(1);
|
||||||
|
Debug.Log("[MinigameBoosterGiver] Booster pack granted!");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Debug.LogWarning("[MinigameBoosterGiver] CardSystemManager not found, cannot grant booster pack.");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Hide the visual
|
||||||
|
if (visualContainer != null)
|
||||||
|
{
|
||||||
|
visualContainer.SetActive(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Invoke completion callback
|
||||||
|
_onCompleteCallback?.Invoke();
|
||||||
|
_onCompleteCallback = null;
|
||||||
|
|
||||||
|
// Clear sequence reference
|
||||||
|
_currentSequence = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
12
Assets/Scripts/UI/CardSystem/MinigameBoosterGiver.cs.meta
Normal file
12
Assets/Scripts/UI/CardSystem/MinigameBoosterGiver.cs.meta
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 7d8f3e9a2b4c5f6d1a8e9c0b3d4f5a6b
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
||||||
Reference in New Issue
Block a user