diff --git a/source/games/sw/src/input.cpp b/source/games/sw/src/input.cpp index 0c3de38f0..802d5af7f 100644 --- a/source/games/sw/src/input.cpp +++ b/source/games/sw/src/input.cpp @@ -162,7 +162,9 @@ static void processWeapon(PLAYERp const pp) void GameInterface::GetInput(InputPacket *packet, ControlInfo* const hidInput) { - if (paused || M_Active()) + PLAYERp pp = &Player[myconnectindex]; + + if (paused || M_Active() || pp->PlayerSprite <= -1) { loc = {}; return; @@ -170,7 +172,6 @@ void GameInterface::GetInput(InputPacket *packet, ControlInfo* const hidInput) double const scaleAdjust = InputScale(); InputPacket input {}; - PLAYERp pp = &Player[myconnectindex]; ApplyGlobalInput(loc, hidInput); processMovement(&input, &loc, hidInput, scaleAdjust, 0, !pp->sop, pp->sop_control ? 3. / 1.40625 : 1.);