summaryrefslogtreecommitdiff
path: root/game/client/tf2/c_weapon_builder.h
diff options
context:
space:
mode:
Diffstat (limited to 'game/client/tf2/c_weapon_builder.h')
-rw-r--r--game/client/tf2/c_weapon_builder.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/game/client/tf2/c_weapon_builder.h b/game/client/tf2/c_weapon_builder.h
new file mode 100644
index 0000000..127e2b2
--- /dev/null
+++ b/game/client/tf2/c_weapon_builder.h
@@ -0,0 +1,63 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//=============================================================================//
+
+#ifndef C_WEAPON_BUILDER_H
+#define C_WEAPON_BUILDER_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include "c_tf_basecombatweapon.h"
+#include "weapon_combat_usedwithshieldbase.h"
+
+//=============================================================================
+// Purpose: Client version of CWeaponBuiler
+//=============================================================================
+class C_WeaponBuilder : public C_WeaponCombatUsedWithShieldBase
+{
+ DECLARE_CLASS( C_WeaponBuilder, C_WeaponCombatUsedWithShieldBase );
+public:
+ DECLARE_CLIENTCLASS();
+ DECLARE_PREDICTABLE();
+
+ C_WeaponBuilder();
+ ~C_WeaponBuilder();
+
+ virtual void Redraw();
+ virtual bool VisibleInWeaponSelection( void ) { return false; }
+
+ virtual bool IsPlacingObject( void );
+ virtual bool IsBuildingObject( void );
+
+ virtual const char *GetCurrentSelectionObjectName( void );
+
+ C_BaseObject *GetPlacementModel( void ) { return m_hObjectBeingBuilt.Get(); }
+
+public:
+ // Builder Data
+ int m_iBuildState;
+ unsigned int m_iCurrentObject;
+ int m_iCurrentObjectState;
+ float m_flStartTime;
+ float m_flTotalTime;
+ vgui::HFont m_hFont;
+
+ // Our placement model
+ CHandle<C_BaseObject> m_hObjectBeingBuilt;
+
+ // Objects that this builder can build
+ bool m_bObjectValidity[ OBJ_LAST ];
+ // Buildability of each object
+ bool m_bObjectBuildability[ OBJ_LAST ];
+
+ // Materials
+ CMaterialReference m_pIconFireToSelect;
+
+private:
+ C_WeaponBuilder( const C_WeaponBuilder & );
+};
+#endif // C_WEAPON_BUILDER_H