using UnityEngine; using UnityEngine.Events; using System.Collections.Generic; public class MANAGER_EventsDialogue : MonoBehaviour { public static MANAGER_EventsDialogue Instance; [System.Serializable] public struct EventMapping { public string id; public UnityEvent action; } public List events = new List(); private void Awake() => Instance = this; public void Execute(string id) { if (string.IsNullOrEmpty(id)) return; var mapping = events.Find(e => e.id == id); if (mapping.id != null) { mapping.action?.Invoke(); } else { } } }