[Feat] 무승부 요청 그리고 응답시 플레이어 화면에 로딩패널 띄우고 닫기

This commit is contained in:
HaeinLEE 2025-03-28 13:24:37 +09:00
parent a06f9809de
commit 7fe6bd07df
2 changed files with 16 additions and 1 deletions

View File

@ -52,6 +52,7 @@ public class GameUIController : MonoBehaviour
{ {
GameManager.Instance.panelManager.OpenConfirmPanel("무승부 신청을 하시겠습니까?", () => GameManager.Instance.panelManager.OpenConfirmPanel("무승부 신청을 하시겠습니까?", () =>
{ {
GameManager.Instance.panelManager.OpenLoadingPanel(true, true, false, false);
_multiplayManager.RequestDraw(); _multiplayManager.RequestDraw();
}); });
GameManager.Instance.SetRequestDrawChanceFalse(); GameManager.Instance.SetRequestDrawChanceFalse();

View File

@ -140,6 +140,7 @@ public partial class GameLogic : IDisposable
Debug.Log("상대방의 무승부 요청 들어옴"); Debug.Log("상대방의 무승부 요청 들어옴");
ExecuteOnMainThread(() => ExecuteOnMainThread(() =>
{ {
GameManager.Instance.panelManager.OpenLoadingPanel(true, true, false, false);
GameManager.Instance.panelManager.OpenDrawConfirmPanel("무승부 요청을 승낙하시겠습니까?", () => GameManager.Instance.panelManager.OpenDrawConfirmPanel("무승부 요청을 승낙하시겠습니까?", () =>
{ {
GameManager.Instance.panelManager.OpenEffectPanel(Enums.GameResult.Draw); GameManager.Instance.panelManager.OpenEffectPanel(Enums.GameResult.Draw);
@ -158,24 +159,37 @@ public partial class GameLogic : IDisposable
Debug.Log("무승부 요청이 승낙이 들어옴"); Debug.Log("무승부 요청이 승낙이 들어옴");
ExecuteOnMainThread(() => ExecuteOnMainThread(() =>
{ {
GameManager.Instance.panelManager.CloseLoadingPanel();
GameManager.Instance.panelManager.OpenEffectPanel(Enums.GameResult.Draw); GameManager.Instance.panelManager.OpenEffectPanel(Enums.GameResult.Draw);
EndGame(Enums.GameResult.Draw); EndGame(Enums.GameResult.Draw);
}); });
break; break;
case Constants.MultiplayManagerState.DrawConfirmed: case Constants.MultiplayManagerState.DrawConfirmed:
{
Debug.Log("무승부 요청 승낙 완료"); Debug.Log("무승부 요청 승낙 완료");
ExecuteOnMainThread(() =>
{
GameManager.Instance.panelManager.CloseLoadingPanel();
});
break; break;
}
case Constants.MultiplayManagerState.DrawRejected: case Constants.MultiplayManagerState.DrawRejected:
Debug.Log("무승부 요청이 거부가 들어옴"); Debug.Log("무승부 요청이 거부가 들어옴");
ExecuteOnMainThread(() => ExecuteOnMainThread(() =>
{ {
GameManager.Instance.panelManager.CloseLoadingPanel();
GameManager.Instance.panelManager.OpenConfirmPanel("무승부 요청을 거부하였습니다.", () => { }); GameManager.Instance.panelManager.OpenConfirmPanel("무승부 요청을 거부하였습니다.", () => { });
}); });
break; break;
case Constants.MultiplayManagerState.DrawRejectionConfirmed: case Constants.MultiplayManagerState.DrawRejectionConfirmed:
{
Debug.Log("무승부 요청 거부 완료"); Debug.Log("무승부 요청 거부 완료");
ExecuteOnMainThread(() =>
{
GameManager.Instance.panelManager.CloseLoadingPanel();
});
break; break;
}
case Constants.MultiplayManagerState.ReceiveTimeout: case Constants.MultiplayManagerState.ReceiveTimeout:
Debug.Log("상대방이 타임 아웃 됨"); Debug.Log("상대방이 타임 아웃 됨");
ExecuteOnMainThread(() => ExecuteOnMainThread(() =>