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()