diff options
Diffstat (limited to 'game/client/dod/c_dod_team.h')
| -rw-r--r-- | game/client/dod/c_dod_team.h | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/game/client/dod/c_dod_team.h b/game/client/dod/c_dod_team.h new file mode 100644 index 0000000..8ef182a --- /dev/null +++ b/game/client/dod/c_dod_team.h @@ -0,0 +1,70 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: Client side CTFTeam class +// +// $NoKeywords: $ +//=============================================================================// + +#ifndef C_DOD_TEAM_H +#define C_DOD_TEAM_H +#ifdef _WIN32 +#pragma once +#endif + +#include "c_team.h" +#include "shareddefs.h" +#include "dod_playerclass_info_parse.h" +#include "dod_shareddefs.h" + +class C_BaseEntity; +class C_BaseObject; +class CBaseTechnology; + +//----------------------------------------------------------------------------- +// Purpose: TF's Team manager +//----------------------------------------------------------------------------- +class C_DODTeam : public C_Team +{ + DECLARE_CLASS( C_DODTeam, C_Team ); +public: + DECLARE_CLIENTCLASS(); + + C_DODTeam(); + virtual ~C_DODTeam(); + + CDODPlayerClassInfo const &GetPlayerClassInfo( int iPlayerClass ) const; + const unsigned char *GetEncryptionKey( void ) { return g_pGameRules->GetEncryptionKey(); } + + virtual void AddPlayerClass( const char *pszClassName ); + + bool IsClassOnTeam( const char *pszClassName, int &iClassNum ) const; + bool IsClassOnTeam( int iClassNum ) const; + int GetNumPlayerClasses( void ) { return m_hPlayerClassInfoHandles.Count(); } + + int CountPlayersOfThisClass( int iPlayerClass ); + +private: + CUtlVector < PLAYERCLASS_FILE_INFO_HANDLE > m_hPlayerClassInfoHandles; +}; + +class C_DODTeam_Allies : public C_DODTeam +{ + DECLARE_CLASS( C_DODTeam_Allies, C_DODTeam ); +public: + DECLARE_CLIENTCLASS(); + + C_DODTeam_Allies(); + virtual ~C_DODTeam_Allies() {} +}; + +class C_DODTeam_Axis : public C_DODTeam +{ + DECLARE_CLASS( C_DODTeam_Axis, C_DODTeam ); +public: + DECLARE_CLIENTCLASS(); + + C_DODTeam_Axis(); + virtual ~C_DODTeam_Axis() {} +}; + +#endif // C_DOD_TEAM_H |