// Use this for initialization
    void Start()
    {
        ControllerInputManager = new ControllerInputManager();

        CurrentInputType = InputType.Keyboard;

        for (int i = 0; i < (int)InputAction._NumberOfInputActions; i++)
        {
            string inputActionName = ((InputAction)i).ToString();

            KeyCode         keyboardKeyCode = (KeyCode)System.Enum.Parse(typeof(KeyCode), PlayerPrefs.GetString(inputActionName + InputType.Keyboard.ToString(), Services.Constants.DefaultKeyMouseBinds[i].ToString()));
            ControllerInput controllerInput = (ControllerInput)System.Enum.Parse(typeof(ControllerInput), PlayerPrefs.GetString(inputActionName + InputType.Controller.ToString(), Services.Constants.DefaultControllerBinds[i].ToString()));

            m_InputBinds[(InputAction)i] = new InputActionBind(new KeyboardBind(keyboardKeyCode), new ControllerBind(controllerInput));
        }

        int c = 0;

        foreach (ControllerInput input in System.Enum.GetValues(typeof(ControllerInput)))
        {
            m_ControllerIcons[input] = ControllerIconTextures[c];

            c++;
        }

        CreateAxisBind(InputAxis.MoveFrontward, m_InputBinds[InputAction.MoveForward], m_InputBinds[InputAction.MoveBackward]);
        CreateAxisBind(InputAxis.MoveHorizontal, m_InputBinds[InputAction.MoveRight], m_InputBinds[InputAction.MoveLeft]);
    }
 /// <summary>
 /// Creates an axis bind from the specified positive and negative binds.
 /// </summary>
 private void CreateAxisBind(InputAxis aInputAxis, InputActionBind aPositiveBind, InputActionBind aNegativeBind)
 {
     m_AxisBinds[aInputAxis] = new InputActionAxis(aPositiveBind, aNegativeBind);
 }
示例#3
0
 public InputActionAxis(InputActionBind aPositiveBind, InputActionBind aNegativeBind)
 {
     m_PositiveBind = aPositiveBind;
     m_NegativeBind = aNegativeBind;
 }