using System; using TMPro; using UnityEditor; using UnityEngine; namespace SoulCoreGameLoop.UI { [RequireComponent(typeof(Animator))] public class AreaHint : MonoBehaviour, IUIEventSender { private const String TriggerPlay = "Play"; public TMP_Text areaName; private Animator _animator; [InitializeOnLoadMethod] public static void RegisterListener () => UIEventListener.JoinListener(); public void OnReceive(AreaHintMessage evt) { areaName.text = evt.AreaName; _animator.Play(TriggerPlay); } private void Start() { _animator = GetComponent(); } } public struct AreaHintMessage { public readonly string AreaName; public AreaHintMessage(string areaName) { AreaName = areaName; } } }