Lowering your weapon on sprint
Jump to navigation
Jump to search
This article will deal with Lowering your weapon while sprinting and disable the ability to shoot at the same time. This was based on a topic on the Steam Forums located here: [1]




The Code

BASECOMBATWEAPON_SHARED.CPP
Hit CTRL+F and search for this code:
void CBaseCombatWeapon::ItemPostFrame( void )
{
CBasePlayer *pOwner = ToBasePlayer( GetOwner() );
if (!pOwner)
return;
Then copy and paste this below it:
if ( !bLowered && (pOwner->m_nButtons & IN_SPEED ) )
{
bLowered = true;
SendWeaponAnim( ACT_VM_IDLE_LOWERED );
m_fLoweredReady = gpGlobals->curtime + GetViewModelSequenceDuration();
}
else if ( bLowered && !(pOwner->m_nButtons & IN_SPEED ) )
{
bLowered = false;
SendWeaponAnim( ACT_VM_IDLE );
m_fLoweredReady = gpGlobals->curtime + GetViewModelSequenceDuration();
}
if ( bLowered )
{
if ( gpGlobals->curtime > m_fLoweredReady )
{
bLowered = true;
SendWeaponAnim( ACT_VM_IDLE_LOWERED );
m_fLoweredReady = gpGlobals->curtime + GetViewModelSequenceDuration();
}
return;
}
else if ( bLowered )
{
if ( gpGlobals->curtime > m_fLoweredReady )
{
bLowered = false;
SendWeaponAnim( ACT_VM_IDLE );
m_fLoweredReady = gpGlobals->curtime + GetViewModelSequenceDuration();
}
return;
}
BASECOMBATWEAPON_SHARED.H
Add these member variables under private at line 466 below CNetworkVar( CBaseCombatCharacterHandle, m_hOwner ); // Player carrying this weapon:
bool m_bLowered;
bool bLowered;
float m_fLowered;
float m_fLoweredReady;
Finish
Now your weapon should be lowered when you hit the sprint button and you will not be available to shoot either until you release the button!