summaryrefslogtreecommitdiff
path: root/game/client/tf/tf_hud_menu_engy_destroy.h
diff options
context:
space:
mode:
Diffstat (limited to 'game/client/tf/tf_hud_menu_engy_destroy.h')
-rw-r--r--game/client/tf/tf_hud_menu_engy_destroy.h78
1 files changed, 78 insertions, 0 deletions
diff --git a/game/client/tf/tf_hud_menu_engy_destroy.h b/game/client/tf/tf_hud_menu_engy_destroy.h
new file mode 100644
index 0000000..bd160c1
--- /dev/null
+++ b/game/client/tf/tf_hud_menu_engy_destroy.h
@@ -0,0 +1,78 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//=============================================================================//
+
+#ifndef TF_HUD_MENU_ENGY_DESTROY_H
+#define TF_HUD_MENU_ENGY_DESTROY_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include <vgui_controls/EditablePanel.h>
+#include <vgui_controls/Label.h>
+#include "tf_hud_menu_engy_build.h"
+#include "tf_hud_base_build_menu.h"
+
+using namespace vgui;
+
+#define ALL_BUILDINGS -1
+#define NUM_ENGY_BUILDINGS 4
+
+enum destroymenulayouts_t
+{
+ DESTROYMENU_DEFAULT = 0,
+ DESTROYMENU_PIPBOY,
+};
+
+class CEngyDestroyMenuItem : public EditablePanel
+{
+ DECLARE_CLASS_SIMPLE( CEngyDestroyMenuItem, EditablePanel );
+
+public:
+
+ CEngyDestroyMenuItem( Panel *parent, const char *panelName ) : EditablePanel(parent, panelName)
+ {
+ }
+
+private:
+};
+
+class CHudMenuEngyDestroy : public CHudBaseBuildMenu
+{
+ DECLARE_CLASS_SIMPLE( CHudMenuEngyDestroy, EditablePanel );
+
+public:
+ CHudMenuEngyDestroy( const char *pElementName );
+
+ virtual void LevelInit( void );
+ virtual void ApplySchemeSettings( IScheme *scheme );
+
+ virtual void SetVisible( bool state );
+
+ int HudElementKeyInput( int down, ButtonCode_t keynum, const char *pszCurrentBinding );
+
+ virtual void OnTick( void );
+
+ void ErrorSound( void );
+
+ virtual int GetRenderGroupPriority() { return 50; }
+
+ int CalcCustomDestroyMenuLayout( void );
+
+private:
+
+ void InitBuildings();
+
+ CEngyDestroyMenuItem *m_pActiveItems[NUM_ENGY_BUILDINGS];
+ CEngyDestroyMenuItem *m_pInactiveItems[NUM_ENGY_BUILDINGS];
+ CEngyDestroyMenuItem *m_pUnavailableItems[NUM_ENGY_BUILDINGS];
+
+ destroymenulayouts_t m_iCurrentDestroyMenuLayout;
+
+ EngyConstructBuilding_t m_Buildings[NUM_ENGY_BUILDINGS];
+};
+
+#endif // TF_HUD_MENU_ENGY_DESTROY_H \ No newline at end of file