From 0a90fe26070c2cd25181973f2a85959753a6fd53 Mon Sep 17 00:00:00 2001 From: "aube.lee" Date: Fri, 28 Feb 2025 14:39:25 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EB=8B=89=EB=84=A4=EC=9E=84=20=EC=A4=91?= =?UTF-8?q?=EB=B3=B5=EC=B2=B4=ED=81=AC=20=EA=B8=B0=EB=8A=A5=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UI/Prefabs/UI.CharaterCreateUI.prefab | 3 ++- .../Scripts/Backend/BackendAuthManager.cs | 9 ++------ .../Gameton/Scripts/UI/CharaterCreateUI.cs | 21 +++++++++++++++---- 3 files changed, 21 insertions(+), 12 deletions(-) diff --git a/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.CharaterCreateUI.prefab b/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.CharaterCreateUI.prefab index 485c06f6..5e20bb37 100644 --- a/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.CharaterCreateUI.prefab +++ b/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.CharaterCreateUI.prefab @@ -407,6 +407,7 @@ MonoBehaviour: confirmButton: {fileID: 3290386423334957786} createButton: {fileID: 1887714318721360375} playerDatas: [] + nicknameCondition: {fileID: 6220890634190874460} characterCreateUI_Modal: {fileID: 7298901665149865196} blackCat_Spotlight: {fileID: 6897867871924581457} whiteCat_Spotlight: {fileID: 6223168446447065192} @@ -2140,7 +2141,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!224 &898800120090628923 RectTransform: m_ObjectHideFlags: 0 diff --git a/Gameton-06/Assets/Gameton/Scripts/Backend/BackendAuthManager.cs b/Gameton-06/Assets/Gameton/Scripts/Backend/BackendAuthManager.cs index 8b1288a7..94dee556 100644 --- a/Gameton-06/Assets/Gameton/Scripts/Backend/BackendAuthManager.cs +++ b/Gameton-06/Assets/Gameton/Scripts/Backend/BackendAuthManager.cs @@ -94,23 +94,18 @@ namespace TON /// public void ChangeNickname(string newNickname, Action callback) { - if (string.IsNullOrEmpty(newNickname) || newNickname.Length < 2) - { - callback?.Invoke(false, "닉네임은 2자 이상이어야 합니다."); - return; - } Backend.BMember.UpdateNickname(newNickname, bro => { if (bro.IsSuccess()) { Debug.Log("닉네임 변경 성공: " + newNickname); - callback?.Invoke(true, "닉네임이 변경되었습니다."); + callback?.Invoke(true, bro.GetCode()); } else { Debug.LogError("닉네임 변경 실패: " + bro.GetMessage()); - callback?.Invoke(false, "닉네임 변경 실패: " + bro.GetMessage()); + callback?.Invoke(false, bro.GetCode()); } }); } diff --git a/Gameton-06/Assets/Gameton/Scripts/UI/CharaterCreateUI.cs b/Gameton-06/Assets/Gameton/Scripts/UI/CharaterCreateUI.cs index d9b18c31..350adcf1 100644 --- a/Gameton-06/Assets/Gameton/Scripts/UI/CharaterCreateUI.cs +++ b/Gameton-06/Assets/Gameton/Scripts/UI/CharaterCreateUI.cs @@ -13,7 +13,7 @@ namespace TON [SerializeField] private Button confirmButton; // cancel 버튼 참조 [SerializeField] private Button createButton; // Create 버튼 참조 [SerializeField] private List playerDatas; - // [SerializeField] private List heartDatas; + [SerializeField] private TextMeshProUGUI nicknameCondition; public GameObject characterCreateUI_Modal; @@ -25,7 +25,6 @@ namespace TON private void Start() { playerDatas = PlayerDataManager.Singleton.playersData; - // heartDatas = HeartDataManager.Singleton.heartDatas; // 처음에는 버튼을 비활성화 createButton.interactable = false; @@ -70,8 +69,9 @@ namespace TON string nickname = characterName.text.Trim(); // 입력 값 검증 - if (string.IsNullOrEmpty(nickname)) + if (string.IsNullOrEmpty(nickname) || nickname.Length > 12) { + // 닉네임은 비어있을 수 없고, 12자 이내로만 생성 가능 return; } @@ -105,11 +105,24 @@ namespace TON } else { - Debug.LogError("캐릭터 닉네임 저장 실패"); + // 닉네임 중복체크 + if (message.Equals("409")) + { + DuplicateNickname(); + } + else + { + Debug.LogError("서버 오류 :: 캐릭터 닉네임 저장 실패"); + } } }); }); + } + private void DuplicateNickname() + { + nicknameCondition.text = "이미 사용중인 이름입니다."; + nicknameCondition.color = Color.red; } public void OnClickCancelButton()