diff options
Diffstat (limited to 'game/client/tf/c_tf_team.h')
| -rw-r--r-- | game/client/tf/c_tf_team.h | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/game/client/tf/c_tf_team.h b/game/client/tf/c_tf_team.h new file mode 100644 index 0000000..75c2d63 --- /dev/null +++ b/game/client/tf/c_tf_team.h @@ -0,0 +1,68 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: Client side CTFTeam class +// +// $NoKeywords: $ +//============================================================================= + +#ifndef C_TF_TEAM_H +#define C_TF_TEAM_H +#ifdef _WIN32 +#pragma once +#endif + +#include "c_team.h" +#include "shareddefs.h" +#include "c_baseobject.h" + +class C_BaseEntity; +class C_BaseObject; +class CBaseTechnology; +class C_TFPlayer; + +//----------------------------------------------------------------------------- +// Purpose: TF's Team manager +//----------------------------------------------------------------------------- +class C_TFTeam : public C_Team +{ + DECLARE_CLASS( C_TFTeam, C_Team ); + DECLARE_CLIENTCLASS(); + +public: + + C_TFTeam(); + virtual ~C_TFTeam(); + + int GetFlagCaptures( void ) { return m_nFlagCaptures; } + int GetRole( void ) { return m_iRole; } + char *Get_Name( void ); + + int GetNumObjects( int iObjectType = -1 ); + CBaseObject *GetObject( int num ); + + CUtlVector< CHandle<C_BaseObject> > m_aObjects; + + C_BasePlayer *GetTeamLeader( void ); + void UpdateTeamName( void ); + const wchar_t *Get_Localized_Name( void ){ return m_wzTeamname; }; + + virtual void OnDataChanged( DataUpdateType_t updateType ) OVERRIDE; + + bool IsUsingCustomTeamName( void ) { return m_bUsingCustomTeamName; } + + // IClientThinkable override + virtual void ClientThink(); + +private: + + int m_nFlagCaptures; + int m_iRole; + + CNetworkHandle( C_BasePlayer, m_hLeader ); + wchar_t m_wzTeamname[ MAX_TEAM_NAME_LENGTH ]; + bool m_bUsingCustomTeamName; +}; + +C_TFTeam *GetGlobalTFTeam( int iTeamNumber ); + +#endif // C_TF_TEAM_H |