From a0238ddc61b51e781a0cc0c58ee6e74d153910d0 Mon Sep 17 00:00:00 2001 From: "aube.lee" Date: Fri, 28 Feb 2025 01:15:25 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EB=9E=AD=ED=82=B9=20=EC=A0=95=EB=B3=B4?= =?UTF-8?q?=20=EC=97=85=EB=8D=B0=EC=9D=B4=ED=8A=B8=20=EB=B0=8F=20=ED=99=94?= =?UTF-8?q?=EB=A9=B4=20=EB=A7=A4=ED=95=91=20=EB=A1=9C=EC=A7=81=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 --- .../Resources/UI/Prefabs/UI.LobbyUI.prefab | 1 + .../Gameton/Scripts/Backend/BackendManager.cs | 1 + .../Gameton/Scripts/Common/AssetManager.cs | 4 +-- .../Gameton/Scripts/GameStage/StageManager.cs | 4 +-- .../Gameton/Scripts/Scenes/LobbyScene.cs | 2 -- .../Gameton/Scripts/Scenes/StageScene.cs | 4 ++- .../Assets/Gameton/Scripts/UI/LobbyUI.cs | 28 +++++++++++++++++++ 7 files changed, 37 insertions(+), 7 deletions(-) diff --git a/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.LobbyUI.prefab b/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.LobbyUI.prefab index 488c57d5..49a1042c 100644 --- a/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.LobbyUI.prefab +++ b/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.LobbyUI.prefab @@ -2375,6 +2375,7 @@ MonoBehaviour: characterAttck: {fileID: 7024621486223063594} characterDefence: {fileID: 759935029723638107} characterCritical: {fileID: 6053148670662040763} + monsterIcon: {fileID: 7850172756058034615} wave: {fileID: 4021099301320444836} playTime: {fileID: 708268260796241340} score: {fileID: 8600056355742485418} diff --git a/Gameton-06/Assets/Gameton/Scripts/Backend/BackendManager.cs b/Gameton-06/Assets/Gameton/Scripts/Backend/BackendManager.cs index c9a3b24b..bef0f7d1 100644 --- a/Gameton-06/Assets/Gameton/Scripts/Backend/BackendManager.cs +++ b/Gameton-06/Assets/Gameton/Scripts/Backend/BackendManager.cs @@ -64,6 +64,7 @@ namespace TON Debug.Log("로그인 성공!"); PlayerDataManager.Singleton.Initalize(); + StageManager.Singleton.Initialize(); } else { diff --git a/Gameton-06/Assets/Gameton/Scripts/Common/AssetManager.cs b/Gameton-06/Assets/Gameton/Scripts/Common/AssetManager.cs index 279571f1..41759e3c 100644 --- a/Gameton-06/Assets/Gameton/Scripts/Common/AssetManager.cs +++ b/Gameton-06/Assets/Gameton/Scripts/Common/AssetManager.cs @@ -34,9 +34,9 @@ namespace TON return LoadAsset($"Player/Character Face/{playerColor}_{status}", out result); } - public bool LoadStageIcon(string stageId, out Sprite result) + public bool LoadMonsterWaveIcon(int wave, out Sprite result) { - return LoadAsset($"UI/Stage/stage_{stageId}", out result); + return LoadAsset($"UI/Monster Portrait/wave{wave}_monster", out result); } } } diff --git a/Gameton-06/Assets/Gameton/Scripts/GameStage/StageManager.cs b/Gameton-06/Assets/Gameton/Scripts/GameStage/StageManager.cs index ff4c4072..1d1cf092 100644 --- a/Gameton-06/Assets/Gameton/Scripts/GameStage/StageManager.cs +++ b/Gameton-06/Assets/Gameton/Scripts/GameStage/StageManager.cs @@ -17,8 +17,8 @@ namespace TON private float stageStartTime; // 스테이지 시작 시간 - public ClearData TOP_RECORD { get; private set; } // lobby 화면에 기록 세팅할때 사용할 변수 - public List RankList { get; private set; } // 전체 랭킹 적용할 리스트 + public ClearData TOP_RECORD { get; private set; } = new ClearData(); // lobby 화면에 기록 세팅할때 사용할 변수 + public List RankList { get; private set; } = new List(); // 전체 랭킹 적용할 리스트 private BackendClearDataManager clearDataManager; private BackendRankDataManager rankDataManager; diff --git a/Gameton-06/Assets/Gameton/Scripts/Scenes/LobbyScene.cs b/Gameton-06/Assets/Gameton/Scripts/Scenes/LobbyScene.cs index e8228673..6cb8059b 100644 --- a/Gameton-06/Assets/Gameton/Scripts/Scenes/LobbyScene.cs +++ b/Gameton-06/Assets/Gameton/Scripts/Scenes/LobbyScene.cs @@ -20,8 +20,6 @@ namespace TON } PlayerDataManager.Singleton.SetCurrentUserData(); - - StageManager.Singleton.Initialize(); SkillDataManager.Singleton.Initalize(); diff --git a/Gameton-06/Assets/Gameton/Scripts/Scenes/StageScene.cs b/Gameton-06/Assets/Gameton/Scripts/Scenes/StageScene.cs index 5d169e7c..17e9ee81 100644 --- a/Gameton-06/Assets/Gameton/Scripts/Scenes/StageScene.cs +++ b/Gameton-06/Assets/Gameton/Scripts/Scenes/StageScene.cs @@ -1,3 +1,4 @@ +using System; using System.Collections; using System.Collections.Generic; using UnityEngine; @@ -51,6 +52,7 @@ namespace TON yield break; } + SkillDataManager.Singleton.Initalize(); // StageManager.Singleton.StartStage(stageId); StageManager.Singleton.StartStage(); @@ -67,7 +69,7 @@ namespace TON UIManager.Hide(UIList.OptionUI); UIManager.Hide(UIList.ControllerUI); - UIManager.Hide(UIList.GameOverUI); + // UIManager.Hide(UIList.GameOverUI); UIManager.Hide(UIList.GameWinUI); UIManager.Hide(UIList.PauseUI); diff --git a/Gameton-06/Assets/Gameton/Scripts/UI/LobbyUI.cs b/Gameton-06/Assets/Gameton/Scripts/UI/LobbyUI.cs index 9d43968a..d8c17ace 100644 --- a/Gameton-06/Assets/Gameton/Scripts/UI/LobbyUI.cs +++ b/Gameton-06/Assets/Gameton/Scripts/UI/LobbyUI.cs @@ -18,6 +18,7 @@ namespace TON [SerializeField] private TextMeshProUGUI characterCritical; // 스테이지 클리어 기록 텍스트 + [SerializeField] private Image monsterIcon; [SerializeField] private TextMeshProUGUI wave; [SerializeField] private TextMeshProUGUI playTime; [SerializeField] private TextMeshProUGUI score; @@ -27,6 +28,33 @@ namespace TON private void Start() { SetCharacterData(); + SetUserRankData(); + } + + private void SetUserRankData() + { + ClearData TOP_RECORD = StageManager.Singleton.TOP_RECORD; + + if (TOP_RECORD.wave > 0) + { + if (AssetManager.Singleton.LoadMonsterWaveIcon(TOP_RECORD.wave, out Sprite result)) + { + monsterIcon.sprite = result; + } + wave.text = $"{TOP_RECORD.wave}"; + } + + if (TOP_RECORD.score > 0) + { + score.text = $"{TOP_RECORD.score}"; + } + + if (TOP_RECORD.playTime > 0) + { + int minutes = Mathf.FloorToInt(TOP_RECORD.playTime / 60f); + int seconds = Mathf.FloorToInt(TOP_RECORD.playTime % 60f); + playTime.text = $"{minutes:00}m {seconds:00}s"; + } } private void SetCharacterData()