diff options
| author | Jørgen P. Tjernø <[email protected]> | 2013-12-02 19:31:46 -0800 |
|---|---|---|
| committer | Jørgen P. Tjernø <[email protected]> | 2013-12-02 19:46:31 -0800 |
| commit | f56bb35301836e56582a575a75864392a0177875 (patch) | |
| tree | de61ddd39de3e7df52759711950b4c288592f0dc /mp/src/game/server/hl2/weapon_357.cpp | |
| parent | Mark some more files as text. (diff) | |
| download | source-sdk-2013-f56bb35301836e56582a575a75864392a0177875.tar.xz source-sdk-2013-f56bb35301836e56582a575a75864392a0177875.zip | |
Fix line endings. WHAMMY.
Diffstat (limited to 'mp/src/game/server/hl2/weapon_357.cpp')
| -rw-r--r-- | mp/src/game/server/hl2/weapon_357.cpp | 320 |
1 files changed, 160 insertions, 160 deletions
diff --git a/mp/src/game/server/hl2/weapon_357.cpp b/mp/src/game/server/hl2/weapon_357.cpp index 2b1a389b..2b3a3a12 100644 --- a/mp/src/game/server/hl2/weapon_357.cpp +++ b/mp/src/game/server/hl2/weapon_357.cpp @@ -1,160 +1,160 @@ -//========= Copyright Valve Corporation, All rights reserved. ============//
-//
-// Purpose: 357 - hand gun
-//
-// $NoKeywords: $
-//=============================================================================//
-
-#include "cbase.h"
-#include "npcevent.h"
-#include "basehlcombatweapon.h"
-#include "basecombatcharacter.h"
-#include "ai_basenpc.h"
-#include "player.h"
-#include "gamerules.h"
-#include "in_buttons.h"
-#include "soundent.h"
-#include "game.h"
-#include "vstdlib/random.h"
-#include "engine/IEngineSound.h"
-#include "te_effect_dispatch.h"
-#include "gamestats.h"
-
-// memdbgon must be the last include file in a .cpp file!!!
-#include "tier0/memdbgon.h"
-
-//-----------------------------------------------------------------------------
-// CWeapon357
-//-----------------------------------------------------------------------------
-
-class CWeapon357 : public CBaseHLCombatWeapon
-{
- DECLARE_CLASS( CWeapon357, CBaseHLCombatWeapon );
-public:
-
- CWeapon357( void );
-
- void PrimaryAttack( void );
- void Operator_HandleAnimEvent( animevent_t *pEvent, CBaseCombatCharacter *pOperator );
-
- float WeaponAutoAimScale() { return 0.6f; }
-
- DECLARE_SERVERCLASS();
- DECLARE_DATADESC();
-};
-
-LINK_ENTITY_TO_CLASS( weapon_357, CWeapon357 );
-
-PRECACHE_WEAPON_REGISTER( weapon_357 );
-
-IMPLEMENT_SERVERCLASS_ST( CWeapon357, DT_Weapon357 )
-END_SEND_TABLE()
-
-BEGIN_DATADESC( CWeapon357 )
-END_DATADESC()
-
-//-----------------------------------------------------------------------------
-// Purpose: Constructor
-//-----------------------------------------------------------------------------
-CWeapon357::CWeapon357( void )
-{
- m_bReloadsSingly = false;
- m_bFiresUnderwater = false;
-}
-
-//-----------------------------------------------------------------------------
-// Purpose:
-//-----------------------------------------------------------------------------
-void CWeapon357::Operator_HandleAnimEvent( animevent_t *pEvent, CBaseCombatCharacter *pOperator )
-{
- CBasePlayer *pOwner = ToBasePlayer( GetOwner() );
-
- switch( pEvent->event )
- {
- case EVENT_WEAPON_RELOAD:
- {
- CEffectData data;
-
- // Emit six spent shells
- for ( int i = 0; i < 6; i++ )
- {
- data.m_vOrigin = pOwner->WorldSpaceCenter() + RandomVector( -4, 4 );
- data.m_vAngles = QAngle( 90, random->RandomInt( 0, 360 ), 0 );
- data.m_nEntIndex = entindex();
-
- DispatchEffect( "ShellEject", data );
- }
-
- break;
- }
- }
-}
-
-//-----------------------------------------------------------------------------
-// Purpose:
-//-----------------------------------------------------------------------------
-void CWeapon357::PrimaryAttack( void )
-{
- // Only the player fires this way so we can cast
- CBasePlayer *pPlayer = ToBasePlayer( GetOwner() );
-
- if ( !pPlayer )
- {
- return;
- }
-
- if ( m_iClip1 <= 0 )
- {
- if ( !m_bFireOnEmpty )
- {
- Reload();
- }
- else
- {
- WeaponSound( EMPTY );
- m_flNextPrimaryAttack = 0.15;
- }
-
- return;
- }
-
- m_iPrimaryAttacks++;
- gamestats->Event_WeaponFired( pPlayer, true, GetClassname() );
-
- WeaponSound( SINGLE );
- pPlayer->DoMuzzleFlash();
-
- SendWeaponAnim( ACT_VM_PRIMARYATTACK );
- pPlayer->SetAnimation( PLAYER_ATTACK1 );
-
- m_flNextPrimaryAttack = gpGlobals->curtime + 0.75;
- m_flNextSecondaryAttack = gpGlobals->curtime + 0.75;
-
- m_iClip1--;
-
- Vector vecSrc = pPlayer->Weapon_ShootPosition();
- Vector vecAiming = pPlayer->GetAutoaimVector( AUTOAIM_SCALE_DEFAULT );
-
- pPlayer->FireBullets( 1, vecSrc, vecAiming, vec3_origin, MAX_TRACE_LENGTH, m_iPrimaryAmmoType, 0 );
-
- pPlayer->SetMuzzleFlashTime( gpGlobals->curtime + 0.5 );
-
- //Disorient the player
- QAngle angles = pPlayer->GetLocalAngles();
-
- angles.x += random->RandomInt( -1, 1 );
- angles.y += random->RandomInt( -1, 1 );
- angles.z = 0;
-
- pPlayer->SnapEyeAngles( angles );
-
- pPlayer->ViewPunch( QAngle( -8, random->RandomFloat( -2, 2 ), 0 ) );
-
- CSoundEnt::InsertSound( SOUND_COMBAT, GetAbsOrigin(), 600, 0.2, GetOwner() );
-
- if ( !m_iClip1 && pPlayer->GetAmmoCount( m_iPrimaryAmmoType ) <= 0 )
- {
- // HEV suit - indicate out of ammo condition
- pPlayer->SetSuitUpdate( "!HEV_AMO0", FALSE, 0 );
- }
-}
+//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: 357 - hand gun +// +// $NoKeywords: $ +//=============================================================================// + +#include "cbase.h" +#include "npcevent.h" +#include "basehlcombatweapon.h" +#include "basecombatcharacter.h" +#include "ai_basenpc.h" +#include "player.h" +#include "gamerules.h" +#include "in_buttons.h" +#include "soundent.h" +#include "game.h" +#include "vstdlib/random.h" +#include "engine/IEngineSound.h" +#include "te_effect_dispatch.h" +#include "gamestats.h" + +// memdbgon must be the last include file in a .cpp file!!! +#include "tier0/memdbgon.h" + +//----------------------------------------------------------------------------- +// CWeapon357 +//----------------------------------------------------------------------------- + +class CWeapon357 : public CBaseHLCombatWeapon +{ + DECLARE_CLASS( CWeapon357, CBaseHLCombatWeapon ); +public: + + CWeapon357( void ); + + void PrimaryAttack( void ); + void Operator_HandleAnimEvent( animevent_t *pEvent, CBaseCombatCharacter *pOperator ); + + float WeaponAutoAimScale() { return 0.6f; } + + DECLARE_SERVERCLASS(); + DECLARE_DATADESC(); +}; + +LINK_ENTITY_TO_CLASS( weapon_357, CWeapon357 ); + +PRECACHE_WEAPON_REGISTER( weapon_357 ); + +IMPLEMENT_SERVERCLASS_ST( CWeapon357, DT_Weapon357 ) +END_SEND_TABLE() + +BEGIN_DATADESC( CWeapon357 ) +END_DATADESC() + +//----------------------------------------------------------------------------- +// Purpose: Constructor +//----------------------------------------------------------------------------- +CWeapon357::CWeapon357( void ) +{ + m_bReloadsSingly = false; + m_bFiresUnderwater = false; +} + +//----------------------------------------------------------------------------- +// Purpose: +//----------------------------------------------------------------------------- +void CWeapon357::Operator_HandleAnimEvent( animevent_t *pEvent, CBaseCombatCharacter *pOperator ) +{ + CBasePlayer *pOwner = ToBasePlayer( GetOwner() ); + + switch( pEvent->event ) + { + case EVENT_WEAPON_RELOAD: + { + CEffectData data; + + // Emit six spent shells + for ( int i = 0; i < 6; i++ ) + { + data.m_vOrigin = pOwner->WorldSpaceCenter() + RandomVector( -4, 4 ); + data.m_vAngles = QAngle( 90, random->RandomInt( 0, 360 ), 0 ); + data.m_nEntIndex = entindex(); + + DispatchEffect( "ShellEject", data ); + } + + break; + } + } +} + +//----------------------------------------------------------------------------- +// Purpose: +//----------------------------------------------------------------------------- +void CWeapon357::PrimaryAttack( void ) +{ + // Only the player fires this way so we can cast + CBasePlayer *pPlayer = ToBasePlayer( GetOwner() ); + + if ( !pPlayer ) + { + return; + } + + if ( m_iClip1 <= 0 ) + { + if ( !m_bFireOnEmpty ) + { + Reload(); + } + else + { + WeaponSound( EMPTY ); + m_flNextPrimaryAttack = 0.15; + } + + return; + } + + m_iPrimaryAttacks++; + gamestats->Event_WeaponFired( pPlayer, true, GetClassname() ); + + WeaponSound( SINGLE ); + pPlayer->DoMuzzleFlash(); + + SendWeaponAnim( ACT_VM_PRIMARYATTACK ); + pPlayer->SetAnimation( PLAYER_ATTACK1 ); + + m_flNextPrimaryAttack = gpGlobals->curtime + 0.75; + m_flNextSecondaryAttack = gpGlobals->curtime + 0.75; + + m_iClip1--; + + Vector vecSrc = pPlayer->Weapon_ShootPosition(); + Vector vecAiming = pPlayer->GetAutoaimVector( AUTOAIM_SCALE_DEFAULT ); + + pPlayer->FireBullets( 1, vecSrc, vecAiming, vec3_origin, MAX_TRACE_LENGTH, m_iPrimaryAmmoType, 0 ); + + pPlayer->SetMuzzleFlashTime( gpGlobals->curtime + 0.5 ); + + //Disorient the player + QAngle angles = pPlayer->GetLocalAngles(); + + angles.x += random->RandomInt( -1, 1 ); + angles.y += random->RandomInt( -1, 1 ); + angles.z = 0; + + pPlayer->SnapEyeAngles( angles ); + + pPlayer->ViewPunch( QAngle( -8, random->RandomFloat( -2, 2 ), 0 ) ); + + CSoundEnt::InsertSound( SOUND_COMBAT, GetAbsOrigin(), 600, 0.2, GetOwner() ); + + if ( !m_iClip1 && pPlayer->GetAmmoCount( m_iPrimaryAmmoType ) <= 0 ) + { + // HEV suit - indicate out of ammo condition + pPlayer->SetSuitUpdate( "!HEV_AMO0", FALSE, 0 ); + } +} |