From f8fc0577ef7c240f50e449e7236286b6ecf056c9 Mon Sep 17 00:00:00 2001
From: HaeinLEE <heyin0122@korea.ac.kr~>
Date: Wed, 19 Mar 2025 22:27:05 +0900
Subject: [PATCH] =?UTF-8?q?[Feat]=20=EA=B8=B0=EB=B3=B4=EC=94=AC=20?=
 =?UTF-8?q?=ED=94=8C=EB=A0=88=EC=9D=B4=EC=96=B4=20=EB=8B=89=EB=84=A4?=
 =?UTF-8?q?=EC=9E=84=20=EC=84=A4=EC=A0=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

추후 플레이어 이미지 저장과 불러오기까지 추가 예정
---
 Assets/Scenes/Replay.unity               | 22 +++++++++++++++++++---
 Assets/Script/Replay/ReplayController.cs | 24 +++++++++++++++++++-----
 Assets/Script/Replay/ReplayManager.cs    | 22 ++++++++++++++--------
 3 files changed, 52 insertions(+), 16 deletions(-)

diff --git a/Assets/Scenes/Replay.unity b/Assets/Scenes/Replay.unity
index d6d25f3..08ad32a 100644
--- a/Assets/Scenes/Replay.unity
+++ b/Assets/Scenes/Replay.unity
@@ -18776,7 +18776,19 @@ MonoBehaviour:
   m_TargetGraphic: {fileID: 3806122117153528265}
   m_OnClick:
     m_PersistentCalls:
-      m_Calls: []
+      m_Calls:
+      - m_Target: {fileID: 6113787613455091454}
+        m_TargetAssemblyTypeName: ReplayController, Assembly-CSharp
+        m_MethodName: OnclickExitButton
+        m_Mode: 1
+        m_Arguments:
+          m_ObjectArgument: {fileID: 0}
+          m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
+          m_IntArgument: 0
+          m_FloatArgument: 0
+          m_StringArgument: 
+          m_BoolArgument: 0
+        m_CallState: 2
 --- !u!1 &2180157736468784195
 GameObject:
   m_ObjectHideFlags: 0
@@ -18914,7 +18926,7 @@ GameObject:
   - component: {fileID: 182763848042457448}
   - component: {fileID: 5649645114534718557}
   m_Layer: 5
-  m_Name: Player Name Text
+  m_Name: PlayerB Name Text
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
@@ -19033,7 +19045,7 @@ GameObject:
   - component: {fileID: 1750532428139497284}
   - component: {fileID: 4888719462519445862}
   m_Layer: 5
-  m_Name: Player Name Text
+  m_Name: PlayerA Name Text
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
@@ -19453,6 +19465,10 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: bda9793c3fea2104199340f907378533, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
+  playerANicknameText: {fileID: 4888719462519445862}
+  playerBNicknameText: {fileID: 5649645114534718557}
+  playerAImage: {fileID: 8274101518570821972}
+  playerBImage: {fileID: 1516328598779423605}
 --- !u!224 &6390176559513736999
 RectTransform:
   m_ObjectHideFlags: 0
diff --git a/Assets/Script/Replay/ReplayController.cs b/Assets/Script/Replay/ReplayController.cs
index 59a1c04..b44b2b1 100644
--- a/Assets/Script/Replay/ReplayController.cs
+++ b/Assets/Script/Replay/ReplayController.cs
@@ -1,17 +1,26 @@
 using System.Collections;
 using System.Collections.Generic;
+using TMPro;
 using UnityEngine;
+using UnityEngine.SceneManagement;
+using UnityEngine.UI;
 
 public class ReplayController : MonoBehaviour
 {
-    void Awake()
+    [SerializeField] private TMP_Text playerANicknameText;  
+    [SerializeField] private TMP_Text playerBNicknameText;
+    [SerializeField] private Image playerAImage;
+    [SerializeField] private Image playerBImage;
+    void Start()
     {
-        //TODO: 리플레이매니저 데이터로 화면 초기화
+        InitReplayUI();
+        //TODO: 프로필 이미지 불러오기
     }
     
     public void OnclickExitButton()
     {
-        
+        //TODO: 메인씬으로 다시 넘어갈 때 호출해야하는 함수 등등이 있을지....
+        SceneManager.LoadScene("Main-Jay");
     }
 
     public void OnclickFirstButton()
@@ -41,6 +50,11 @@ public class ReplayController : MonoBehaviour
     {
         ReplayManager.Instance.ReplayFinish();
     }
-    
-    
+
+    public void InitReplayUI()
+    {
+        playerANicknameText.text = ReplayManager.Instance.GetPlayerANickname();
+        playerBNicknameText.text = ReplayManager.Instance.GetPlayerBNickname();
+    }
+
 }
diff --git a/Assets/Script/Replay/ReplayManager.cs b/Assets/Script/Replay/ReplayManager.cs
index b07cd9f..a6601f8 100644
--- a/Assets/Script/Replay/ReplayManager.cs
+++ b/Assets/Script/Replay/ReplayManager.cs
@@ -229,24 +229,30 @@ public class ReplayManager : Singleton<ReplayManager>
             ReplayNext(GetNextMove());
         }
     }
+
+    public string GetPlayerANickname()
+    {
+        return _selectedReplayRecord.playerA;
+    }
+
+    public string GetPlayerBNickname()
+    {
+        return _selectedReplayRecord.playerB;
+    }
+    
+    
     #endregion
 
     protected override void OnSceneLoaded(Scene scene, LoadSceneMode mode)
     {
         if (scene.name == "Replay")
         {
-            if (_selectedReplayRecord != null)
-            {
-                InitReplayBoard(_selectedReplayRecord);
-            }
-            
+            InitReplayBoard(_selectedReplayRecord);
+
             //게임 매니저에서 가져온 코드입니다.
             _stoneController = GameObject.FindObjectOfType<StoneController>();
             _stoneController.InitStones();
             _gameLogic = new GameLogic(_stoneController, Enums.GameType.Replay);
-            
-            // TODO: 데이터 잘못 가져왔을 때 어떻게 처리할지 고민하기
-            // Main으로 강제 전환 ?
         }
     }
 }