/tg/ Station 13 - Modules - TypesVar Details - Proc Details

backblast /datum/element/backblast

When attached to a gun and the gun is successfully fired, this element creates a "backblast" of fire and pain, like you'd find in a rocket launcher or recoilless rifle

The backblast is simulated by a number of fire plumes, or invisible incendiary rounds that will torch anything they come across for a short distance, as well as knocking back nearby items.

Vars

angle_spreadAssuming we don't just have 1 plume, this is the total angle we'll cover with the plumes, split down the middle directly behind the angle we fired at
plumesHow many "pellets" of backblast we're shooting backwards, spread between the angle defined in angle_spread
rangeHow far each plume of fire will fly, assuming it doesn't hit a mob

Procs

gun_firedFor firing multiple plumes behind us, we evenly spread out our projectiles based on the angle_spread and number of plumes
gun_fired_simpleIf we're only firing one plume directly behind us, we don't need to bother with the loop or angles or anything
pewFor firing an actual backblast pellet

Var Details

Assuming we don't just have 1 plume, this is the total angle we'll cover with the plumes, split down the middle directly behind the angle we fired at

var plumes –

How many "pellets" of backblast we're shooting backwards, spread between the angle defined in angle_spread

var range –

How far each plume of fire will fly, assuming it doesn't hit a mob

Proc Details

proc gun_fired(/obj/item/gun/weapon, /mob/living/user, /atom/target, params, zone_override)

For firing multiple plumes behind us, we evenly spread out our projectiles based on the angle_spread and number of plumes

proc gun_fired_simple(/obj/item/gun/weapon, /mob/living/user, /atom/target, params, zone_override)

If we're only firing one plume directly behind us, we don't need to bother with the loop or angles or anything

proc pew(/turf/target_turf, /obj/item/gun/weapon, /mob/living/user)

For firing an actual backblast pellet