using UnityEngine; public class GameDataSynchronizer : MonoBehaviour { public enum EGameDataType { Go, Bbug, Bell } [SerializeField] private TMPro.TextMeshProUGUI tmp; [SerializeField] private EGameDataType type; [SerializeField] private bool isPlayer; private void Awake() { if (GameManager.Instance != null) { GameManager.Event.RegistEvent(EEventType.OnSynchronizeGameData, this.OnSynchronizeGameData); } switch (type) { case EGameDataType.Go: tmp.text = "0고"; break; case EGameDataType.Bbug: tmp.text = "0"; break; case EGameDataType.Bell: tmp.text = "0"; break; } } private void OnDestroy() { if (GameManager.Instance != null) { GameManager.Event.RemoveEvent(EEventType.OnSynchronizeGameData, this.OnSynchronizeGameData); } } private void OnSynchronizeGameData() { switch (type) { case EGameDataType.Go: int goNum = isPlayer ? GamePanel.Instance.Player_Go : GamePanel.Instance.AI_Go; tmp.text = $"{goNum}고"; break; case EGameDataType.Bbug: tmp.text = isPlayer ? GamePanel.Instance.Player_Bbug.ToString() : GamePanel.Instance.AI_Bbug.ToString(); break; case EGameDataType.Bell: tmp.text = isPlayer ? GamePanel.Instance.Player_Bell.ToString() : GamePanel.Instance.AI_Bell.ToString(); break; } } }