本文整理汇总了C++中CBaseCombatCharacter::SetPreventWeaponPickup方法的典型用法代码示例。如果您正苦于以下问题:C++ CBaseCombatCharacter::SetPreventWeaponPickup方法的具体用法?C++ CBaseCombatCharacter::SetPreventWeaponPickup怎么用?C++ CBaseCombatCharacter::SetPreventWeaponPickup使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CBaseCombatCharacter
的用法示例。
在下文中一共展示了CBaseCombatCharacter::SetPreventWeaponPickup方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: EndTouch
//-----------------------------------------------------------------------------
// Purpose: Called when an entity stops touching us.
// Input : pOther - The entity that was touching us.
//-----------------------------------------------------------------------------
void CTriggerWeaponStrip::EndTouch(CBaseEntity *pOther)
{
if ( IsTouching( pOther ) )
{
CBaseCombatCharacter *pCharacter = pOther->MyCombatCharacterPointer();
if ( pCharacter )
{
pCharacter->SetPreventWeaponPickup( false );
}
}
BaseClass::EndTouch( pOther );
}
示例2: StartTouch
//-----------------------------------------------------------------------------
// Drops all weapons, marks the character as not being able to pick up weapons
//-----------------------------------------------------------------------------
void CTriggerWeaponStrip::StartTouch(CBaseEntity *pOther)
{
BaseClass::StartTouch( pOther );
if ( PassesTriggerFilters(pOther) == false )
return;
CBaseCombatCharacter *pCharacter = pOther->MyCombatCharacterPointer();
if ( m_bKillWeapons )
{
for ( int i = 0 ; i < pCharacter->WeaponCount(); ++i )
{
CBaseCombatWeapon *pWeapon = pCharacter->GetWeapon( i );
if ( !pWeapon )
continue;
pCharacter->Weapon_Drop( pWeapon );
UTIL_Remove( pWeapon );
}
return;
}
// Strip the player of his weapons
if ( pCharacter && pCharacter->IsAllowedToPickupWeapons() )
{
CBaseCombatWeapon *pBugbait = pCharacter->Weapon_OwnsThisType( "weapon_bugbait" );
if ( pBugbait )
{
pCharacter->Weapon_Drop( pBugbait );
UTIL_Remove( pBugbait );
}
pCharacter->Weapon_DropAll( true );
pCharacter->SetPreventWeaponPickup( true );
}
}