using UnityEngine; using UnityEngine.UI; using UnityEngine.Video; public class PatchWindow : MonoBehaviour { public Text statusText; public Slider progressBar; public Text downloadSizeText; public VideoPlayer video; private void Awake() { video.targetCamera = GameManager.Inst.UICamera; PatchEvent.OnStatusUpdate += OnStatusUpdate; PatchEvent.OnProgressUpdate += OnProgressUpdate; PatchEvent.OnDownloadSizeUpdate += OnDownloadSizeUpdate; } private void OnDestroy() { PatchEvent.OnStatusUpdate -= OnStatusUpdate; PatchEvent.OnProgressUpdate -= OnProgressUpdate; PatchEvent.OnDownloadSizeUpdate -= OnDownloadSizeUpdate; } private void OnStatusUpdate(string status) { if (statusText != null) statusText.text = status; } private void OnProgressUpdate(float progress) { if (progressBar != null) progressBar.value = progress; } private void OnDownloadSizeUpdate(string sizeText) { if (downloadSizeText != null) downloadSizeText.text = sizeText; } }