| «Парни, плохие новости: это мы потеряли.» Эта статья описывает экспериментальный контент для Team Fortress 2. Она может содержать неточную или неполную информацию.
|
Взрывной жучок — это вырезанное оружие слота КПК2 для шпиона, упоминание о котором встречается в некоторых кодах. Принцип его действия аналогичен другим жучкам, разве что уничтожение постройки сопровождалось бы взрывом, нанося большой урон всем игрокам, находящимся в зоне поражения.
#ifdef STAGING_ONLY
PrecacheScriptSound( "WeaponDynamiteSapper.TickTock" );
PrecacheScriptSound( "WeaponDynamiteSapper.BellRing" );
#endif
#ifdef STAGING_ONLY
// // Attr on Det
float flExplodeOnTimer = 0;
CALL_ATTRIB_HOOK_FLOAT_ON_OTHER( GetBuilder(), flExplodeOnTimer, sapper_explodes_on_det );
if ( flExplodeOnTimer )
{
EmitSound( "Weapon_Sapper.Timer" );
return "WeaponDynamiteSapper.TickTock";
}
#endif
#ifdef STAGING_ONLY
CTFPlayer *pBuilder = GetBuilder();
if ( pBuilder && pParent->GetHealth() < 0 )
{
// Attr on Det
float flExplodeOnTimer = 0;
CALL_ATTRIB_HOOK_FLOAT_ON_OTHER( pBuilder, flExplodeOnTimer, sapper_explodes_on_det );
if ( flExplodeOnTimer )
{
float flDamage = pParent->GetMaxHealth() * 1.5;
Vector vecOrigin = GetAbsOrigin();
// Use the building as the det position
CTakeDamageInfo detInfo;
detInfo.SetDamage( flDamage );
detInfo.SetAttacker( this );
detInfo.SetInflictor( this );
detInfo.SetDamageType( DMG_BLAST );
// Generate Large Radius Damage
float flRadius = 200.0f;
CTFRadiusDamageInfo radiusinfo( &detInfo, vecOrigin, flRadius, NULL, flRadius );
TFGameRules()->RadiusDamage( radiusinfo );
DispatchParticleEffect( "explosionTrail_seeds_mvm", vecOrigin, GetAbsAngles() );
}
}
#endif