[UPDATE] 로그아웃 추가 및 PlayerPrefs에 사용자 정보 관리 추가
This commit is contained in:
parent
f73d8f5a51
commit
c9ec8d2e42
@ -613,140 +613,115 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 205725198}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &387590922
|
||||
GameObject:
|
||||
--- !u!1001 &317447470
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 387590923}
|
||||
- component: {fileID: 387590925}
|
||||
- component: {fileID: 387590924}
|
||||
m_Layer: 5
|
||||
m_Name: Coin Text (TMP)
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &387590923
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 387590922}
|
||||
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: 661336415}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 1}
|
||||
m_AnchorMax: {x: 0.5, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: -30}
|
||||
m_SizeDelta: {x: 500, y: 100}
|
||||
m_Pivot: {x: 0.5, y: 1}
|
||||
--- !u!114 &387590924
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 387590922}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_text: "\uCF54\uC778 100"
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: 85a19688db53c77469fc4406b01045da, type: 2}
|
||||
m_sharedMaterial: {fileID: -2477908578676791210, guid: 85a19688db53c77469fc4406b01045da, type: 2}
|
||||
m_fontSharedMaterials: []
|
||||
m_fontMaterial: {fileID: 0}
|
||||
m_fontMaterials: []
|
||||
m_fontColor32:
|
||||
serializedVersion: 2
|
||||
rgba: 4281479730
|
||||
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_enableVertexGradient: 0
|
||||
m_colorMode: 3
|
||||
m_fontColorGradient:
|
||||
topLeft: {r: 1, g: 1, b: 1, a: 1}
|
||||
topRight: {r: 1, g: 1, b: 1, a: 1}
|
||||
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
|
||||
bottomRight: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_fontColorGradientPreset: {fileID: 0}
|
||||
m_spriteAsset: {fileID: 0}
|
||||
m_tintAllSprites: 0
|
||||
m_StyleSheet: {fileID: 0}
|
||||
m_TextStyleHashCode: -1183493901
|
||||
m_overrideHtmlColors: 0
|
||||
m_faceColor:
|
||||
serializedVersion: 2
|
||||
rgba: 4294967295
|
||||
m_fontSize: 50
|
||||
m_fontSizeBase: 50
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 0
|
||||
m_fontSizeMin: 18
|
||||
m_fontSizeMax: 72
|
||||
m_fontStyle: 0
|
||||
m_HorizontalAlignment: 2
|
||||
m_VerticalAlignment: 512
|
||||
m_textAlignment: 65535
|
||||
m_characterSpacing: 0
|
||||
m_wordSpacing: 0
|
||||
m_lineSpacing: 0
|
||||
m_lineSpacingMax: 0
|
||||
m_paragraphSpacing: 0
|
||||
m_charWidthMaxAdj: 0
|
||||
m_enableWordWrapping: 1
|
||||
m_wordWrappingRatios: 0.4
|
||||
m_overflowMode: 0
|
||||
m_linkedTextComponent: {fileID: 0}
|
||||
parentLinkedComponent: {fileID: 0}
|
||||
m_enableKerning: 1
|
||||
m_enableExtraPadding: 0
|
||||
checkPaddingRequired: 0
|
||||
m_isRichText: 1
|
||||
m_parseCtrlCharacters: 1
|
||||
m_isOrthographic: 1
|
||||
m_isCullingEnabled: 0
|
||||
m_horizontalMapping: 0
|
||||
m_verticalMapping: 0
|
||||
m_uvLineOffset: 0
|
||||
m_geometrySortingOrder: 0
|
||||
m_IsTextObjectScaleStatic: 0
|
||||
m_VertexBufferAutoSizeReduction: 0
|
||||
m_useMaxVisibleDescender: 1
|
||||
m_pageToDisplay: 1
|
||||
m_margin: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_isUsingLegacyAnimationComponent: 0
|
||||
m_isVolumetricText: 0
|
||||
m_hasFontAssetChanged: 0
|
||||
m_baseMaterial: {fileID: 0}
|
||||
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
|
||||
--- !u!222 &387590925
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 387590922}
|
||||
m_CullTransparentMesh: 1
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 661336415}
|
||||
m_Modifications:
|
||||
- target: {fileID: 646100354038727038, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Coins Panel
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_Pivot.x
|
||||
value: 0.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_Pivot.y
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_AnchorMax.x
|
||||
value: 0.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_AnchorMin.x
|
||||
value: 0.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 160
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
value: 100
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: -30
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4063434195558959060, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4222531876603999234, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: coinsCountText
|
||||
value:
|
||||
objectReference: {fileID: 890805683}
|
||||
- target: {fileID: 4222531876603999234, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
propertyPath: coinsRemoveImageObject
|
||||
value:
|
||||
objectReference: {fileID: 1502985949}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
--- !u!1 &513518719
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1059,10 +1034,11 @@ RectTransform:
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 1396327070}
|
||||
- {fileID: 2003151605}
|
||||
- {fileID: 1746224346}
|
||||
- {fileID: 1426926626}
|
||||
- {fileID: 387590923}
|
||||
- {fileID: 972965165}
|
||||
m_Father: {fileID: 141845928}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
@ -1122,6 +1098,7 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
nicknameText: {fileID: 1493531099}
|
||||
ratingText: {fileID: 2141350119}
|
||||
signOutButton: {fileID: 972965166}
|
||||
--- !u!1 &733114318
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1390,6 +1367,149 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 837518559}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &890805683 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 2892066450466788586, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
m_PrefabInstance: {fileID: 317447470}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &972965164
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 972965165}
|
||||
- component: {fileID: 972965168}
|
||||
- component: {fileID: 972965167}
|
||||
- component: {fileID: 972965166}
|
||||
m_Layer: 5
|
||||
m_Name: SIgnout Button
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &972965165
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 972965164}
|
||||
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: 661336415}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 1, y: 1}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: -20, y: -40}
|
||||
m_SizeDelta: {x: 63, y: 63}
|
||||
m_Pivot: {x: 1, y: 1}
|
||||
--- !u!114 &972965166
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 972965164}
|
||||
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: 972965167}
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls:
|
||||
- m_Target: {fileID: 661336418}
|
||||
m_TargetAssemblyTypeName: MainPanelController, Assembly-CSharp
|
||||
m_MethodName: OnSignOutClick
|
||||
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 &972965167
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 972965164}
|
||||
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: 1a585399a26c92443927489c09667e13, 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!222 &972965168
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 972965164}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &1017982169
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1678,6 +1798,11 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1326543047}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!224 &1396327070 stripped
|
||||
RectTransform:
|
||||
m_CorrespondingSourceObject: {fileID: 1769668775421633028, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
m_PrefabInstance: {fileID: 317447470}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &1426926625
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1849,6 +1974,11 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1493531097}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &1502985949 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 4198953742281733827, guid: dc5d544dd6fd6e544b8e7399440a8323, type: 3}
|
||||
m_PrefabInstance: {fileID: 317447470}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &1699132189
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -6,7 +6,7 @@ public class GameManager : Singleton<GameManager>
|
||||
[SerializeField] private GameObject signinPanel;
|
||||
[SerializeField] private GameObject signupPanel;
|
||||
|
||||
private Canvas _canvas;
|
||||
[SerializeField] private Canvas canvas;
|
||||
private UserManager _userManager; // UserManager 인스턴스 관리
|
||||
|
||||
private void Awake()
|
||||
@ -53,22 +53,21 @@ public class GameManager : Singleton<GameManager>
|
||||
|
||||
public void OpenSigninPanel()
|
||||
{
|
||||
if (_canvas != null)
|
||||
if (canvas != null)
|
||||
{
|
||||
var signinPanelObject = Instantiate(signinPanel, _canvas.transform);
|
||||
var signinPanelObject = Instantiate(signinPanel, canvas.transform);
|
||||
}
|
||||
}
|
||||
|
||||
public void OpenSignupPanel()
|
||||
{
|
||||
if (_canvas != null)
|
||||
if (canvas != null)
|
||||
{
|
||||
var signupPanelObject = Instantiate(signupPanel, _canvas.transform);
|
||||
var signupPanelObject = Instantiate(signupPanel, canvas.transform);
|
||||
}
|
||||
}
|
||||
|
||||
protected override void OnSceneLoaded(Scene scene, LoadSceneMode mode)
|
||||
{
|
||||
_canvas = GameObject.FindObjectOfType<Canvas>();
|
||||
}
|
||||
}
|
||||
|
@ -1,11 +1,13 @@
|
||||
using System;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class MainPanelController : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private TextMeshProUGUI nicknameText;
|
||||
[SerializeField] private TextMeshProUGUI ratingText;
|
||||
[SerializeField] private Button signOutButton;
|
||||
|
||||
public void UpdateUserInfo()
|
||||
{
|
||||
@ -14,4 +16,19 @@ public class MainPanelController : MonoBehaviour
|
||||
nicknameText.text = UserManager.Instance.Nickname;
|
||||
ratingText.text = $"{UserManager.Instance.Rating}급";
|
||||
}
|
||||
|
||||
public void OnSignOutClick()
|
||||
{
|
||||
NetworkManager.Instance.SignOut(() =>
|
||||
{
|
||||
Debug.Log("로그아웃 성공");
|
||||
|
||||
// 로그인 화면
|
||||
GameManager.Instance.OpenSigninPanel();
|
||||
}, () =>
|
||||
{
|
||||
Debug.Log("로그아웃 실패");
|
||||
// OpenConfirmPanel("로그아웃 되었습니다.", () => { });
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -135,12 +135,17 @@ public class NetworkManager : Singleton<NetworkManager>
|
||||
new UnityWebRequest(Constants.ServerURL + "/users/get-info", UnityWebRequest.kHttpVerbGET))
|
||||
{
|
||||
www.downloadHandler = new DownloadHandlerBuffer();
|
||||
|
||||
string sid = PlayerPrefs.GetString("sid", "");
|
||||
if (!string.IsNullOrEmpty(sid))
|
||||
{
|
||||
www.SetRequestHeader("Cookie", sid);
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogError("SID 값이 없습니다. 로그인 정보가 없습니다.");
|
||||
failure?.Invoke();
|
||||
yield break; // 더 이상 진행하지 않고 종료
|
||||
}
|
||||
|
||||
yield return www.SendWebRequest();
|
||||
|
||||
@ -159,13 +164,56 @@ public class NetworkManager : Singleton<NetworkManager>
|
||||
var result = www.downloadHandler.text;
|
||||
var userInfo = JsonUtility.FromJson<UserInfoResult>(result);
|
||||
UserManager.Instance.SetUserInfo(userInfo);
|
||||
Debug.Log(userInfo.nickname);
|
||||
|
||||
success?.Invoke(userInfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void SignOut(Action success, Action failure)
|
||||
{
|
||||
StartCoroutine(SignOutCoroutine(success, failure));
|
||||
}
|
||||
|
||||
public IEnumerator SignOutCoroutine(Action success, Action failure)
|
||||
{
|
||||
Debug.Log("로그아웃 호출?");
|
||||
|
||||
string sid = PlayerPrefs.GetString("sid", "");
|
||||
if (string.IsNullOrEmpty(sid))
|
||||
{
|
||||
Debug.Log("로그인 정보가 없습니다.");
|
||||
failure?.Invoke();
|
||||
yield break; // 로그인이 되어 있지 않다면 로그아웃을 시도하지 않음
|
||||
}
|
||||
|
||||
using (UnityWebRequest www = new UnityWebRequest(Constants.ServerURL + "/users/signout", UnityWebRequest.kHttpVerbPOST))
|
||||
{
|
||||
www.downloadHandler = new DownloadHandlerBuffer();
|
||||
www.SetRequestHeader("Cookie", sid);
|
||||
|
||||
yield return www.SendWebRequest();
|
||||
|
||||
if (www.result == UnityWebRequest.Result.ConnectionError || www.result == UnityWebRequest.Result.ProtocolError)
|
||||
{
|
||||
if (www.responseCode == 403)
|
||||
{
|
||||
Debug.Log("로그인이 필요합니다.");
|
||||
}
|
||||
failure?.Invoke();
|
||||
}
|
||||
else
|
||||
{
|
||||
var result = www.downloadHandler.text;
|
||||
Debug.Log("로그아웃 실행결과" + result);
|
||||
// 로그아웃 후 sid를 삭제하여 세션을 클리어
|
||||
PlayerPrefs.SetString("sid", "");
|
||||
|
||||
success?.Invoke();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public IEnumerator GetLeaderboard(Action<Scores> success, Action failure)
|
||||
{
|
||||
using (UnityWebRequest www =
|
||||
|
@ -14,6 +14,11 @@ public struct SigninResult
|
||||
public int result;
|
||||
}
|
||||
|
||||
public struct SignoutResult
|
||||
{
|
||||
public string result;
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public struct ScoreInfo
|
||||
{
|
||||
|
@ -45,5 +45,50 @@ public class UserManager : Singleton<UserManager>
|
||||
ImageIndex = userData.imageIndex;
|
||||
Win = userData.win;
|
||||
Lose = userData.lose;
|
||||
|
||||
// 유저 정보를 PlayerPrefs에 저장
|
||||
SaveUserInfoToPlayerPrefs();
|
||||
}
|
||||
|
||||
public void SaveUserInfoToPlayerPrefs()
|
||||
{
|
||||
// UserInfoResult 객체를 JSON 문자열로 직렬화
|
||||
UserInfoResult userInfo = new UserInfoResult
|
||||
{
|
||||
id = UserId,
|
||||
email = Email,
|
||||
nickname = Nickname,
|
||||
rating = Rating,
|
||||
score = Score,
|
||||
imageIndex = ImageIndex,
|
||||
win = Win,
|
||||
lose = Lose
|
||||
};
|
||||
|
||||
string json = JsonUtility.ToJson(userInfo);
|
||||
|
||||
// PlayerPrefs에 저장
|
||||
PlayerPrefs.SetString("UserInfo", json);
|
||||
PlayerPrefs.Save();
|
||||
}
|
||||
|
||||
public void LoadUserInfoFromPlayerPrefs()
|
||||
{
|
||||
// PlayerPrefs에서 유저 정보 가져오기
|
||||
string json = PlayerPrefs.GetString("UserInfo", "");
|
||||
|
||||
if (string.IsNullOrEmpty(json))
|
||||
{
|
||||
Debug.Log("저장된 유저 정보가 없습니다.");
|
||||
return;
|
||||
}
|
||||
|
||||
// JSON 문자열을 UserInfoResult 객체로 역직렬화
|
||||
UserInfoResult userInfo = JsonUtility.FromJson<UserInfoResult>(json);
|
||||
|
||||
// 역직렬화한 데이터로 UserManager의 값을 설정
|
||||
SetUserInfo(userInfo);
|
||||
}
|
||||
|
||||
|
||||
}
|
BIN
Assets/Sprites/Main UI/Log out.png
Normal file
BIN
Assets/Sprites/Main UI/Log out.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 604 B |
140
Assets/Sprites/Main UI/Log out.png.meta
Normal file
140
Assets/Sprites/Main UI/Log out.png.meta
Normal file
@ -0,0 +1,140 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1a585399a26c92443927489c09667e13
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Loading…
x
Reference in New Issue
Block a user