From 7d94c44ab40ee7d28c6f61bcf81939b42aff66ae Mon Sep 17 00:00:00 2001 From: HaeinLEE Date: Thu, 27 Mar 2025 16:30:02 +0900 Subject: [PATCH] =?UTF-8?q?[Feat]=20=EC=8A=B9=ED=8C=A8=20=EC=9D=B4?= =?UTF-8?q?=ED=8E=99=ED=8A=B8=20=ED=9B=84=20=EA=B2=B0=EA=B3=BC=EC=97=90=20?= =?UTF-8?q?=EB=94=B0=EB=9D=BC=EC=84=9C=20RatingPanel=20Open?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Script/UI/Effect/EffectController.cs | 3 ++- Assets/Script/UI/PanelController/PanelManager.cs | 16 ++++++++++------ 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/Assets/Script/UI/Effect/EffectController.cs b/Assets/Script/UI/Effect/EffectController.cs index a9492fb..66a477c 100644 --- a/Assets/Script/UI/Effect/EffectController.cs +++ b/Assets/Script/UI/Effect/EffectController.cs @@ -1,6 +1,7 @@ using System.Collections; using System.Threading; using DG.Tweening; +using JetBrains.Annotations; using TMPro; using UnityEngine; using UnityEngine.EventSystems; @@ -26,7 +27,7 @@ public abstract class EffectController : MonoBehaviour, IPointerClickHandler // } // 효과를 실행하는 메서드 (자식이 구현해야 함) - public abstract void ShowEffect(OnEffectPanelEnded onEffectPanelEnded); + public abstract void ShowEffect([CanBeNull] OnEffectPanelEnded onEffectPanelEnded); // 공통 UI 애니메이션 (패널 표시) protected virtual void ShowPanel() diff --git a/Assets/Script/UI/PanelController/PanelManager.cs b/Assets/Script/UI/PanelController/PanelManager.cs index 5ed742a..b3c421e 100644 --- a/Assets/Script/UI/PanelController/PanelManager.cs +++ b/Assets/Script/UI/PanelController/PanelManager.cs @@ -77,9 +77,10 @@ public class PanelManager : MonoBehaviour return null; } - + private Enums.GameResult _gameResult = Enums.GameResult.None; public void OpenEffectPanel(Enums.GameResult gameResult) { + _gameResult = gameResult; switch (gameResult) { case Enums.GameResult.Win: @@ -118,22 +119,25 @@ public class PanelManager : MonoBehaviour if (_canvas != null) { var drawEffectPanelObject = GetEffectPanel("Rating Down Effect Panel"); - drawEffectPanelObject.GetComponent().ShowEffect(OnEffectPanelEnded); + drawEffectPanelObject.GetComponent().ShowEffect(null); } break; case 1: if (_canvas != null) { var drawEffectPanelObject = GetEffectPanel("Rating Up Effect Panel"); - drawEffectPanelObject.GetComponent().ShowEffect(OnEffectPanelEnded); + drawEffectPanelObject.GetComponent().ShowEffect(null); } break; } } - //TODO: 인자로 RameResult받게 해주시면 될 것 같습니다. + + // 이 함수는 Win, Lose EffectPanelEnded여서 Rating UP, Down Effect 와는 상관없습니다. private void OnEffectPanelEnded() { - // OpenRatingPanel(); + if (_gameResult == Enums.GameResult.None) + return; + OpenRatingPanel(_gameResult); } #endregion @@ -290,7 +294,7 @@ public class PanelManager : MonoBehaviour OpenShopPanel(shopItems); } - //승급 패널 생성 + //Rating Panel 생성 public void OpenRatingPanel(Enums.GameResult gameResult) { if (_canvas != null)