summaryrefslogtreecommitdiff
path: root/game/client/dod/dod_hud_playerstatus_ammo.h
diff options
context:
space:
mode:
Diffstat (limited to 'game/client/dod/dod_hud_playerstatus_ammo.h')
-rw-r--r--game/client/dod/dod_hud_playerstatus_ammo.h79
1 files changed, 79 insertions, 0 deletions
diff --git a/game/client/dod/dod_hud_playerstatus_ammo.h b/game/client/dod/dod_hud_playerstatus_ammo.h
new file mode 100644
index 0000000..2a3f437
--- /dev/null
+++ b/game/client/dod/dod_hud_playerstatus_ammo.h
@@ -0,0 +1,79 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//=============================================================================//
+
+#ifndef DOD_HUD_PLAYERSTATUS_AMMO_H
+#define DOD_HUD_PLAYERSTATUS_AMMO_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+//-----------------------------------------------------------------------------
+// Purpose: Displays current ammunition level
+//-----------------------------------------------------------------------------
+class CDoDHudAmmo : public vgui::Panel
+{
+ DECLARE_CLASS_SIMPLE( CDoDHudAmmo, vgui::Panel );
+
+public:
+ CDoDHudAmmo( vgui::Panel *parent, const char *name );
+ void Init( void );
+
+ void SetAmmo( int ammo, bool playAnimation );
+ void SetAmmo2( int ammo2, bool playAnimation );
+
+ virtual void OnThink();
+ virtual void Paint( void );
+ virtual void ApplySchemeSettings( vgui::IScheme *pScheme );
+
+private:
+ void DrawAmmoCount( int count );
+ void DrawText( char *text, int x, int y, Color clrText );
+ void DrawNumbers( int num, int x, int y );
+
+ void PaintGrenadeAmmo( CWeaponDODBase *pWpn );
+ void PaintBazookaAmmo( CWeaponDODBase *pWpn );
+ void PaintMGAmmo( CWeaponDODBase *pWpn );
+ void PaintGunAmmo( CWeaponDODBase *pWpn );
+ void PaintRifleGrenadeAmmo( CWeaponDODBase *pWpn );
+
+ CHandle< C_BaseCombatWeapon > m_hCurrentActiveWeapon;
+ int m_iAmmo;
+ int m_iAmmo2;
+
+ bool m_bUsesClips;
+
+ int m_iAdditiveWhiteID;
+
+ Color m_clrTextColor;
+ Color m_clrTextXColor;
+
+ CPanelAnimationVarAliasType( float, clip_count_text_xpos, "clip_count_text_xpos", "54", "proportional_float" );
+ CPanelAnimationVarAliasType( float, clip_count_text_ypos, "clip_count_text_ypos", "16", "proportional_float" );
+
+ CPanelAnimationVarAliasType( float, large_icon_xpos, "large_icon_xpos", "0", "proportional_float" );
+ CPanelAnimationVarAliasType( float, large_icon_ypos, "large_icon_ypos", "0", "proportional_float" );
+ CPanelAnimationVarAliasType( float, large_icon_width, "large_icon_width", "32", "proportional_float" );
+ CPanelAnimationVarAliasType( float, large_icon_height, "large_icon_height", "51", "proportional_float" );
+
+ CPanelAnimationVarAliasType( float, small_icon_xpos, "small_icon_xpos", "0", "proportional_float" );
+ CPanelAnimationVarAliasType( float, small_icon_ypos, "small_icon_ypos", "0", "proportional_float" );
+ CPanelAnimationVarAliasType( float, small_icon_width, "small_icon_width", "2", "proportional_float" );
+ CPanelAnimationVarAliasType( float, small_icon_height, "small_icon_height", "2", "proportional_float" );
+
+ CPanelAnimationVarAliasType( float, extra_clip_xpos, "extra_clip_xpos", "35", "proportional_float" );
+ CPanelAnimationVarAliasType( float, extra_clip_ypos, "extra_clip_ypos", "20", "proportional_float" );
+ CPanelAnimationVarAliasType( float, extra_clip_width, "extra_clip_width", "16", "proportional_float" );
+ CPanelAnimationVarAliasType( float, extra_clip_height, "extra_clip_height", "16", "proportional_float" );
+
+ CPanelAnimationVar( vgui::HFont, m_hNumberFont, "NumberFont", "HudSelectionNumbers" );
+
+ Color m_clrIcon;
+
+ CHudTexture *m_pMGNumbers[10];
+};
+
+#endif // DOD_HUD_PLAYERSTATUS_AMMO_H