File tree Expand file tree Collapse file tree
Client/mods/deathmatch/logic Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -381,9 +381,12 @@ void CNetAPI::DoPulse()
381381 }
382382
383383 // Time to freeze because of lack of return sync?
384+ // Only treat missing return-sync as network trouble while the local player is alive.
385+ // During expected dead/spectate periods (e.g. race map voting), return-sync can pause
386+ // by design and would otherwise show a misleading "NETWORK TROUBLE" warning.
384387 if (!g_pClientGame->IsDownloadingBigPacket () && (m_bStoredReturnSync) && (m_ulLastPuresyncTime != 0 ) && (m_ulLastSyncReturnTime != 0 ) &&
385- (ulCurrentTime <= m_ulLastPuresyncTime + 5000 ) && (ulCurrentTime >= m_ulLastSyncReturnTime + 10000 ) &&
386- (!g_pClientGame->GetLocalPlayer ()->m_bIsGettingIntoVehicle ) && (!m_bIncreaseTimeoutTime))
388+ (ulCurrentTime <= m_ulLastPuresyncTime + 5000 ) && (ulCurrentTime >= m_ulLastSyncReturnTime + 10000 ) && !pPlayer-> IsDead () &&
389+ !pPlayer-> IsDying () && (!g_pClientGame->GetLocalPlayer ()->m_bIsGettingIntoVehicle ) && (!m_bIncreaseTimeoutTime))
387390 {
388391 // No vehicle or vehicle in seat 0?
389392 if (!pVehicle || pPlayer->GetOccupiedVehicleSeat () == 0 )
You can’t perform that action at this time.
0 commit comments