diff --git a/src/k_hud.c b/src/k_hud.c index d3fc3cd14..7ae5a78fc 100644 --- a/src/k_hud.c +++ b/src/k_hud.c @@ -5244,11 +5244,12 @@ static void K_DrawWaypointDebugger(void) if (netgame) { - V_DrawString(8, 146, 0, va("Online griefing: [%u, %u]", stplyr->griefValue/TICRATE, stplyr->griefStrikes)); + V_DrawString(8, 136, 0, va("Online griefing: [%u, %u]", stplyr->griefValue/TICRATE, stplyr->griefStrikes)); } - V_DrawString(8, 156, 0, va("Current Waypoint ID: %d", K_GetWaypointID(stplyr->currentwaypoint))); - V_DrawString(8, 166, 0, va("Next Waypoint ID: %d%s", K_GetWaypointID(stplyr->nextwaypoint), ((stplyr->pflags & PF_WRONGWAY) ? " (WRONG WAY)" : ""))); + V_DrawString(8, 146, 0, va("Current Waypoint ID: %d", K_GetWaypointID(stplyr->currentwaypoint))); + V_DrawString(8, 156, 0, va("Next Waypoint ID: %d%s", K_GetWaypointID(stplyr->nextwaypoint), ((stplyr->pflags & PF_WRONGWAY) ? " (WRONG WAY)" : ""))); + V_DrawString(8, 166, 0, va("Respawn Waypoint ID: %d", K_GetWaypointID(stplyr->respawn.wp))); V_DrawString(8, 176, 0, va("Finishline Distance: %d", stplyr->distancetofinish)); if (numcheatchecks > 0) diff --git a/src/k_respawn.c b/src/k_respawn.c index 852459810..975f7fca6 100644 --- a/src/k_respawn.c +++ b/src/k_respawn.c @@ -289,6 +289,7 @@ void K_DoIngameRespawn(player_t *player) player->respawn.init = true; player->respawn.fast = true; player->respawn.returnspeed = 0; + player->laps = player->lastsafelap; player->respawn.airtimer = player->airtime; player->respawn.truedeath = !!(player->pflags & PF_FAULT); @@ -403,12 +404,8 @@ static void K_MovePlayerToRespawnPoint(player_t *player) P_SetThingPosition(player->mo); // We are no longer traveling from death location to 1st waypoint, so use standard timings - // (and reset their lap so they can't cross the finish the wrong way!) if (player->respawn.fast) - { player->respawn.fast = false; - player->laps = player->lastsafelap; - } // At the first valid waypoint, permit extra player control options. player->respawn.init = false; diff --git a/src/p_spec.c b/src/p_spec.c index 33609787a..5071735a8 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -2142,6 +2142,8 @@ static void K_HandleLapDecrement(player_t *player) { if (player) { + if (player->respawn.state == RESPAWNST_MOVE) + return; if ((player->cheatchecknum == 0) && (player->laps > 0)) { player->cheatchecknum = numcheatchecks;