Skip to content

Commit 5d1f8d6

Browse files
authored
Update map best time if a player joins with a better time (ddnet#11674)
2 parents 0ec204b + 6b3c2f1 commit 5d1f8d6

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

src/game/server/player.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -969,6 +969,12 @@ void CPlayer::ProcessScoreResult(CScorePlayerResult &Result)
969969
{
970970
GameServer()->Score()->PlayerData(m_ClientId)->Set(Result.m_Data.m_Info.m_Time.value(), Result.m_Data.m_Info.m_aTimeCp);
971971
Server()->SetClientScore(m_ClientId, Result.m_Data.m_Info.m_Time.value());
972+
// update map best time if player's time is better
973+
if(!GameServer()->m_pController->m_CurrentRecord.has_value() ||
974+
Result.m_Data.m_Info.m_Time.value() < GameServer()->m_pController->m_CurrentRecord.value())
975+
{
976+
GameServer()->Score()->LoadBestTime();
977+
}
972978
}
973979
Server()->ExpireServerInfo();
974980
int Birthday = Result.m_Data.m_Info.m_Birthday;

src/game/server/teams.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -829,7 +829,7 @@ void CGameTeams::OnFinish(CPlayer *pPlayer, int TimeTicks, const char *pTimestam
829829

830830
bool NeedToSendNewServerRecord = false;
831831
// update server best time
832-
if(GameServer()->m_pController->m_CurrentRecord == 0)
832+
if(!GameServer()->m_pController->m_CurrentRecord.has_value())
833833
{
834834
GameServer()->Score()->LoadBestTime();
835835
}

0 commit comments

Comments
 (0)