gun 
Vars | |
| burst_delay | Delay between shots in a burst. |
|---|---|
| can_hold_up | Can we hold up our target with this? Default to yes |
| can_unsuppress | Whether a gun can be unsuppressed. for ballistics, also determines if it generates a suppressor overlay |
| chambered_attack_block | If TRUE, will fire ITEM_INTERACT_BLOCKING (melee, etc) if the gun has a round already in the chamber, and is waiting to be fired (but cant, usually due to waiting on fire_delay). If FALSE, nothing changed. |
| doafter_self_shoot | If TRUE, and we aim at ourselves, it will initiate a do after to fire at ourselves. If FALSE it will just try to fire at ourselves straight up. |
| fire_cd | firing cooldown, true if this gun shouldn't be allowed to manually fire |
| fire_delay | Delay between bursts (if burst-firing) or individual shots (if weapon is single-fire). |
| flip_cooldown | Cooldown for the visible message sent from gun flipping. |
| light_time | Muzzle Flash Duration |
| min_recoil | Used as the min value when calculating recoil Affected by a player's min_recoil_multiplier preference, so keep in mind it can ultimately be 0 regardless Often utilized as a "purely visual" form of recoil (as it can be disabled) |
| pinless | True if a gun dosen't need a pin, mostly used for abstract guns like tentacles and meathooks |
| projectile_damage_multiplier | Just 'slightly' snowflakey way to modify projectile damage for projectiles fired from this gun. |
| projectile_speed_multiplier | The most reasonable way to modify projectile speed values for projectile fired from this gun. Honest. Lower values are worse, higher values are better. |
| projectile_wound_bonus | Even snowflakier way to modify projectile wounding bonus/potential for projectiles fired from this gun. |
| recoil | Screen shake when the weapon is fired |
| recoil_backtime_multiplier | a multiplier of the duration the recoil takes to go back to normal view, this is (recoil*recoil_backtime_multiplier)+1 |
| recoil_deviation | this is how much deviation the gun recoil can have, recoil pushes the screen towards the reverse angle you shot + some deviation which this is the max. |
| suppressed | Whether or not a message is displayed when fired |
Procs | |
| add_bayonet_point | Similarly to add_seclight_point(), handles the bayonet attachment component |
| add_seclight_point | Handles adding the seclite mount component to the gun. If the gun shouldn't have a seclight mount, override this with a return. Or, if a child of a gun with a seclite mount has slightly different behavior or icons, extend this. |
| calculate_recoil | Calculates the final recoil value applied when firing a gun. |
| clear_suppressor | Clears var and updates icon. |
| process_fire | returns true if the gun successfully fires |
| simulate_recoil | Simulates firearm recoil and applies camera feedback when firing. |
Var Details
burst_delay 
Delay between shots in a burst.
can_hold_up 
Can we hold up our target with this? Default to yes
can_unsuppress 
Whether a gun can be unsuppressed. for ballistics, also determines if it generates a suppressor overlay
chambered_attack_block 
If TRUE, will fire ITEM_INTERACT_BLOCKING (melee, etc) if the gun has a round already in the chamber, and is waiting to be fired (but cant, usually due to waiting on fire_delay). If FALSE, nothing changed.
doafter_self_shoot 
If TRUE, and we aim at ourselves, it will initiate a do after to fire at ourselves. If FALSE it will just try to fire at ourselves straight up.
fire_cd 
firing cooldown, true if this gun shouldn't be allowed to manually fire
fire_delay 
Delay between bursts (if burst-firing) or individual shots (if weapon is single-fire).
flip_cooldown 
Cooldown for the visible message sent from gun flipping.
light_time 
Muzzle Flash Duration
min_recoil 
Used as the min value when calculating recoil Affected by a player's min_recoil_multiplier preference, so keep in mind it can ultimately be 0 regardless Often utilized as a "purely visual" form of recoil (as it can be disabled)
pinless 
True if a gun dosen't need a pin, mostly used for abstract guns like tentacles and meathooks
projectile_damage_multiplier 
Just 'slightly' snowflakey way to modify projectile damage for projectiles fired from this gun.
projectile_speed_multiplier 
The most reasonable way to modify projectile speed values for projectile fired from this gun. Honest. Lower values are worse, higher values are better.
projectile_wound_bonus 
Even snowflakier way to modify projectile wounding bonus/potential for projectiles fired from this gun.
recoil 
Screen shake when the weapon is fired
recoil_backtime_multiplier 
a multiplier of the duration the recoil takes to go back to normal view, this is (recoil*recoil_backtime_multiplier)+1
recoil_deviation 
this is how much deviation the gun recoil can have, recoil pushes the screen towards the reverse angle you shot + some deviation which this is the max.
suppressed 
Whether or not a message is displayed when fired
Proc Details
add_bayonet_point
Similarly to add_seclight_point(), handles the bayonet attachment component
add_seclight_point
Handles adding the seclite mount component to the gun. If the gun shouldn't have a seclight mount, override this with a return. Or, if a child of a gun with a seclite mount has slightly different behavior or icons, extend this.
calculate_recoil
Calculates the final recoil value applied when firing a gun.
Arguments:
- user - The living mob attempting to fire the gun. Used for preference lookups.
- recoil_amount - The raw recoil value to be processed before clamping.
Returns: The clamped recoil value after applying all modifiers.
clear_suppressor
Clears var and updates icon.
process_fire
returns true if the gun successfully fires
simulate_recoil
Simulates firearm recoil and applies camera feedback when firing.
Arguments:
- user - The mob firing the gun. Used for recoil calculation and camera shake.
- recoil_amount - The base recoil value before modifiers.
- firing_angle - The firing direction used to determine camera kick direction.