summaryrefslogtreecommitdiff
path: root/game/shared/dod/weapon_amerknife.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'game/shared/dod/weapon_amerknife.cpp')
-rw-r--r--game/shared/dod/weapon_amerknife.cpp77
1 files changed, 77 insertions, 0 deletions
diff --git a/game/shared/dod/weapon_amerknife.cpp b/game/shared/dod/weapon_amerknife.cpp
new file mode 100644
index 0000000..685487d
--- /dev/null
+++ b/game/shared/dod/weapon_amerknife.cpp
@@ -0,0 +1,77 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+//=============================================================================//
+
+#include "cbase.h"
+#include "weapon_dodbasemelee.h"
+#include "dod_shareddefs.h"
+
+#if defined( CLIENT_DLL )
+
+ #define CWeaponAmerKnife C_WeaponAmerKnife
+
+#endif
+
+
+class CWeaponAmerKnife : public CWeaponDODBaseMelee
+{
+public:
+ DECLARE_CLASS( CWeaponAmerKnife, CWeaponDODBaseMelee );
+ DECLARE_NETWORKCLASS();
+ DECLARE_PREDICTABLE();
+ DECLARE_ACTTABLE();
+
+ CWeaponAmerKnife() {}
+
+ virtual Activity GetMeleeActivity( void ) { return ACT_VM_PRIMARYATTACK; }
+
+ virtual DODWeaponID GetWeaponID( void ) const { return WEAPON_AMERKNIFE; }
+
+ virtual void PrimaryAttack()
+ {
+ MeleeAttack( 60, MELEE_DMG_FIST, 0.2f, 0.4f );
+ }
+
+private:
+ CWeaponAmerKnife( const CWeaponAmerKnife & );
+};
+
+IMPLEMENT_NETWORKCLASS_ALIASED( WeaponAmerKnife, DT_WeaponAmerKnife )
+
+BEGIN_NETWORK_TABLE( CWeaponAmerKnife, DT_WeaponAmerKnife )
+END_NETWORK_TABLE()
+
+BEGIN_PREDICTION_DATA( CWeaponAmerKnife )
+END_PREDICTION_DATA()
+
+LINK_ENTITY_TO_CLASS( weapon_amerknife, CWeaponAmerKnife );
+PRECACHE_WEAPON_REGISTER( weapon_amerknife );
+
+acttable_t CWeaponAmerKnife::m_acttable[] =
+{
+ { ACT_DOD_STAND_AIM, ACT_DOD_STAND_AIM_KNIFE, false },
+ { ACT_DOD_CROUCH_AIM, ACT_DOD_CROUCH_AIM_KNIFE, false },
+ { ACT_DOD_CROUCHWALK_AIM, ACT_DOD_CROUCHWALK_AIM_KNIFE, false },
+ { ACT_DOD_WALK_AIM, ACT_DOD_WALK_AIM_KNIFE, false },
+ { ACT_DOD_RUN_AIM, ACT_DOD_RUN_AIM_KNIFE, false },
+ { ACT_PRONE_IDLE, ACT_DOD_PRONE_AIM_KNIFE, false },
+ { ACT_PRONE_FORWARD, ACT_DOD_PRONEWALK_AIM_KNIFE, false },
+ { ACT_DOD_STAND_IDLE, ACT_DOD_STAND_AIM_KNIFE, false },
+ { ACT_DOD_CROUCH_IDLE, ACT_DOD_CROUCH_AIM_KNIFE, false },
+ { ACT_DOD_CROUCHWALK_IDLE, ACT_DOD_CROUCHWALK_AIM_KNIFE, false },
+ { ACT_DOD_WALK_IDLE, ACT_DOD_WALK_AIM_KNIFE, false },
+ { ACT_DOD_RUN_IDLE, ACT_DOD_RUN_AIM_KNIFE, false },
+ { ACT_SPRINT, ACT_DOD_SPRINT_AIM_KNIFE, false },
+
+ { ACT_RANGE_ATTACK2, ACT_DOD_PRIMARYATTACK_KNIFE, false },
+ { ACT_DOD_SECONDARYATTACK_CROUCH, ACT_DOD_PRIMARYATTACK_CROUCH_KNIFE, false },
+ { ACT_DOD_SECONDARYATTACK_PRONE, ACT_DOD_PRIMARYATTACK_PRONE_KNIFE, false },
+
+ // Hand Signals
+ { ACT_DOD_HS_IDLE, ACT_DOD_HS_IDLE_KNIFE, false },
+ { ACT_DOD_HS_CROUCH, ACT_DOD_HS_CROUCH_KNIFE, false },
+};
+
+IMPLEMENT_ACTTABLE( CWeaponAmerKnife );