diff options
| author | oy <Tom_Adams@web.de> | 2011-03-01 18:31:20 +0100 |
|---|---|---|
| committer | oy <Tom_Adams@web.de> | 2011-03-01 18:31:20 +0100 |
| commit | 4bede550be18cfc9bb4df669c147032917160066 (patch) | |
| tree | 56652609b0a47df5e1cf27abbbaf8a3d5cf9756d /src/game/server/player.cpp | |
| parent | 0bc13c91ebcc6404fc67e079e5a9acad10176c98 (diff) | |
| download | zcatch-4bede550be18cfc9bb4df669c147032917160066.tar.gz zcatch-4bede550be18cfc9bb4df669c147032917160066.zip | |
only update the ping if the scoreboard is active. Closes #27
Diffstat (limited to 'src/game/server/player.cpp')
| -rw-r--r-- | src/game/server/player.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/game/server/player.cpp b/src/game/server/player.cpp index 32eec986..573d996d 100644 --- a/src/game/server/player.cpp +++ b/src/game/server/player.cpp @@ -99,8 +99,13 @@ void CPlayer::Snap(int SnappingClient) if(!pPlayerInfo) return; - pPlayerInfo->m_Latency = m_Latency.m_Min; - pPlayerInfo->m_LatencyFlux = m_Latency.m_Max-m_Latency.m_Min; + // update latency value + if(SnappingClient != -1 && m_Team != -1 && GameServer()->m_apPlayers[SnappingClient]->m_PlayerFlags&PLAYERFLAG_SCOREBOARD) + { + GameServer()->m_apPlayers[SnappingClient]->m_aActLatency[m_ClientID] = m_Latency.m_Min; + } + + pPlayerInfo->m_Latency = SnappingClient == -1 ? m_Latency.m_Min : GameServer()->m_apPlayers[SnappingClient]->m_aActLatency[m_ClientID]; pPlayerInfo->m_Local = 0; pPlayerInfo->m_ClientID = m_ClientID; pPlayerInfo->m_Score = m_Score; @@ -133,6 +138,8 @@ void CPlayer::OnPredictedInput(CNetObj_PlayerInput *NewInput) void CPlayer::OnDirectInput(CNetObj_PlayerInput *NewInput) { + m_PlayerFlags = NewInput->m_PlayerFlags; + if(Character) Character->OnDirectInput(NewInput); |