First draft of the consolidated card system

This commit is contained in:
Michal Adam Pikulski
2025-10-20 10:29:22 +02:00
parent 07750dd5ba
commit 542dd9a4b7
19 changed files with 3014 additions and 1041 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 273 KiB

View File

@@ -0,0 +1,182 @@
fileFormatVersion: 2
guid: fb6b9846cb4b3bd4ca8517a34a5f9a3c
TextureImporter:
internalIDToNameTable:
- first:
213: -8246103488371625927
second: card_back_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: 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: 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: WebGL
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: card_back_0
rect:
serializedVersion: 2
x: 0
y: 0
width: 686
height: 976
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 930ff7a2194ff8d80800000000000000
internalID: -8246103488371625927
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
card_back_0: -8246103488371625927
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

View File

@@ -0,0 +1,182 @@
fileFormatVersion: 2
guid: 4ee2d56eceb077249b6d783ac1ab7ec4
TextureImporter:
internalIDToNameTable:
- first:
213: 7399797961453878310
second: red_arrow_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: 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: 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: WebGL
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: red_arrow_0
rect:
serializedVersion: 2
x: 0
y: 0
width: 408
height: 597
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 62c3e164a0d51b660800000000000000
internalID: 7399797961453878310
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
red_arrow_0: 7399797961453878310
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -2060,6 +2060,126 @@ MonoBehaviour:
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &5117351669307976777
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2696014202393592625}
- component: {fileID: 8004387225650268810}
- component: {fileID: 4126448050378020657}
- component: {fileID: 6335629864846112486}
m_Layer: 5
m_Name: BackButton
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2696014202393592625
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5117351669307976777}
m_LocalRotation: {x: 0, y: 0, z: -0.7071068, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 2088943967680250180}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 159, y: -27}
m_SizeDelta: {x: 88.05109, y: 128.83948}
m_Pivot: {x: 0, y: 1}
--- !u!222 &8004387225650268810
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5117351669307976777}
m_CullTransparentMesh: 1
--- !u!114 &4126448050378020657
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5117351669307976777}
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: 7399797961453878310, guid: 4ee2d56eceb077249b6d783ac1ab7ec4, 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 &6335629864846112486
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5117351669307976777}
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: 4126448050378020657}
m_OnClick:
m_PersistentCalls:
m_Calls: []
--- !u!1 &5427423891912572930
GameObject:
m_ObjectHideFlags: 0
@@ -2106,6 +2226,7 @@ GameObject:
m_Component:
- component: {fileID: 5995069628669089193}
- component: {fileID: 5266879554038528727}
- component: {fileID: 2984712328783205357}
m_Layer: 5
m_Name: AlbumGrid
m_TagString: Untagged
@@ -2146,6 +2267,30 @@ MonoBehaviour:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.ContentSizeFitter
m_HorizontalFit: 2
m_VerticalFit: 0
--- !u!114 &2984712328783205357
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5529348789415871701}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.GridLayoutGroup
m_Padding:
m_Left: 0
m_Right: 0
m_Top: 0
m_Bottom: 0
m_ChildAlignment: 4
m_StartCorner: 0
m_StartAxis: 0
m_CellSize: {x: 100, y: 200}
m_Spacing: {x: 25, y: 25}
m_Constraint: 0
m_ConstraintCount: 2
--- !u!1 &5579817347513481407
GameObject:
m_ObjectHideFlags: 0
@@ -2869,6 +3014,7 @@ RectTransform:
- {fileID: 8625879883414859209}
- {fileID: 2604049014198376184}
- {fileID: 5108925640835225124}
- {fileID: 2696014202393592625}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
@@ -2888,15 +3034,15 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 59ff936424a34ce3937299c66232bf7a, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::AppleHills.UI.CardSystem.AlbumViewPage
PageName:
PageName: Card View Album Page
transitionDuration: 0.3
albumGrid: {fileID: 0}
emptyAlbumMessage: {fileID: 0}
cardPrefab: {fileID: 0}
zoneFilterDropdown: {fileID: 0}
rarityFilterDropdown: {fileID: 0}
resetFiltersButton: {fileID: 0}
canvasGroup: {fileID: 0}
albumGrid: {fileID: 2984712328783205357}
cardPrefab: {fileID: 3326706725254864107, guid: 594aad71e4281174da8fb4f47a8d19b0, type: 3}
zoneFilterDropdown: {fileID: 6343940552693968532}
rarityFilterDropdown: {fileID: 6065010820134485827}
resetFiltersButton: {fileID: 5571140669376538842}
canvasGroup: {fileID: 2448231841641732440}
backButton: {fileID: 6335629864846112486}
--- !u!225 &2448231841641732440
CanvasGroup:
m_ObjectHideFlags: 0

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 06de8e223a669fe48b043983963d1e6a
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,158 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1123573611284110918
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6372631110979469063}
- component: {fileID: 7263329479413350620}
- component: {fileID: 1924940828255795114}
m_Layer: 5
m_Name: CardBackImage
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &6372631110979469063
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1123573611284110918}
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: 4459518969173100332}
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 &7263329479413350620
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1123573611284110918}
m_CullTransparentMesh: 1
--- !u!114 &1924940828255795114
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1123573611284110918}
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: -8246103488371625927, guid: fb6b9846cb4b3bd4ca8517a34a5f9a3c, 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 &1385409402919571665
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4459518969173100332}
- component: {fileID: 2773297167970136146}
m_Layer: 5
m_Name: CardBack
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!224 &4459518969173100332
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1385409402919571665}
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: 6372631110979469063}
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: 150, y: 200}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &2773297167970136146
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1385409402919571665}
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: 0}
m_OnClick:
m_PersistentCalls:
m_Calls: []

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 1d048f366a1113d4ab16b5d332bfc11d
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,5 +1,84 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &303625417641854305
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1369814279180176174}
- component: {fileID: 9169434787445119839}
- component: {fileID: 519551942242793934}
m_Layer: 0
m_Name: EventSystem
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1369814279180176174
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 303625417641854305}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -1024, y: -768, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7586531588264964688}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &9169434787445119839
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 303625417641854305}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.EventSystems.EventSystem
m_FirstSelected: {fileID: 0}
m_sendNavigationEvents: 1
m_DragThreshold: 10
--- !u!114 &519551942242793934
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 303625417641854305}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 01614664b831546d2ae94a42149d80ac, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.InputSystem::UnityEngine.InputSystem.UI.InputSystemUIInputModule
m_SendPointerHoverToParent: 1
m_MoveRepeatDelay: 0.5
m_MoveRepeatRate: 0.1
m_XRTrackingOrigin: {fileID: 0}
m_ActionsAsset: {fileID: -944628639613478452, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_PointAction: {fileID: -1654692200621890270, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_MoveAction: {fileID: -8784545083839296357, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_SubmitAction: {fileID: 392368643174621059, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_CancelAction: {fileID: 7727032971491509709, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_LeftClickAction: {fileID: 3001919216989983466, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_MiddleClickAction: {fileID: -2185481485913320682, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_RightClickAction: {fileID: -4090225696740746782, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_ScrollWheelAction: {fileID: 6240969308177333660, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_TrackedDevicePositionAction: {fileID: 6564999863303420839, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_TrackedDeviceOrientationAction: {fileID: 7970375526676320489, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_DeselectOnBackgroundClick: 1
m_PointerBehavior: 0
m_CursorLockBehavior: 0
m_ScrollDeltaPerTick: 6
--- !u!1 &6895404274863911569
GameObject:
m_ObjectHideFlags: 0
@@ -10,6 +89,9 @@ GameObject:
m_Component:
- component: {fileID: 7586531588264964688}
- component: {fileID: 2276827791912418824}
- component: {fileID: 3556615625058732098}
- component: {fileID: 155632668169750525}
- component: {fileID: 2421571494653166296}
m_Layer: 5
m_Name: CardSystem
m_TagString: Untagged
@@ -26,11 +108,12 @@ RectTransform:
m_GameObject: {fileID: 6895404274863911569}
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_LocalScale: {x: 0, y: 0, z: 0}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 8855931927481658112}
- {fileID: 4224770106652410837}
- {fileID: 1369814279180176174}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
@@ -50,17 +133,76 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: fe5ff32f529d4f24a2064ee1dfa07758, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::AppleHills.UI.CardSystem.CardAlbumUI
backpackIcon: {fileID: 0}
mainMenuPage: {fileID: 0}
albumViewPage: {fileID: 0}
boosterOpeningPage: {fileID: 0}
backpackButton: {fileID: 0}
boosterCountText: {fileID: 0}
notificationDot: {fileID: 0}
backpackAnimationTarget: {fileID: 0}
newCardNotification: {fileID: 0}
notificationDuration: 3
backpackIcon: {fileID: 8832204230413470760}
mainMenuPage: {fileID: 2244619278085783053}
albumViewPage: {fileID: 4812581997991232253}
boosterOpeningPage: {fileID: 7643059071914363120}
backpackButton: {fileID: 5244731468946939147}
boosterNotificationDot: {fileID: 8274911525479972860}
notificationSound: {fileID: 0}
--- !u!223 &3556615625058732098
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6895404274863911569}
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 &155632668169750525
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6895404274863911569}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.CanvasScaler
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 0
--- !u!114 &2421571494653166296
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6895404274863911569}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.GraphicRaycaster
m_IgnoreReversedGraphics: 1
m_BlockingObjects: 0
m_BlockingMask:
serializedVersion: 2
m_Bits: 4294967295
--- !u!1 &7564017895147059150
GameObject:
m_ObjectHideFlags: 0
@@ -70,6 +212,7 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 8855931927481658112}
- component: {fileID: 5244731468946939147}
m_Layer: 5
m_Name: Backback
m_TagString: Untagged
@@ -98,6 +241,50 @@ RectTransform:
m_AnchoredPosition: {x: 96.24829, y: 98.212524}
m_SizeDelta: {x: 150, y: 150}
m_Pivot: {x: 0, y: 0}
--- !u!114 &5244731468946939147
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7564017895147059150}
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: 4952456972160400640}
m_OnClick:
m_PersistentCalls:
m_Calls: []
--- !u!1 &8561999612656273135
GameObject:
m_ObjectHideFlags: 0
@@ -126,7 +313,10 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Children:
- {fileID: 6329700065522655683}
- {fileID: 4626769840948993796}
- {fileID: 5366779575114795462}
m_Father: {fileID: 7586531588264964688}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
@@ -323,3 +513,537 @@ RectTransform:
m_CorrespondingSourceObject: {fileID: 4399514539281523652, guid: 00a9eeae1396ffb488487b1555414c39, type: 3}
m_PrefabInstance: {fileID: 1732192317104416780}
m_PrefabAsset: {fileID: 0}
--- !u!114 &8274911525479972860 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 7701049314552813552, guid: 00a9eeae1396ffb488487b1555414c39, type: 3}
m_PrefabInstance: {fileID: 1732192317104416780}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ed8cced1478640229c5a61e3c6bd42df, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::AppleHills.UI.CardSystem.BoosterNotificationDot
--- !u!1001 &6225233548971967334
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 4224770106652410837}
m_Modifications:
- target: {fileID: 1485089218833421720, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_Name
value: BoosterOpeningPage
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_Pivot.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_Pivot.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchorMax.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchorMax.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchorMin.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchorMin.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_SizeDelta.x
value: 1000
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_SizeDelta.y
value: 750
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3492318441088451548, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3492318441088451548, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3492318441088451548, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3492318441088451548, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4525022388006312158, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4525022388006312158, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4525022388006312158, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4525022388006312158, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
--- !u!224 &5366779575114795462 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 2026295995152435872, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
m_PrefabInstance: {fileID: 6225233548971967334}
m_PrefabAsset: {fileID: 0}
--- !u!114 &7643059071914363120 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 4356635970420460438, guid: 06de8e223a669fe48b043983963d1e6a, type: 3}
m_PrefabInstance: {fileID: 6225233548971967334}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f64698442ba344e0a466ee3c530797c7, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::AppleHills.UI.CardSystem.BoosterOpeningPage
--- !u!1001 &6685872719143607872
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 4224770106652410837}
m_Modifications:
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMax.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMin.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.x
value: 233.33333
objectReference: {fileID: 0}
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.y
value: 50
objectReference: {fileID: 0}
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.x
value: 499.99997
objectReference: {fileID: 0}
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.y
value: -25
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_Pivot.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_Pivot.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMax.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMax.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMin.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMin.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.x
value: 1000
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.y
value: 750
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMax.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMin.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.x
value: 233.33333
objectReference: {fileID: 0}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.y
value: 50
objectReference: {fileID: 0}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.x
value: 216.66666
objectReference: {fileID: 0}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.y
value: -25
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMax.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMin.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.x
value: 233.33333
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.y
value: 50
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.x
value: 783.3333
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.y
value: -25
objectReference: {fileID: 0}
- target: {fileID: 5995069628669089193, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.x
value: -700
objectReference: {fileID: 0}
- target: {fileID: 8841772996182652387, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_Name
value: AlbumViewPage
objectReference: {fileID: 0}
- target: {fileID: 8841772996182652387, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
--- !u!224 &4626769840948993796 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
m_PrefabInstance: {fileID: 6685872719143607872}
m_PrefabAsset: {fileID: 0}
--- !u!114 &4812581997991232253 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 2162084082982493373, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
m_PrefabInstance: {fileID: 6685872719143607872}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 59ff936424a34ce3937299c66232bf7a, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::AppleHills.UI.CardSystem.AlbumViewPage
--- !u!1001 &7156544606028288729
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 4224770106652410837}
m_Modifications:
- target: {fileID: 215586258230015996, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_Name
value: MainMenuPage
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_Pivot.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_Pivot.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMax.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMax.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMin.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMin.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.x
value: 1000
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.y
value: 750
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
--- !u!114 &2244619278085783053 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 8968736352447638740, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
m_PrefabInstance: {fileID: 7156544606028288729}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a81af156ae284925a1f004d08f0bb364, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::AppleHills.UI.CardSystem.CardMenuPage
--- !u!224 &6329700065522655683 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
m_PrefabInstance: {fileID: 7156544606028288729}
m_PrefabAsset: {fileID: 0}

View File

@@ -34,10 +34,10 @@ RectTransform:
- {fileID: 3003605026999030427}
m_Father: {fileID: 1666992978469506438}
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: 150, y: -150}
m_SizeDelta: {x: 300, y: 80}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &8262356594320332946
CanvasRenderer:
@@ -138,7 +138,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
m_IsActive: 0
--- !u!224 &3784919015553725210
RectTransform:
m_ObjectHideFlags: 0
@@ -226,10 +226,10 @@ RectTransform:
- {fileID: 935304982975062306}
m_Father: {fileID: 1666992978469506438}
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: 150, y: -260}
m_SizeDelta: {x: 300, y: 80}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3411861085081790681
CanvasRenderer:
@@ -413,10 +413,10 @@ RectTransform:
- {fileID: 5534139074864658841}
m_Father: {fileID: 1666992978469506438}
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: 150, y: -40}
m_SizeDelta: {x: 300, y: 80}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3774508876281835580
CanvasRenderer:

View File

@@ -119,483 +119,6 @@ NavMeshSettings:
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
--- !u!224 &213324277 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 7586531588264964688, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
m_PrefabInstance: {fileID: 7454556111239468018}
m_PrefabAsset: {fileID: 0}
--- !u!1 &228095424 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 5529348789415871701, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
m_PrefabInstance: {fileID: 479750160}
m_PrefabAsset: {fileID: 0}
--- !u!114 &228095427
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 228095424}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.GridLayoutGroup
m_Padding:
m_Left: 0
m_Right: 0
m_Top: 0
m_Bottom: 0
m_ChildAlignment: 4
m_StartCorner: 0
m_StartAxis: 0
m_CellSize: {x: 100, y: 200}
m_Spacing: {x: 25, y: 25}
m_Constraint: 0
m_ConstraintCount: 2
--- !u!1001 &479750160
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 852618852}
m_Modifications:
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 251253458592001762, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_Pivot.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_Pivot.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMax.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMax.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMin.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMin.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.x
value: 1000
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.y
value: 750
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2162084082982493373, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: PageName
value: Card View Album Page
objectReference: {fileID: 0}
- target: {fileID: 2162084082982493373, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: albumGrid
value:
objectReference: {fileID: 228095427}
- target: {fileID: 2162084082982493373, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: cardPrefab
value:
objectReference: {fileID: 3326706725254864107, guid: 594aad71e4281174da8fb4f47a8d19b0, type: 3}
- target: {fileID: 2162084082982493373, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: canvasGroup
value:
objectReference: {fileID: 479750162}
- target: {fileID: 2162084082982493373, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: resetFiltersButton
value:
objectReference: {fileID: 557838594}
- target: {fileID: 2162084082982493373, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: transitionDuration
value: 0.3
objectReference: {fileID: 0}
- target: {fileID: 2162084082982493373, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: zoneFilterDropdown
value:
objectReference: {fileID: 1817614521}
- target: {fileID: 2162084082982493373, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: rarityFilterDropdown
value:
objectReference: {fileID: 1487030512}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2512803946073319574, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4184772998354705068, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5266879554038528727, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_HorizontalFit
value: 2
objectReference: {fileID: 0}
- target: {fileID: 5995069628669089193, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8841772996182652387, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
propertyPath: m_Name
value: AlbumViewPage
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents:
- targetCorrespondingSourceObject: {fileID: 5529348789415871701, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
insertIndex: -1
addedObject: {fileID: 228095427}
m_SourcePrefab: {fileID: 100100000, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
--- !u!224 &479750161 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 2088943967680250180, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
m_PrefabInstance: {fileID: 479750160}
m_PrefabAsset: {fileID: 0}
--- !u!225 &479750162 stripped
CanvasGroup:
m_CorrespondingSourceObject: {fileID: 2448231841641732440, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
m_PrefabInstance: {fileID: 479750160}
m_PrefabAsset: {fileID: 0}
--- !u!114 &557838594 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 5571140669376538842, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
m_PrefabInstance: {fileID: 479750160}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Button
--- !u!1 &852618848
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 852618852}
- component: {fileID: 852618851}
- component: {fileID: 852618850}
- component: {fileID: 852618849}
m_Layer: 5
m_Name: Canvas
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &852618849
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 852618848}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.GraphicRaycaster
m_IgnoreReversedGraphics: 1
m_BlockingObjects: 0
m_BlockingMask:
serializedVersion: 2
m_Bits: 4294967295
--- !u!114 &852618850
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 852618848}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.CanvasScaler
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 0
--- !u!223 &852618851
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 852618848}
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!224 &852618852
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 852618848}
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: 213324277}
- {fileID: 990837824}
- {fileID: 479750161}
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!224 &990837824 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
m_PrefabInstance: {fileID: 2084492957572185742}
m_PrefabAsset: {fileID: 0}
--- !u!114 &1487030512 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 6065010820134485827, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
m_PrefabInstance: {fileID: 479750160}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7b743370ac3e4ec2a1668f5455a8ef8a, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TMP_Dropdown
--- !u!1 &1730625486
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1730625489}
- component: {fileID: 1730625488}
- component: {fileID: 1730625487}
m_Layer: 0
m_Name: EventSystem
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1730625487
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1730625486}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 01614664b831546d2ae94a42149d80ac, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.InputSystem::UnityEngine.InputSystem.UI.InputSystemUIInputModule
m_SendPointerHoverToParent: 1
m_MoveRepeatDelay: 0.5
m_MoveRepeatRate: 0.1
m_XRTrackingOrigin: {fileID: 0}
m_ActionsAsset: {fileID: -944628639613478452, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_PointAction: {fileID: -1654692200621890270, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_MoveAction: {fileID: -8784545083839296357, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_SubmitAction: {fileID: 392368643174621059, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_CancelAction: {fileID: 7727032971491509709, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_LeftClickAction: {fileID: 3001919216989983466, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_MiddleClickAction: {fileID: -2185481485913320682, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_RightClickAction: {fileID: -4090225696740746782, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_ScrollWheelAction: {fileID: 6240969308177333660, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_TrackedDevicePositionAction: {fileID: 6564999863303420839, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_TrackedDeviceOrientationAction: {fileID: 7970375526676320489, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3}
m_DeselectOnBackgroundClick: 1
m_PointerBehavior: 0
m_CursorLockBehavior: 0
m_ScrollDeltaPerTick: 6
--- !u!114 &1730625488
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1730625486}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.EventSystems.EventSystem
m_FirstSelected: {fileID: 0}
m_sendNavigationEvents: 1
m_DragThreshold: 10
--- !u!4 &1730625489
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1730625486}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1817614521 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 6343940552693968532, guid: 88a05fdd940194543ade1cc2bcdada5f, type: 3}
m_PrefabInstance: {fileID: 479750160}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7b743370ac3e4ec2a1668f5455a8ef8a, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TMP_Dropdown
--- !u!1 &1860325688
GameObject:
m_ObjectHideFlags: 0
@@ -733,210 +256,121 @@ MonoBehaviour:
m_VarianceClampScale: 0.9
m_ContrastAdaptiveSharpening: 0
m_Version: 2
--- !u!1001 &2084492957572185742
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 852618852}
m_Modifications:
- target: {fileID: 215586258230015996, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_Name
value: MainMenuPage
objectReference: {fileID: 0}
- target: {fileID: 215586258230015996, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_Pivot.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_Pivot.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMax.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMax.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMin.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMin.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.x
value: 1000
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.y
value: 750
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3784919015553725210, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMax.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMin.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.x
value: 300
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.y
value: 80
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.x
value: 150
objectReference: {fileID: 0}
- target: {fileID: 6825096203099742481, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.y
value: -40
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMax.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMin.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.x
value: 300
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.y
value: 80
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.x
value: 150
objectReference: {fileID: 0}
- target: {fileID: 7359584553354036269, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.y
value: -150
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMax.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchorMin.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.x
value: 300
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_SizeDelta.y
value: 80
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.x
value: 150
objectReference: {fileID: 0}
- target: {fileID: 9087503811150501775, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
propertyPath: m_AnchoredPosition.y
value: -260
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 43be0f1cce1e5ae4d86def9da1fe2822, type: 3}
--- !u!1001 &7454556111239468018
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 852618852}
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 1151296155612236777, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4825712728562046718, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6895404274863911569, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_Name
value: CardSystem
objectReference: {fileID: 0}
- target: {fileID: 6895404274863911569, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_IsActive
- target: {fileID: 6896238500789711010, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6896238500789711010, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6896238500789711010, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6896238500789711010, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6896238500789711010, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6896238500789711010, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7355308311254532282, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMax.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7355308311254532282, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMin.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7355308311254532282, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchoredPosition.x
value: 125
objectReference: {fileID: 0}
- target: {fileID: 7355308311254532282, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchoredPosition.y
value: -25
objectReference: {fileID: 0}
- target: {fileID: 7411712286908450028, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7411712286908450028, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7411712286908450028, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7411712286908450028, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7411712286908450028, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7411712286908450028, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7541386484585061304, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMax.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7541386484585061304, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMin.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7541386484585061304, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchoredPosition.x
value: 375
objectReference: {fileID: 0}
- target: {fileID: 7541386484585061304, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchoredPosition.y
value: -25
objectReference: {fileID: 0}
- target: {fileID: 7586531588264964688, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_Pivot.x
value: 0.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7586531588264964688, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_Pivot.y
value: 0.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7586531588264964688, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMax.x
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7586531588264964688, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7586531588264964688, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMin.x
@@ -1002,6 +436,30 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9085933292592690902, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9085933292592690902, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9085933292592690902, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9085933292592690902, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9085933292592690902, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9085933292592690902, guid: 840f3d8a936b39a41b5896328a692005, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
@@ -1011,6 +469,5 @@ PrefabInstance:
SceneRoots:
m_ObjectHideFlags: 0
m_Roots:
- {fileID: 7454556111239468018}
- {fileID: 1860325691}
- {fileID: 852618852}
- {fileID: 1730625489}

View File

@@ -24,6 +24,9 @@ namespace AppleHills.UI.CardSystem
[SerializeField] private Button resetFiltersButton;
[SerializeField] private CanvasGroup canvasGroup;
[Header("Navigation")]
[SerializeField] private Button backButton;
// Runtime references
private CardSystemManager _cardManager;
private List<CardUIElement> _displayedCards = new List<CardUIElement>();
@@ -37,6 +40,12 @@ namespace AppleHills.UI.CardSystem
canvasGroup = GetComponent<CanvasGroup>();
if (canvasGroup == null)
canvasGroup = gameObject.AddComponent<CanvasGroup>();
// Set up back button
if (backButton != null)
{
backButton.onClick.AddListener(OnBackButtonClicked);
}
}
/// <summary>
@@ -302,6 +311,10 @@ namespace AppleHills.UI.CardSystem
if (resetFiltersButton != null)
resetFiltersButton.onClick.RemoveListener(ResetFilters);
// Clean up back button listener
if (backButton != null)
backButton.onClick.RemoveListener(OnBackButtonClicked);
// Clean up card listeners
foreach (var card in _displayedCards)
{
@@ -319,5 +332,18 @@ namespace AppleHills.UI.CardSystem
}
}
}
/// <summary>
/// Handles click on the back button
/// </summary>
private void OnBackButtonClicked()
{
// Use the UIPageController to go back to the previous page
UIPageController pageController = UIPageController.Instance;
if (pageController != null)
{
pageController.PopPage();
}
}
}
}

View File

@@ -4,6 +4,7 @@ using AppleHills.Data.CardSystem;
using Core;
using Data.CardSystem;
using Pixelplacement;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
@@ -16,25 +17,26 @@ namespace AppleHills.UI.CardSystem
{
[Header("UI Elements")]
[SerializeField] private GameObject boosterPackObject;
[SerializeField] private Transform cardRevealTransform;
[SerializeField] private RectTransform cardRevealContainer; // This should have a HorizontalLayoutGroup component
[SerializeField] private GameObject cardPrefab;
[SerializeField] private GameObject cardBackPrefab;
[SerializeField] private Button openBoosterButton;
[SerializeField] private Button continueButton;
[SerializeField] private CanvasGroup canvasGroup;
[Header("Navigation")]
[SerializeField] private Button backButton;
[Header("Animation Settings")]
[SerializeField] private float cardRevealDelay = 0.5f;
[SerializeField] private float cardMoveToBackpackDelay = 1.0f;
[SerializeField] private Transform backpackTargetTransform;
[SerializeField] private AudioSource cardRevealSound;
[SerializeField] private AudioSource rareCardSound;
[SerializeField] private ParticleSystem cardRevealParticles;
[SerializeField] private ParticleSystem rareCardParticles;
[SerializeField] private float cardRevealDelay = 0.3f;
[SerializeField] private float cardMoveToBackpackDelay = 0.8f;
[SerializeField] private float flipAnimationDuration = 0.5f;
// State tracking
private enum OpeningState
{
BoosterReady,
CardBacksVisible,
CardsRevealing,
CardsRevealed,
MovingToBackpack,
@@ -43,13 +45,17 @@ namespace AppleHills.UI.CardSystem
private OpeningState _currentState = OpeningState.BoosterReady;
private List<CardUIElement> _revealedCards = new List<CardUIElement>();
private List<GameObject> _cardBacks = new List<GameObject>();
private List<CardData> _boosterCards = new List<CardData>();
private int _revealedCardCount = 0;
private CardSystemManager _cardManager;
private Coroutine _revealCoroutine;
private CardAlbumUI _cardAlbumUI;
private Coroutine _moveToBackpackCoroutine;
private void Awake()
{
_cardManager = CardSystemManager.Instance;
_cardAlbumUI = FindObjectOfType<CardAlbumUI>();
// Set up button listeners
if (openBoosterButton != null)
@@ -63,6 +69,12 @@ namespace AppleHills.UI.CardSystem
continueButton.gameObject.SetActive(false);
}
// Set up back button
if (backButton != null)
{
backButton.onClick.AddListener(OnBackButtonClicked);
}
// Make sure we have a CanvasGroup for transitions
if (canvasGroup == null)
canvasGroup = GetComponent<CanvasGroup>();
@@ -83,14 +95,36 @@ namespace AppleHills.UI.CardSystem
continueButton.onClick.RemoveListener(OnContinueClicked);
}
// Stop any running coroutines
if (_revealCoroutine != null)
StopCoroutine(_revealCoroutine);
if (backButton != null)
{
backButton.onClick.RemoveListener(OnBackButtonClicked);
}
// Stop any running coroutines
if (_moveToBackpackCoroutine != null)
StopCoroutine(_moveToBackpackCoroutine);
}
/// <summary>
/// Handles click on the back button
/// </summary>
private void OnBackButtonClicked()
{
// Don't allow going back during animations or card reveals
if (_currentState == OpeningState.CardsRevealing ||
_currentState == OpeningState.MovingToBackpack)
{
return;
}
// Use the UIPageController to go back to the previous page
UIPageController pageController = UIPageController.Instance;
if (pageController != null)
{
pageController.PopPage();
}
}
/// <summary>
/// Resets the page to its initial state when it becomes active
/// </summary>
@@ -114,10 +148,19 @@ namespace AppleHills.UI.CardSystem
}
_revealedCards.Clear();
// Clear card backs
foreach (var cardBack in _cardBacks)
{
if (cardBack != null)
Destroy(cardBack);
}
_cardBacks.Clear();
// Reset state
_currentState = OpeningState.BoosterReady;
_revealedCardCount = 0;
// Show booster pack, hide continue button
// Show booster pack, show open button, hide continue button
if (boosterPackObject != null)
{
boosterPackObject.SetActive(true);
@@ -132,6 +175,12 @@ namespace AppleHills.UI.CardSystem
{
continueButton.gameObject.SetActive(false);
}
// Make back button visible
if (backButton != null)
{
backButton.gameObject.SetActive(true);
}
}
/// <summary>
@@ -141,12 +190,12 @@ namespace AppleHills.UI.CardSystem
{
if (_currentState != OpeningState.BoosterReady) return;
_currentState = OpeningState.CardsRevealing;
_currentState = OpeningState.CardBacksVisible;
// Open the booster pack and get the cards
List<CardData> newCards = _cardManager.OpenBoosterPack();
_boosterCards = _cardManager.OpenBoosterPack();
if (newCards.Count > 0)
if (_boosterCards.Count > 0)
{
// Hide the booster pack and open button
if (boosterPackObject != null)
@@ -162,8 +211,8 @@ namespace AppleHills.UI.CardSystem
openBoosterButton.gameObject.SetActive(false);
}
// Start revealing cards
_revealCoroutine = StartCoroutine(RevealCards(newCards));
// Show card backs first
StartCoroutine(ShowCardBacks());
}
else
{
@@ -173,73 +222,111 @@ namespace AppleHills.UI.CardSystem
}
/// <summary>
/// Reveals cards one by one with animation
/// Shows card backs in the reveal positions
/// </summary>
private IEnumerator RevealCards(List<CardData> cards)
private IEnumerator ShowCardBacks()
{
// Wait a short delay before revealing cards
// Wait a short delay before showing card backs
yield return new WaitForSeconds(0.5f);
// Reveal each card
foreach (var cardData in cards)
// Create card backs for each position (usually 3)
for (int i = 0; i < Mathf.Min(_boosterCards.Count, cardRevealContainer.childCount); i++)
{
// Instantiate card UI element
GameObject cardObj = Instantiate(cardPrefab, cardRevealTransform);
CardUIElement cardUI = cardObj.GetComponent<CardUIElement>();
if (cardBackPrefab == null || cardRevealContainer.GetChild(i) == null) continue;
if (cardUI != null)
// Instantiate card back object at the correct position
GameObject cardBackObj = Instantiate(cardBackPrefab, cardRevealContainer.GetChild(i));
cardBackObj.transform.localPosition = Vector3.zero;
_cardBacks.Add(cardBackObj);
// Store the index for later reference when clicked
int cardIndex = i;
// Add click handler to the card back
Button cardBackButton = cardBackObj.GetComponent<Button>();
if (cardBackButton == null)
{
// Set up the card data
cardUI.SetupCard(cardData);
_revealedCards.Add(cardUI);
cardBackButton = cardBackObj.AddComponent<Button>();
}
// Configure the button
cardBackButton.onClick.AddListener(() => OnCardBackClicked(cardIndex));
// Set initial scale to zero for animation
cardObj.transform.localScale = Vector3.zero;
cardBackObj.transform.localScale = Vector3.zero;
// Play reveal animation using Pixelplacement.Tween
Tween.LocalScale(cardObj.transform, Vector3.one, 0.5f, 0f, Tween.EaseOutBack);
// Call card's show animation
cardUI.OnShowAnimation();
// Play appropriate sound and particles based on rarity
if (cardData.Rarity >= CardRarity.Rare)
{
// Play rare card sound
if (rareCardSound != null)
{
rareCardSound.Play();
}
// Play rare card particles
if (rareCardParticles != null)
{
rareCardParticles.transform.position = cardObj.transform.position;
rareCardParticles.Play();
}
}
else
{
// Play regular card sound
if (cardRevealSound != null)
{
cardRevealSound.Play();
}
// Play regular particles
if (cardRevealParticles != null)
{
cardRevealParticles.transform.position = cardObj.transform.position;
cardRevealParticles.Play();
}
}
Tween.LocalScale(cardBackObj.transform, Vector3.one, 0.5f, 0f, Tween.EaseOutBack);
// Wait for animation delay
yield return new WaitForSeconds(cardRevealDelay);
}
// Update state
_currentState = OpeningState.CardBacksVisible;
}
// Update state and show continue button
/// <summary>
/// Handles click on a card back to reveal the card
/// </summary>
private void OnCardBackClicked(int cardIndex)
{
// Only respond to clicks when in the appropriate state
if (_currentState != OpeningState.CardBacksVisible) return;
// Ensure the index is valid
if (cardIndex < 0 || cardIndex >= _boosterCards.Count || cardIndex >= _cardBacks.Count) return;
// Get the card data and card back
CardData cardData = _boosterCards[cardIndex];
GameObject cardBack = _cardBacks[cardIndex];
// Start the reveal animation for this specific card
StartCoroutine(RevealCard(cardIndex, cardData, cardBack));
}
/// <summary>
/// Reveals an individual card with animation
/// </summary>
private IEnumerator RevealCard(int cardIndex, CardData cardData, GameObject cardBack)
{
if (cardBack == null || cardRevealContainer.GetChild(cardIndex) == null) yield break;
// Start flip animation
Transform cardBackTransform = cardBack.transform;
// Step 1: Flip the card 90 degrees (showing the edge)
Tween.LocalRotation(cardBackTransform, new Vector3(0, 90, 0), flipAnimationDuration * 0.5f, 0);
// Wait for half the flip duration
yield return new WaitForSeconds(flipAnimationDuration * 0.5f);
// Step 2: Remove the card back and create the actual card
Destroy(cardBack);
_cardBacks[cardIndex] = null;
// Create the actual card at the same position
GameObject cardObj = Instantiate(cardPrefab, cardRevealContainer.GetChild(cardIndex));
cardObj.transform.localPosition = Vector3.zero;
cardObj.transform.localRotation = Quaternion.Euler(0, 90, 0); // Start at 90 degrees
// Set up the card data
CardUIElement cardUI = cardObj.GetComponent<CardUIElement>();
if (cardUI != null)
{
cardUI.SetupCard(cardData);
_revealedCards.Add(cardUI);
}
// Step 3: Complete the flip animation
Tween.LocalRotation(cardObj.transform, Vector3.zero, flipAnimationDuration * 0.5f, 0);
// Increment the revealed card count
_revealedCardCount++;
// If all cards have been revealed, show the continue button
if (_revealedCardCount >= _boosterCards.Count)
{
_currentState = OpeningState.CardsRevealed;
if (continueButton != null)
{
@@ -250,6 +337,7 @@ namespace AppleHills.UI.CardSystem
Tween.LocalScale(continueButton.transform, Vector3.one, 0.3f, 0f, Tween.EaseOutBack);
}
}
}
/// <summary>
/// Handles click on the continue button after cards are revealed
@@ -274,10 +362,20 @@ namespace AppleHills.UI.CardSystem
/// </summary>
private IEnumerator MoveCardsToBackpack()
{
// If no backpack target, use a default position (lower-right corner)
Vector3 targetPosition = (backpackTargetTransform != null)
? backpackTargetTransform.position
: new Vector3(Screen.width * 0.9f, Screen.height * 0.1f, 0f);
// Use the backpackIcon from CardAlbumUI as the target
Vector3 targetPosition;
if (_cardAlbumUI != null && _cardAlbumUI.transform.Find("BackpackIcon") != null)
{
// Get the world position of the backpack icon
targetPosition = _cardAlbumUI.transform.Find("BackpackIcon").position;
}
else
{
// Fallback to a default position (lower-right corner)
targetPosition = new Vector3(Screen.width * 0.9f, Screen.height * 0.1f, 0f);
Logging.Warning("[BoosterOpeningPage] Couldn't find backpack icon, using default position.");
}
// Move each card to backpack with animation
foreach (var cardUI in _revealedCards)

View File

@@ -23,19 +23,18 @@ namespace AppleHills.UI.CardSystem
[Header("UI Elements")]
[SerializeField] private Button backpackButton;
[SerializeField] private BoosterNotificationDot boosterNotificationDot; // Changed to BoosterNotificationDot
[SerializeField] private GameObject backpackAnimationTarget;
[SerializeField] private GameObject newCardNotification;
[SerializeField] private BoosterNotificationDot boosterNotificationDot;
[Header("Notification Settings")]
[SerializeField] private float notificationDuration = 3f;
[SerializeField] private AudioSource notificationSound;
// Public property to access the backpack icon for animations
public GameObject BackpackIcon => backpackIcon;
private UIPageController _pageController;
private CardSystemManager _cardManager;
private bool _isInitialized = false;
private bool _hasUnseenCards = false;
private Coroutine _notificationCoroutine;
private void Awake()
{
@@ -60,12 +59,9 @@ namespace AppleHills.UI.CardSystem
// Initially show only the backpack icon
ShowOnlyBackpackIcon();
// Hide notifications initially
// Hide notification dot initially
if (boosterNotificationDot != null)
boosterNotificationDot.gameObject.SetActive(false);
if (newCardNotification != null)
newCardNotification.SetActive(false);
}
private void Start()
@@ -105,9 +101,11 @@ namespace AppleHills.UI.CardSystem
backpackButton.onClick.RemoveListener(OnBackpackButtonClicked);
}
// Stop any coroutines
if (_notificationCoroutine != null)
StopCoroutine(_notificationCoroutine);
// Unsubscribe from page controller events
if (_pageController != null)
{
_pageController.OnPageChanged -= OnPageChanged;
}
}
/// <summary>
@@ -152,11 +150,12 @@ namespace AppleHills.UI.CardSystem
{
_pageController.PushPage(mainMenuPage);
// Clear notification
if (boosterNotificationDot != null)
boosterNotificationDot.gameObject.SetActive(false);
// Clear notification for unseen cards when opening menu
if (_hasUnseenCards)
{
_hasUnseenCards = false;
UpdateBoosterVisibility();
}
}
else if (_pageController.CurrentPage == mainMenuPage)
{
@@ -177,8 +176,16 @@ namespace AppleHills.UI.CardSystem
}
else
{
if (backpackIcon != null)
backpackIcon.SetActive(false);
}
// Update menu if it's the main menu page
if (newPage == mainMenuPage && mainMenuPage is CardMenuPage menuPage)
{
// Force UI refresh when returning to main menu
menuPage.RefreshUI();
}
}
/// <summary>
@@ -186,7 +193,11 @@ namespace AppleHills.UI.CardSystem
/// </summary>
private void ShowOnlyBackpackIcon()
{
if (backpackIcon != null)
backpackIcon.SetActive(true);
// Update booster notification visibility
UpdateBoosterVisibility();
}
/// <summary>
@@ -209,60 +220,9 @@ namespace AppleHills.UI.CardSystem
else
{
Logging.Debug("[CardAlbumUI] No booster packs available");
ShowNoBoostersNotification();
}
}
/// <summary>
/// Shows a notification that no booster packs are available
/// </summary>
private void ShowNoBoostersNotification()
{
if (newCardNotification != null)
{
// Set notification text
Text notificationText = newCardNotification.GetComponentInChildren<Text>();
if (notificationText != null)
notificationText.text = "No booster packs available!";
// Show and animate the notification
ShowTemporaryNotification(newCardNotification);
}
}
/// <summary>
/// Shows a notification temporarily and then hides it
/// </summary>
private void ShowTemporaryNotification(GameObject notification)
{
if (notification == null) return;
// Stop any existing notification coroutine
if (_notificationCoroutine != null)
StopCoroutine(_notificationCoroutine);
// Start new notification coroutine
_notificationCoroutine = StartCoroutine(ShowNotificationCoroutine(notification));
}
private IEnumerator ShowNotificationCoroutine(GameObject notification)
{
// Show notification
notification.SetActive(true);
notification.transform.localScale = Vector3.zero;
// Animate in
Tween.LocalScale(notification.transform, Vector3.one, 0.3f, 0f, Tween.EaseOutBack);
// Wait for duration
yield return new WaitForSeconds(notificationDuration);
// Animate out
Tween.LocalScale(notification.transform, Vector3.zero, 0.3f, 0f, Tween.EaseInBack, Tween.LoopType.None, null, () => {
notification.SetActive(false);
});
}
/// <summary>
/// Updates the booster count display
/// </summary>
@@ -272,9 +232,25 @@ namespace AppleHills.UI.CardSystem
{
boosterNotificationDot.SetCount(count);
// Animate the text for feedback
// Animate the notification dot for feedback
boosterNotificationDot.transform.localScale = Vector3.one * 1.2f;
Tween.LocalScale(boosterNotificationDot.transform, Vector3.one, 0.3f, 0f);
// Update visibility based on count
UpdateBoosterVisibility();
}
}
/// <summary>
/// Updates the visibility of the booster notification dot based on current state
/// </summary>
private void UpdateBoosterVisibility()
{
if (boosterNotificationDot != null)
{
// Show dot if there are boosters or unseen cards
bool hasBooters = _cardManager != null && _cardManager.GetBoosterPackCount() > 0;
boosterNotificationDot.gameObject.SetActive(hasBooters || _hasUnseenCards);
}
}
@@ -298,8 +274,7 @@ namespace AppleHills.UI.CardSystem
_pageController.CurrentPage != boosterOpeningPage)
{
_hasUnseenCards = true;
if (boosterNotificationDot != null)
boosterNotificationDot.gameObject.SetActive(true);
UpdateBoosterVisibility();
}
Logging.Debug($"[CardAlbumUI] New card collected: {card.Name}");
@@ -310,18 +285,7 @@ namespace AppleHills.UI.CardSystem
/// </summary>
private void HandleCardRarityUpgraded(CardData card)
{
// Show a special notification for rarity upgrade
if (newCardNotification != null)
{
// Set notification text
Text notificationText = newCardNotification.GetComponentInChildren<Text>();
if (notificationText != null)
notificationText.text = $"{card.Name} upgraded to {card.Rarity}!";
// Show and animate the notification
ShowTemporaryNotification(newCardNotification);
}
// Just log the upgrade event without showing a notification
Logging.Debug($"[CardAlbumUI] Card upgraded: {card.Name} to {card.Rarity}");
}
}

View File

@@ -82,6 +82,14 @@ namespace AppleHills.UI.CardSystem
}
}
/// <summary>
/// Public method to refresh UI state when returning to this page
/// </summary>
public void RefreshUI()
{
UpdateUI();
}
/// <summary>
/// Updates the UI elements based on current state
/// </summary>

View File

@@ -1,132 +0,0 @@
# Card System Implementation Plan
## Current Implementation Analysis
### Data Layer
1. **CardData.cs**:
- Represents an instance of a card in the player's collection
- Contains unique ID, rarity, and copies owned
- Has a reference to its CardDefinition for display information
- Includes methods for rarity upgrades when collecting duplicates
- Well-structured with proper serialization support
2. **CardDefinition.cs**:
- ScriptableObject template for creating card instances
- Contains basic info (name, description), visuals, and collection data
- Provides helper methods like CreateCardData() and GetBackgroundColor()
- Supports different zones (AppleHills, Quarry, Forest, Mountain, Beach)
3. **CardSystemManager.cs**:
- Singleton manager for the card system
- Manages available card definitions and player inventory
- Includes event callbacks for booster packs and card collection
- Has partial implementation for adding booster packs
- Has a simple CardInventory class stub
4. **CardVisualConfig.cs**:
- ScriptableObject for configuring the visual appearance of cards
- Maps rarities to colors and zones to colors/shapes
- Uses dictionary lookups for efficient access
### UI Layer
1. **CardUIElement.cs**:
- Handles displaying a single card in the UI
- Updates visuals based on card data (rarity, zone)
- References UI elements like card name text, images, frames, etc.
2. **UIPageController.cs**:
- Manages UI page transitions with a stack-based navigation system
- Provides methods for pushing, popping, and clearing the page stack
- Uses events to notify when pages change
3. **UI Page Components**:
- Several page-related files (AlbumViewPage.cs, BoosterOpeningPage.cs, CardMenuPage.cs)
- CardAlbumUI.cs file for handling the album display
- Base UIPage.cs class for common page functionality
## What's done
1. **Complete CardInventory Implementation**:
- Move from simple stub to full implementation
- Add methods to manage the player's card collection
- Implement filtering, sorting, and organization features
2. **Booster Pack Generation**:
- Complete the logic to generate random booster packs with appropriate rarity distribution
- Implement methods for awarding booster packs to the player
- Add events for notifying UI when booster packs are obtained
## What's currently being worked on
3. **Card Collection UI**:
- Complete the album browsing UI with filtering and sorting options
- Implement visual indicators for owned/not owned cards
- Add UI for tracking collection completion
## What's Missing
Based on the requirements, here's what still needs to be implemented:
4. **Booster Pack Opening UI**:
- Implement the UI flow for opening booster packs
- Add card reveal animations and effects
- Create UI feedback for rare card discoveries
5. **Save/Load System**:
- Implement persistence for the player's card collection
- Add autosave functionality for cards and booster packs
## Implementation Plan
### Step 1: Complete the Data Layer
1. **Implement CardInventory.cs**:
- Create a dedicated class file (replacing the stub in CardSystemManager)
- Add methods for adding/removing cards, checking duplicates
- Implement filtering by zone, rarity, etc.
- Add collection statistics methods
2. **Complete CardSystemManager.cs**:
- Update references to use the new CardInventory class
- Add methods for save/load integration
- Implement additional helper methods for card management
### Step 2: Implement UI Flow
1. **Complete UIPage Implementations**:
- Implement CardMenuPage.cs as the main card system entry point
- Complete AlbumViewPage.cs for browsing the collection
- Implement BoosterOpeningPage.cs for the pack opening experience
2. **Card Collection Browsing**:
- Complete CardAlbumUI.cs to display the player's collection
- Add filtering by zone, rarity, etc.
- Implement pagination for large collections
3. **Booster Pack UI**:
- Create UI for displaying and opening booster packs
- Implement card reveal animations and transitions
- Add sound effects and visual feedback
### Step 3: Integration and Polishing
1. **Connect UI to Data Layer**:
- Hook up UI components to CardSystemManager events
- Ensure data flows correctly between UI and data layers
2. **Test and Balance**:
- Test rarity distribution in booster packs
- Balance the upgrade system for duplicates
3. **Performance Optimization**:
- Implement object pooling for card UI elements
- Optimize loading of card data and sprites
### Step 4: Additional Features (Optional)
1. **Card Trading System**:
- Allow players to trade cards with NPCs or other players
2. **Special Collection Bonuses**:
- Rewards for completing sets of cards
3. **Card Usage Mechanics**:
- Ways to use cards in gameplay beyond collection

View File

@@ -0,0 +1,114 @@
# Card System Implementation Plan
## Current Implementation Analysis
### Data Layer
1. **CardData.cs**:
- Represents an instance of a card in the player's collection
- Contains unique ID, rarity, and copies owned
- Has a reference to its CardDefinition for display information
- Includes methods for rarity upgrades when collecting duplicates
- Well-structured with proper serialization support
2. **CardDefinition.cs**:
- ScriptableObject template for creating card instances
- Contains basic info (name, description), visuals, and collection data
- Provides helper methods like CreateCardData() and GetBackgroundColor()
- Supports different zones (AppleHills, Quarry, Forest, Mountain, Beach)
3. **CardSystemManager.cs**:
- Singleton manager for the card system
- Manages available card definitions and player inventory
- Includes event callbacks for booster packs and card collection
- Implements functionality for adding and opening booster packs
4. **CardInventory.cs**:
- Fully implemented management of the player's card collection
- Includes methods for adding cards and tracking booster packs
- Provides filtering methods for different card types
- Supports card lookup by various properties (zone, rarity)
5. **CardVisualConfig.cs**:
- ScriptableObject for configuring the visual appearance of cards
- Maps rarities to colors and zones to colors/shapes
- Uses dictionary lookups for efficient access
### UI Layer
1. **CardUIElement.cs**:
- Handles displaying a single card in the UI
- Updates visuals based on card data (rarity, zone)
- References UI elements like card name text, images, frames, etc.
2. **UIPageController.cs**:
- Manages UI page transitions with a stack-based navigation system
- Provides methods for pushing, popping, and clearing the page stack
- Uses events to notify when pages change
3. **UI Page Components**:
- **CardMenuPage.cs**: Main menu for card system navigation
- **AlbumViewPage.cs**: Simplified implementation that shows filtered cards in grid
- **BoosterOpeningPage.cs**: Interactive card reveal experience
- **CardAlbumUI.cs**: Main controller for the card system UI
- **UIPage.cs**: Base class for common page functionality
## Implementation Status
### Completed
1. **Complete CardInventory Implementation**:
- Full implementation with methods to manage the player's card collection
- Filtering, sorting, and organization features
- Integration with CardSystemManager
2. **Booster Pack Generation**:
- Logic to generate random booster packs with appropriate rarity distribution
- Methods for awarding booster packs to the player
- Events for notifying UI when booster packs are obtained
3. **Card Collection UI**:
- Simplified album browsing UI with filtering and sorting options
- Removed unnecessary card stack and slot system
- Updated AlbumViewPage to use TextMeshPro components
4. **Booster Pack Opening UI (In Progress)**:
- Implemented interactive card reveal system
- Added card back prefabs for clickable reveal experience
- Created flip animations and particle effects for card reveals
- Updated to support revealing three cards individually
### Still Needed
1. **Booster Opening UI Refinement**:
- Fine-tune animation timings and transitions
- Implement custom card back designs
- Add more visual/audio feedback for different rarities
2. **Save/Load System**:
- Implement persistence for the player's card collection
- Add autosave functionality for cards and booster packs
3. **Card Collection Statistics**:
- Add UI for tracking collection completion
- Implement achievements for collecting sets
## Next Steps
### 1. Complete the Booster Opening Experience
- Create proper card back prefab with appropriate design
- Test and refine the card reveal animations
- Ensure particle effects and sounds play correctly
### 2. Add Save/Load System
- Implement JSON serialization for CardInventory
- Add autosave triggers after obtaining new cards
- Create save/load methods in CardSystemManager
### 3. Polish the Overall Experience
- Add transition animations between pages
- Improve visual feedback for obtaining new cards
- Implement collection statistics display
### 4. Additional Features (Optional)
- Special collection bonuses for completing sets
- Card trading system with NPCs
- Card usage mechanics beyond collection

View File

@@ -8,7 +8,7 @@ The card system UI should be structured with a modular prefab approach:
1. **Main Card System Prefab** - Contains the CardAlbumUI component and core structure
2. **Individual UI Page Prefabs** - Each page as its own prefab
3. **Card UI Prefabs** - For cards and card slots
3. **Card UI Prefab** - For card display and interaction
## Detailed Prefab Structure
@@ -18,13 +18,13 @@ The card system UI should be structured with a modular prefab approach:
CardSystem (with CardAlbumUI component)
├── BackpackIcon (GameObject)
│ ├── BackpackImage (Image)
│ ├── BoosterCountText (Text)
│ ├── BoosterCountText (TextMeshProUGUI)
│ └── NotificationDot (GameObject with Image)
├── UIPageController (automatically added by CardAlbumUI if not present)
└── Notifications (GameObject)
└── NewCardNotification (GameObject)
├── Background (Image)
└── Text (Text)
└── Text (TextMeshProUGUI)
```
### Page Prefabs
@@ -33,15 +33,15 @@ CardSystem (with CardAlbumUI component)
```
MainMenuPage (with CardMenuPage component & CanvasGroup)
├── Background (Image)
├── Title (Text)
├── Title (TextMeshProUGUI)
├── OpenBoosterButton (Button)
│ └── Text (Text)
│ └── Text (TextMeshProUGUI)
├── ViewAlbumButton (Button)
│ └── Text (Text)
│ └── Text (TextMeshProUGUI)
├── ChangeClothesButton (Button)
│ └── Text (Text)
│ └── Text (TextMeshProUGUI)
└── NoBoostersMessage (GameObject)
└── Text (Text)
└── Text (TextMeshProUGUI)
```
**2. AlbumViewPage Prefab:**
@@ -49,19 +49,16 @@ MainMenuPage (with CardMenuPage component & CanvasGroup)
AlbumViewPage (with AlbumViewPage component & CanvasGroup)
├── Background (Image)
├── FilterPanel (GameObject)
│ ├── ZoneFilterDropdown (Dropdown)
│ │ ├── Label (Text)
│ ├── ZoneFilterDropdown (TMP_Dropdown)
│ │ ├── Label (TextMeshProUGUI)
│ │ └── Arrow (Image)
│ ├── RarityFilterDropdown (Dropdown)
│ │ ├── Label (Text)
│ ├── RarityFilterDropdown (TMP_Dropdown)
│ │ ├── Label (TextMeshProUGUI)
│ │ └── Arrow (Image)
│ └── ResetFiltersButton (Button)
│ └── Text (Text)
│ └── Text (TextMeshProUGUI)
├── AlbumScrollView (ScrollRect)
│ └── AlbumGrid (GridLayoutGroup)
├── CardStackContainer (RectTransform)
└── EmptyAlbumMessage (GameObject)
└── Text (Text)
```
**3. BoosterOpeningPage Prefab:**
@@ -70,11 +67,14 @@ BoosterOpeningPage (with BoosterOpeningPage component & CanvasGroup)
├── Background (Image)
├── BoosterPackObject (GameObject)
│ └── BoosterImage (Image)
├── CardRevealTransform (Transform)
├── CardRevealContainer (RectTransform)
│ ├── CardRevealPosition1 (Transform)
│ ├── CardRevealPosition2 (Transform)
│ └── CardRevealPosition3 (Transform)
├── OpenBoosterButton (Button)
│ └── Text (Text)
│ └── Text (TextMeshProUGUI)
├── ContinueButton (Button)
│ └── Text (Text)
│ └── Text (TextMeshProUGUI)
├── CardRevealSound (AudioSource)
├── RareCardSound (AudioSource)
├── CardRevealParticles (ParticleSystem)
@@ -83,25 +83,25 @@ BoosterOpeningPage (with BoosterOpeningPage component & CanvasGroup)
### Card-Related Prefabs
**1. CardSlotPrefab:**
```
CardSlot (GameObject)
├── Background (Image)
└── SlotLabel (Text)
```
**2. CardPrefab:**
**1. CardPrefab:**
```
Card (with CardUIElement component & Button)
├── CardBackground (Image)
├── CardFrame (Image)
├── CardImage (Image)
├── CardNameText (Text)
├── CardDescriptionText (Text)
├── ZoneLabel (Text)
├── CardNameText (TextMeshProUGUI)
├── CardDescriptionText (TextMeshProUGUI)
├── ZoneLabel (TextMeshProUGUI)
└── RarityIndicator (Image)
```
**2. CardBackPrefab:**
```
CardBack (with Button component)
├── CardBackImage (Image)
└── BackDesign (Image)
```
## Component Setup Guide
### CardAlbumUI Component Setup
@@ -146,9 +146,6 @@ CardMenuPage Component Inspector:
AlbumViewPage Component Inspector:
- Album UI Elements:
- Album Grid: [AlbumGrid Component]
- Card Stack Container: [CardStackContainer Transform]
- Empty Album Message: [EmptyAlbumMessage GameObject]
- Card Slot Prefab: [CardSlotPrefab Asset]
- Card Prefab: [CardPrefab Asset]
- Filter UI:
- Zone Filter Dropdown: [ZoneFilterDropdown]
@@ -163,14 +160,19 @@ AlbumViewPage Component Inspector:
BoosterOpeningPage Component Inspector:
- UI Elements:
- Booster Pack Object: [BoosterPackObject]
- Card Reveal Transform: [CardRevealTransform]
- Card Reveal Container: [CardRevealContainer]
- Card Reveal Positions: [Array of 3 Transform positions]
- Card Prefab: [CardPrefab Asset]
- Card Back Prefab: [CardBackPrefab Asset]
- Open Booster Button: [OpenBoosterButton]
- Continue Button: [ContinueButton]
- Canvas Group: [CanvasGroup on this GameObject]
- Open Booster Text: [TextMeshProUGUI]
- Continue Text: [TextMeshProUGUI]
- Animation Settings:
- Card Reveal Delay: 0.5 (adjustable)
- Card Move To Backpack Delay: 1.0 (adjustable)
- Card Reveal Delay: 0.3 (adjustable)
- Card Move To Backpack Delay: 0.8 (adjustable)
- Flip Animation Duration: 0.5 (adjustable)
- Backpack Target Transform: [BackpackIcon Transform]
- Card Reveal Sound: [CardRevealSound Component]
- Rare Card Sound: [RareCardSound Component]
@@ -198,21 +200,21 @@ CardUIElement Component Inspector:
Start by creating the card prefabs since other prefabs will reference them:
1. **Create CardSlotPrefab**:
- Create GameObject → UI → Image
- Add Text component for slot label
- Adjust visual appearance for an empty slot
- Save as prefab
2. **Create CardPrefab**:
1. **Create CardPrefab**:
- Create GameObject → UI → Image (for background)
- Add child Images for frame and card art
- Add Text components for name, description, zone
- Add TextMeshPro components for name, description, zone
- Add CardUIElement script
- Configure Inspector references
- Add Button component
- Save as prefab
2. **Create CardBackPrefab**:
- Create GameObject → UI → Image (for card back)
- Add Button component for interaction
- Style appropriately to match your game's aesthetics
- Save as prefab
### 2. Create UI Page Prefabs
Create each page prefab individually:
@@ -229,16 +231,17 @@ Create each page prefab individually:
- Add AlbumViewPage script
- Add CanvasGroup component
- Configure all Inspector references
- Assign CardSlotPrefab and CardPrefab
- Assign CardPrefab
- Save as prefab
3. **Create BoosterOpeningPage Prefab**:
- Set up UI elements as shown in structure
- Create CardRevealContainer with three child positions
- Add BoosterOpeningPage script
- Add CanvasGroup component
- Add audio sources and particle systems
- Configure all Inspector references
- Assign CardPrefab
- Assign CardPrefab and CardBackPrefab
- Save as prefab
### 3. Create Main CardSystem Prefab