diff options
Diffstat (limited to 'game/client/tf/c_tf_objective_resource.h')
| -rw-r--r-- | game/client/tf/c_tf_objective_resource.h | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/game/client/tf/c_tf_objective_resource.h b/game/client/tf/c_tf_objective_resource.h new file mode 100644 index 0000000..9c53497 --- /dev/null +++ b/game/client/tf/c_tf_objective_resource.h @@ -0,0 +1,87 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: Entity that propagates general data needed by clients for every player. +// +// $NoKeywords: $ +//=============================================================================// + +#ifndef C_TF_OBJECTIVE_RESOURCE_H +#define C_TF_OBJECTIVE_RESOURCE_H +#ifdef _WIN32 +#pragma once +#endif + +#include "tf_shareddefs.h" +#include "const.h" +#include "c_baseentity.h" +#include <igameresources.h> +#include "c_team_objectiveresource.h" + +class C_TFObjectiveResource : public C_BaseTeamObjectiveResource +{ + DECLARE_CLASS( C_TFObjectiveResource, C_BaseTeamObjectiveResource ); +public: + DECLARE_CLIENTCLASS(); + + C_TFObjectiveResource(); + virtual ~C_TFObjectiveResource(); + + const char *GetGameSpecificCPCappingSwipe( int index, int iCappingTeam ); + const char *GetGameSpecificCPBarFG( int index, int iOwningTeam ); + const char *GetGameSpecificCPBarBG( int index, int iCappingTeam ); + void SetCappingTeam( int index, int team ); + + int GetMannVsMachineMaxWaveCount( void ) { return m_nMannVsMachineMaxWaveCount; } + int GetMannVsMachineWaveCount( void ) { return m_nMannVsMachineWaveCount; } + int GetMannVsMachineWaveEnemyCount( void ) { return m_nMannVsMachineWaveEnemyCount; } + int GetMvMInWorldMoney( void ) { return m_nMvMWorldMoney; } + + float GetMannVsMachineNextWaveTime( void ) { return m_flMannVsMachineNextWaveTime; } + bool GetMannVsMachineIsBetweenWaves( void ) { return m_bMannVsMachineBetweenWaves; } + + int GetMannVsMachineWaveClassCount( int nIndex ); + const char *GetMannVsMachineWaveClassName( int nIndex ); + unsigned int GetMannVsMachineWaveClassFlags( int nIndex ); + bool GetMannVsMachineWaveClassActive( int nIndex ); + + int GetFlagCarrierUpgradeLevel( void ) { return m_nFlagCarrierUpgradeLevel; } + float GetBaseMvMBombUpgradeTime( void ) { return m_flMvMBaseBombUpgradeTime; } + float GetNextMvMBombUpgradeTime( void ) { return m_flMvMNextBombUpgradeTime; } + + int GetMvMChallengeIndex ( void ) { return m_iChallengeIndex; } + char * GetMvMPopFileName ( void ) { return m_iszMvMPopfileName; } + int GetMvMEventPopfileType( void ) { return m_nMvMEventPopfileType; } + +private: + int m_nMannVsMachineMaxWaveCount; + int m_nMannVsMachineWaveCount; + int m_nMannVsMachineWaveEnemyCount; + + int m_nMvMWorldMoney; + + float m_flMannVsMachineNextWaveTime; + bool m_bMannVsMachineBetweenWaves; + + int m_nFlagCarrierUpgradeLevel; + float m_flMvMBaseBombUpgradeTime; + float m_flMvMNextBombUpgradeTime; + int m_nMvMEventPopfileType; + + int m_nMannVsMachineWaveClassCounts[ MVM_CLASS_TYPES_PER_WAVE_MAX ]; + int m_nMannVsMachineWaveClassCounts2[ MVM_CLASS_TYPES_PER_WAVE_MAX ]; + char m_iszMannVsMachineWaveClassNames[ MVM_CLASS_TYPES_PER_WAVE_MAX ][ 64 ]; + char m_iszMannVsMachineWaveClassNames2[ MVM_CLASS_TYPES_PER_WAVE_MAX ][ 64 ]; + int m_iChallengeIndex; + char m_iszMvMPopfileName[ MAX_PATH ]; + unsigned int m_nMannVsMachineWaveClassFlags[ MVM_CLASS_TYPES_PER_WAVE_MAX ]; + unsigned int m_nMannVsMachineWaveClassFlags2[ MVM_CLASS_TYPES_PER_WAVE_MAX ]; + bool m_bMannVsMachineWaveClassActive[ MVM_CLASS_TYPES_PER_WAVE_MAX ]; + bool m_bMannVsMachineWaveClassActive2[ MVM_CLASS_TYPES_PER_WAVE_MAX ]; +}; + +inline C_TFObjectiveResource *TFObjectiveResource() +{ + return static_cast<C_TFObjectiveResource*>(g_pObjectiveResource); +} + +#endif // C_TF_OBJECTIVE_RESOURCE_H |