/* <2bae77> ../cstrike/dlls/wpn_shared/wpn_usp.cpp:147 */ void CUSP::__MAKE_VHOOK(SecondaryAttack)(void) { if (ShieldSecondaryFire(USP_SHIELD_UP, USP_SHIELD_DOWN)) { return; } if (m_iWeaponState & WPNSTATE_USP_SILENCED) { m_iWeaponState &= ~WPNSTATE_USP_SILENCED; SendWeaponAnim(USP_DETACH_SILENCER, UseDecrement() != FALSE); Q_strcpy(m_pPlayer->m_szAnimExtention, "onehanded"); } else { m_iWeaponState |= WPNSTATE_USP_SILENCED; SendWeaponAnim(USP_ATTACH_SILENCER, UseDecrement() != FALSE); Q_strcpy(m_pPlayer->m_szAnimExtention, "onehanded"); } m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 3.0; m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 3.0; m_flNextPrimaryAttack = GetNextAttackDelay(3.0); }
/* <26b497> ../cstrike/dlls/wpn_shared/wpn_hegrenade.cpp:138 */ bool CHEGrenade::ShieldSecondaryFire(int iUpAnim, int iDownAnim) { if (!m_pPlayer->HasShield() || m_flStartThrow > 0) { return false; } if (m_iWeaponState & WPNSTATE_SHIELD_DRAWN) { m_iWeaponState &= ~WPNSTATE_SHIELD_DRAWN; SendWeaponAnim(iDownAnim, UseDecrement() != FALSE); Q_strcpy(m_pPlayer->m_szAnimExtention, "shieldgren"); m_fMaxSpeed = HEGRENADE_MAX_SPEED; m_pPlayer->m_bShieldDrawn = false; } else { m_iWeaponState |= WPNSTATE_SHIELD_DRAWN; SendWeaponAnim(iUpAnim, UseDecrement() != FALSE); Q_strcpy(m_pPlayer->m_szAnimExtention, "shielded"); m_fMaxSpeed = HEGRENADE_MAX_SPEED_SHIELD; m_pPlayer->m_bShieldDrawn = true; } m_pPlayer->UpdateShieldCrosshair((m_iWeaponState & WPNSTATE_SHIELD_DRAWN) != WPNSTATE_SHIELD_DRAWN); m_pPlayer->ResetMaxSpeed(); m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 0.4f; m_flNextPrimaryAttack = GetNextAttackDelay(0.4); m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 0.6f; return true; }
void CFiveSeven::WeaponIdle( void ) { ResetEmptySound(); m_pPlayer->GetAutoaimVector( AUTOAIM_10DEGREES ); if( m_flTimeWeaponIdle > UTIL_WeaponTimeBase() ) { return; } if( m_pPlayer->HasShield() ) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 20.0; if( FBitSet( m_iWeaponState, WPNSTATE_SHIELD_DRAWN ) ) { SendWeaponAnim( SHIELDGUN_DRAWN_IDLE, UseDecrement() != FALSE ); } } else if( m_iClip ) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 3.0625; SendWeaponAnim( FIVESEVEN_IDLE, UseDecrement() != FALSE ); } }
void CM3::WeaponIdle(void) { ResetEmptySound(); m_pPlayer->GetAutoaimVector(AUTOAIM_5DEGREES); if (m_flPumpTime && m_flPumpTime < UTIL_WeaponTimeBase()) m_flPumpTime = 0; if (m_flTimeWeaponIdle < UTIL_WeaponTimeBase()) { if (m_iClip == 0 && m_fInSpecialReload == 0 && m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType]) { Reload(); } else if (m_fInSpecialReload != 0) { if (m_iClip != M3_MAX_CLIP && m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType]) { Reload(); } else { SendWeaponAnim(M3_PUMP, UseDecrement() != FALSE); m_fInSpecialReload = 0; m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 1.5; } } else SendWeaponAnim(M3_IDLE, UseDecrement() != FALSE); } }
/* <2b9c2a> ../cstrike/dlls/wpn_shared/wpn_usp.cpp:318 */ void CUSP::__MAKE_VHOOK(WeaponIdle)(void) { ResetEmptySound(); m_pPlayer->GetAutoaimVector(AUTOAIM_10DEGREES); if (m_flTimeWeaponIdle > 0) { return; } if (m_pPlayer->HasShield()) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 20.0; if (m_iWeaponState & WPNSTATE_SHIELD_DRAWN) { SendWeaponAnim(USP_DRAW, UseDecrement()); } } else if (m_iClip) { int iAnim = (~m_iWeaponState & WPNSTATE_USP_SILENCED) ? USP_UNSIL_IDLE: USP_IDLE; m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 60.0; SendWeaponAnim(iAnim, UseDecrement()); } }
void CUSP::WeaponIdle(void) { ResetEmptySound(); m_pPlayer->GetAutoaimVector(AUTOAIM_10DEGREES); if (m_flTimeWeaponIdle > UTIL_WeaponTimeBase()) return; if (m_pPlayer->HasShield()) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 20; if (m_iWeaponState & WPNSTATE_SHIELD_DRAWN) SendWeaponAnim(USP_DRAW, UseDecrement() != FALSE); return; } if (m_iClip) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 60; if (m_iWeaponState & WPNSTATE_USP_SILENCED) SendWeaponAnim(USP_IDLE, UseDecrement() != FALSE); else SendWeaponAnim(USP_UNSIL_IDLE, UseDecrement() != FALSE); } }
/* <2464c1> ../cstrike/dlls/wpn_shared/wpn_c4.cpp:358 */ void CC4::__MAKE_VHOOK(WeaponIdle)(void) { if (m_bStartedArming) { // if the player releases the attack button cancel the arming sequence m_bStartedArming = false; // release the player from being frozen m_pPlayer->ResetMaxSpeed(); m_flNextPrimaryAttack = GetNextAttackDelay(1.0); m_pPlayer->SetProgressBarTime(0); // this means the placement animation is canceled if (m_bBombPlacedAnimation) SendWeaponAnim(C4_DRAW, UseDecrement() != FALSE); else SendWeaponAnim(C4_IDLE1, UseDecrement() != FALSE); } if (m_flTimeWeaponIdle <= UTIL_WeaponTimeBase()) { if (m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType] <= 0) { RetireWeapon(); return; } SendWeaponAnim(C4_DRAW, UseDecrement() != FALSE); SendWeaponAnim(C4_IDLE1, UseDecrement() != FALSE); } }
/* <290f2e> ../cstrike/dlls/wpn_shared/wpn_p228.cpp:261 */ void CP228::__MAKE_VHOOK(WeaponIdle)() { ResetEmptySound(); m_pPlayer->GetAutoaimVector(AUTOAIM_10DEGREES); if (m_flTimeWeaponIdle > UTIL_WeaponTimeBase()) { return; } if (m_pPlayer->HasShield()) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 20.0f; if (m_iWeaponState & WPNSTATE_SHIELD_DRAWN) { SendWeaponAnim(P228_SHIELD_IDLE_UP, UseDecrement() != FALSE); } } else if (m_iClip) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 3.0625f; SendWeaponAnim(P228_IDLE, UseDecrement() != FALSE); } }
bool CSmokeGrenade::ShieldSecondaryFire(int up_anim, int down_anim) { if (m_pPlayer->HasShield() == false) return false; if (m_flStartThrow > 0) return false; if (m_iWeaponState & WPNSTATE_SHIELD_DRAWN) { m_iWeaponState &= ~WPNSTATE_SHIELD_DRAWN; SendWeaponAnim(down_anim, UseDecrement() != FALSE); strcpy(m_pPlayer->m_szAnimExtention, "shieldgren"); m_fMaxSpeed = 250; m_pPlayer->m_bShieldDrawn = false; } else { m_iWeaponState |= WPNSTATE_SHIELD_DRAWN; SendWeaponAnim(up_anim, UseDecrement() != FALSE); strcpy(m_pPlayer->m_szAnimExtention, "shielded"); m_fMaxSpeed = 180; m_pPlayer->m_bShieldDrawn = true; } m_pPlayer->UpdateShieldCrosshair((m_iWeaponState & WPNSTATE_SHIELD_DRAWN) == 0); m_pPlayer->ResetMaxSpeed(); m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 0.4; m_flNextPrimaryAttack = UTIL_WeaponTimeBase() + 0.4; m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 0.6; return true; }
void CXM1014::Reload() { if (m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType] <= 0 || m_iClip == iMaxClip()) return; // don't reload until recoil is done if (m_flNextPrimaryAttack > UTIL_WeaponTimeBase()) return; // check to see if we're ready to reload if (m_fInSpecialReload == 0) { m_pPlayer->SetAnimation(PLAYER_RELOAD); SendWeaponAnim(XM1014_START_RELOAD, UseDecrement() != FALSE); m_fInSpecialReload = 1; m_flNextSecondaryAttack = m_flTimeWeaponIdle = m_pPlayer->m_flNextAttack = UTIL_WeaponTimeBase() + 0.55f; m_flNextPrimaryAttack = GetNextAttackDelay(0.55); } else if (m_fInSpecialReload == 1) { if (m_flTimeWeaponIdle > UTIL_WeaponTimeBase()) return; // was waiting for gun to move to side m_fInSpecialReload = 2; if (RANDOM_LONG(0, 1)) EMIT_SOUND_DYN(m_pPlayer->edict(), CHAN_ITEM, "weapons/reload1.wav", VOL_NORM, ATTN_NORM, 0, 85 + RANDOM_LONG(0, 31)); else EMIT_SOUND_DYN(m_pPlayer->edict(), CHAN_ITEM, "weapons/reload3.wav", VOL_NORM, ATTN_NORM, 0, 85 + RANDOM_LONG(0, 31)); SendWeaponAnim(XM1014_RELOAD, UseDecrement()); m_flTimeWeaponIdle = m_flNextReload = UTIL_WeaponTimeBase() + 0.3f; } else { m_iClip++; #ifdef REGAMEDLL_ADD if (refill_bpammo_weapons.value < 3.0f) #endif { m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType]--; m_pPlayer->ammo_buckshot--; } m_fInSpecialReload = 1; } }
void CM4A1::WeaponIdle(void) { ResetEmptySound(); m_pPlayer->GetAutoaimVector(AUTOAIM_10DEGREES); if (m_flTimeWeaponIdle > UTIL_WeaponTimeBase()) return; m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 20; if (m_iWeaponState & WPNSTATE_M4A1_SILENCED) SendWeaponAnim(M4A1_IDLE, UseDecrement() != FALSE); else SendWeaponAnim(M4A1_UNSIL_IDLE, UseDecrement() != FALSE); }
BOOL CMP5N::Deploy() { m_iShotsFired = 0; m_fDelayFire = FALSE; return DefaultDeploy( "models/v_mp5.mdl", "models/p_mp5.mdl", MP5N_DRAW, "mp5", UseDecrement() ); }
void CUSP::WeaponIdle() { ResetEmptySound(); m_pPlayer->GetAutoaimVector( AUTOAIM_10DEGREES ); if( m_flTimeWeaponIdle > UTIL_WeaponTimeBase() ) { return; } if( m_pPlayer->HasShield() ) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + USP_IDLE_INTERVAL; if( FBitSet( m_fWeaponState, WEAPONSTATE_SHIELD_DRAWN ) ) { SendWeaponAnim( GUN_IDLE1, UseDecrement() ); } } else if( m_iClip ) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + USP_IDLE_INTERVAL_NOSHIELD; SendWeaponAnim( USP_IDLE_UNSIL * !FBitSet( m_fWeaponState, WEAPONSTATE_USP_SILENCED ), UseDecrement() ); } }
void CUSP::SecondaryAttack() { if( ShieldSecondaryFire( GUN_SHIELD_UP, GUN_SHIELD_DOWN ) ) { return; } int anim; if( FBitSet( m_fWeaponState, WEAPONSTATE_USP_SILENCED ) ) { ClearBits( m_fWeaponState, WEAPONSTATE_USP_SILENCED ); anim = USP_DETACH_SILENCER; } else { SetBits( m_fWeaponState, WEAPONSTATE_USP_SILENCED ); anim = USP_ADD_SILENCER; } SendWeaponAnim( anim, UseDecrement() ); strcpy( m_pPlayer->m_szAnimExtention, "onehanded" ); m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 3.0; m_flNextPrimaryAttack = UTIL_WeaponTimeBase() + 3.0; m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 3.0; }
/* <2cad77> ../cstrike/dlls/wpn_shared/wpn_xm1014.cpp:182 */ void CXM1014::__MAKE_VHOOK(Reload)() { if (m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType] <= 0 || m_iClip == XM1014_MAX_CLIP) return; // don't reload until recoil is done if (m_flNextPrimaryAttack > UTIL_WeaponTimeBase()) return; // check to see if we're ready to reload if (m_fInSpecialReload == 0) { m_pPlayer->SetAnimation(PLAYER_RELOAD); SendWeaponAnim(XM1014_START_RELOAD, UseDecrement() != FALSE); m_fInSpecialReload = 1; m_pPlayer->m_flNextAttack = UTIL_WeaponTimeBase() + 0.55f; m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 0.55f; m_flNextPrimaryAttack = GetNextAttackDelay(0.55); m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 0.55f; } else if (m_fInSpecialReload == 1) { if (m_flTimeWeaponIdle > UTIL_WeaponTimeBase()) return; // was waiting for gun to move to side m_fInSpecialReload = 2; if (RANDOM_LONG(0, 1)) EMIT_SOUND_DYN(m_pPlayer->edict(), CHAN_ITEM, "weapons/reload1.wav", VOL_NORM, ATTN_NORM, 0, 85 + RANDOM_LONG(0, 31)); else EMIT_SOUND_DYN(m_pPlayer->edict(), CHAN_ITEM, "weapons/reload3.wav", VOL_NORM, ATTN_NORM, 0, 85 + RANDOM_LONG(0, 31)); SendWeaponAnim(XM1014_RELOAD, UseDecrement()); m_flNextReload = UTIL_WeaponTimeBase() + 0.3f; m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 0.3f; } else { ++m_iClip; --m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType]; --m_pPlayer->ammo_buckshot; m_fInSpecialReload = 1; } }
BOOL CSG552::__MAKE_VHOOK(Deploy)() { m_flAccuracy = 0.2f; m_iShotsFired = 0; iShellOn = 1; return DefaultDeploy("models/v_sg552.mdl", "models/p_sg552.mdl", SG552_DRAW, "mp5", UseDecrement() != FALSE); }
BOOL CM249::Deploy(void) { m_flAccuracy = 0.2; m_iShotsFired = 0; iShellOn = 1; return DefaultDeploy("models/v_m249.mdl", "models/p_m249.mdl", M249_DRAW, "m249", UseDecrement() != FALSE); }
BOOL CMP5N::__MAKE_VHOOK(Deploy)() { m_flAccuracy = 0.0f; m_bDelayFire = false; iShellOn = 1; return DefaultDeploy("models/v_mp5.mdl", "models/p_mp5.mdl", MP5N_DRAW, "mp5", UseDecrement() != FALSE); }
BOOL CTMP::Deploy(void) { m_iShotsFired = 0; m_bDelayFire = false; m_flAccuracy = 0.2; iShellOn = 1; return DefaultDeploy("models/v_tmp.mdl", "models/p_tmp.mdl", TMP_DRAW, "onehanded", UseDecrement() != FALSE); }
/* <281032> ../cstrike/dlls/wpn_shared/wpn_m4a1.cpp:127 */ void CM4A1::__MAKE_VHOOK(SecondaryAttack)() { if (m_iWeaponState & WPNSTATE_M4A1_SILENCED) { m_iWeaponState &= ~WPNSTATE_M4A1_SILENCED; SendWeaponAnim(M4A1_DETACH_SILENCER, UseDecrement() != FALSE); Q_strcpy(m_pPlayer->m_szAnimExtention, "rifle"); } else { m_iWeaponState |= WPNSTATE_M4A1_SILENCED; SendWeaponAnim(M4A1_ATTACH_SILENCER, UseDecrement() != FALSE); Q_strcpy(m_pPlayer->m_szAnimExtention, "rifle"); } m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 2.0; m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 2.0; m_flNextPrimaryAttack = GetNextAttackDelay(2.0); }
void CM4A1::SecondaryAttack(void) { if (m_iWeaponState & WPNSTATE_M4A1_SILENCED) { m_iWeaponState &= ~WPNSTATE_M4A1_SILENCED; SendWeaponAnim(M4A1_DETACH_SILENCER, UseDecrement() != FALSE); strcpy(m_pPlayer->m_szAnimExtention, "rifle"); } else { m_iWeaponState |= WPNSTATE_M4A1_SILENCED; SendWeaponAnim(M4A1_ATTACH_SILENCER, UseDecrement() != FALSE); strcpy(m_pPlayer->m_szAnimExtention, "rifle"); } m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 2; m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 2; m_flNextPrimaryAttack = UTIL_WeaponTimeBase() + 2; }
BOOL CP90::__MAKE_VHOOK(Deploy)() { m_iShotsFired = 0; m_bDelayFire = false; m_flAccuracy = 0.2f; iShellOn = 1; return DefaultDeploy("models/v_p90.mdl", "models/p_p90.mdl", P90_DRAW, "carbine", UseDecrement() != FALSE); }
void CTMP::WeaponIdle(void) { ResetEmptySound(); m_pPlayer->GetAutoaimVector(AUTOAIM_10DEGREES); if (m_flTimeWeaponIdle > UTIL_WeaponTimeBase()) return; m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 20; SendWeaponAnim(TMP_IDLE1, UseDecrement() != FALSE); }
void CGalil::WeaponIdle() { ResetEmptySound(); m_pPlayer->GetAutoaimVector(AUTOAIM_10DEGREES); if (m_flTimeWeaponIdle <= UTIL_WeaponTimeBase()) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 20.0f; SendWeaponAnim(GALIL_IDLE1, UseDecrement() != FALSE); } }
void CFamas::__MAKE_VHOOK(WeaponIdle)() { ResetEmptySound(); m_pPlayer->GetAutoaimVector(AUTOAIM_10DEGREES); if (m_flTimeWeaponIdle <= UTIL_WeaponTimeBase()) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 20.0f; SendWeaponAnim(FAMAS_IDLE1, UseDecrement() != FALSE); } }
BOOL CSCOUT::Deploy(void) { if (DefaultDeploy("models/v_scout.mdl", "models/p_scout.mdl", SCOUT_DRAW, "rifle", UseDecrement() != FALSE)) { m_flNextPrimaryAttack = m_pPlayer->m_flNextAttack = UTIL_WeaponTimeBase() + 1.25; m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 1; return TRUE; } return FALSE; }
void CAWP::WeaponIdle(void) { ResetEmptySound(); m_pPlayer->GetAutoaimVector(AUTOAIM_10DEGREES); if (m_flTimeWeaponIdle <= UTIL_WeaponTimeBase() && m_iClip) { m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 60; SendWeaponAnim(AWP_IDLE, UseDecrement() != FALSE); } }
BOOL CAWP::Deploy(void) { if (DefaultDeploy("models/v_awp.mdl", "models/p_awp.mdl", AWP_DRAW, "rifle", UseDecrement() != FALSE)) { m_flNextPrimaryAttack = m_pPlayer->m_flNextAttack = GetNextAttackDelay(1.45); m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 1.0; return TRUE; } return FALSE; }
BOOL CM4A1::Deploy(void) { m_bDelayFire = true; iShellOn = 1; m_flAccuracy = 0.2; m_iShotsFired = 0; if (m_iWeaponState & WPNSTATE_M4A1_SILENCED) return DefaultDeploy("models/v_m4a1.mdl", "models/p_m4a1.mdl", M4A1_DRAW, "rifle", UseDecrement() != FALSE); else return DefaultDeploy("models/v_m4a1.mdl", "models/p_m4a1.mdl", M4A1_UNSIL_DRAW, "rifle", UseDecrement() != FALSE); }
void CM3::Reload(void) { if (m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType] <= 0 || m_iClip == M3_MAX_CLIP) return; if (m_flNextPrimaryAttack > UTIL_WeaponTimeBase()) return; if (!m_fInSpecialReload) { #ifndef CLIENT_DLL m_pPlayer->SetAnimation(PLAYER_RELOAD); #endif SendWeaponAnim(M3_START_RELOAD, UseDecrement() != FALSE); m_fInSpecialReload = 1; m_pPlayer->m_flNextAttack = UTIL_WeaponTimeBase() + 0.55; m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 0.55; m_flNextPrimaryAttack = UTIL_WeaponTimeBase() + 0.55; m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 0.55; } else if (m_fInSpecialReload == 1) { if (m_flTimeWeaponIdle > UTIL_WeaponTimeBase()) return; m_fInSpecialReload = 2; SendWeaponAnim(M3_RELOAD, UseDecrement() != FALSE); m_flNextReload = UTIL_WeaponTimeBase() + 0.45; m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 0.45; } else { m_iClip++; m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType]--; m_fInSpecialReload = 1; m_pPlayer->ammo_buckshot--; } }