Team Fortress 2 Source Code as on 22/4/2020
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.
|
|
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef DOD_HUD_PLAYERSTATUS_HEALTH_H
#define DOD_HUD_PLAYERSTATUS_HEALTH_H
#ifdef _WIN32
#pragma once
#endif
class C_DODPlayer;
//-----------------------------------------------------------------------------
// Purpose: Health playerclass image (with red transparency)
//-----------------------------------------------------------------------------
class CDoDHudHealthBar : public vgui::ImagePanel { DECLARE_CLASS_SIMPLE( CDoDHudHealthBar, vgui::ImagePanel );
public: CDoDHudHealthBar( vgui::Panel *parent, const char *name ); virtual void ApplySchemeSettings( vgui::IScheme *pScheme );
virtual void OnThink(); virtual void Paint( void );
void SetHealthDelegatePlayer( C_DODPlayer *pPlayer ); C_DODPlayer *GetHealthDelegatePlayer( void );
private: float m_flPercentage;
int m_iMaterialIndex; Color m_clrHealthHigh; Color m_clrHealthMed; Color m_clrHealthLow; Color m_clrBackground; Color m_clrBorder;
EHANDLE m_hHealthDelegatePlayer; CPanelAnimationVar( float, m_flFirstWarningLevel, "FirstWarning", "0.50" ); CPanelAnimationVar( float, m_flSecondWarningLevel, "SecondWarning", "0.25" ); };
//-----------------------------------------------------------------------------
// Purpose: Health panel
//-----------------------------------------------------------------------------
class CDoDHudHealth : public vgui::EditablePanel { DECLARE_CLASS_SIMPLE( CDoDHudHealth, vgui::EditablePanel );
public: CDoDHudHealth( vgui::Panel *parent, const char *name );
virtual void OnThink(); virtual void OnScreenSizeChanged(int iOldWide, int iOldTall);
void SetHealthDelegatePlayer( C_DODPlayer *pPlayer ); C_DODPlayer *GetHealthDelegatePlayer( void );
private: int m_nPrevClass; // used to store the player's class so we don't have to keep setting the image
int m_nPrevTeam;
CDoDHudHealthBar *m_pHealthBar;
vgui::ImagePanel *m_pClassImage; // draws the class image and the red "damage taken" part
vgui::ImagePanel *m_pClassImageBG; // draws the class image outline
EHANDLE m_hHealthDelegatePlayer; };
#endif // DOD_HUD_PLAYERSTATUS_HEALTH_H
|