diff --git a/source/games/duke/src/player_r.cpp b/source/games/duke/src/player_r.cpp index d57c52b51..45a88d1fe 100644 --- a/source/games/duke/src/player_r.cpp +++ b/source/games/duke/src/player_r.cpp @@ -1470,11 +1470,8 @@ static void onMotorcycle(int snum, ESyncBits &actions) bool braking = false; int rng; - if (p->MotoSpeed < 0) - { + if (p->moto_underwater) p->MotoSpeed = 0; - p->sync.fvel = 0; - } const auto oldMotoSpeed = clamp((float)p->MotoSpeed, -15.f, 120.f) * (1.f / 40.f); bool forward = p->sync.fvel > 0; @@ -1482,6 +1479,9 @@ static void onMotorcycle(int snum, ESyncBits &actions) bool turnLeft = p->sync.avel < 0; bool turnRight = p->sync.avel > 0; + if (p->MotoSpeed < 0) + p->MotoSpeed = 0; + if ((braking = actions & SB_CROUCH)) { actions &= ~SB_CROUCH;