예제 #1
0
 public void PerformAction(MainActionTypes actionType)
 {
     if (_actions.TryGetValue(actionType, out Action action))
     {
         action.Invoke();
     }
 }
예제 #2
0
 public void AddAction(MainActionTypes actionType, Action action)
 {
     if (_actions.ContainsKey(actionType))
     {
         _actions[actionType] = action;
     }
     else
     {
         _actions.Add(actionType, action);
     }
 }
예제 #3
0
 private void AddActionInternal <T>(Dictionary <T, MainActionTypes> binds, T button, MainActionTypes actionType)
 {
     if (binds.ContainsKey(button))
     {
         binds[button] = actionType;
     }
     else
     {
         binds.Add(button, actionType);
     }
 }
예제 #4
0
        public ButtonConfig GetButton(MainActionTypes actionType)
        {
            ButtonConfig buttonConfig = new ButtonConfig();

            if (_funcButtonsBinds.Any(e => e.Value == actionType))
            {
                buttonConfig.Button = _funcButtonsBinds.FirstOrDefault(e => e.Value == actionType).Key;
            }
            if (_funcKeysBinds.Any(e => e.Value == actionType))
            {
                buttonConfig.Key = _funcKeysBinds.FirstOrDefault(e => e.Value == actionType).Key;
            }

            return(buttonConfig);
        }
예제 #5
0
 public void AddAction(GamepadButtons button, MainActionTypes actionType)
 {
     _actionsProvider.AddAction(button, actionType);
 }
예제 #6
0
 public void AddAction(Keys button, MainActionTypes actionType)
 {
     _actionsProvider.AddAction(button, actionType);
 }
예제 #7
0
 public void AddAction(MainActionTypes actionType, Action action)
 {
     _actionHandler.AddAction(actionType, action);
 }
예제 #8
0
 public void AddAction(MainActionTypes actionType, Keys button, Action action)
 {
     _actionsProvider.AddAction(button, actionType);
     _actionHandler.AddAction(actionType, action);
 }
예제 #9
0
 public void AddAction(Keys button, MainActionTypes actionType)
 {
     AddActionInternal(_funcKeysBinds, button, actionType);
 }
예제 #10
0
 public void AddAction(GamepadButtons button, MainActionTypes actionType)
 {
     AddActionInternal(_funcButtonsBinds, button, actionType);
 }