diff --git a/src/game/server/gamecontext.cpp b/src/game/server/gamecontext.cpp index 5c9cd47c6..ab32d5fcd 100644 --- a/src/game/server/gamecontext.cpp +++ b/src/game/server/gamecontext.cpp @@ -1836,7 +1836,16 @@ void CGameContext::OnMessage(int MsgID, CUnpacker *pUnpacker, int ClientID) Score()->PlayerData(ClientID)->Reset(); Score()->LoadScore(ClientID); Score()->PlayerData(ClientID)->m_CurrentTime = Score()->PlayerData(ClientID)->m_BestTime; - m_apPlayers[ClientID]->m_Score = (Score()->PlayerData(ClientID)->m_BestTime)?Score()->PlayerData(ClientID)->m_BestTime:-9999; + + // -9999 stands for no time and isn't displayed in scoreboard, so + // shift the time by a second if the player actually took 9999 + // seconds to finish the map. + if(!Score()->PlayerData(ClientID)->m_BestTime) + m_apPlayers[ClientID]->m_Score = -9999; + else if((int)Score()->PlayerData(ClientID)->m_BestTime == -9999) + m_apPlayers[ClientID]->m_Score = -10000; + else + m_apPlayers[ClientID]->m_Score = Score()->PlayerData(ClientID)->m_BestTime; } Server()->SetClientClan(ClientID, pMsg->m_pClan); Server()->SetClientCountry(ClientID, pMsg->m_Country);