Exemple #1
0
            /// <summary>
            /// Finds and executes the highest priority action associated with the given input.
            /// </summary>
            /// <param name="input">The input to be executed.</param>
            private void RunAction(KeyCode input)
            {
                OverworldObjectAction action = currentOverworldObject.GetOverworldObjectAction(input);

                if (action != null)
                {
                    action.ExecuteAction();
                }
                else
                {
                    Debug.Log("no owoaction on input " + input.ToString());
                }
            }
            public OverworldObjectAction GetOverworldObjectAction(KeyCode input)
            {
                OverworldObjectAction overworldObjectAction = null;

                foreach (OverworldObjectAction action in owoActions)
                {
                    if (action.GetKeyboardInput() == input &&
                        (overworldObjectAction == null || action.GetPriority() > overworldObjectAction.GetPriority()))
                    {
                        overworldObjectAction = action;
                    }
                }

                return(overworldObjectAction);
            }
            public OverworldObjectAction GetOverworldObjectAction(ControllerInputs input)
            {
                OverworldObjectAction overworldObjectAction = null;

                foreach (OverworldObjectAction action in owoActions)
                {
                    if (action.GetControllerInput() == input &&
                        (overworldObjectAction == null || action.GetPriority() > overworldObjectAction.GetPriority()))
                    {
                        overworldObjectAction = action;
                    }
                }

                return(overworldObjectAction);
            }
 public void RemoveOverworldObjectAction(OverworldObjectAction overworldObjectAction)
 {
     owoActions.Remove(overworldObjectAction);
 }
 public void AddOverworldObjectAction(OverworldObjectAction overworldObjectAction)
 {
     owoActions.Add(overworldObjectAction);
 }