Add tilde key toggle for auto-run

Pressing ~ toggles auto-run (continuous forward movement). Pressing W or S
cancels it. Also cancelled on respawn/teleport.
This commit is contained in:
Kelsi 2026-02-07 16:05:13 -08:00
parent 3bb0096009
commit eb6e42eb59
2 changed files with 14 additions and 1 deletions

View file

@ -136,8 +136,18 @@ void CameraController::update(float deltaTime) {
keyW = keyS = keyA = keyD = keyQ = keyE = nowJump = false;
}
// Tilde toggles auto-run; any forward/backward key cancels it
bool tildeDown = !uiWantsKeyboard && input.isKeyPressed(SDL_SCANCODE_GRAVE);
if (tildeDown && !tildeWasDown) {
autoRunning = !autoRunning;
}
tildeWasDown = tildeDown;
if (keyW || keyS) {
autoRunning = false;
}
bool mouseAutorun = !uiWantsKeyboard && !sitting && leftMouseDown && rightMouseDown;
bool nowForward = keyW || mouseAutorun;
bool nowForward = keyW || mouseAutorun || autoRunning;
bool nowBackward = keyS;
bool nowStrafeLeft = false;
bool nowStrafeRight = false;
@ -1025,6 +1035,7 @@ void CameraController::reset() {
grounded = true;
swimming = false;
sitting = false;
autoRunning = false;
// Clear edge-state so movement packets can re-start cleanly after respawn.
wasMovingForward = false;