// Token: 0x06003901 RID: 14593 RVA: 0x000E7788 File Offset: 0x000E5988 public void Update() { if (!this.editing) { return; } if (this.exit < 2) { this.exit++; return; } if (Input.GetKeyDown(KeyCode.Escape) || (this.WasPressed(XboxControllerInput.Button.Start) && this.currentKeys.Count > 0)) { this.editing = false; SuspensionManager.ResumeAll(); this.SetKeys(this.currentKeys.ToArray()); PlayerInputRebinding.WriteControllerRebindSettings(); PlayerInput.Instance.RefreshControlScheme(); this.owner.SetFakeTooltip(this.owner.DefaultTooltip); return; } PlayerInputRebinding.ControllerButton?pressedButtonAsBind = this.GetPressedButtonAsBind(); if (pressedButtonAsBind != null && !this.currentKeys.Contains(pressedButtonAsBind.Value)) { this.currentKeys.Add(pressedButtonAsBind.Value); this.UpdateMessageBox(); } foreach (XboxControllerInput.Button button in this.allButtons) { this.buttonsPressed[(int)button] = XboxControllerInput.GetButton(button, -1); } }
// Token: 0x0600390A RID: 14602 RVA: 0x000E78C8 File Offset: 0x000E5AC8 public PlayerInputRebinding.ControllerButton?GetPressedButtonAsBind() { foreach (XboxControllerInput.Button button in this.allButtons) { if (this.WasPressed(button)) { return(new PlayerInputRebinding.ControllerButton?(this.ToBind(button))); } } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.LeftStickX) < -0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.LLeft)); } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.LeftStickX) > 0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.LRight)); } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.LeftStickY) > 0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.LUp)); } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.LeftStickY) < -0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.LDown)); } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickX) < -0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.RLeft)); } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickX) > 0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.RRight)); } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickY) > 0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.RUp)); } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickY) < -0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.RDown)); } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadX) < -0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.DLeft)); } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadX) > 0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.DRight)); } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) > 0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.DUp)); } if (XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) < -0.5f) { return(new PlayerInputRebinding.ControllerButton?(PlayerInputRebinding.ControllerButton.DDown)); } return(null); }
private static void CheckControls() { char kp = currentKeyPress; float rsX = XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickX); bool rhtTrg = XboxControllerInput.GetButton(XboxControllerInput.Button.RightTrigger); bool lftTrg = XboxControllerInput.GetButton(XboxControllerInput.Button.LeftTrigger); bool lftStick = XboxControllerInput.GetButton(XboxControllerInput.Button.LeftStick); bool dpU = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) > 0.1f; bool dpD = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) < -0.1f; bool kbPlay = MoonInput.GetKey(KeyCode.LeftBracket); bool kbRec = MoonInput.GetKey(KeyCode.Backspace) && (MoonInput.GetKey(KeyCode.LeftShift) || MoonInput.GetKey(KeyCode.RightShift)); bool kbStop = MoonInput.GetKey(KeyCode.Backslash) || kp == '\\'; bool kbDebug = MoonInput.GetKey(KeyCode.F8); bool kbReload = MoonInput.GetKey(KeyCode.Quote) || kp == '\''; bool kbRerec = MoonInput.GetKey(KeyCode.Backspace) && (MoonInput.GetKey(KeyCode.LeftControl) || MoonInput.GetKey(KeyCode.RightControl)); if (rhtTrg || lftTrg || kbPlay || kbRec || kbStop || kbDebug || kbReload || kbRerec) { if (!HasFlag(tasState, TASState.Enable) && ((lftStick && rhtTrg && lftTrg) || kbPlay)) { tasStateNext |= TASState.Enable; } else if (!HasFlag(tasState, TASState.Rerecord) && kbRerec) { tasStateNext |= TASState.Rerecord; } else if (HasFlag(tasState, TASState.Enable) && (dpD || kbStop)) { DisableRun(); } else if (!HasFlag(tasState, TASState.Reload) && HasFlag(tasState, TASState.Enable) && !HasFlag(tasState, TASState.Record) && (dpU || kbReload)) { tasStateNext |= TASState.Reload; } else if (!HasFlag(tasState, TASState.Enable) && !HasFlag(tasState, TASState.Record) && kbRec) { tasStateNext |= TASState.Record; } else if (!HasFlag(tasState, TASState.Enable) && !HasFlag(tasState, TASState.Record) && kbDebug) { tasStateNext |= TASState.OpenDebug; } } if (!rhtTrg && !kbPlay && !kbRec && !kbDebug && !kbReload && !kbRerec) { if (HasFlag(tasStateNext, TASState.Enable)) { ClearKeyPress(true); EnableRun(); } else if (HasFlag(tasStateNext, TASState.Record)) { RecordRun(); } else if (HasFlag(tasStateNext, TASState.Rerecord)) { RerecordRun(); } else if (HasFlag(tasStateNext, TASState.Reload)) { ReloadRun(); } else if (HasFlag(tasStateNext, TASState.OpenDebug)) { tasStateNext &= ~TASState.OpenDebug; CheatsHandler.Instance.ActivateDebugMenu(); } } }
private static void FrameStepping() { char kp = currentKeyPress; float rsX = XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickX); bool rhtTrg = XboxControllerInput.GetButton(XboxControllerInput.Button.RightTrigger); bool dpU = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) > 0.1f || kp == '['; bool dpD = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) < -0.1f || kp == ']'; if (HasFlag(tasState, TASState.Enable) && !HasFlag(tasState, TASState.Record) && (HasFlag(tasState, TASState.FrameStep) || dpU && !rhtTrg)) { bool ap = dpU; while (HasFlag(tasState, TASState.Enable)) { kp = currentKeyPress; rsX = XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickX); rhtTrg = XboxControllerInput.GetButton(XboxControllerInput.Button.RightTrigger); dpU = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) > 0.1f || kp == '['; dpD = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) < -0.1f || kp == ']'; CheckControls(); if (!ap && ((dpU && !rhtTrg))) { tasState |= TASState.FrameStep; break; } else if (dpD && !rhtTrg) { tasState &= ~TASState.FrameStep; break; } else if (rsX >= 0.2) { tasState |= TASState.FrameStep; int sleepTime = 0; if (rsX <= 0.3) { sleepTime = 200; } else if (rsX <= 0.4) { sleepTime = 100; } else if (rsX <= 0.5) { sleepTime = 80; } else if (rsX <= 0.6) { sleepTime = 64; } else if (rsX <= 0.7) { sleepTime = 48; } else if (rsX <= 0.8) { sleepTime = 32; } else if (rsX <= 0.9) { sleepTime = 16; } Thread.Sleep(sleepTime); break; } else if (kp == ':' || savedExtraInfo != null) { tasState |= TASState.FrameStep; ClearKeyPress(); if (savedExtraInfo == null) { savedExtraInfo = extraInfo; } else { if (extraInfo == savedExtraInfo) { break; } savedExtraInfo = null; } } ap = dpU; ClearKeyPress(); Thread.Sleep(1); } ReloadRun(); } ClearKeyPress(); }
private static void HandleFrameRates() { if (HasFlag(tasState, TASState.Enable) && !HasFlag(tasState, TASState.FrameStep) && !HasFlag(tasState, TASState.Record)) { float rsX = XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickX); if (player.FastForward) { // Disable BQ even if FF enabled because we want to let scenes load naturally first. if (player.lastInput.Slowdown) { SetFrameRate(); } else { SetFrameRate(6000); } } else if (rsX <= -1.2) { SetFrameRate(1); } else if (rsX <= -1.1) { SetFrameRate(2); } else if (rsX <= -1.0) { SetFrameRate(3); } else if (rsX <= -0.9) { SetFrameRate(4); } else if (rsX <= -0.8) { SetFrameRate(6); } else if (rsX <= -0.7) { SetFrameRate(12); } else if (rsX <= -0.6) { SetFrameRate(16); } else if (rsX <= -0.5) { SetFrameRate(20); } else if (rsX <= -0.4) { SetFrameRate(28); } else if (rsX <= -0.3) { SetFrameRate(36); } else if (rsX <= -0.2) { SetFrameRate(44); } else if (rsX <= 0.2) { SetFrameRate(); } else if (rsX <= 0.3) { SetFrameRate(90); } else if (rsX <= 0.4) { SetFrameRate(120); } else if (rsX <= 0.5) { SetFrameRate(150); } else if (rsX <= 0.6) { SetFrameRate(180); } else if (rsX <= 0.7) { SetFrameRate(210); } else if (rsX <= 0.8) { SetFrameRate(240); } else if (rsX <= 0.9) { SetFrameRate(270); } else { SetFrameRate(6000); } } else { SetFrameRate(); } }
// Token: 0x06003908 RID: 14600 RVA: 0x0002C472 File Offset: 0x0002A672 private bool WasPressed(XboxControllerInput.Button button) { return(!this.buttonsPressed[(int)button] && XboxControllerInput.GetButton(button, -1)); }
private static void HandleFrameRates() { if (HasFlag(tasState, TASState.Enable) && !HasFlag(tasState, TASState.FrameStep) && !HasFlag(tasState, TASState.Record)) { float rsX = XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickX); if (player.FastForward) { SetFrameRate(180); } else if (rsX <= -1.2) { SetFrameRate(1); } else if (rsX <= -1.1) { SetFrameRate(2); } else if (rsX <= -1.0) { SetFrameRate(3); } else if (rsX <= -0.9) { SetFrameRate(4); } else if (rsX <= -0.8) { SetFrameRate(6); } else if (rsX <= -0.7) { SetFrameRate(12); } else if (rsX <= -0.6) { SetFrameRate(16); } else if (rsX <= -0.5) { SetFrameRate(20); } else if (rsX <= -0.4) { SetFrameRate(28); } else if (rsX <= -0.3) { SetFrameRate(36); } else if (rsX <= -0.2) { SetFrameRate(44); } else if (rsX <= 0.2) { SetFrameRate(); } else if (rsX <= 0.3) { SetFrameRate(75); } else if (rsX <= 0.4) { SetFrameRate(90); } else if (rsX <= 0.5) { SetFrameRate(105); } else if (rsX <= 0.6) { SetFrameRate(120); } else if (rsX <= 0.7) { SetFrameRate(135); } else if (rsX <= 0.8) { SetFrameRate(150); } else if (rsX <= 0.9) { SetFrameRate(165); } else { SetFrameRate(180); } } else { SetFrameRate(); } }
private static void HandleFrameRates() { if (HasFlag(tasState, TASState.Enable) && !HasFlag(tasState, TASState.FrameStep) && !HasFlag(tasState, TASState.Record)) { float rsX = XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickX); if (!HasFlag(tasStateNext, TASState.ChangeSpeed)) { tasStateNext |= TASState.ChangeSpeed; } else if (!MoonInput.GetKey(UnityEngine.KeyCode.T) && !MoonInput.GetKey(UnityEngine.KeyCode.R) && !MoonInput.GetKey(UnityEngine.KeyCode.F) /*&& * !(XInputDotNetPure.GamePad.GetState(PlayerIndex.One).Buttons.Guide == ButtonState.Pressed)*/) { tasStateNext &= ~TASState.ChangeSpeed; } if (MoonInput.GetKey(UnityEngine.KeyCode.T)) { currentSpeed = 0.65f; if (isSuspended) { SuspensionManager.ResumeExcluding(suspendables); suspendables.Clear(); slowDownFromKB = false; isSuspended = false; } } else if (MoonInput.GetKey(UnityEngine.KeyCode.R)) { currentSpeed = -0.75f; if (isSuspended) { SuspensionManager.ResumeExcluding(suspendables); suspendables.Clear(); slowDownFromKB = false; isSuspended = false; } } else if (MoonInput.GetKey(UnityEngine.KeyCode.G)) { currentSpeed = 0; if (isSuspended) { SuspensionManager.ResumeExcluding(suspendables); suspendables.Clear(); slowDownFromKB = false; isSuspended = false; } } else if ((MoonInput.GetKey(UnityEngine.KeyCode.F)) /*|| (XInputDotNetPure.GamePad.GetState(PlayerIndex.One).Buttons.Guide == ButtonState.Pressed)*/) { slowDownFromKB = true; } if (slowDownFromKB) { if (isSuspended) { SuspensionManager.ResumeExcluding(suspendables); suspendables.Clear(); } else { SuspensionManager.GetSuspendables(suspendables, Game.UI.Cameras.Current.GameObject); SuspensionManager.SuspendExcluding(suspendables); slowDownFromKB = false; } isSuspended = !isSuspended; } if (!isSuspended) { if (currentSpeed != 0) { rsX += currentSpeed; } if (rsX <= -1.2) { SetFrameRate(1); } else if (rsX <= -1.1) { SetFrameRate(2); } else if (rsX <= -1.0) { SetFrameRate(3); } else if (rsX <= -0.9) { SetFrameRate(4); } else if (rsX <= -0.8) { SetFrameRate(6); } else if (rsX <= -0.7) { SetFrameRate(12); } else if (rsX <= -0.6) { SetFrameRate(16); } else if (rsX <= -0.5) { SetFrameRate(20); } else if (rsX <= -0.4) { SetFrameRate(28); } else if (rsX <= -0.3) { SetFrameRate(36); } else if (rsX <= -0.2) { SetFrameRate(44); } else if (rsX <= 0.2) { SetFrameRate(); } else if (rsX <= 0.3) { SetFrameRate(75); } else if (rsX <= 0.4) { SetFrameRate(90); } else if (rsX <= 0.5) { SetFrameRate(105); } else if (rsX <= 0.6) { SetFrameRate(120); } else if (rsX <= 0.7) { SetFrameRate(135); } else if (rsX <= 0.8) { SetFrameRate(150); } else if (rsX <= 0.9) { SetFrameRate(165); } else { SetFrameRate(180); } } } else { SetFrameRate(); } }
private static void CheckControls() { float rsX = XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickX); bool lftShd = XboxControllerInput.GetButton(XboxControllerInput.Button.LeftTrigger); bool rhtShd = XboxControllerInput.GetButton(XboxControllerInput.Button.RightTrigger); bool dpU = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) > 0.1f; bool dpD = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) < -0.1f; // bool guide = XInputDotNetPure.GamePad.GetState(PlayerIndex.One).Buttons.Guide == ButtonState.Pressed; bool kbPlay = MoonInput.GetKey(UnityEngine.KeyCode.B); bool kbRec = MoonInput.GetKey(UnityEngine.KeyCode.N); bool kbStop = MoonInput.GetKey(UnityEngine.KeyCode.J); bool kbDebug = MoonInput.GetKey(UnityEngine.KeyCode.F8); bool shift = MoonInput.GetKey(UnityEngine.KeyCode.LeftShift) || MoonInput.GetKey(UnityEngine.KeyCode.RightShift); bool kbRerec = MoonInput.GetKey(UnityEngine.KeyCode.Backspace); if ((lftShd && rhtShd) || kbPlay || kbRec || kbStop || kbDebug || kbRerec) { if (!HasFlag(tasState, TASState.Enable) && (XboxControllerInput.GetButton(XboxControllerInput.Button.RightStick) || (kbPlay && !shift))) { tasStateNext |= TASState.Enable; } else if (!HasFlag(tasState, TASState.Rerecord) && (kbRerec)) { tasStateNext |= TASState.Rerecord; } else if (HasFlag(tasState, TASState.Enable) && (dpD || kbStop)) { DisableRun(); } else if (!HasFlag(tasState, TASState.Reload) && HasFlag(tasState, TASState.Enable) && !HasFlag(tasState, TASState.Record) && (dpU || (kbPlay && shift))) { tasStateNext |= TASState.Reload; } else if (!HasFlag(tasState, TASState.Record) && (XboxControllerInput.GetButton(XboxControllerInput.Button.LeftStick) || kbRec)) { tasStateNext |= TASState.Record; } else if (!HasFlag(tasState, TASState.Record) && kbDebug) { tasStateNext |= TASState.OpenDebug; } } if (!lftShd && !rhtShd && !kbPlay && !kbRec && !kbDebug) { if (HasFlag(tasStateNext, TASState.Enable)) { EnableRun(); } else if (HasFlag(tasStateNext, TASState.Record)) { RecordRun(); } else if (HasFlag(tasStateNext, TASState.Rerecord)) { RerecordRun(); } else if (HasFlag(tasStateNext, TASState.Reload)) { ReloadRun(); } else if (HasFlag(tasStateNext, TASState.OpenDebug)) { tasStateNext &= ~TASState.OpenDebug; CheatsHandler.Instance.ActivateDebugMenu(); } } }
private static void FrameStepping() { float rsX = XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickX); bool lftShd = XboxControllerInput.GetButton(XboxControllerInput.Button.LeftTrigger); bool rhtShd = XboxControllerInput.GetButton(XboxControllerInput.Button.RightTrigger); bool guide = XInputDotNetPure.GamePad.GetState(PlayerIndex.One).Buttons.Guide == ButtonState.Pressed; bool dpU = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) > 0.1f; bool dpD = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) < -0.1f; if (HasFlag(tasState, TASState.Enable) /* && !HasFlag(tasState, TASState.Record) */ && (HasFlag(tasState, TASState.FrameStep) || ((dpU && !lftShd && !rhtShd) || guide))) { bool ap = (dpU || guide); while (HasFlag(tasState, TASState.Enable)) { rsX = XboxControllerInput.GetAxis(XboxControllerInput.Axis.RightStickX); lftShd = XboxControllerInput.GetButton(XboxControllerInput.Button.LeftTrigger); rhtShd = XboxControllerInput.GetButton(XboxControllerInput.Button.RightTrigger); guide = XInputDotNetPure.GamePad.GetState(PlayerIndex.One).Buttons.Guide == ButtonState.Pressed; dpU = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) > 0.1f; dpD = XboxControllerInput.GetAxis(XboxControllerInput.Axis.DpadY) < -0.1f; CheckControls(); if (!ap && ((dpU && !lftShd && !rhtShd) || guide)) { tasState |= TASState.FrameStep; break; } else if ((dpD && !lftShd && !rhtShd)) { tasState &= ~TASState.FrameStep; break; } else if (rsX >= 0.2) { tasState |= TASState.FrameStep; int sleepTime = 0; if (rsX <= 0.3) { sleepTime = 200; } else if (rsX <= 0.4) { sleepTime = 100; } else if (rsX <= 0.5) { sleepTime = 80; } else if (rsX <= 0.6) { sleepTime = 64; } else if (rsX <= 0.7) { sleepTime = 48; } else if (rsX <= 0.8) { sleepTime = 32; } else if (rsX <= 0.9) { sleepTime = 16; } Thread.Sleep(sleepTime); break; } ap = (dpU || guide); Thread.Sleep(1); } } }
// Token: 0x06000EB4 RID: 3764 RVA: 0x0005B634 File Offset: 0x00059834 private bool IsAnyStartPressed() { return(XboxControllerInput.GetButton(XboxControllerInput.Button.Start, -1) || XboxControllerInput.GetButton(XboxControllerInput.Button.ButtonA, -1) || XboxControllerInput.GetButton(XboxControllerInput.Button.ButtonB, -1) || XboxControllerInput.GetButton(XboxControllerInput.Button.ButtonX, -1) || XboxControllerInput.GetButton(XboxControllerInput.Button.ButtonY, -1) || MoonInput.GetKey(KeyCode.Space) || MoonInput.GetKey(KeyCode.X) || MoonInput.GetKey(KeyCode.Mouse0) || MoonInput.GetKey(KeyCode.Return) || MoonInput.GetKey(KeyCode.Escape) || MoonInput.anyKey); }