diff --git a/src/g_game.c b/src/g_game.c index c6d749feeffec50aae2d01ef75f8708433e7f54f..5b39857500eb70ade36a9c0683ad2840d4719eda 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -1978,9 +1978,9 @@ static boolean ViewpointSwitchResponder(event_t *ev) // spy mode do { - displayplayer++; - if (displayplayer == MAXPLAYERS) - displayplayer = 0; + // Wrap in both directions + displayplayer += shiftdown ? -1 : 1; + displayplayer = (displayplayer + MAXPLAYERS) % MAXPLAYERS; if (!playeringame[displayplayer]) continue;