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.
78 lines
2.3 KiB
78 lines
2.3 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
//============================================================================= |
|
|
|
#ifndef TF_PLAYERPANEL_H |
|
#define TF_PLAYERPANEL_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#include "tf_spectatorgui.h" |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: Custom health panel used to show spectator target's health in Tournament HUD |
|
//----------------------------------------------------------------------------- |
|
class CTFPlayerPanelGUIHealth : public CTFSpectatorGUIHealth |
|
{ |
|
public: |
|
CTFPlayerPanelGUIHealth( Panel *parent, const char *name ) : CTFSpectatorGUIHealth( parent, name ) |
|
{ |
|
} |
|
|
|
virtual const char *GetResFilename( void ) |
|
{ |
|
return "resource/UI/SpectatorTournamentGUIHealth.res"; |
|
} |
|
}; |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: A panel representing a player, shown in tournament mode Spec GUI |
|
//----------------------------------------------------------------------------- |
|
class CTFPlayerPanel : public vgui::EditablePanel |
|
{ |
|
DECLARE_CLASS_SIMPLE( CTFPlayerPanel, vgui::EditablePanel ); |
|
public: |
|
CTFPlayerPanel( vgui::Panel *parent, const char *name ); |
|
|
|
virtual void Reset( void ); |
|
virtual void ApplySchemeSettings( vgui::IScheme *pScheme ); |
|
|
|
virtual bool Update( void ); |
|
void SetPlayerIndex( int iIndex ); |
|
int GetPlayerIndex( void ) { return m_iPlayerIndex; } |
|
void Setup( int iPlayerIndex, CSteamID steamID, const char *pszPlayerName, int nLobbyTeam = TEAM_INVALID ); |
|
void SetSpecIndex( int iIndex ); |
|
int GetSpecIndex( void ) { return m_iSpecIndex; } |
|
virtual void UpdateBorder( void ); |
|
int GetTeam( void ); |
|
|
|
inline CSteamID GetSteamID() const { return m_steamID; } |
|
|
|
protected: |
|
int m_iPlayerIndex; |
|
CUtlString m_sPlayerName; |
|
CSteamID m_steamID; |
|
int m_iSpecIndex; |
|
CTFClassImage *m_pClassImage; |
|
CTFPlayerPanelGUIHealth *m_pHealthIcon; |
|
int m_iPrevHealth; |
|
bool m_bPrevAlive; |
|
int m_iPrevClass; |
|
int m_iPrevRespawnWait; |
|
int m_iPrevCharge; |
|
vgui::ScalableImagePanel *m_pReadyBG; |
|
vgui::ImagePanel *m_pReadyImage; |
|
|
|
// Ready state |
|
bool m_bPrevReady; |
|
int m_iPrevState; |
|
bool m_bPlayerReadyModeActive; |
|
int m_nGCTeam; |
|
}; |
|
|
|
|
|
|
|
#endif // TF_PLAYERPANEL_H
|
|
|