/// <summary>
        /// Subscribe to IAction Performed without returning IAction.
        /// Returns true if succesful and false if Action doesn't exist.
        /// </summary>
        public bool SubscribeToActionPerformed(string actionName, UnityInputSystemAction.ActionDelegate func)
        {
            foreach (var action in ActionDictionary.Keys)
            {
                if (action.name == actionName)
                {
                    ActionDictionary[action].SubscribePerformed(func);
                    return(true);
                }
            }

            //not in dictionary, return false
            return(false);
        }
        /// <summary>
        /// Subscribe to IAction performed without returning IAction.
        /// Returns true if succesful and false if Action doesn't exist.
        /// </summary>
        public bool SubscribeToActionPerformed(InputAction action, UnityInputSystemAction.ActionDelegate func, bool AddWhenNotExisting = false)
        {
            if (!ActionDictionary.ContainsKey(action))
            {
                if (AddWhenNotExisting)
                {
                    UnityInputSystemAction newAction = new UnityInputSystemAction(action.name);
                    ActionDictionary.Add(action, newAction);
                    newAction.SubscribePerformed(func);
                }
                else
                {
                    return(false);
                }
            }

            ActionDictionary[action].SubscribePerformed(func);
            return(true);
        }
Beispiel #3
0
 public ActionEventClass(UnityInputSystemAction.ActionDelegate del, int priority)
 {
     this.del      = del;
     this.priority = priority;
 }