aboutsummaryrefslogtreecommitdiff
path: root/mp/src/game/server/player.cpp
diff options
context:
space:
mode:
authorMichael Sartain <[email protected]>2014-10-02 08:25:55 -0700
committerMichael Sartain <[email protected]>2014-10-02 08:25:55 -0700
commit55ed12f8d1eb6887d348be03aee5573d44177ffb (patch)
tree3686f7ca78c780cd9a3d367b79a9d9250c1be7c0 /mp/src/game/server/player.cpp
parent* Added support for Visual C++ 2013 Express to VPC (diff)
downloadsource-sdk-2013-55ed12f8d1eb6887d348be03aee5573d44177ffb.tar.xz
source-sdk-2013-55ed12f8d1eb6887d348be03aee5573d44177ffb.zip
Updated the SDK with the latest code from the TF and HL2 branches.
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()
{