using System.Collections; using System.Collections.Generic; using TMPro; using UnityEngine; using UnityEngine.UI; public class DeliveryResultUI : MonoBehaviour { private const string POPUP = "Popup"; [SerializeField] private Image backgroundImage; [SerializeField] private Image iconImage; [SerializeField] private TextMeshProUGUI messageText; [SerializeField] private Color successColour; [SerializeField] private Color failColour; [SerializeField] private Sprite successSprite; [SerializeField] private Sprite failSprite; private Animator animator; private void Awake() { animator = GetComponentInChildren(); } private void Start() { DeliveryManager.Instance.OnRecipeCompleted += DeliveryManager_OnRecipeCompleted; DeliveryManager.Instance.OnRecipeFailed += DeliveryManager_OnRecipeFailed; Hide(); } private void DeliveryManager_OnRecipeFailed(object sender, System.EventArgs e) { backgroundImage.color = failColour; iconImage.sprite = failSprite; messageText.text = "DELIVERY\nFAILED"; Show(); animator.SetTrigger(POPUP); } private void DeliveryManager_OnRecipeCompleted(object sender, System.EventArgs e) { backgroundImage.color = successColour; iconImage.sprite = successSprite; messageText.text = "DELIVERY\nSUCCESS"; Show(); animator.SetTrigger(POPUP); } private void Show() { gameObject.SetActive(true); } private void Hide() { gameObject.SetActive(false); } }