You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.5 KiB
62 lines
1.5 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: Client side CTFTeam class |
|
// |
|
// $NoKeywords: $ |
|
//=============================================================================// |
|
|
|
#ifndef C_TFTEAM_H |
|
#define C_TFTEAM_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#include "c_team.h" |
|
#include "shareddefs.h" |
|
#include "techtree.h" |
|
#include "imessagechars.h" |
|
|
|
class C_BaseEntity; |
|
class C_BaseObject; |
|
class CBaseTechnology; |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: TF's Team manager |
|
//----------------------------------------------------------------------------- |
|
class C_TFTeam : public C_Team |
|
{ |
|
DECLARE_CLASS( C_TFTeam, C_Team ); |
|
public: |
|
DECLARE_CLIENTCLASS(); |
|
|
|
C_TFTeam(); |
|
virtual ~C_TFTeam(); |
|
|
|
// Data Access |
|
virtual float GetTeamResources( void ); |
|
virtual float GetPotentialTeamResources( void ); |
|
virtual bool GetHaveZone( void ); |
|
|
|
// Objects, note GetObject can return NULL! |
|
int GetNumObjects( int iObjectType = -1 ); |
|
C_BaseObject *GetObject( int iIndex ); |
|
bool IsObjectValid( int iIndex ); |
|
|
|
void NotifyBaseUnderAttack( const Vector &vecPosition, bool bPlaySound = true, bool bForce = false ); |
|
|
|
virtual void ReceiveMessage( int classID, bf_read &msg ); |
|
|
|
public: |
|
// Resource UI data |
|
bool m_bHaveZone; |
|
|
|
float m_fResources; // Current amounts of resources |
|
float m_fPotentialResources; // Potential amounts of each resource when all harvesters have returned |
|
|
|
float m_LastAttackNotificationTime; |
|
|
|
CUtlVector< EHANDLE > m_aObjects; |
|
}; |
|
|
|
|
|
#endif // C_TFTEAM_H
|
|
|