diff options
| author | oy <Tom_Adams@web.de> | 2011-07-05 22:58:54 +0200 |
|---|---|---|
| committer | oy <Tom_Adams@web.de> | 2011-07-05 22:58:54 +0200 |
| commit | ab1f7d6f95346c7bf86dfbdfa015c7e850097918 (patch) | |
| tree | 3e942e07ef88ce211baa0458198cc83a59e02e36 /src/game/server | |
| parent | 1ae474689d564e1feba9924842f05e06600d83a1 (diff) | |
| download | zcatch-ab1f7d6f95346c7bf86dfbdfa015c7e850097918.tar.gz zcatch-ab1f7d6f95346c7bf86dfbdfa015c7e850097918.zip | |
clamped information flow when moving as spectator in free-view. Closes #551
Diffstat (limited to 'src/game/server')
| -rw-r--r-- | src/game/server/player.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/game/server/player.cpp b/src/game/server/player.cpp index 1f822524..3e4d7be5 100644 --- a/src/game/server/player.cpp +++ b/src/game/server/player.cpp @@ -60,6 +60,9 @@ void CPlayer::Tick() } } + if(!m_pCharacter && m_Team == TEAM_SPECTATORS && m_SpectatorID == SPEC_FREEVIEW) + m_ViewPos -= vec2(clamp(m_ViewPos.x-m_LatestActivity.m_TargetX, -5000.0f, 500.0f), clamp(m_ViewPos.y-m_LatestActivity.m_TargetY, -400.0f, 400.0f)); + if(!m_pCharacter && m_DieTick+Server()->TickSpeed()*3 <= Server()->Tick()) m_Spawning = true; @@ -193,9 +196,6 @@ void CPlayer::OnDirectInput(CNetObj_PlayerInput *NewInput) if(!m_pCharacter && m_Team != TEAM_SPECTATORS && (NewInput->m_Fire&1)) m_Spawning = true; - if(!m_pCharacter && m_Team == TEAM_SPECTATORS && m_SpectatorID == SPEC_FREEVIEW) - m_ViewPos = vec2(NewInput->m_TargetX, NewInput->m_TargetY); - // check for activity if(NewInput->m_Direction || m_LatestActivity.m_TargetX != NewInput->m_TargetX || m_LatestActivity.m_TargetY != NewInput->m_TargetY || NewInput->m_Jump || |