diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..046cab6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,79 @@ +# This .gitignore file should be placed at the root of your Unity project directory +# +# Get latest from https://github.com/github/gitignore/blob/main/Unity.gitignore +# +/[Ll]ibrary/ +/[Tt]emp/ +/[Oo]bj/ +/[Bb]uild/ +/[Bb]uilds/ +/[Ll]ogs/ +/[Uu]ser[Ss]ettings/ +/[Ss]creen[Ss]hots/ +/Assets/Maziminds/* + +# MemoryCaptures can get excessive in size. +# They also could contain extremely sensitive data +/[Mm]emoryCaptures/ + +# Recordings can get excessive in size +/[Rr]ecordings/ + +# Uncomment this line if you wish to ignore the asset store tools plugin +# /[Aa]ssets/AssetStoreTools* + +# Autogenerated Jetbrains Rider plugin +/[Aa]ssets/Plugins/Editor/JetBrains* + +# Visual Studio cache directory +.vs/ + +# Gradle cache directory +.gradle/ + +# Autogenerated VS/MD/Consulo solution and project files +ExportedObj/ +.consulo/ +*.csproj +*.unityproj +*.sln +*.suo +*.tmp +*.user +*.userprefs +*.pidb +*.booproj +*.svd +*.pdb +*.mdb +*.opendb +*.VC.db + +# Unity3D generated meta files +*.pidb.meta +*.pdb.meta +*.mdb.meta + +# Unity3D generated file on crash reports +sysinfo.txt + +# Builds +*.apk +*.aab +*.unitypackage +*.app + +*.meta + +# Crashlytics generated file +crashlytics-build.properties + +# Packed Addressables +/[Aa]ssets/[Aa]ddressable[Aa]ssets[Dd]ata/*/*.bin* + +# Temporary auto-generated Android Assets +/[Aa]ssets/[Ss]treamingAssets/aa.meta +/[Aa]ssets/[Ss]treamingAssets/aa/* + +#DEV-NOTES +dev-notes.txt \ No newline at end of file diff --git a/Demo/V1/Prefabs/CardGroupV1.prefab b/Demo/V1/Prefabs/CardGroupV1.prefab new file mode 100644 index 0000000..f94c0d1 --- /dev/null +++ b/Demo/V1/Prefabs/CardGroupV1.prefab @@ -0,0 +1,120 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6608077007195453498 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2829695428387245204} + - component: {fileID: 1153579886772204185} + - component: {fileID: 331790711438182607} + - component: {fileID: 7330363671380446143} + - component: {fileID: 1325471978233236215} + m_Layer: 5 + m_Name: CardGroupV1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2829695428387245204 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6608077007195453498} + 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} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 1, y: 160} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1153579886772204185 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6608077007195453498} + m_CullTransparentMesh: 1 +--- !u!114 &331790711438182607 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6608077007195453498} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 0.87058824} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &7330363671380446143 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6608077007195453498} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_ChildAlignment: 4 + m_Spacing: 0 + m_ChildForceExpandWidth: 0 + m_ChildForceExpandHeight: 0 + m_ChildControlWidth: 0 + m_ChildControlHeight: 0 + m_ChildScaleWidth: 0 + m_ChildScaleHeight: 0 + m_ReverseArrangement: 0 +--- !u!114 &1325471978233236215 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6608077007195453498} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ebda105a44ff51e4a86ffe64856be452, type: 3} + m_Name: + m_EditorClassIdentifier: + cardPrefab: {fileID: 6856127442641504459, guid: 53f17a2854c60c7418dc65c624c392d5, type: 3} + minSpacing: -30 + maxSpacing: -20 diff --git a/Demo/V1/Prefabs/CardPlaceHolderV1.prefab b/Demo/V1/Prefabs/CardPlaceHolderV1.prefab new file mode 100644 index 0000000..a658176 --- /dev/null +++ b/Demo/V1/Prefabs/CardPlaceHolderV1.prefab @@ -0,0 +1,98 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6856127442641504459 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 495165409591815314} + - component: {fileID: 8525145373896755870} + - component: {fileID: 6520180767713628541} + - component: {fileID: 8039471428015009149} + m_Layer: 5 + m_Name: CardPlaceHolderV1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &495165409591815314 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + 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} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 150} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8525145373896755870 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_CullTransparentMesh: 1 +--- !u!114 &6520180767713628541 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 0.42745098} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &8039471428015009149 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 diff --git a/Demo/V1/Prefabs/CardV1.prefab b/Demo/V1/Prefabs/CardV1.prefab new file mode 100644 index 0000000..e0963c3 --- /dev/null +++ b/Demo/V1/Prefabs/CardV1.prefab @@ -0,0 +1,126 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6856127442641504459 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 495165409591815314} + - component: {fileID: 8525145373896755870} + - component: {fileID: 6520180767713628541} + - component: {fileID: 8039471428015009149} + - component: {fileID: 24432264505251853} + - component: {fileID: 2900849560296473309} + m_Layer: 5 + m_Name: CardV1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &495165409591815314 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + 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} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 150} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8525145373896755870 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_CullTransparentMesh: 1 +--- !u!114 &6520180767713628541 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: f79366432c9db724aa382e9f044d4f7d, 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 &8039471428015009149 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!225 &24432264505251853 +CanvasGroup: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_Alpha: 1 + m_Interactable: 1 + m_BlocksRaycasts: 1 + m_IgnoreParentGroups: 0 +--- !u!114 &2900849560296473309 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ed1799ba6bd1d6d40a8e0b1b8230fb55, type: 3} + m_Name: + m_EditorClassIdentifier: + cardPlaceHolderPrefab: {fileID: 6856127442641504459, guid: fe468b29681291a4c8e4342321b48da3, type: 3} + label: diff --git a/Demo/V1/Prefabs/CardZoneV1.prefab b/Demo/V1/Prefabs/CardZoneV1.prefab new file mode 100644 index 0000000..92f00a2 --- /dev/null +++ b/Demo/V1/Prefabs/CardZoneV1.prefab @@ -0,0 +1,122 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4525184240084414344 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4384197104852595879} + - component: {fileID: 1145969458508489341} + - component: {fileID: 2588802101955207389} + - component: {fileID: 425807440324429014} + - component: {fileID: 3976257524506216261} + m_Layer: 5 + m_Name: CardZoneV1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4384197104852595879 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4525184240084414344} + 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} + 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: 1000, y: 180} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1145969458508489341 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4525184240084414344} + m_CullTransparentMesh: 1 +--- !u!114 &2588802101955207389 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4525184240084414344} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_ChildAlignment: 4 + m_Spacing: 0 + m_ChildForceExpandWidth: 0 + m_ChildForceExpandHeight: 0 + m_ChildControlWidth: 0 + m_ChildControlHeight: 0 + m_ChildScaleWidth: 0 + m_ChildScaleHeight: 0 + m_ReverseArrangement: 0 +--- !u!114 &425807440324429014 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4525184240084414344} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 0.30588236} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &3976257524506216261 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4525184240084414344} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 63b4f0345438aca458ea7f056d05fe0a, type: 3} + m_Name: + m_EditorClassIdentifier: + cardGroupPrefab: {fileID: 6608077007195453498, guid: 3818ffb6b834a0748bfe6522be80aa12, type: 3} + minSpacing: 100 + maxSpacing: 200 + shouldRemoveEmptyGroup: 1 + label: CardZone diff --git a/Demo/V1/Scenes/V1.unity b/Demo/V1/Scenes/V1.unity new file mode 100644 index 0000000..070e3b2 --- /dev/null +++ b/Demo/V1/Scenes/V1.unity @@ -0,0 +1,2030 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 0 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 500 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 2 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 0 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &29528582 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 29528583} + - component: {fileID: 29528586} + - component: {fileID: 29528585} + - component: {fileID: 29528584} + m_Layer: 5 + m_Name: AdjustRed + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &29528583 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 29528582} + 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: 1704443737} + m_Father: {fileID: 1368409995} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: -150, y: 350} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &29528584 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 29528582} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 29528585} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1608967542} + m_TargetAssemblyTypeName: CardEase.CardZoneManager`1[[CustomCardModel, Assembly-CSharp + m_MethodName: RefreshCardZone + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &29528585 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 29528582} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.90588236, g: 0.23529412, b: 0.23529412, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &29528586 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 29528582} + m_CullTransparentMesh: 1 +--- !u!1 &385795311 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 385795313} + - component: {fileID: 385795314} + m_Layer: 0 + m_Name: GameManager + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &385795313 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 385795311} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -1.3028029, y: -1.5346158, z: 0.03392602} + 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 &385795314 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 385795311} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 84ab937d16c73954497e624a1bdd178c, type: 3} + m_Name: + m_EditorClassIdentifier: + cardZoneManagerRed: {fileID: 1608967542} + cardZoneManagerBlue: {fileID: 1732323386} + cards: + - value: 1 + name: CLUBS_ACE + image: {fileID: 21300000, guid: f79366432c9db724aa382e9f044d4f7d, type: 3} + - value: 2 + name: CLUBS_KING + image: {fileID: 21300000, guid: 29b6137c43e7f0d43a8ea1e628a8d330, type: 3} + - value: 3 + name: DIAMONDS_ACE + image: {fileID: 21300000, guid: 4ede681e08c7faa43bc6e244182caebd, type: 3} + - value: 4 + name: DIAMONDS_KING + image: {fileID: 21300000, guid: dc06b3163ab142f4bae3bc4e4f722845, type: 3} + - value: 5 + name: HEART_ACE + image: {fileID: 21300000, guid: ac486837f228e204d8e4a7f4f52113f3, type: 3} + - value: 6 + name: HEART_KING + image: {fileID: 21300000, guid: 38090e4765729914eaa5fd621200409d, type: 3} +--- !u!1 &519420028 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 519420032} + - component: {fileID: 519420031} + - component: {fileID: 519420029} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &519420029 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 519420028} + m_Enabled: 1 +--- !u!20 &519420031 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 519420028} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 0 + m_HDR: 1 + m_AllowMSAA: 0 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 0 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &519420032 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 519420028} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10} + 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!1001 &641070846 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1368409995} + m_Modifications: + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.b + value: 0.23495908 + objectReference: {fileID: 0} + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.g + value: 0.23495908 + objectReference: {fileID: 0} + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.r + value: 0.9056604 + objectReference: {fileID: 0} + - target: {fileID: 3976257524506216261, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: label + value: RED + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMax.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMax.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMin.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMin.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_SizeDelta.x + value: 500 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_SizeDelta.y + value: 180 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchoredPosition.x + value: 350 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4525184240084414344, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Name + value: DropZoneRed + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 61b61a78485ff464784589fa703b7e36, type: 3} +--- !u!224 &641070847 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + m_PrefabInstance: {fileID: 641070846} + m_PrefabAsset: {fileID: 0} +--- !u!224 &763157952 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + m_PrefabInstance: {fileID: 8323013044853991484} + m_PrefabAsset: {fileID: 0} +--- !u!1 &877371709 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 877371710} + - component: {fileID: 877371712} + - component: {fileID: 877371711} + m_Layer: 5 + m_Name: Text (Legacy) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &877371710 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 877371709} + 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: 1748317765} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &877371711 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 877371709} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 38 + m_FontStyle: 1 + m_BestFit: 0 + m_MinSize: 1 + m_MaxSize: 77 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Adjust Spacing +--- !u!222 &877371712 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 877371709} + m_CullTransparentMesh: 1 +--- !u!1 &895181839 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 895181840} + - component: {fileID: 895181842} + - component: {fileID: 895181841} + m_Layer: 5 + m_Name: Text (Legacy) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &895181840 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 895181839} + 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: 1673952556} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &895181841 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 895181839} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 38 + m_FontStyle: 1 + m_BestFit: 0 + m_MinSize: 1 + m_MaxSize: 77 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Add Card +--- !u!222 &895181842 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 895181839} + m_CullTransparentMesh: 1 +--- !u!1 &921632771 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 921632772} + - component: {fileID: 921632775} + - component: {fileID: 921632774} + - component: {fileID: 921632773} + m_Layer: 5 + m_Name: Next + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &921632772 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 921632771} + 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: 1483904642} + m_Father: {fileID: 1368409995} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -150, y: -50} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &921632773 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 921632771} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 921632774} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 385795314} + m_TargetAssemblyTypeName: Demo.V1Controller, Assembly-CSharp + m_MethodName: NextLevel + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &921632774 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 921632771} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &921632775 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 921632771} + m_CullTransparentMesh: 1 +--- !u!1 &1316569717 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1316569718} + - component: {fileID: 1316569721} + - component: {fileID: 1316569720} + - component: {fileID: 1316569719} + m_Layer: 5 + m_Name: Add Card Red + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1316569718 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1316569717} + 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: 1425525693} + m_Father: {fileID: 1368409995} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 150, y: 350} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1316569719 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1316569717} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1316569720} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 385795314} + m_TargetAssemblyTypeName: V1Controller, Assembly-CSharp + m_MethodName: AddCardToRed + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1316569720 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1316569717} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.90588236, g: 0.23529412, b: 0.23529412, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1316569721 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1316569717} + m_CullTransparentMesh: 1 +--- !u!1 &1368409991 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1368409995} + - component: {fileID: 1368409994} + - component: {fileID: 1368409993} + - component: {fileID: 1368409992} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1368409992 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1368409991} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &1368409993 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1368409991} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 1 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 1920, y: 1080} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0.5 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!223 &1368409994 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1368409991} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 1 + m_Camera: {fileID: 519420031} + 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 &1368409995 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1368409991} + 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: 921632772} + - {fileID: 763157952} + - {fileID: 641070847} + - {fileID: 1732323385} + - {fileID: 1724924865} + - {fileID: 29528583} + - {fileID: 1748317765} + - {fileID: 1316569718} + - {fileID: 1673952556} + 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!1 &1425525692 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1425525693} + - component: {fileID: 1425525695} + - component: {fileID: 1425525694} + m_Layer: 5 + m_Name: Text (Legacy) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1425525693 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1425525692} + 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: 1316569718} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1425525694 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1425525692} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 38 + m_FontStyle: 1 + m_BestFit: 0 + m_MinSize: 1 + m_MaxSize: 77 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Add Card +--- !u!222 &1425525695 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1425525692} + m_CullTransparentMesh: 1 +--- !u!1 &1483904641 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1483904642} + - component: {fileID: 1483904644} + - component: {fileID: 1483904643} + m_Layer: 5 + m_Name: Text (Legacy) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1483904642 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1483904641} + 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: 921632772} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1483904643 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1483904641} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 24 + m_FontStyle: 1 + m_BestFit: 0 + m_MinSize: 0 + m_MaxSize: 56 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Next Demo +--- !u!222 &1483904644 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1483904641} + m_CullTransparentMesh: 1 +--- !u!114 &1608967542 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 3976257524506216261, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + m_PrefabInstance: {fileID: 8323013044853991484} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 63b4f0345438aca458ea7f056d05fe0a, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &1673952555 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1673952556} + - component: {fileID: 1673952559} + - component: {fileID: 1673952558} + - component: {fileID: 1673952557} + m_Layer: 5 + m_Name: Add Card Blue + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1673952556 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1673952555} + 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: 895181840} + m_Father: {fileID: 1368409995} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 150, y: 700} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1673952557 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1673952555} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1673952558} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 385795314} + m_TargetAssemblyTypeName: V1Controller, Assembly-CSharp + m_MethodName: AddCardToBlue + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1673952558 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1673952555} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19215687, g: 0.3137255, b: 0.9372549, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1673952559 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1673952555} + m_CullTransparentMesh: 1 +--- !u!1 &1704443736 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1704443737} + - component: {fileID: 1704443739} + - component: {fileID: 1704443738} + m_Layer: 5 + m_Name: Text (Legacy) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1704443737 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1704443736} + 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: 29528583} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1704443738 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1704443736} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 38 + m_FontStyle: 1 + m_BestFit: 0 + m_MinSize: 1 + m_MaxSize: 77 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Adjust Spacing +--- !u!222 &1704443739 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1704443736} + m_CullTransparentMesh: 1 +--- !u!1001 &1724924864 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1368409995} + m_Modifications: + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.b + value: 0.9339623 + objectReference: {fileID: 0} + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.g + value: 0.31016493 + objectReference: {fileID: 0} + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.r + value: 0.18943575 + objectReference: {fileID: 0} + - target: {fileID: 3976257524506216261, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: label + value: BLUE + objectReference: {fileID: 0} + - target: {fileID: 3976257524506216261, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: shouldRemoveEmptyGroup + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMax.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMax.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMin.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMin.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_SizeDelta.x + value: 500 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_SizeDelta.y + value: 180 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchoredPosition.x + value: -350 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4525184240084414344, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Name + value: DropZoneBlue + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 61b61a78485ff464784589fa703b7e36, type: 3} +--- !u!224 &1724924865 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + m_PrefabInstance: {fileID: 1724924864} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1732323384 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1368409995} + m_Modifications: + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.b + value: 0.9339623 + objectReference: {fileID: 0} + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.g + value: 0.31016493 + objectReference: {fileID: 0} + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.r + value: 0.18943575 + objectReference: {fileID: 0} + - target: {fileID: 3976257524506216261, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: label + value: BLUE + objectReference: {fileID: 0} + - target: {fileID: 3976257524506216261, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: shouldRemoveEmptyGroup + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMax.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMax.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMin.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMin.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_SizeDelta.x + value: 1159.37 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_SizeDelta.y + value: 180 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchoredPosition.y + value: 396 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4525184240084414344, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Name + value: CardZoneBlue + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 61b61a78485ff464784589fa703b7e36, type: 3} +--- !u!224 &1732323385 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + m_PrefabInstance: {fileID: 1732323384} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1732323386 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 3976257524506216261, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + m_PrefabInstance: {fileID: 1732323384} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 63b4f0345438aca458ea7f056d05fe0a, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &1748317764 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1748317765} + - component: {fileID: 1748317768} + - component: {fileID: 1748317767} + - component: {fileID: 1748317766} + m_Layer: 5 + m_Name: AdjustBlue + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1748317765 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1748317764} + 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: 877371710} + m_Father: {fileID: 1368409995} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: -150, y: 700} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1748317766 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1748317764} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1748317767} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1732323386} + m_TargetAssemblyTypeName: CardEase.CardZoneManager`1[[CustomCardModel, Assembly-CSharp + m_MethodName: RefreshCardZone + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1748317767 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1748317764} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19215687, g: 0.3137255, b: 0.9372549, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1748317768 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1748317764} + m_CullTransparentMesh: 1 +--- !u!1 &1815526277 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1815526280} + - component: {fileID: 1815526279} + - component: {fileID: 1815526278} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1815526278 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1815526277} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1815526279 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1815526277} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1815526280 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1815526277} + 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!1001 &8323013044853991484 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1368409995} + m_Modifications: + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.b + value: 0.23495908 + objectReference: {fileID: 0} + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.g + value: 0.23495908 + objectReference: {fileID: 0} + - target: {fileID: 425807440324429014, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Color.r + value: 0.9056604 + objectReference: {fileID: 0} + - target: {fileID: 3976257524506216261, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: label + value: RED + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMax.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMax.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMin.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchorMin.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_SizeDelta.x + value: 1159.37 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_SizeDelta.y + value: 180 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_AnchoredPosition.y + value: -396 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4384197104852595879, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4525184240084414344, guid: 61b61a78485ff464784589fa703b7e36, type: 3} + propertyPath: m_Name + value: CardZoneRed + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 61b61a78485ff464784589fa703b7e36, type: 3} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 519420032} + - {fileID: 1368409995} + - {fileID: 1815526280} + - {fileID: 385795313} diff --git a/Demo/V1/Scripts/Controllers/V1Controller.cs b/Demo/V1/Scripts/Controllers/V1Controller.cs new file mode 100644 index 0000000..e866e5b --- /dev/null +++ b/Demo/V1/Scripts/Controllers/V1Controller.cs @@ -0,0 +1,61 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.SceneManagement; + +namespace Demo +{ + + public class V1Controller : MonoBehaviour + { + [Header("--------------Data----------------")] + [Tooltip("card zone manager to manage cards in the card zone")] + [SerializeField] V1CardZoneManager cardZoneManagerRed; + [SerializeField] V1CardZoneManager cardZoneManagerBlue; + + [Tooltip("Card model to use for cards")] + [SerializeField] V1CardModel[] cards; + + + // --------------------------MONO methods------------------------ + + void Start() + { + V1CardModel randomCard = this.cards[Random.Range(0, this.cards.Length)]; + List cards = new() + { + randomCard + }; + cardZoneManagerRed.AddGroup(cards); + cardZoneManagerRed.RefreshCardZone(); + } + + + + // --------------------------HELPER METHODS------------------------ + public void AddCardToRed() + { + V1CardModel randomCard = this.cards[Random.Range(0, this.cards.Length)]; + List cards = new(){ + randomCard, + }; + cardZoneManagerRed.AddGroup(cards); + cardZoneManagerRed.RefreshCardZone(); + } + public void AddCardToBlue() + { + V1CardModel randomCard = this.cards[Random.Range(0, this.cards.Length)]; + List cards = new(){ + randomCard, + }; + cardZoneManagerBlue.AddGroup(cards); + cardZoneManagerBlue.RefreshCardZone(); + } + + public void NextLevel() + { + SceneManager.LoadScene("V2"); + } + + } +} \ No newline at end of file diff --git a/Demo/V1/Scripts/Managers/V1CardGroupManager.cs b/Demo/V1/Scripts/Managers/V1CardGroupManager.cs new file mode 100644 index 0000000..fba79f6 --- /dev/null +++ b/Demo/V1/Scripts/Managers/V1CardGroupManager.cs @@ -0,0 +1,16 @@ +namespace Demo +{ + public class V1CardGroupManager : CardEase.CardGroupManager + { + // --------------------------MONO methods------------------------ + protected override void Awake() + { + base.Awake(); + } + + void Update() + { + + } + } +} \ No newline at end of file diff --git a/Demo/V1/Scripts/Managers/V1CardManager.cs b/Demo/V1/Scripts/Managers/V1CardManager.cs new file mode 100644 index 0000000..3a84f8f --- /dev/null +++ b/Demo/V1/Scripts/Managers/V1CardManager.cs @@ -0,0 +1,27 @@ +using UnityEngine.UI; + +namespace Demo +{ + public class V1CardManager : CardEase.CardManager + { + Image cardImage; + + void Awake() + { + cardImage = GetComponent(); + } + + public override void SetData(V1CardModel cardModel) + { + if (cardModel.image != null) + { + this.cardImage.sprite = cardModel.image; + } + } + + public override void UpdateSelection(bool isSelected) + { + this.isSelected = isSelected; + } + } +} \ No newline at end of file diff --git a/Demo/V1/Scripts/Managers/V1CardZoneManager.cs b/Demo/V1/Scripts/Managers/V1CardZoneManager.cs new file mode 100644 index 0000000..aaae788 --- /dev/null +++ b/Demo/V1/Scripts/Managers/V1CardZoneManager.cs @@ -0,0 +1,11 @@ +namespace Demo +{ + public class V1CardZoneManager : CardEase.CardZoneManager + { + // --------------------------MONO methods------------------------ + protected override void Awake() + { + base.Awake(); + } + } +} \ No newline at end of file diff --git a/Demo/V1/Scripts/Models/V1CardModel.cs b/Demo/V1/Scripts/Models/V1CardModel.cs new file mode 100644 index 0000000..4f5f56f --- /dev/null +++ b/Demo/V1/Scripts/Models/V1CardModel.cs @@ -0,0 +1,19 @@ +using UnityEngine; + +namespace Demo +{ + [System.Serializable] + public class V1CardModel : CardEase.CardModel + { + public int value; + public string name; + public Sprite image; + + public V1CardModel(int num, string str, Sprite img) + { + this.value = num; + this.name = str; + this.image = img; + } + } +} \ No newline at end of file diff --git a/Demo/V1/Sprites/CLUBS_ACE.png b/Demo/V1/Sprites/CLUBS_ACE.png new file mode 100644 index 0000000..29994d2 Binary files /dev/null and b/Demo/V1/Sprites/CLUBS_ACE.png differ diff --git a/Demo/V1/Sprites/CLUBS_KING.png b/Demo/V1/Sprites/CLUBS_KING.png new file mode 100644 index 0000000..ee636c9 Binary files /dev/null and b/Demo/V1/Sprites/CLUBS_KING.png differ diff --git a/Demo/V1/Sprites/DIAMONDS_ACE.png b/Demo/V1/Sprites/DIAMONDS_ACE.png new file mode 100644 index 0000000..ffe4946 Binary files /dev/null and b/Demo/V1/Sprites/DIAMONDS_ACE.png differ diff --git a/Demo/V1/Sprites/DIAMONDS_KING.png b/Demo/V1/Sprites/DIAMONDS_KING.png new file mode 100644 index 0000000..fc8d9a6 Binary files /dev/null and b/Demo/V1/Sprites/DIAMONDS_KING.png differ diff --git a/Demo/V1/Sprites/HEARTS_ACE.png b/Demo/V1/Sprites/HEARTS_ACE.png new file mode 100644 index 0000000..8ffb0d2 Binary files /dev/null and b/Demo/V1/Sprites/HEARTS_ACE.png differ diff --git a/Demo/V1/Sprites/HEARTS_KING.png b/Demo/V1/Sprites/HEARTS_KING.png new file mode 100644 index 0000000..39b7ec8 Binary files /dev/null and b/Demo/V1/Sprites/HEARTS_KING.png differ diff --git a/Demo/V1/Sprites/JOKER.png b/Demo/V1/Sprites/JOKER.png new file mode 100644 index 0000000..c8aaeb6 Binary files /dev/null and b/Demo/V1/Sprites/JOKER.png differ diff --git a/Demo/V1/Sprites/SPADES_ACE.png b/Demo/V1/Sprites/SPADES_ACE.png new file mode 100644 index 0000000..f41edca Binary files /dev/null and b/Demo/V1/Sprites/SPADES_ACE.png differ diff --git a/Demo/V1/Sprites/SPADES_KING.png b/Demo/V1/Sprites/SPADES_KING.png new file mode 100644 index 0000000..d243930 Binary files /dev/null and b/Demo/V1/Sprites/SPADES_KING.png differ diff --git a/Demo/V2/Prefabs/CardGroupV2.prefab b/Demo/V2/Prefabs/CardGroupV2.prefab new file mode 100644 index 0000000..92aab79 --- /dev/null +++ b/Demo/V2/Prefabs/CardGroupV2.prefab @@ -0,0 +1,123 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6608077007195453498 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2829695428387245204} + - component: {fileID: 1153579886772204185} + - component: {fileID: 331790711438182607} + - component: {fileID: 7330363671380446143} + - component: {fileID: 8186419807500324543} + m_Layer: 5 + m_Name: CardGroupV2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2829695428387245204 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6608077007195453498} + 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} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 1, y: 160} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1153579886772204185 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6608077007195453498} + m_CullTransparentMesh: 1 +--- !u!114 &331790711438182607 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6608077007195453498} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 0.87058824} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &7330363671380446143 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6608077007195453498} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_ChildAlignment: 4 + m_Spacing: 0 + m_ChildForceExpandWidth: 0 + m_ChildForceExpandHeight: 0 + m_ChildControlWidth: 0 + m_ChildControlHeight: 0 + m_ChildScaleWidth: 0 + m_ChildScaleHeight: 0 + m_ReverseArrangement: 0 +--- !u!114 &8186419807500324543 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6608077007195453498} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c14c2fcf3c2972d4bad644c6661549eb, type: 3} + m_Name: + m_EditorClassIdentifier: + cardPrefab: {fileID: 6856127442641504459, guid: 3a9f57fb9b40cef43ae3dd1b128408ef, type: 3} + minSpacing: -30 + maxSpacing: -20 + somePreFab: {fileID: 0} + someBoolean: 0 + someInt: 0 diff --git a/Demo/V2/Prefabs/CardPlaceHolderV2.prefab b/Demo/V2/Prefabs/CardPlaceHolderV2.prefab new file mode 100644 index 0000000..86fe9e5 --- /dev/null +++ b/Demo/V2/Prefabs/CardPlaceHolderV2.prefab @@ -0,0 +1,98 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6856127442641504459 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 495165409591815314} + - component: {fileID: 8525145373896755870} + - component: {fileID: 6520180767713628541} + - component: {fileID: 8039471428015009149} + m_Layer: 5 + m_Name: CardPlaceHolderV2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &495165409591815314 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + 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} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 150} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8525145373896755870 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_CullTransparentMesh: 1 +--- !u!114 &6520180767713628541 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 0.42745098} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &8039471428015009149 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 diff --git a/Demo/V2/Prefabs/CardV2.prefab b/Demo/V2/Prefabs/CardV2.prefab new file mode 100644 index 0000000..159a8da --- /dev/null +++ b/Demo/V2/Prefabs/CardV2.prefab @@ -0,0 +1,261 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6856127442641504459 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 495165409591815314} + - component: {fileID: 8525145373896755870} + - component: {fileID: 6520180767713628541} + - component: {fileID: 8039471428015009149} + - component: {fileID: 24432264505251853} + - component: {fileID: 5195872011571919473} + - component: {fileID: 581140372543079967} + m_Layer: 5 + m_Name: CardV2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &495165409591815314 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + 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: 178779447536280469} + 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: 100, y: 150} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8525145373896755870 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_CullTransparentMesh: 1 +--- !u!114 &6520180767713628541 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: f79366432c9db724aa382e9f044d4f7d, 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 &8039471428015009149 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!225 &24432264505251853 +CanvasGroup: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_Alpha: 1 + m_Interactable: 1 + m_BlocksRaycasts: 1 + m_IgnoreParentGroups: 0 +--- !u!114 &5195872011571919473 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1248a0fbfe299084fb7efbfedf2679a3, type: 3} + m_Name: + m_EditorClassIdentifier: + cardPlaceHolderPrefab: {fileID: 6856127442641504459, guid: 8f786db4404f5674dba979bc363463e1, type: 3} + label: + isSelected: 0 + selected: {fileID: 7333069401011275645} +--- !u!114 &581140372543079967 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6856127442641504459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 6520180767713628541} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 5195872011571919473} + m_TargetAssemblyTypeName: V2CardManager, Assembly-CSharp + m_MethodName: ToggleSelection + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!1 &7333069401011275645 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 178779447536280469} + - component: {fileID: 1213589030233869827} + - component: {fileID: 5868556678754146884} + m_Layer: 5 + m_Name: Selected + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &178779447536280469 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7333069401011275645} + 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: 495165409591815314} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 12.5, y: 12.5} + m_SizeDelta: {x: 25, y: 25} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1213589030233869827 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7333069401011275645} + m_CullTransparentMesh: 1 +--- !u!114 &5868556678754146884 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7333069401011275645} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 0, b: 0, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 diff --git a/Demo/V2/Prefabs/CardZoneV2.prefab b/Demo/V2/Prefabs/CardZoneV2.prefab new file mode 100644 index 0000000..e38ea63 --- /dev/null +++ b/Demo/V2/Prefabs/CardZoneV2.prefab @@ -0,0 +1,125 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &3665073036452574202 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6640051064279577816} + - component: {fileID: 7348518501194579970} + - component: {fileID: 7261850200840494716} + - component: {fileID: 6701588177555623810} + - component: {fileID: 411645578681063895} + m_Layer: 5 + m_Name: CardZoneV2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6640051064279577816 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3665073036452574202} + 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} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -430} + m_SizeDelta: {x: 1250, y: 180} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &7348518501194579970 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3665073036452574202} + m_CullTransparentMesh: 1 +--- !u!114 &7261850200840494716 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3665073036452574202} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.8773585, g: 0.11173906, b: 0.11173906, a: 0.20784314} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &6701588177555623810 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3665073036452574202} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2a409f3be0f2bc3489b14c789c4fa449, type: 3} + m_Name: + m_EditorClassIdentifier: + cardGroupPrefab: {fileID: 6608077007195453498, guid: 1747697c23b1f2f4d91d9dbdeafc1e2f, type: 3} + minSpacing: 100 + maxSpacing: 200 + shouldRemoveEmptyGroup: 1 + label: CardZone + somePreFab: {fileID: 0} + someBoolean: 0 + someInt: 0 +--- !u!114 &411645578681063895 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3665073036452574202} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_ChildAlignment: 4 + m_Spacing: 0 + m_ChildForceExpandWidth: 0 + m_ChildForceExpandHeight: 0 + m_ChildControlWidth: 0 + m_ChildControlHeight: 0 + m_ChildScaleWidth: 0 + m_ChildScaleHeight: 0 + m_ReverseArrangement: 0 diff --git a/Demo/V2/Scenes/V2.unity b/Demo/V2/Scenes/V2.unity new file mode 100644 index 0000000..4af4939 --- /dev/null +++ b/Demo/V2/Scenes/V2.unity @@ -0,0 +1,1321 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1001 &207008490 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 691472698} + m_Modifications: + - target: {fileID: 411645578681063895, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_ChildAlignment + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 3665073036452574202, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_Name + value: CardZone (1) + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchorMax.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchorMax.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchorMin.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchorMin.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_SizeDelta.x + value: 1500 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_SizeDelta.y + value: 230 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchoredPosition.y + value: 400 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6701588177555623810, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: shouldRemoveEmptyGroup + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} +--- !u!224 &207008491 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + m_PrefabInstance: {fileID: 207008490} + m_PrefabAsset: {fileID: 0} +--- !u!1 &280448132 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 280448134} + - component: {fileID: 280448133} + m_Layer: 0 + m_Name: GameManager + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &280448133 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 280448132} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bad1c654bde377a479b5139332766029, type: 3} + m_Name: + m_EditorClassIdentifier: + cardZoneManager: {fileID: 3615962724449413136} + cards: + - value: 1 + name: CLUBS_ACE + image: {fileID: 21300000, guid: a6586da528da78843b4df21b31c904fb, type: 3} + - value: 2 + name: CLUBS_KING + image: {fileID: 21300000, guid: 493b5cf4ab6ed224c9726c263e1256ab, type: 3} + - value: 3 + name: DIAMONDS_ACE + image: {fileID: 21300000, guid: 33d3377d50ad7f84a8125221b6c87de8, type: 3} +--- !u!4 &280448134 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 280448132} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 3.0243714, y: -0.16466899, z: 591.2956} + 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!1 &298769061 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 298769062} + - component: {fileID: 298769064} + - component: {fileID: 298769063} + m_Layer: 5 + m_Name: Text (Legacy) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &298769062 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 298769061} + 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: 1297451972} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &298769063 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 298769061} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 32 + m_FontStyle: 1 + m_BestFit: 0 + m_MinSize: 3 + m_MaxSize: 73 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Make Group +--- !u!222 &298769064 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 298769061} + m_CullTransparentMesh: 1 +--- !u!224 &322317941 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + m_PrefabInstance: {fileID: 3615962724449413135} + m_PrefabAsset: {fileID: 0} +--- !u!1 &565554716 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 565554719} + - component: {fileID: 565554718} + - component: {fileID: 565554717} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &565554717 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 565554716} + m_Enabled: 1 +--- !u!20 &565554718 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 565554716} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &565554719 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 565554716} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10} + 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!1 &691472694 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 691472698} + - component: {fileID: 691472697} + - component: {fileID: 691472696} + - component: {fileID: 691472695} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &691472695 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 691472694} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &691472696 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 691472694} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 1 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 1920, y: 1080} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0.478 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!223 &691472697 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 691472694} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 1 + 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: 0 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &691472698 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 691472694} + 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: 322317941} + - {fileID: 207008491} + - {fileID: 1860875901} + - {fileID: 1297451972} + - {fileID: 1677479557} + 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!1 &907597649 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 907597652} + - component: {fileID: 907597651} + - component: {fileID: 907597650} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &907597650 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 907597649} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &907597651 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 907597649} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &907597652 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 907597649} + 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!1 &924210783 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 924210784} + - component: {fileID: 924210786} + - component: {fileID: 924210785} + m_Layer: 5 + m_Name: Text (Legacy) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &924210784 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 924210783} + 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: 1677479557} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &924210785 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 924210783} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 20 + m_FontStyle: 1 + m_BestFit: 0 + m_MinSize: 2 + m_MaxSize: 44 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Previous Demo +--- !u!222 &924210786 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 924210783} + m_CullTransparentMesh: 1 +--- !u!1 &1297451971 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1297451972} + - component: {fileID: 1297451975} + - component: {fileID: 1297451974} + - component: {fileID: 1297451973} + m_Layer: 5 + m_Name: MakeGroup + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1297451972 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1297451971} + 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: 298769062} + m_Father: {fileID: 691472698} + 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: 761.2, y: -150} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1297451973 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1297451971} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1297451974} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 280448133} + m_TargetAssemblyTypeName: CardEase.V2Controller, Assembly-CSharp + m_MethodName: MakeGroup + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1297451974 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1297451971} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1297451975 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1297451971} + m_CullTransparentMesh: 1 +--- !u!1 &1677479556 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1677479557} + - component: {fileID: 1677479560} + - component: {fileID: 1677479559} + - component: {fileID: 1677479558} + m_Layer: 5 + m_Name: Previous + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &1677479557 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1677479556} + 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: 924210784} + m_Father: {fileID: 691472698} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 131.87, y: -30} + m_SizeDelta: {x: 160, y: 40} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1677479558 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1677479556} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1677479559} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 280448133} + m_TargetAssemblyTypeName: Demo.V2Controller, Assembly-CSharp + m_MethodName: PreviousLevel + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1677479559 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1677479556} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1677479560 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1677479556} + m_CullTransparentMesh: 1 +--- !u!1 &1726983031 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1726983032} + - component: {fileID: 1726983034} + - component: {fileID: 1726983033} + m_Layer: 5 + m_Name: Text (Legacy) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1726983032 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1726983031} + 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: 1860875901} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1726983033 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1726983031} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 38 + m_FontStyle: 1 + m_BestFit: 0 + m_MinSize: 3 + m_MaxSize: 73 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Add Card +--- !u!222 &1726983034 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1726983031} + m_CullTransparentMesh: 1 +--- !u!1 &1860875900 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1860875901} + - component: {fileID: 1860875904} + - component: {fileID: 1860875903} + - component: {fileID: 1860875902} + m_Layer: 5 + m_Name: AddCard + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1860875901 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1860875900} + 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: 1726983032} + m_Father: {fileID: 691472698} + 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: -730.7, y: -150} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1860875902 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1860875900} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1860875903} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 280448133} + m_TargetAssemblyTypeName: CardEase.V2Controller, Assembly-CSharp + m_MethodName: AddCard + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1860875903 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1860875900} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1860875904 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1860875900} + m_CullTransparentMesh: 1 +--- !u!1001 &3615962724449413135 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 691472698} + m_Modifications: + - target: {fileID: 411645578681063895, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_ChildAlignment + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3665073036452574202, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_Name + value: CardZone + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchorMax.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchorMax.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchorMin.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchorMin.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_SizeDelta.x + value: 1500 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_SizeDelta.y + value: 230 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_AnchoredPosition.y + value: -400 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6640051064279577816, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6701588177555623810, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + propertyPath: shouldRemoveEmptyGroup + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} +--- !u!114 &3615962724449413136 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 6701588177555623810, guid: 5810ccef9fe81404a9027fe37ab95a11, type: 3} + m_PrefabInstance: {fileID: 3615962724449413135} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2a409f3be0f2bc3489b14c789c4fa449, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 565554719} + - {fileID: 280448134} + - {fileID: 691472698} + - {fileID: 907597652} diff --git a/Demo/V2/Scripts/Controllers/V2Controller.cs b/Demo/V2/Scripts/Controllers/V2Controller.cs new file mode 100644 index 0000000..35a1159 --- /dev/null +++ b/Demo/V2/Scripts/Controllers/V2Controller.cs @@ -0,0 +1,40 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.SceneManagement; + +namespace Demo +{ + public class V2Controller : MonoBehaviour + { + [Header("--------------Data----------------")] + [Tooltip("card zone manager to manage cards in the card zone")] + [SerializeField] V2CardZonManager cardZoneManager; + + [Tooltip("Card model to use for cards")] + [SerializeField] V2CardModel[] cards; + + + // --------------------------HELPER METHODS------------------------ + public void AddCard() + { + V2CardModel randomCard = this.cards[Random.Range(0, this.cards.Length)]; + List cards = new(){ + randomCard, + }; + cardZoneManager.AddGroup(cards); + cardZoneManager.RefreshCardZone(); + } + + public void MakeGroup() + { + + cardZoneManager.GroupSelectedCards(); + } + + public void PreviousLevel() + { + SceneManager.LoadScene("V1"); + } + } +} \ No newline at end of file diff --git a/Demo/V2/Scripts/Managers/V2CardGroupManager.cs b/Demo/V2/Scripts/Managers/V2CardGroupManager.cs new file mode 100644 index 0000000..8e6a344 --- /dev/null +++ b/Demo/V2/Scripts/Managers/V2CardGroupManager.cs @@ -0,0 +1,57 @@ +using System.Collections; +using System.Collections.Generic; +using CardEase; +using UnityEngine; + +namespace Demo +{ + public class V2CardGroupManager : CardEase.CardGroupManager + { + [Header("--------------Prefabs----------------")] + [Tooltip("use of prefab")] + [SerializeField] GameObject somePreFab; + + [Header("--------------Data----------------")] + [Tooltip("use or meaning of variable")] + [SerializeField] bool someBoolean; + [SerializeField] int someInt; + + + // --------------------------MONO methods------------------------ + #region methods related to MonoBehaviour + protected override void Awake() + { + base.Awake(); + } + + void Start() + { + + } + + void Update() + { + + } + #endregion + + + + // --------------------------HELPER METHODS------------------------ + #region it's mostly public and can be used by other classes as well + public void SomeMethod() + { + + } + #endregion + + + //---------------------------ENUMERATORs-------------------------- + #region all enumerators used in this class(could be private, public) + private IEnumerator SomeEnumerator() + { + yield return new WaitForSecondsRealtime(1f); + } + #endregion + } +} \ No newline at end of file diff --git a/Demo/V2/Scripts/Managers/V2CardManager.cs b/Demo/V2/Scripts/Managers/V2CardManager.cs new file mode 100644 index 0000000..a25c823 --- /dev/null +++ b/Demo/V2/Scripts/Managers/V2CardManager.cs @@ -0,0 +1,49 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.UI; + +namespace Demo +{ + public class V2CardManager : CardEase.CardManager + { + Image cardImage; + [SerializeField] GameObject selected; + + + void Awake() + { + cardImage = GetComponent(); + } + + + public void ToggleSelection() + { + this.UpdateSelection(!this.isSelected); + } + + public override void SetData(V2CardModel cardModel) + { + if (cardModel.image != null) + { + this.cardImage.sprite = cardModel.image; + } + } + + public override void UpdateSelection(bool isSelected) + { + this.isSelected = isSelected; + + if (this.isSelected) + { + cardImage.color = new Color(cardImage.color.r, cardImage.color.g, cardImage.color.b, cardImage.color.a) * 0.8f; + selected.SetActive(true); + } + else + { + cardImage.color = new Color(cardImage.color.r, cardImage.color.g, cardImage.color.b, cardImage.color.a) / 0.8f; + selected.SetActive(false); + } + } + } +} \ No newline at end of file diff --git a/Demo/V2/Scripts/Managers/V2CardZonManager.cs b/Demo/V2/Scripts/Managers/V2CardZonManager.cs new file mode 100644 index 0000000..3d833fc --- /dev/null +++ b/Demo/V2/Scripts/Managers/V2CardZonManager.cs @@ -0,0 +1,56 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace Demo +{ + public class V2CardZonManager : CardEase.CardZoneManager + { + [Header("--------------Prefabs----------------")] + [Tooltip("use of prefab")] + [SerializeField] GameObject somePreFab; + + [Header("--------------Data----------------")] + [Tooltip("use or meaning of variable")] + [SerializeField] bool someBoolean; + [SerializeField] int someInt; + + + // --------------------------MONO methods------------------------ + #region methods related to MonoBehaviour + protected override void Awake() + { + base.Awake(); + } + + void Start() + { + + } + + void Update() + { + + } + #endregion + + + + // --------------------------HELPER METHODS------------------------ + #region it's mostly public and can be used by other classes as well + public void SomeMethod() + { + + } + #endregion + + + //---------------------------ENUMERATORs-------------------------- + #region all enumerators used in this class(could be private, public) + private IEnumerator SomeEnumerator() + { + yield return new WaitForSecondsRealtime(1f); + } + #endregion + } +} \ No newline at end of file diff --git a/Demo/V2/Scripts/Models/V2CardModel.cs b/Demo/V2/Scripts/Models/V2CardModel.cs new file mode 100644 index 0000000..65471b5 --- /dev/null +++ b/Demo/V2/Scripts/Models/V2CardModel.cs @@ -0,0 +1,20 @@ + +using UnityEngine; + +namespace Demo +{ + [System.Serializable] + public class V2CardModel : CardEase.CardModel + { + public int value; + public string name; + public Sprite image; + + public V2CardModel(int num, string str, Sprite img) + { + this.value = num; + this.name = str; + this.image = img; + } + } +} \ No newline at end of file diff --git a/Demo/V2/Sprites/CLUBS_ACE.png b/Demo/V2/Sprites/CLUBS_ACE.png new file mode 100644 index 0000000..29994d2 Binary files /dev/null and b/Demo/V2/Sprites/CLUBS_ACE.png differ diff --git a/Demo/V2/Sprites/CLUBS_KING.png b/Demo/V2/Sprites/CLUBS_KING.png new file mode 100644 index 0000000..ee636c9 Binary files /dev/null and b/Demo/V2/Sprites/CLUBS_KING.png differ diff --git a/Demo/V2/Sprites/DIAMONDS_ACE.png b/Demo/V2/Sprites/DIAMONDS_ACE.png new file mode 100644 index 0000000..ffe4946 Binary files /dev/null and b/Demo/V2/Sprites/DIAMONDS_ACE.png differ diff --git a/Demo/V2/Sprites/DIAMONDS_KING.png b/Demo/V2/Sprites/DIAMONDS_KING.png new file mode 100644 index 0000000..fc8d9a6 Binary files /dev/null and b/Demo/V2/Sprites/DIAMONDS_KING.png differ diff --git a/Demo/V2/Sprites/HEARTS_ACE.png b/Demo/V2/Sprites/HEARTS_ACE.png new file mode 100644 index 0000000..8ffb0d2 Binary files /dev/null and b/Demo/V2/Sprites/HEARTS_ACE.png differ diff --git a/Demo/V2/Sprites/HEARTS_KING.png b/Demo/V2/Sprites/HEARTS_KING.png new file mode 100644 index 0000000..39b7ec8 Binary files /dev/null and b/Demo/V2/Sprites/HEARTS_KING.png differ diff --git a/Demo/V2/Sprites/JOKER.png b/Demo/V2/Sprites/JOKER.png new file mode 100644 index 0000000..c8aaeb6 Binary files /dev/null and b/Demo/V2/Sprites/JOKER.png differ diff --git a/Demo/V2/Sprites/SPADES_ACE.png b/Demo/V2/Sprites/SPADES_ACE.png new file mode 100644 index 0000000..f41edca Binary files /dev/null and b/Demo/V2/Sprites/SPADES_ACE.png differ diff --git a/Demo/V2/Sprites/SPADES_KING.png b/Demo/V2/Sprites/SPADES_KING.png new file mode 100644 index 0000000..d243930 Binary files /dev/null and b/Demo/V2/Sprites/SPADES_KING.png differ diff --git a/README.md b/README.md new file mode 100644 index 0000000..dacab1b --- /dev/null +++ b/README.md @@ -0,0 +1,91 @@ +# CardEase Documentation + +## Table of Contents +1. [Introduction](#introduction) +2. [Installation](#installation) +3. [Getting Started](#getting-started) +4. [How to](#how-to) + - [Create Prefabs](#create-prefabs) + - [Adjust Spacing](#adjust-spacing) + - [Handling Selection](#handle-selection) +5. [Classes](#classes) + - [CardModel](#card-model) + - [CardZoneManager](#card-zone-manager) + - [CardGroupManager](#card-group-manager) + - [CardManager](#card-manager) + +## Introduction +**CardEase** is a 2D Unity asset that provides simple drag-and-drop functionality with a high level of customization. It allows users to implement basic drag-and-drop features for cards, organize cards into groups, adjust spacing between cards, and customize prefabs to there likings. CardEase removes the complexity of creating drag-and-drop systems from scratch while giving you total control over each game object. + +## Demo +- you can try the demo of asset on itch [here](https://maziminds.itch.io/card-ease) + +## Installation +1. Download the CardEase package from the Unity Asset Store. +2. Open your Unity project. +3. Import the CardEase package into your project(it will be imported in `Maziminds/CardEase` folder). + +## Getting Started + +- The package mainly has 2 folders: `Demo` and `src`. The folder contains some demo scenes and prefabs that you can use to test the functionality and get familiar with the package, you can change anything in that folder to test the functionality. this folder has 2 folder `V1` and `V2` in it, `V1` folder shows a basic demo of package with default settings and `V2` folder shows a bit customized demo with some customizations examples. +- The `src` folder contains the source code for the package, it contains all core scripts for drag-drop and other features. if you want to change anything in that folder, you can do that(only if you know what you are doing). +- This package works with [RectTransform](https://docs.unity3d.com/ScriptReference/RectTransform.html) and [Horizontal Layout Group](https://docs.unity3d.com/Packages/com.unity.ugui@3.0/manual/script-HorizontalLayoutGroup.html) to show an organized deck of cards that you drag around in the scene. The package simply provides you with some abstract classes(scripts) that you can extends and customize. by default it gives basic drag-drop functionality and you can add your own customization by extending it. +- The package mainly contains 3 things: + - `CardZone` : this represent the place or area where cards can be placed. it's mostly a rectangular `GameObject`. + - `CardGroup` : this is a child of `CardZone`, that has a group of cards in it. 1 `CardZone` can have multiple `CardGroup` but 1 `CardGroup` can only be a child of 1 `CardZone`. + - `Card` : This is a child of `CardGroup`, this represents a single card that can be dragged around in between different `CardGroup` and `CardZone`. + +- once you are familiar with the package, you can delete the `Demo` folder and start using the package in your game. + + +## How to + +### Create Prefabs +- You will mainly need 3 prefabs, one for each `CardZone`, one for each `CardGroup`, and one for each `Card`. there will be 1 more Prefab called `CardPlaceholder` that will be used as a placeholder for cards when they are being dragged. + - `CardZone`: this prefab needs to have [RectTransform](https://docs.unity3d.com/ScriptReference/RectTransform.html) and [Horizontal Layout Group](https://docs.unity3d.com/Packages/com.unity.ugui@3.0/manual/script-HorizontalLayoutGroup.html) attached to it. plus 1 `Image` element to show the Card Zone in game. + - this prefab will also need a [CardZoneManager](src/Managers/CardZoneManager.cs) script attached to it(you have to first extend it on another class). + - it's important to note that you can't add any child to this element, since it has a `HorizontalLayoutGroup` attached to it, only child it should have is `CardGroup`. + - You can checkout `Demo` folder for more detailed info. + - `CardGroup`: this prefab also needs to have [RectTransform](https://docs.unity3d.com/ScriptReference/RectTransform.html) and [Horizontal Layout Group](https://docs.unity3d.com/Packages/com.unity.ugui@3.0/manual/script-HorizontalLayoutGroup.html) attached to it. plus 1 `Image` element to show the Card Group in game. + - This prefab will also need a [CardGroupManager](src/Managers/CardGroupManager.cs) script attached to it(you have to first extend it on another class). + - it's important to note that you can't add any child to this element, since it has a `HorizontalLayoutGroup` attached to it, only child it should have is `Card`. + - You can checkout `Demo` folder for more detailed info. + - `Card`: this prefab also needs to have [RectTransform](https://docs.unity3d.com/ScriptReference/RectTransform.html) and [Layout Element](https://docs.unity3d.com/Packages/com.unity.ugui@3.0/manual/script-LayoutElement.html), [Canvas Group](https://docs.unity3d.com/Packages/com.unity.ugui@3.0/manual/class-CanvasGroup.html) attached to it. plus 1 `Image` element to show the Card in game. + - This prefab will also need a [CardManager](src/Managers/CardManager.cs) script attached to it(you have to first extend it on another class). + - this is the last child so you can add any child on this `GameObject`. you can customize it as you want. + - You can checkout `Demo` folder for more detailed info. +### Adjust Spacing + - `CardZone` and `CardGroup` both's scripts have a `Min Spacing` and `Max Spacing` properties that you can use to adjust the spacing between cards and cardGroups. + - this values will be used by the [CardZoneManager](src/Managers/CardZoneManager.cs) and [CardGroupManager](src/Managers/CardGroupManager.cs) scripts in functions `RefreshCardZone`,`RefreshCardGroup` to adjust the spacing between cards and cardGroups. +### Handle Selection + - By default the card select feature is not enabled, but you can do that by first adding some `Button` or `click listener` to the `Card` prefab. that can call the `UpdateSelection` method in the [CardManager](src/Managers/CardManager.cs) script. from there you can decide how card should look while it's selected. + - you can also use `GroupSelectedCards` method from [CardZoneManager](src/Managers/CardZoneManager.cs) to create a new group of selected cards. + +## Classes + +### Card Model +- This [CardModel](src/Models/CardModel.cs) is an Abstract class that you can extend with your own custom script. this class serves as a `DataContainer` that you can use to store any custom values you want to be applied to the card. for example you can have property `name` or `value`,`points` that shows how many points or value does any card have. +- Once Extended, you can use this class in other classes like [CardManager](src/Managers/CardManager.cs), [CardZoneManager](src/Managers/CardZoneManager.cs) and [CardGroupManager](src/Managers/CardGroupManager.cs). + +### Card Zone Manager +- This [CardZoneManager](src/Managers/CardZoneManager.cs) is an Abstract class that you can extend with your own custom script. that extended script should be attached to a `CardZone` prefab. this Abstract class implements classes like `MonoBehaviour`, `IPointerEnterHandler` to handle some drag-drop functions. +- while extending, pass the [CardModel's](src/Models/CardModel.cs) extended class. something like `V1CardZoneManager: CardEase.CardZoneManager`. here the `V1CardModel` is the extended class for [CardModel](src/Models/CardModel.cs) and `V1CardZoneManager` is the extended class for [CardZoneManager](src/Managers/CardZoneManager.cs). +- Once Extended, make sure you `override` the `Awake` and called the `base.Awake()` before adding your own custom logic. also update the values like `cardGroupPrefab` and `minSpacing`,`maxSpacing` according to your needs. there are some methods in this class that you can use. + - `AddGroup`: This method creates a new empty group in the card zone. If a list of cards is provided, those cards will be added to the new group as well + - `GetAllCards`: This method will get the list of all cards in that `CardZone`. no matter how many `CardGroup` are in that zone, it will take of the cards in them. + - `GroupSelectedCards`: This method will make a new group of selected cards and return the group. make sure that your `Card` prefab has some `click listener` attached to it. + - `RefreshCardZone`: This method can arrange the elements(cardGroups) in it so it will cover the screen area properly + +### Card Group Manager +- This [CardGroupManager](src/Managers/CardGroupManager.cs) is an Abstract class that you can extend with your own custom script. that extended script should be attached to a `CardGroup` prefab. this Abstract class implements classes like `MonoBehaviour`, `IPointerEnterHandler` to handle some drag-drop functions. +- while extending, pass the [CardModel's](src/Models/CardModel.cs) extended class. +- Once Extended, make sure you `override` the `Awake` and called the `base.Awake()` before adding your own custom logic. also update the values like `cardPrefab` and `minSpacing`,`maxSpacing` according to your needs. there are some methods in this class that you can use. + - `AddCard`: This method creates a new card in that `CardGroup`. it takes a class that extend [CardModel](src/Models/CardModel.cs) model that contains any custom values you want to be applied to the card. + - `RefreshCardGroup`: This method can arrange the elements(cards) in it so it will cover the screen area properly\ + +### Card Manager +- This [CardManager](src/Managers/CardManager.cs) is also an Abstract class that you can extend with your own custom script. that extended script should be attached to a `Card` prefab. this Abstract class implements classes like `MonoBehaviour`, `IBeginDragHandler`,`IDragHandler`,`IEndDragHandler` to handle some drag-drop functions. +- while extending, pass the [CardModel's](src/Models/CardModel.cs) extended class. +- Once Extended, you need to override 2 methods `SetData` and `UpdateSelection`. you can add any other custom element to the `Card` prefab to suites your requirements. + - `SetData`: This method will set the data of the card. it takes a class that extend [CardModel](src/Models/CardModel.cs) model that contains any custom values you want to be applied to the card. then you can use this values to render your card. + - `UpdateSelection`: This method will update the card selection. it takes a boolean value that indicates if the card is selected or not. while overriding this method, make you update `isSelected` property by `this.isSelected = isSelected;` then you can add any other custom code that change card's look while it's selected. diff --git a/src/Managers/CardGroupManager.cs b/src/Managers/CardGroupManager.cs new file mode 100644 index 0000000..1963339 --- /dev/null +++ b/src/Managers/CardGroupManager.cs @@ -0,0 +1,117 @@ +using UnityEngine; +using UnityEngine.EventSystems; +using UnityEngine.UI; +namespace CardEase +{ + public abstract class CardGroupManager : MonoBehaviour, IPointerEnterHandler where T : CardModel + { + [Header("--------------Prefabs----------------")] + [Tooltip("Card prefab to add new card in group")] + [SerializeField] GameObject cardPrefab; + + [Header("--------------Data----------------")] + [Tooltip("minimum spacing needed between cards")] + [SerializeField] float minSpacing = -99999f; + [Tooltip("maximum spacing allowed between cards")] + [SerializeField] float maxSpacing = 99999f; + + + [Header("--------------PRIVATE----------------")] + [Tooltip("layout group used to adjust spacing")] + HorizontalLayoutGroup horizontalLayoutGroup; + [Tooltip("Parent zone of the group")] + CardZoneManager parentZone; + + + // --------------------------MONO methods------------------------ + #region methods related to MonoBehaviour + protected virtual void Awake() + { + horizontalLayoutGroup = GetComponent(); + parentZone = transform.parent.GetComponent>(); + } + #endregion + + + + // --------------------------HELPER METHODS------------------------ + #region it's mostly public and can be used by other classes as well + + /// + /// Adds a card to the group. + /// + /// The card model to be added. If null, a default card will be created. + /// The component of the newly created card. + public virtual CardManager AddCard(T cardModel = null) + { + GameObject card = Instantiate(cardPrefab, transform); + CardManager cardManager = card.GetComponent>(); + if (cardModel != null) + { + cardManager.SetData(cardModel); + } + cardManager.label = transform.parent.GetComponent>().label; + return cardManager; + } + + + /// + /// Adjusts the spacing between elements in the card zone. + /// + /// + /// This method is can arrange the elements(cards) in it so it will cover the screen area properly + /// + /// + /// void + /// + public virtual void RefreshCardGroup() + { + //checking if there is any card in the group or not + int cardCount = transform.childCount; + if (cardCount <= 0) + { + return; + } + + //get the width of card and card zone + float cardWidth = transform.GetChild(0).GetComponent().rect.width; + float cardZoneWidth = transform.parent.GetComponent().rect.width; + + //get the total groups and total card in the card zone + int totalGroupCount = transform.parent.childCount; + int totalCardCount = parentZone.GetAllCards().Count; + + //get the spacing of groups and calculate available zone space + float groupSpacing = (cardZoneWidth / totalGroupCount) * 0.1f; + cardZoneWidth = cardZoneWidth - (groupSpacing * (totalGroupCount + 1)); + + //update spacing of group by card count + float desiredSpacing = (cardZoneWidth / totalCardCount) - cardWidth; + desiredSpacing = Mathf.Clamp(desiredSpacing, minSpacing, maxSpacing); + horizontalLayoutGroup.spacing = desiredSpacing; + + //update group size based on cards + Vector2 sizeDelta = transform.GetComponent().sizeDelta; + sizeDelta.x = (cardWidth + desiredSpacing) * (transform.childCount - 1) + cardWidth; + transform.GetComponent().sizeDelta = sizeDelta; + } + #endregion + + + // ------------------------------------DRAG/DROP LOGIC-------------------------------------------------- + #region all LOGIC for drag-drop on group + public void OnPointerEnter(PointerEventData eventData) + { + if (eventData.pointerDrag) + { + CardManager cardManager = eventData.pointerDrag.GetComponent>(); + if (cardManager.label == transform.parent.GetComponent>().label) + { + eventData.pointerDrag.GetComponent>().UpdateParent(this.transform); + } + } + } + #endregion + + } +} \ No newline at end of file diff --git a/src/Managers/CardManager.cs b/src/Managers/CardManager.cs new file mode 100644 index 0000000..e46d2ac --- /dev/null +++ b/src/Managers/CardManager.cs @@ -0,0 +1,136 @@ +using System.Collections; +using UnityEngine; +using UnityEngine.EventSystems; + +namespace CardEase +{ + public abstract class CardManager : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler where T : CardModel + { + [Header("--------------Prefabs----------------")] + [Tooltip("Place Holder prefab for dragging shadow")] + [SerializeField] GameObject cardPlaceHolderPrefab; + + [Header("--------------Data----------------")] + [Tooltip("Label to differentiate card zone and cards in it")] + public string label; + [Tooltip("Boolean to show is card selected or not")] + public bool isSelected = false; + + [Header("--------------PRIVATE----------------")] + [Tooltip("Parent group of the card")] + Transform parentGroup; + [Tooltip("Placeholder object for dragging shadow")] + GameObject cardPlaceholder; + + + // --------------------------HELPER METHODS------------------------ + #region it's mostly public and can be used by other classes as well + + /// + /// Method to setUp any external data and render the card accordingly + /// + /// A generic card model to store and pass custom value across the game + /// void + /// + /// This method needs to be overridden by the child class to handle how the card should be rendered + /// + public abstract void SetData(T cardModel); + + /// + /// Method to update the card selection(to indicate is card selected or not) + /// + /// a boolean showing if the card is selected or not + /// void + /// + /// This method needs to be overridden by the child class to handle how the card should be rendered while selected + /// + public abstract void UpdateSelection(bool isSelected); + + + /// + /// Method to update that card's parent group while being dragged from 1 group to another + /// + /// a of the new parent group" + /// void + /// + /// This method is used to update the card's parent group while being dragged from 1 group to another + /// + public void UpdateParent(Transform newParent) + { + Transform oldParentGroup = parentGroup; + parentGroup = newParent; + if (cardPlaceholder) + { + cardPlaceholder.transform.SetParent(parentGroup); + } + if (oldParentGroup && oldParentGroup.parent) + { + oldParentGroup.parent.GetComponent>().RefreshCardZone(); + } + + } + #endregion + + + // ------------------------------------DRAG/DROP LOGIC-------------------------------------------------- + #region all LOGIC for drag-drop on group + public void OnBeginDrag(PointerEventData eventData) + { + parentGroup = transform.parent; + cardPlaceholder = Instantiate(cardPlaceHolderPrefab, transform.parent); + cardPlaceholder.transform.SetSiblingIndex(transform.GetSiblingIndex()); + transform.SetParent(parentGroup.parent.parent, true); + GetComponent().blocksRaycasts = false; + } + + public void OnDrag(PointerEventData eventData) + { + RectTransform container = parentGroup.parent.parent as RectTransform; + Vector2 localPointerPos; + if (RectTransformUtility.ScreenPointToLocalPointInRectangle(container, eventData.position, eventData.pressEventCamera, out localPointerPos)) + { + GetComponent().localPosition = localPointerPos; + } + int newSiblingIndex = parentGroup.childCount; + for (int i = 0; i < parentGroup.childCount; i++) + { + if (transform.position.x < parentGroup.GetChild(i).position.x) + { + newSiblingIndex = i; + if (cardPlaceholder.transform.GetSiblingIndex() < newSiblingIndex) + { + newSiblingIndex--; + } + + break; + } + } + cardPlaceholder.transform.SetSiblingIndex(newSiblingIndex); + } + + public void OnEndDrag(PointerEventData eventData) + { + transform.SetParent(parentGroup); + transform.SetSiblingIndex(cardPlaceholder.transform.GetSiblingIndex()); + StartCoroutine(DestroyAndWait()); + GetComponent().blocksRaycasts = true; + + } + #endregion + + //---------------------------ENUMERATORs-------------------------- + #region all enumerators used in this class(could be private, public) + private IEnumerator DestroyAndWait() + { + Destroy(cardPlaceholder); + while (cardPlaceholder != null) + { + yield return null; + } + transform.parent.parent.GetComponent>().RefreshCardZone(); + } + #endregion + } + + +} \ No newline at end of file diff --git a/src/Managers/CardZoneManager.cs b/src/Managers/CardZoneManager.cs new file mode 100644 index 0000000..97b2e33 --- /dev/null +++ b/src/Managers/CardZoneManager.cs @@ -0,0 +1,185 @@ +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.EventSystems; +using UnityEngine.UI; + +namespace CardEase +{ + public abstract class CardZoneManager : MonoBehaviour, IPointerEnterHandler where T : CardModel + { + [Header("--------------Prefabs----------------")] + [Tooltip("Card Group prefab to add new group in zone")] + [SerializeField] GameObject cardGroupPrefab; + + [Header("--------------Data----------------")] + [Tooltip("minimum spacing needed between card groups")] + [SerializeField] float minSpacing = -99999f; + [Tooltip("maximum spacing allowed between card groups")] + [SerializeField] float maxSpacing = 99999f; + + [Tooltip("Indicate if empty group should be removed")] + [SerializeField] bool shouldRemoveEmptyGroup = true; + + [Tooltip("Label to differentiate card zone and cards in it")] + public string label = "CardZone"; + + + [Header("--------------PRIVATE----------------")] + [Tooltip("layout group used to adjust spacing")] + HorizontalLayoutGroup horizontalLayoutGroup; + + + // --------------------------MONO methods------------------------ + #region methods related to MonoBehaviour + protected virtual void Awake() + { + horizontalLayoutGroup = GetComponent(); + } + #endregion + + + + // --------------------------HELPER METHODS------------------------ + #region it's mostly public and can be used by other classes as well + + /// + /// Adds a new group to the card zone. + /// + /// An optional list of cards to be added to the new group. + /// A representing the newly added group. + /// + /// This method creates a new empty group in the card zone. If a list of cards is provided, those cards will be added to the new group + /// + public CardGroupManager AddGroup(List cards = null) + { + GameObject cardGroup = Instantiate(cardGroupPrefab, transform); + + if (cards != null) + { + foreach (T card in cards) + { + cardGroup.GetComponent>().AddCard(card); + } + } + return cardGroup.GetComponent>(); + } + + /// + /// Adjusts the spacing between elements in the card zone. + /// + /// + /// This method can arrange the elements(cardGroups) in it so it will cover the screen area properly + /// + /// + /// void + /// + public void RefreshCardZone() + { + //checking if there is any group in the zone or not + int groupCount = transform.childCount; + if (groupCount <= 0) + { + return; + } + + //adjust spacing based on group count and zone width + float desiredSpacing = GetComponent().rect.width / groupCount * 0.1f; + desiredSpacing = Mathf.Clamp(desiredSpacing, minSpacing, maxSpacing); + horizontalLayoutGroup.spacing = desiredSpacing; + + foreach (Transform child in transform) + { + if (shouldRemoveEmptyGroup) + { + if (child.childCount <= 0) + { + Destroy(child.gameObject); + continue; + } + } + + CardGroupManager cardGroup = child.GetComponent>(); + cardGroup.RefreshCardGroup(); + } + } + + + /// + /// Get the list of total cards in the card zone + /// + /// + /// This method will get the list of all cards in the card zone + /// + /// + /// A list of objects representing all the cards in the card zone. + /// + public virtual List> GetAllCards() + { + List> cards = new List>(); + foreach (Transform groupTransform in transform) + { + foreach (Transform cardTransform in groupTransform) + { + cards.Add(cardTransform.gameObject.GetComponent>()); + } + } + return cards; + } + + + /// + /// This method will make a new group of selected cards and return the group + /// + /// + /// if no card is selected then it will return empty group + /// + /// + /// A list of objects representing all the cards in the card zone. + /// + public CardGroupManager GroupSelectedCards() + { + List> selectedCards = new List>(); + foreach (CardManager card in GetAllCards()) + { + if (card.isSelected) + { + selectedCards.Add(card); + } + } + GameObject cardGroup = Instantiate(cardGroupPrefab, transform); + foreach (CardManager card in selectedCards) + { + card.transform.SetParent(cardGroup.transform); + card.UpdateSelection(false); + } + RefreshCardZone(); + return cardGroup.GetComponent>(); + } + + #endregion + + + // ------------------------------------DRAG/DROP LOGIC-------------------------------------------------- + #region all LOGIC for drag-drop on group + public void OnPointerEnter(PointerEventData eventData) + { + if (eventData.pointerDrag) + { + CardManager cardManager = eventData.pointerDrag.GetComponent>(); + if (cardManager && cardManager.label == this.label) + { + if (transform.childCount <= 0) + { + CardGroupManager groupManager = AddGroup(); + Vector2 sizeDelta = groupManager.transform.GetComponent().sizeDelta; + sizeDelta.x = GetComponent().sizeDelta.x; + groupManager.transform.GetComponent().sizeDelta = sizeDelta; + } + } + } + } + + #endregion + + } +} \ No newline at end of file diff --git a/src/Models/CardModel.cs b/src/Models/CardModel.cs new file mode 100644 index 0000000..959e806 --- /dev/null +++ b/src/Models/CardModel.cs @@ -0,0 +1,10 @@ +using UnityEngine; +using UnityEngine.UI; + +namespace CardEase +{ + [System.Serializable] + public abstract class CardModel + { + } +} \ No newline at end of file