コード例 #1
0
ファイル: MenuHandler.cs プロジェクト: Mega-Wolf/Metroidvania
 private void HandleAxisInteraction(AxisInteraction interaction, float value)
 {
     for (int i = f_menuStack.Count; --i >= 0;)
     {
         for (int j = f_menuStack[i].Count; --j >= 0;)
         {
             IEnumerable <AxisInputCallback> axisInputCallbacks = f_menuStack[i][j].ActiveInputHandler.AxisInputCallbacks;
             foreach (AxisInputCallback aic in axisInputCallbacks)
             {
                 foreach (AxisInputCombination comb in aic.AxisInputCombinations)
                 {
                     if (comb.Evaluate(interaction))
                     {
                         bool consume = aic.Callback(value);
                         if (consume)
                         {
                             Event.current.Use();
                             return;
                         }
                         break;
                     }
                 }
             }
         }
     }
 }
コード例 #2
0
ファイル: MenuInput.cs プロジェクト: Mega-Wolf/Metroidvania
        //public ButtonInteraction[] necessaryButtons;
        //public ButtonInteraction[] blockingButtons;

        public bool Evaluate(AxisInteraction interaction)
        {
            return(axisInput == interaction);
        }