| “Špatné zprávy chlapi. Tenhle jsme ztratili.” Tento článek obsahuje experimentální obsah Team Fortress 2. Může obsahovat nepřesnosti nebo spekulace.
|
| “You are so small! Is funny to me!” Tento článek je příliš stručný. Takto, není kompletní. Můžete Team Fortress Wiki pomoci tím, že ho rozšíříte.
|
Dynamite Sapper je vyřazený Sapper pro Spye, který existuje pouze ve formě různých referencí na různých místech v herním kódu. Dynamite Sapper by měl stejné vlastnosti jako ostatní Sappery, s tím rozdílem, že by při detonaci explodoval, čímž by udělil velké poškození všem nepřátelům v jeho dosahu.
#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