aboutsummaryrefslogtreecommitdiff
path: root/mp/src/game/server/player.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'mp/src/game/server/player.cpp')
-rw-r--r--mp/src/game/server/player.cpp33
1 files changed, 29 insertions, 4 deletions
diff --git a/mp/src/game/server/player.cpp b/mp/src/game/server/player.cpp
index 0538f90a..a44ee551 100644
--- a/mp/src/game/server/player.cpp
+++ b/mp/src/game/server/player.cpp
@@ -635,6 +635,8 @@ CBasePlayer::CBasePlayer( )
m_flLastUserCommandTime = 0.f;
m_flMovementTimeForUserCmdProcessingRemaining = 0.0f;
+
+ m_flLastObjectiveTime = -1.f;
}
CBasePlayer::~CBasePlayer( )
@@ -2473,6 +2475,7 @@ void CBasePlayer::ValidateCurrentObserverTarget( void )
}
else
{
+#if !defined( TF_DLL )
// couldn't find new target, switch to temporary mode
if ( mp_forcecamera.GetInt() == OBS_ALLOW_ALL )
{
@@ -2480,10 +2483,11 @@ void CBasePlayer::ValidateCurrentObserverTarget( void )
ForceObserverMode( OBS_MODE_ROAMING );
}
else
+#endif
{
// fix player view right where it is
ForceObserverMode( OBS_MODE_FIXED );
- m_hObserverTarget.Set( NULL ); // no traget to follow
+ m_hObserverTarget.Set( NULL ); // no target to follow
}
}
}
@@ -7379,7 +7383,7 @@ void CBasePlayer::EquipWearable( CEconWearable *pItem )
pItem->Equip( this );
}
-#ifdef DEBUG
+#ifdef DBGFLAG_ASSERT
// Double check list integrity.
for ( int i = m_hMyWearables.Count()-1; i >= 0; --i )
{
@@ -7418,7 +7422,7 @@ void CBasePlayer::RemoveWearable( CEconWearable *pItem )
}
}
-#ifdef DEBUG
+#ifdef DBGFLAG_ASSERT
// Double check list integrity.
for ( int i = m_hMyWearables.Count()-1; i >= 0; --i )
{
@@ -8853,6 +8857,8 @@ void CBasePlayer::SetPlayerName( const char *name )
Assert( strlen(name) > 0 );
Q_strncpy( m_szNetname, name, sizeof(m_szNetname) );
+ // Be extra thorough
+ Q_RemoveAllEvilCharacters( m_szNetname );
}
}
@@ -8947,8 +8953,27 @@ void CBasePlayer::HandleAnimEvent( animevent_t *pEvent )
BaseClass::HandleAnimEvent( pEvent );
}
+
+//-----------------------------------------------------------------------------
+// Purpose:
+//-----------------------------------------------------------------------------
+bool CBasePlayer::ShouldAnnounceAchievement( void )
+{
+ m_flAchievementTimes.AddToTail( gpGlobals->curtime );
+ if ( m_flAchievementTimes.Count() > 3 )
+ {
+ m_flAchievementTimes.Remove( 0 );
+ if ( m_flAchievementTimes.Tail() - m_flAchievementTimes.Head() <= 60.0 )
+ {
+ return false;
+ }
+ }
+
+ return true;
+}
+
//-----------------------------------------------------------------------------
-// CPlayerInfo functions (simple passthroughts to get around the CBasePlayer multiple inheritence limitation)
+// CPlayerInfo functions (simple pass-through to get around the CBasePlayer multiple inheritance limitation)
//-----------------------------------------------------------------------------
const char *CPlayerInfo::GetName()
{