From cdac8eaefa8328c30ae44b69efc27bbe4e0be253 Mon Sep 17 00:00:00 2001 From: HaeinLEE Date: Mon, 24 Mar 2025 15:46:16 +0900 Subject: [PATCH] =?UTF-8?q?[Fix]=20=EC=B2=98=EC=9D=8C,=20=EC=9D=B4?= =?UTF-8?q?=EC=A0=84,=20=EB=8B=A4=EC=9D=8C=EC=97=90=20=EC=BD=94=EB=A3=A8?= =?UTF-8?q?=ED=8B=B4=20=EB=A9=88=EC=B6=94=EB=8A=94=20=ED=95=A8=EC=88=98=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Script/Replay/ReplayController.cs | 4 ++++ Assets/Script/Replay/ReplayManager.cs | 12 +++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/Assets/Script/Replay/ReplayController.cs b/Assets/Script/Replay/ReplayController.cs index 68ddce5..ac39d44 100644 --- a/Assets/Script/Replay/ReplayController.cs +++ b/Assets/Script/Replay/ReplayController.cs @@ -18,16 +18,19 @@ public class ReplayController : MonoBehaviour public void OnclickExitButton() { + ReplayManager.Instance.StopReplayFinish(); SceneManager.LoadScene("Main"); } public void OnclickFirstButton() { + ReplayManager.Instance.StopReplayFinish(); ReplayManager.Instance.ReplayFirst(); } public void OnclickUndoButton() { + ReplayManager.Instance.StopReplayFinish(); Move targetMove = ReplayManager.Instance.PopPlacedMove(); if (targetMove != null) { @@ -37,6 +40,7 @@ public class ReplayController : MonoBehaviour public void OnclickNextButton() { + ReplayManager.Instance.StopReplayFinish(); Move nextMove = ReplayManager.Instance.GetNextMove(); if (nextMove != null) { diff --git a/Assets/Script/Replay/ReplayManager.cs b/Assets/Script/Replay/ReplayManager.cs index 02d66fa..9676b28 100644 --- a/Assets/Script/Replay/ReplayManager.cs +++ b/Assets/Script/Replay/ReplayManager.cs @@ -34,6 +34,7 @@ public class Move public class ReplayManager : Singleton { private ReplayRecord _recordingReplayData; + private Coroutine finishCoroutine; #region 기보 시작 후 데이터를 컨트롤하기 @@ -225,7 +226,16 @@ public class ReplayManager : Singleton public void ReplayFinish() { - StartCoroutine(IReplayFinish()); + finishCoroutine = StartCoroutine(IReplayFinish()); + } + + public void StopReplayFinish() + { + if (finishCoroutine != null) + { + StopCoroutine(finishCoroutine); + finishCoroutine = null; + } } private IEnumerator IReplayFinish()