From f99a7dc36b415370e0f327eb946abef1977b005d Mon Sep 17 00:00:00 2001 From: james Date: Mon, 4 Feb 2019 17:54:41 -0800 Subject: [PATCH] Shut up when our "new" viewpoint is just the same Also actually correct for new splits. --- src/d_netcmd.c | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/d_netcmd.c b/src/d_netcmd.c index 9bbb73ef4..5788eb65f 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -1955,6 +1955,7 @@ static void Command_View_f (void) { INT32 *displayplayerp; + INT32 olddisplayplayer; int viewnum; INT32 playernum, oldplayernum; char c; @@ -1971,15 +1972,6 @@ Command_View_f (void) if (COM_Argc() > 1)/* switch to player */ { - if (viewnum > splitscreen+2)/* We must arrange in order. */ - { - CONS_Alert(CONS_WARNING, - "You may not change viewpoints more than " - "once ahead the current number of splits. " - "Use view%d instead.\n", splitscreen+2); - return; - } - if (( playernum = LookupPlayer(COM_Argv(1)) ) == -1) { CONS_Alert(CONS_WARNING, "There is no player by that name!\n"); @@ -1993,12 +1985,14 @@ Command_View_f (void) playernum = RoundToValidPlayerNum(playernum); } - if ((*displayplayerp) == playernum) - return; - + olddisplayplayer = (*displayplayerp); (*displayplayerp) = playernum; G_ResetViews(viewnum); + /* The player we wanted was corrected to who it already was. */ + if ((*displayplayerp) == olddisplayplayer) + return; + if ((*displayplayerp) != oldplayernum)/* differ parameter */ { if (playernum == oldplayernum)/* skipped some */