public bool StartScan(InputScanSetting setting, InputScanHandler handler, float timeout = InputScanService.TIME_OUT_DURATION, KeyCode cancel = InputScanService.CANCEL_KEY_CODE, KeyCode clear = InputScanService.CLEAR_KEY_CODE) { return(scanService.Start(setting, handler, timeout, cancel, clear)); }
public void SetData(InputActionBase ac, InputScanSetting s) { action = ac; setting = s; Text_input.text = GetUIStr(); }
public InputScanResult(InputScanSetting st, InputResultType rt) { ResultType = rt; setting = st; KeyCode = KeyCode.None; JoystickButton = JoystickButton.None; JoystickIndex = -1; Axis = -1; }
/// <summary> /// 对于digitalAxis有正和负,所以返回一个列表 /// </summary> /// <returns></returns> public override List <InputScanSetting> GenerateScanSetting() { if (!EnableModify()) { return(null); } List <InputScanSetting> result = new List <InputScanSetting>(); switch (m_inputType) { case JoystickInputType.Button: InputScanSetting btnSetting = new InputScanSetting(InputScanType.JoystickButton, this); btnSetting.CurJoystickIndex = JoystickIdx; btnSetting.CurJoystickButton = m_positive.value; btnSetting.IsPositive = true; result.Add(btnSetting); break; case JoystickInputType.DigitalAxis: InputScanSetting positiveAxisSetting = new InputScanSetting(InputScanType.JoystickButton, this); positiveAxisSetting.IsPositive = true; positiveAxisSetting.CurJoystickIndex = JoystickIdx; positiveAxisSetting.CurJoystickButton = m_positive.value; InputScanSetting negativeAxisSetting = new InputScanSetting(InputScanType.JoystickButton, this); negativeAxisSetting.IsPositive = false; negativeAxisSetting.CurJoystickIndex = JoystickIdx; negativeAxisSetting.CurJoystickButton = m_negative.value; result.Add(positiveAxisSetting); result.Add(negativeAxisSetting); break; case JoystickInputType.AnalogAxis: case JoystickInputType.AnalogButton: InputScanSetting analogAxisSetting = new InputScanSetting(InputScanType.JoystickAxis, this); analogAxisSetting.CurJoystickIndex = JoystickIdx; analogAxisSetting.CurJoystickAxis = m_axis.value; analogAxisSetting.IsInvert = m_invert.value; result.Add(analogAxisSetting); break; } return(result); }
public override List <InputScanSetting> GenerateScanSetting() { if (!EnableModify()) { return(null); } List <InputScanSetting> result = new List <InputScanSetting>(); switch (m_inputType) { case KeyboardMouseInputType.Button: InputScanSetting btnSetting = new InputScanSetting(InputScanType.KeyboardButton, this); btnSetting.IsPositive = true; btnSetting.CurKeyCode = m_positive.value; result.Add(btnSetting); break; case KeyboardMouseInputType.MouseAxis: InputScanSetting mouseSetting = new InputScanSetting(InputScanType.MouseAxis, this); mouseSetting.CurMouseAxis = m_axis.value; mouseSetting.IsInvert = m_invert.value; result.Add(mouseSetting); break; case KeyboardMouseInputType.DigitalAxis: InputScanSetting positiveAxisSetting = new InputScanSetting(InputScanType.KeyboardButton, this); positiveAxisSetting.IsPositive = true; positiveAxisSetting.CurKeyCode = m_positive.value; InputScanSetting negativeAxisSetting = new InputScanSetting(InputScanType.KeyboardButton, this); negativeAxisSetting.IsPositive = false; negativeAxisSetting.CurKeyCode = m_negative.value; result.Add(positiveAxisSetting); result.Add(negativeAxisSetting); break; default: return(null); } return(result); }
public bool Start(InputScanSetting setting, InputScanHandler handler, float timeout, KeyCode cancel, KeyCode clear) { if (IsScanning) { ForceStop(); } m_curScaningSetting = setting; m_scanningType = setting.ScanType; m_leftTime = timeout; m_cancelScanKey = cancel; m_clearScanKey = clear; m_scanHandler = handler; IsScanning = true; axesToValueMap.Clear(); return(true); }