diff --git a/src/playsim/p_user.cpp b/src/playsim/p_user.cpp index 1f109d808..2b8e9cf8d 100644 --- a/src/playsim/p_user.cpp +++ b/src/playsim/p_user.cpp @@ -1474,26 +1474,14 @@ nodetype *RestoreNodeList(AActor *act, nodetype *linktype::*otherlist, TArraymo == NULL || player != player->mo->Level->GetConsolePlayer() || - player->playerstate != PST_LIVE || - (!netgame && cl_debugprediction == 0) || - /*player->morphTics ||*/ (player->cheats & CF_PREDICTING)) { return; } - maxtic = ClientTic; - - if (gametic == maxtic) - { - return; - } - FRandom::SaveRNGState(PredictionRNG); // Save original values for restoration later @@ -1546,6 +1534,12 @@ void P_PredictPlayer (player_t *player) } act->BlockNode = NULL; + int maxtic = ClientTic; + if (gametic == maxtic || player->playerstate != PST_LIVE) + { + return; + } + // This essentially acts like a mini P_Ticker where only the stuff relevant to the client is actually // called. Call order is preserved. bool rubberband = false, rubberbandLimit = false;