本文整理汇总了C++中UTIL_WeaponTimeBase函数的典型用法代码示例。如果您正苦于以下问题:C++ UTIL_WeaponTimeBase函数的具体用法?C++ UTIL_WeaponTimeBase怎么用?C++ UTIL_WeaponTimeBase使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了UTIL_WeaponTimeBase函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SendWeaponAnim
void CFlashbang::__MAKE_VHOOK(PrimaryAttack)()
{
if (m_iWeaponState & WPNSTATE_SHIELD_DRAWN)
{
return;
}
if (!m_flStartThrow && m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType] > 0)
{
m_flReleaseThrow = 0;
m_flStartThrow = gpGlobals->time;
SendWeaponAnim(FLASHBANG_PULLPIN, UseDecrement() != FALSE);
m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 0.5f;
}
}
示例2: DefaultReload
void CP90::Reload( void )
{
int iResult;
if (m_iClip == 0)
iResult = DefaultReload( 30, MP5_RELOAD, 2.4 );
else
iResult = DefaultReload( 30, MP5_RELOAD, 2.4 );
if (iResult)
{
m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + UTIL_SharedRandomFloat( m_pPlayer->random_seed, 10, 15 );
m_pPlayer->SetAnimation( PLAYER_RELOAD );
}
//m_pPlayer->SetAnimation( PLAYER_RELOAD );
}
示例3: DefaultReload
void CGlock::Reload( void )
{
if ( m_pPlayer->ammo_9mm <= 0 )
return;
int iResult;
if (m_iClip == 0)
iResult = DefaultReload( 17, GLOCK_RELOAD, 1.5 );
else
iResult = DefaultReload( 17, GLOCK_RELOAD_NOT_EMPTY, 1.5 );
if (iResult)
{
m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + UTIL_SharedRandomFloat( m_pPlayer->random_seed, 10, 15 );
}
}
示例4: SendWeaponAnim
void CSmokeGrenade::PrimaryAttack( void )
{
if( FBitSet( m_iWeaponState, WPNSTATE_SHIELD_DRAWN ) )
{
return;
}
if( !m_flStartThrow && m_pPlayer->m_rgAmmo[ m_iPrimaryAmmoType ] > 0 )
{
m_flStartThrow = gpGlobals->time;
m_flReleaseThrow = 0;
SendWeaponAnim( SMOKEGRENADE_PINPULL, UseDecrement() != FALSE );
m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 0.5;
}
}
示例5: UTIL_WeaponTimeBase
void CDiscWeapon::Holster( int skiplocal /* = 0 */ )
{
m_pPlayer->m_flNextAttack = UTIL_WeaponTimeBase() + 0.5;
if (m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType])
{
SendWeaponAnim( DISC_HOLSTER, 1 );
}
else
{
// no more grenades!
m_pPlayer->pev->weapons &= ~(1<<WEAPON_DISC);
SetThink( &CDiscWeapon::DestroyItem );
pev->nextthink = gpGlobals->time + 0.1;
}
EMIT_SOUND(ENT(m_pPlayer->pev), CHAN_WEAPON, "common/null.wav", 1.0, ATTN_NORM);
}
示例6: DefaultReload
void CGlock::Reload( void )
{
if ( m_pPlayer->m_rgAmmo[ PrimaryAmmoIndex() ] <= 0 )
return;
bool bResult;
if (m_iClip == 0)
bResult = DefaultReload( GLOCK_RELOAD, 1.5 );
else
bResult = DefaultReload( GLOCK_RELOAD_NOT_EMPTY, 1.5 );
if ( bResult )
{
m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + UTIL_SharedRandomFloat( m_pPlayer->random_seed, 10, 15 );
}
}
示例7: UTIL_WeaponTimeBase
void CRpg::Holster( int skiplocal /* = 0 */ )
{
m_fInReload = FALSE;// cancel any reload in progress.
m_pPlayer->m_flNextAttack = UTIL_WeaponTimeBase() + 0.5;
SendWeaponAnim( RPG_HOLSTER1 );
#ifndef CLIENT_DLL
if (m_pSpot)
{
m_pSpot->Killed( NULL, GIB_NEVER );
m_pSpot = NULL;
}
#endif
}
示例8: UTIL_WeaponTimeBase
/* <2466fc> ../cstrike/dlls/wpn_shared/wpn_c4.cpp:123 */
void CC4::__MAKE_VHOOK(Holster)(int skiplocal)
{
m_pPlayer->m_flNextAttack = UTIL_WeaponTimeBase() + 0.5;
m_bStartedArming = false;
if (!m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType])
{
m_pPlayer->pev->weapons &= ~(1 << WEAPON_C4);
DestroyItem();
}
if (m_bHasShield)
{
m_pPlayer->pev->gamestate = 0;
m_bHasShield = false;
}
}
示例9: switch
void CAWP::SecondaryAttack()
{
switch( m_pPlayer->m_iFOV )
{
case 90 : m_pPlayer->m_iFOV = m_pPlayer->pev->fov = 40;
case 40 : m_pPlayer->m_iFOV = m_pPlayer->pev->fov = 10;
case 10 : m_pPlayer->m_iFOV = m_pPlayer->pev->fov = 90;
}
/*! @todo: Implements this :
if( TheBots )
TheBots->OnEvent( EVENT_WEAPON_ZOOMED, m_pPlayer->pev, NULL ); */
m_pPlayer->ResetMaxSpeed();
EMIT_SOUND_DYN( ENT( m_pPlayer->pev ), CHAN_ITEM, "weapons/zoom.wav", VOL_NORM, 2.4, 0, ATTN_NORM );
m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 0.3;
}
示例10: UTIL_WeaponTimeBase
void AvHBasePlayerWeapon::SetNextAttack(void)
{
// this->m_flNextPrimaryAttack += this->mROF;
//
// if(this->m_flNextPrimaryAttack < 0)
// this->m_flNextPrimaryAttack = this->mROF;
float theRateOfFire = this->ComputeAttackInterval();
this->m_flNextPrimaryAttack = UTIL_WeaponTimeBase() + theRateOfFire;
if(this->m_flNextPrimaryAttack < 0)
{
this->m_flNextPrimaryAttack = theRateOfFire;
}
this->SetNextIdle();
}
示例11: UpdateSpot
void CUsas::WeaponIdle( void )
{
UpdateSpot( );
MakeLaserSight();
ResetEmptySound( );
// m_iFiring = FALSE;
//test
/*
int flags;
#if defined( CLIENT_WEAPONS )
flags = FEV_NOTHOST;
#else
flags = 0;
#endif
PLAYBACK_EVENT( flags, m_pPlayer->edict(), m_usSpriteTracer );
ALERT (at_console, "calling spr\n");
*/
m_pPlayer->GetAutoaimVector( AUTOAIM_5DEGREES );
if ( m_flTimeWeaponIdle > UTIL_WeaponTimeBase() )
return;
int iAnim;
switch ( RANDOM_LONG( 0, 1 ) )
{
case 0:
iAnim = USAS_IDLE1;
break;
default:
case 1:
iAnim = USAS_IDLE1;
break;
}
SendWeaponAnim( iAnim );
m_flTimeWeaponIdle = UTIL_SharedRandomFloat( m_pPlayer->random_seed, 10, 15 ); // how long till we do this again.
}
示例12: UTIL_WeaponTimeBase
void CHEGrenade::Holster( int skiplocal )
{
m_pPlayer->m_flNextAttack = UTIL_WeaponTimeBase() + 0.5;
if ( m_pPlayer->m_rgAmmo[ m_iPrimaryAmmoType ] )
{
//SendWeaponAnim( HANDGRENADE_HOLSTER );
}
else
{
// no more grenades!
m_pPlayer->pev->weapons &= ~(1<<WEAPON_HEGRENADE);
SetThink( &CBasePlayerItem::DestroyItem );
pev->nextthink = gpGlobals->time + 0.1;
}
EMIT_SOUND(ENT(m_pPlayer->pev), CHAN_WEAPON, "common/null.wav", 1.0, ATTN_NORM);
}
示例13: UTIL_WeaponTimeBase
// this function only gets called in multiplayer
void CCrossbow::FireSniperBolt()
{
m_flNextPrimaryAttack = UTIL_WeaponTimeBase() + 0.75;
if (m_iClip == 0)
{
PlayEmptySound( );
return;
}
TraceResult tr;
m_pPlayer->m_iWeaponVolume = QUIET_GUN_VOLUME;
m_iClip--;
int flags;
#if defined( CLIENT_WEAPONS )
flags = FEV_NOTHOST;
#else
flags = 0;
#endif
PLAYBACK_EVENT_FULL( flags, m_pPlayer->edict(), m_usCrossbow2, 0.0, (float *)&g_vecZero, (float *)&g_vecZero, 0, 0, m_iClip, m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType], 0, 0 );
// player "shoot" animation
m_pPlayer->SetAnimation( PLAYER_ATTACK1 );
Vector anglesAim = m_pPlayer->pev->v_angle + m_pPlayer->pev->punchangle;
UTIL_MakeVectors( anglesAim );
Vector vecSrc = m_pPlayer->GetGunPosition( ) - gpGlobals->v_up * 2;
Vector vecDir = gpGlobals->v_forward;
UTIL_TraceLine(vecSrc, vecSrc + vecDir * 8192, dont_ignore_monsters, m_pPlayer->edict(), &tr);
#ifndef CLIENT_DLL
if ( tr.pHit->v.takedamage )
{
ClearMultiDamage( );
CBaseEntity::Instance(tr.pHit)->TraceAttack(m_pPlayer->pev, 120, vecDir, &tr, DMG_BULLET | DMG_NEVERGIB );
ApplyMultiDamage( pev, m_pPlayer->pev );
}
#endif
}
示例14: switch
void CAWP::__MAKE_VHOOK(SecondaryAttack)()
{
switch (m_pPlayer->m_iFOV)
{
case 90: m_pPlayer->m_iFOV = m_pPlayer->pev->fov = 40; break;
case 40: m_pPlayer->m_iFOV = m_pPlayer->pev->fov = 10; break;
default: m_pPlayer->m_iFOV = m_pPlayer->pev->fov = 90; break;
}
if (TheBots != NULL)
{
TheBots->OnEvent(EVENT_WEAPON_ZOOMED, m_pPlayer);
}
m_pPlayer->ResetMaxSpeed();
EMIT_SOUND(m_pPlayer->edict(), CHAN_ITEM, "weapons/zoom.wav", 0.2, 2.4);
m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 0.3;
}
示例15: UTIL_MakeVectors
void CRpg::PrimaryAttack()
{
if ( m_iClip )
{
m_pPlayer->m_iWeaponVolume = LOUD_GUN_VOLUME;
m_pPlayer->m_iWeaponFlash = BRIGHT_GUN_FLASH;
#ifndef CLIENT_DLL
// player "shoot" animation
m_pPlayer->SetAnimation( PLAYER_ATTACK1 );
UTIL_MakeVectors( m_pPlayer->pev->v_angle );
Vector vecSrc = m_pPlayer->GetGunPosition( ) + gpGlobals->v_forward * 16 + gpGlobals->v_right * 8 + gpGlobals->v_up * -8;
CRpgRocket *pRocket = CRpgRocket::CreateRpgRocket( vecSrc, m_pPlayer->pev->v_angle, m_pPlayer, this );
UTIL_MakeVectors( m_pPlayer->pev->v_angle );// RpgRocket::Create stomps on globals, so remake.
pRocket->pev->velocity = pRocket->pev->velocity + gpGlobals->v_forward * DotProduct( m_pPlayer->pev->velocity, gpGlobals->v_forward );
#endif
// firing RPG no longer turns on the designator. ALT fire is a toggle switch for the LTD.
// Ken signed up for this as a global change (sjb)
int flags;
#if defined( CLIENT_WEAPONS )
flags = FEV_NOTHOST;
#else
flags = 0;
#endif
PLAYBACK_EVENT( flags, m_pPlayer->edict(), m_usRpg );
m_iClip--;
m_flNextPrimaryAttack = GetNextAttackDelay(1.5);
m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 1.5;
}
else
{
PlayEmptySound( );
}
UpdateSpot( );
}