using KitsuneCafe.Sys.Attributes; using UnityEngine; namespace KitsuneCafe.UI { public class TestThing : MonoBehaviour { [SerializeField] private UiOrchestrator orchestrator; [SerializeField] private ModalElement modal; [SerializeField] private bool hasTitle = true; [SerializeField, ShowIf("hasTitle")] private string title; [SerializeField] private string content; private ElementId id; public void Open() { id = orchestrator.SpawnElement( Create(), transform.position + Vector3.up ); } private IUiElement Create() { return hasTitle ? modal.Create(title, content) : modal.CreateHeadless(content); } public void Close() { if (id != default) { orchestrator.DespawnElement(id); id = default; } } public void Toggle() { if (id != default) { Close(); } else { Open(); } } } }