IEnumerator StartInputScanDelayedNegativeOrDefault() { InputBinding inputBinding; if (GetValues(out _, out inputBinding)) { // override ui input UIUtils.OverrideUIInputControl(); // update button visual uIButtons[0].profile = scanningProfile; uIButtons[0].text.text = (inputBinding.Type != InputType.DigitalAxis ? "" : "( - ) ") + "..."; yield return(null); // delay before scanning if (inputBinding.Type == InputType.KeyButton || inputBinding.Type == InputType.DigitalAxis) { m_changePositiveKey = inputBinding.Type != InputType.DigitalAxis; InputManager.StartInputScan(ScanFlags.Key, HandleKeyScan, OnStopScan); } else if (inputBinding.Type == InputType.GamepadAxis) { InputManager.StartInputScan(ScanFlags.JoystickAxis, HandleJoystickAxisScan, OnStopScan); } else if (inputBinding.Type == InputType.GamepadButton || inputBinding.Type == InputType.GamepadAnalogButton) { ScanFlags flags = ScanFlags.JoystickButton; flags |= ScanFlags.JoystickAxis; InputManager.StartInputScan(flags, HandleJoystickButtonScan, OnStopScan); } } }
private bool ScanJoystickButton() { for (int key = (int)KeyCode.JoystickButton0; key < (int)KeyCode.Joystick4Button19; key++) { if (Input.GetKeyDown((KeyCode)key)) { _scanResult.scanFlags = ScanFlags.JoystickButton; _scanResult.key = (KeyCode)key; _scanResult.joystick = -1; _scanResult.joystickAxis = -1; _scanResult.joystickAxisValue = 0.0f; _scanResult.mouseAxis = -1; _scanResult.userData = _scanUserData; if (_scanHandler(_scanResult)) { _scanHandler = null; _scanResult.userData = null; _scanFlags = ScanFlags.None; return(true); } } } return(false); }
private bool ScanKey() { int length = _keys.Length; for (int i = 0; i < length; i++) { if ((int)_keys[i] >= (int)KeyCode.JoystickButton0) { break; } if (Input.GetKeyDown(_keys[i])) { _scanResult.scanFlags = ScanFlags.Key; _scanResult.key = _keys[i]; _scanResult.joystick = -1; _scanResult.joystickAxis = -1; _scanResult.mouseAxis = -1; _scanResult.userData = _scanUserData; if (_scanHandler(_scanResult)) { _scanHandler = null; _scanResult.userData = null; _scanFlags = ScanFlags.None; return(true); } } } return(false); }
static IEnumerator StartInputScanDelayed(InputBinding inputBinding, bool changingPositiveDigitalAxis, System.Action onStopScan) { yield return(null); // delay before scanning if (inputBinding.Type == InputType.MouseAxis) { Debug.LogError("Error, cant rebind Mouse Axes..."); } CustomProjectInputs.inputBinding = inputBinding; CustomProjectInputs.changingPositive = true; if (inputBinding.Type == InputType.DigitalAxis) { CustomProjectInputs.changingPositive = changingPositiveDigitalAxis; ScanService.Start(ScanFlags.Key, HandleKeyScan, onStopScan); } if (inputBinding.Type == InputType.KeyButton) { ScanService.Start(ScanFlags.Key, HandleKeyScan, onStopScan); } if (inputBinding.Type == InputType.GamepadAxis) { ScanService.Start(ScanFlags.JoystickAxis, HandleJoystickAxisScan, onStopScan); } if (inputBinding.Type == InputType.GamepadButton || inputBinding.Type == InputType.GamepadAnalogButton) { ScanFlags flags = ScanFlags.JoystickButton; flags |= ScanFlags.JoystickAxis; ScanService.Start(flags, HandleJoystickButtonScan, onStopScan); } }
private bool ScanKey() { int length = m_keys.Length; for (int i = 0; i < length; i++) { if ((int)m_keys[i] >= (int)KeyCode.JoystickButton0) { break; } if (Input.GetKeyDown(m_keys[i])) { m_scanResult.ScanFlags = ScanFlags.Key; m_scanResult.Key = m_keys[i]; m_scanResult.Joystick = -1; m_scanResult.JoystickAxis = -1; m_scanResult.JoystickAxisValue = 0.0f; m_scanResult.MouseAxis = -1; m_scanResult.UserData = m_scanUserData; if (m_scanHandler(m_scanResult)) { m_scanHandler = null; m_scanResult.UserData = null; m_scanFlags = ScanFlags.None; return(true); } } } return(false); }
public void Stop() { if (IsScanning) { IsScanning = false; m_scanResult.ScanFlags = ScanFlags.None; m_scanResult.Key = KeyCode.None; m_scanResult.Joystick = -1; m_scanResult.JoystickAxis = -1; m_scanResult.JoystickAxisValue = 0.0f; m_scanResult.MouseAxis = -1; m_scanResult.UserData = m_scanUserData; if (m_scanHandler != null) { m_scanHandler(m_scanResult); } m_scanJoystick = null; m_scanHandler = null; m_scanResult.UserData = null; m_scanFlags = ScanFlags.None; } }
private bool ScanJoystickAxis() { int scanStart = _scanJoystick * AxisConfiguration.MaxJoystickAxes; for (int i = 0; i < AxisConfiguration.MaxJoystickAxes; i++) { if (Mathf.Abs(Input.GetAxisRaw(_rawJoystickAxes[scanStart + i])) >= 1.0f) { _scanResult.scanFlags = ScanFlags.JoystickAxis; _scanResult.key = KeyCode.None; _scanResult.joystick = _scanJoystick; _scanResult.joystickAxis = i; _scanResult.mouseAxis = -1; _scanResult.userData = _scanUserData; if (_scanHandler(_scanResult)) { _scanHandler = null; _scanResult.userData = null; _scanFlags = ScanFlags.None; return(true); } } } return(false); }
private bool ScanMouseAxis() { for (int i = 0; i < m_rawMouseAxes.Length; i++) { if (Mathf.Abs(Input.GetAxis(m_rawMouseAxes[i])) > 0.0f) { m_scanResult.ScanFlags = ScanFlags.MouseAxis; m_scanResult.Key = KeyCode.None; m_scanResult.Joystick = -1; m_scanResult.JoystickAxis = -1; m_scanResult.JoystickAxisValue = 0.0f; m_scanResult.MouseAxis = i; m_scanResult.UserData = m_scanUserData; if (m_scanHandler(m_scanResult)) { m_scanHandler = null; m_scanResult.UserData = null; m_scanFlags = ScanFlags.None; return(true); } } } return(false); }
private bool ScanJoystickAxis() { int scanStart = 0, scanEnd = m_rawJoystickAxes.Length; float axisRaw = 0.0f; if (m_scanJoystick.HasValue) { scanStart = m_scanJoystick.Value * InputBinding.MAX_JOYSTICK_AXES; scanEnd = scanStart + InputBinding.MAX_JOYSTICK_AXES; } for (int i = scanStart; i < scanEnd; i++) { axisRaw = Input.GetAxisRaw(m_rawJoystickAxes[i]); if (Mathf.Abs(axisRaw) >= 1.0f) { m_scanResult.ScanFlags = ScanFlags.JoystickAxis; m_scanResult.Key = KeyCode.None; m_scanResult.Joystick = i / InputBinding.MAX_JOYSTICK_AXES; m_scanResult.JoystickAxis = i % InputBinding.MAX_JOYSTICK_AXES; m_scanResult.JoystickAxisValue = axisRaw; m_scanResult.MouseAxis = -1; m_scanResult.UserData = m_scanUserData; if (m_scanHandler(m_scanResult)) { m_scanHandler = null; m_scanResult.UserData = null; m_scanFlags = ScanFlags.None; return(true); } } } return(false); }
private bool ScanMouseAxis() { for (int i = 0; i < _rawMouseAxes.Length; i++) { if (Mathf.Abs(Input.GetAxis(_rawMouseAxes[i])) > 0.0f) { _scanResult.scanFlags = ScanFlags.MouseAxis; _scanResult.key = KeyCode.None; _scanResult.joystick = -1; _scanResult.joystickAxis = -1; _scanResult.joystickAxisValue = 0.0f; _scanResult.mouseAxis = i; _scanResult.userData = _scanUserData; if (_scanHandler(_scanResult)) { _scanHandler = null; _scanResult.userData = null; _scanFlags = ScanFlags.None; return(true); } } } return(false); }
public void KeyBind(BindingButton buttonParams, GameObject button) { AudioManager.Play("Bip"); this.eventSystemGameObject.SetActive(false); ScanFlags scanFlagOut = ScanFlags.Key; KeyCode cancelKey = KBcancelKey; switch (buttonParams.inputType) { case CustomInputType.KeyboardButton: scanFlagOut = ScanFlags.Key; cancelKey = KeyBinder.KBcancelKey; break; case CustomInputType.GamepadButton: scanFlagOut = ScanFlags.JoystickButton | ScanFlags.JoystickAxis; cancelKey = KeyBinder.GPcancelKey; break; case CustomInputType.GamepadAxis: scanFlagOut = ScanFlags.JoystickAxis; cancelKey = KeyBinder.GPcancelKey; break; default: Debug.LogErrorFormat("{1} Not implemented yet", buttonParams.inputType); break; } ScanSettings scanSettings = new ScanSettings { ScanFlags = scanFlagOut, CancelScanKey = cancelKey, Timeout = timeout }; switch (buttonParams.inputType) { case CustomInputType.KeyboardButton: case CustomInputType.DigitalAxis: StartScanKBButton(scanSettings, buttonParams, button); break; case CustomInputType.GamepadButton: StartScanGPButton(scanSettings, buttonParams, button); break; case CustomInputType.GamepadAxis: StartScanGPAxis(scanSettings, buttonParams, button); break; default: this.eventSystemGameObject.SetActive(true); Debug.LogErrorFormat("{1} Not implemented yet", buttonParams.inputType); break; } }
public static ScanResult Empty(ScanFlags scanResult = ScanFlags.None) { ScanResult result = new ScanResult(); result.ScanFlags = scanResult; result.keyCode = KeyCode.None; result.mouseAxis = -1; result.gamepadButton = GamepadButton.None; result.gamepadAxis = GamepadAxis.None; result.axisValue = 0.0f; return(result); }
public static void Start(ScanFlags scanFlags, ScanHandler scanHandler, System.Action onScanEnd) { if (isScanning) { Stop(); } m_scanStartTime = Time.unscaledTime; isScanning = true; ScanService.scanFlags = scanFlags; ScanService.onScanEnd = onScanEnd; ScanService.scanHandler = scanHandler; }
public void Start(float startTime, ScanFlags scanFlags, ScanHandler scanHandler, System.Action onScanEnd) { if (IsScanning) { Stop(); } m_scanStartTime = startTime; this.scanFlags = scanFlags; this.onScanEnd = onScanEnd; m_scanHandler = scanHandler; IsScanning = true; }
private void StopInputScan() { _scanResult.scanFlags = ScanFlags.None; _scanResult.key = KeyCode.None; _scanResult.joystick = -1; _scanResult.joystickAxis = -1; _scanResult.mouseAxis = -1; _scanResult.userData = _scanUserData; _scanHandler(_scanResult); _scanHandler = null; _scanResult.userData = null; _scanFlags = ScanFlags.None; }
private bool ScanJoystickButton() { int scanStart = (int)KeyCode.Joystick1Button0; int scanEnd = (int)KeyCode.Joystick8Button19; if (m_scanJoystick.HasValue) { scanStart = (int)KeyCode.Joystick1Button0 + m_scanJoystick.Value * 20; scanEnd = scanStart + 20; } for (int key = scanStart; key < scanEnd; key++) { if (Input.GetKeyDown((KeyCode)key)) { if (m_scanJoystick.HasValue) { m_scanResult.Key = (KeyCode)key; m_scanResult.Joystick = m_scanJoystick.Value; } else { m_scanResult.Key = (KeyCode)((int)KeyCode.JoystickButton0 + (key - (int)KeyCode.Joystick1Button0) % 20); m_scanResult.Joystick = ((key - (int)KeyCode.Joystick1Button0) / 20); } m_scanResult.JoystickAxis = -1; m_scanResult.JoystickAxisValue = 0.0f; m_scanResult.MouseAxis = -1; m_scanResult.UserData = m_scanUserData; m_scanResult.ScanFlags = ScanFlags.JoystickButton; if (m_scanHandler(m_scanResult)) { m_scanHandler = null; m_scanResult.UserData = null; m_scanFlags = ScanFlags.None; return(true); } } } return(false); }
//public void Start(ScanSettings settings, ScanHandler scanHandler) public void Start(ScanSettings settings) { if (settings.Joystick.HasValue && (settings.Joystick < 0 || settings.Joystick >= InputBinding.MAX_JOYSTICK_AXES)) { Debug.LogError("Joystick is out of range. Cannot start scan."); return; } if (IsScanning) { Stop(); } m_scanTimeout = settings.Timeout; m_scanFlags = settings.ScanFlags; m_scanStartTime = GameTime; m_cancelScanKey = settings.CancelScanKey; m_scanJoystick = settings.Joystick; m_scanUserData = settings.UserData; // m_scanHandler = scanHandler; IsScanning = true; }
/// <summary> /// Find pattern in dumped module /// </summary> /// <param name="offsetPattern">Pattern in string format</param> /// <param name="additionOffset">Addition to returned offset</param> /// <returns>Offsets from pattern</returns> public int FindPattern(string pattern, ScanFlags flags, int patternAddition, int addressOffset) { for (int x = 0; x < m_moduleBuffer.Length; x++) { if (this.PatternCheck(x, pattern)) { int address = _moduleBaseAddress + x + patternAddition; if (flags.HasFlag(ScanFlags.READ)) { address = M.Read <int>((IntPtr)address); } if (flags.HasFlag(ScanFlags.SUBSTRACT_BASE)) { address -= _moduleBaseAddress; } return(address + addressOffset); } } return(0); }
private bool ScanKey() { int length = _keys.Length; for (int i = 0; i < length; i++) { if ((int)_keys [i] >= (int)KeyCode.JoystickButton0) break; if (Input.GetKeyDown (_keys [i])) { _scanResult.scanFlags = ScanFlags.Key; _scanResult.key = _keys [i]; _scanResult.joystick = -1; _scanResult.joystickAxis = -1; _scanResult.mouseAxis = -1; _scanResult.userData = _scanUserData; if (_scanHandler (_scanResult)) { _scanHandler = null; _scanResult.userData = null; _scanFlags = ScanFlags.None; return true; } } } return false; }
private bool ScanJoystickButton() { for (int key = (int)KeyCode.JoystickButton0; key < (int)KeyCode.Joystick4Button19; key++) { if (Input.GetKeyDown ((KeyCode)key)) { _scanResult.scanFlags = ScanFlags.JoystickButton; _scanResult.key = (KeyCode)key; _scanResult.joystick = -1; _scanResult.joystickAxis = -1; _scanResult.mouseAxis = -1; _scanResult.userData = _scanUserData; if (_scanHandler (_scanResult)) { _scanHandler = null; _scanResult.userData = null; _scanFlags = ScanFlags.None; return true; } } } return false; }
private bool ScanJoystickAxis() { int scanStart = _scanJoystick * AxisConfiguration.MaxJoystickAxes; for (int i = 0; i < AxisConfiguration.MaxJoystickAxes; i++) { if (Mathf.Abs (Input.GetAxisRaw (_rawJoystickAxes [scanStart + i])) >= 1.0f) { _scanResult.scanFlags = ScanFlags.JoystickAxis; _scanResult.key = KeyCode.None; _scanResult.joystick = _scanJoystick; _scanResult.joystickAxis = i; _scanResult.mouseAxis = -1; _scanResult.userData = _scanUserData; if (_scanHandler (_scanResult)) { _scanHandler = null; _scanResult.userData = null; _scanFlags = ScanFlags.None; return true; } } } return false; }
public static void StartInputScan(ScanFlags scanFlags, ScanHandler scanHandler, System.Action onScanEnd) { m_instance.m_scanService.Start(Time.unscaledTime, scanFlags, scanHandler, onScanEnd); }
public bool IsSet(ScanFlags flag) { return((Flags & flag) != 0); }//method
public StringLiteral(string name, string startEndSymbol, ScanFlags stringFlags) : this(name, startEndSymbol, stringFlags, TermOptions.SpecialIgnoreCase) { }
public StringLiteral(string name, string startEndSymbol, ScanFlags stringFlags, TermOptions options) : this(name, options) { this.StartEndSymbolTable.Add(startEndSymbol, stringFlags); }
public void AddStartEnd(string startEndSymbol, ScanFlags stringFlags) { StartEndSymbolTable.Add(startEndSymbol, stringFlags); }
public void AddStartEnd(string startEndSymbol, ScanFlags stringFlags) { StartEndSymbolTable.Add(startEndSymbol, stringFlags); }
static bool HasFlag(ScanFlags flag) { return(((int)scanFlags & (int)flag) != 0); }
private bool ScanMouseAxis() { for (int i = 0; i < _rawMouseAxes.Length; i++) { if (Mathf.Abs (Input.GetAxis (_rawMouseAxes [i])) > 0.0f) { _scanResult.scanFlags = ScanFlags.MouseAxis; _scanResult.key = KeyCode.None; _scanResult.joystick = -1; _scanResult.joystickAxis = -1; _scanResult.mouseAxis = i; _scanResult.userData = _scanUserData; if (_scanHandler (_scanResult)) { _scanHandler = null; _scanResult.userData = null; _scanFlags = ScanFlags.None; return true; } } } return false; }
private void StopInputScan() { _scanResult.scanFlags = ScanFlags.None; _scanResult.key = KeyCode.None; _scanResult.joystick = -1; _scanResult.joystickAxis = -1; _scanResult.mouseAxis = -1; _scanResult.userData = _scanUserData; _scanHandler (_scanResult); _scanHandler = null; _scanResult.userData = null; _scanFlags = ScanFlags.None; }
private bool HasFlag(ScanFlags flag) { return(((int)m_scanFlags & (int)flag) != 0); }
public StringLiteral(string name, string startEndSymbol, ScanFlags stringFlags) : this(name, startEndSymbol, stringFlags, TermOptions.SpecialIgnoreCase) { }
public void AddPrefixFlag(string prefix, ScanFlags flags) { PrefixFlags.Add(prefix, flags); Prefixes.Add(prefix); }
public void Visit(UmlDiagram diagram, UmlEntity info) { var type = info.Type; var properties = ScanProperties(type, ScanFlags); info.Members.AddRange(properties); var r = BindingFlags.Public | BindingFlags.NonPublic; if (ScanFlags.HasFlag(ReflectionFlags.InstanceMethod)) { r |= BindingFlags.Instance; } if (ScanFlags.HasFlag(ReflectionFlags.StaticMethod)) { r |= BindingFlags.Static; } var methodInfos = type.GetMethods(r); { var h = SortAndPrepareMethods; if (h != null) { var args = new SortAndPrepareMethodsEventArgs { Methods = methodInfos }; h.Invoke(this, args); methodInfos = args.Methods; } } foreach (var mi in methodInfos) { var add = CheckSkipDefault(mi); var flag = GetMFlag(mi, ReflectionFlags.PublicMethod, ReflectionFlags.ProtectedMethod, ReflectionFlags.PrivateMethod); if (add) { if (!H(flag, ScanFlags)) { add = false; } } var h = AddTypeToDiagram; if (h is null && !add) { continue; } var member = new MethodUmlMember { Group = 20, Name = mi.Name, Method = mi, Visibility = GetVisibilityFromFlags(flag) }; if (mi.IsAbstract) { member.Kind = UmlMemberKind.Abstract; } if (mi.IsStatic) { member.Kind = UmlMemberKind.Static; } if (h != null) { var args = new AddTypeToDiagramEventArgs { Decision = add ? AddDecision.Add : AddDecision.Skip, Member = mi, UmlMember = member }; h(this, args); if (args.Decision != AddDecision.Default) { add = args.Decision == AddDecision.Add; } } if (!add) { continue; } info.Members.Add(member); } }
public StringLiteral(string name, string startEndSymbol, ScanFlags stringFlags, TermOptions options) : this(name, options) { this.StartEndSymbolTable.Add(startEndSymbol, stringFlags); }