/// <summary> /// Unity method. /// Start this instance. /// </summary> public virtual void Start() { if (modal) { modalItem = new ModalItem(this, modalMask.value); InputManager.Instance.RegisterModalItem(modalItem); } }
/// <summary> /// Registers a new modal item. It is added to the top of the stack unless an index is specified. /// </summary> /// <param name='item'> /// New modal item. /// </param> /// <param name='index'> /// Index. /// </param> public void RegisterModalItem(ModalItem item, int index = 0) { if (index < 0 || index >= modalStack.Count) { modalStack.Add(item); } else { modalStack.Insert(index, item); } }
/// <summary> /// Unregisters the modal item. /// </summary> /// <param name='item'> /// Item. /// </param> public void UnregisterModalItem(ModalItem item) { modalStack.Remove(item); }