// 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); }
public InputActionAxis(InputActionBind aPositiveBind, InputActionBind aNegativeBind) { m_PositiveBind = aPositiveBind; m_NegativeBind = aNegativeBind; }