diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 98220c2526b..b3a1cf9e2e2 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -50,8 +50,8 @@ var/burst = 1 var/fire_delay = 6 //delay after shooting before the gun can be used again - var/burst_delay = 2 //delay between shots, if firing in bursts - var/move_delay = 1 + var/burst_delay = 1 //delay between shots, if firing in bursts + var/move_delay = 0 var/fire_sound = 'sound/weapons/gunshot/gunshot1.ogg' var/fire_sound_text = "gunshot" var/recoil = 0 //screen shake @@ -409,7 +409,7 @@ addtimer(CALLBACK(src, /atom/.proc/set_light, 0), 2) if(recoil) - addtimer(CALLBACK(GLOBAL_PROC, /proc/shake_camera, user, recoil+1, recoil), 0, TIMER_UNIQUE) + shake_camera(user, recoil + 1, recoil) if(ishuman(user) && user.invisibility == INVISIBILITY_LEVEL_TWO) //shooting will disable a rig cloaking device var/mob/living/carbon/human/H = user @@ -419,7 +419,6 @@ S.deactivate() update_icon() - /obj/item/gun/proc/process_point_blank(obj/projectile, mob/user, atom/target) var/obj/item/projectile/P = projectile if(!istype(P)) diff --git a/code/modules/projectiles/guns/projectile/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm index 68d1cbcd0f0..8a58a2440e8 100644 --- a/code/modules/projectiles/guns/projectile/automatic.dm +++ b/code/modules/projectiles/guns/projectile/automatic.dm @@ -17,9 +17,9 @@ sel_mode = 1 firemodes = list( - list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), - list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=2, burst_accuracy=list(1,0,0), dispersion=list(0, 10, 15)), - list(mode_name="short bursts", burst=5, fire_delay=null, move_delay=3, burst_accuracy=list(1,0,,-1,-1), dispersion=list(5, 10, 15, 20)) + list(mode_name="semiauto", burst=1, fire_delay=null, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=null, burst_accuracy=list(1,0,0), dispersion=list(0, 10, 15)), + list(mode_name="short bursts", burst=5, fire_delay=null, move_delay=null, burst_accuracy=list(1,0,,-1,-1), dispersion=list(5, 10, 15, 20)) ) //Submachine guns and personal defence weapons, go. @@ -117,9 +117,9 @@ is_wieldable = TRUE firemodes = list( - list(mode_name="semiauto", burst=1, fire_delay=10, move_delay=null, burst_accuracy=null, dispersion=null), - list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=2, burst_accuracy=list(1,0,0), dispersion=list(0, 5, 10)), - list(mode_name="short bursts", burst=5, fire_delay=null, move_delay=3, burst_accuracy=list(1,0,0,-1,-1), dispersion=list(5, 5, 15)) + list(mode_name="semiauto", burst=1, fire_delay=10, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=null, burst_accuracy=list(1,0,0), dispersion=list(0, 5, 10)), + list(mode_name="short bursts", burst=5, fire_delay=null, move_delay=null, burst_accuracy=list(1,0,0,-1,-1), dispersion=list(5, 5, 15)) ) //slower to regain aim, more inaccurate if not wielding @@ -200,8 +200,8 @@ burst_delay = 4 firemodes = list( - list(mode_name="semiauto", burst=1, fire_delay=10, move_delay=null, use_launcher=null, burst_accuracy=null, dispersion=null), - list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=3, use_launcher=null, burst_accuracy=list(2,1,1), dispersion=list(0, 7.5)), + list(mode_name="semiauto", burst=1, fire_delay=10, move_delay=null, use_launcher=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=null, use_launcher=null, burst_accuracy=list(2,1,1), dispersion=list(0, 7.5)), list(mode_name="fire grenades", burst=null, fire_delay=null, move_delay=null, use_launcher=1, burst_accuracy=null, dispersion=null) ) @@ -272,8 +272,8 @@ magazine_type = /obj/item/ammo_magazine/a762 firemodes = list( - list(mode_name="short bursts", burst=5, move_delay=4, burst_accuracy = list(1,0,0,-1,-1), dispersion = list(3, 6, 9)), - list(mode_name="long bursts", burst=8, move_delay=5, burst_accuracy = list(1,0,0,-1,-1,-1,-2,-2), dispersion = list(8)) + list(mode_name="short bursts", burst=5, move_delay=null, burst_accuracy = list(1,0,0,-1,-1), dispersion = list(3, 6, 9)), + list(mode_name="long bursts", burst=8, move_delay=null, burst_accuracy = list(1,0,0,-1,-1,-1,-2,-2), dispersion = list(8)) ) var/cover_open = 0 @@ -364,8 +364,8 @@ auto_eject_sound = 'sound/weapons/smg_empty_alarm.ogg' firemodes = list( - list(mode_name="single coil", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), - list(mode_name="dual coil", burst=2, move_delay=5, accuracy = list(-2,-3), dispersion = list(20)) + list(mode_name="single coil", burst = 1, fire_delay = null, move_delay = null, burst_accuracy = null, dispersion = null), + list(mode_name="dual coil", burst = 2, move_delay = 1, accuracy = list(-2,-3), dispersion = list(20)) ) @@ -390,8 +390,8 @@ firemodes = list( list(mode_name="semiauto", burst=1, move_delay=null, burst_accuracy=null, dispersion=null), - list(mode_name="3-round bursts", burst=3, move_delay=2, burst_accuracy=list(2,1,1), dispersion=list(0, 10, 15)), - list(mode_name="short bursts", burst=5, move_delay=3, burst_accuracy=list(2,1,1,0,0), dispersion=list(5, 10, 15)) + list(mode_name="3-round bursts", burst=3, move_delay=null, burst_accuracy=list(2,1,1), dispersion=list(0, 10, 15)), + list(mode_name="short bursts", burst=5, move_delay=null, burst_accuracy=list(2,1,1,0,0), dispersion=list(5, 10, 15)) ) @@ -440,8 +440,8 @@ accuracy_wielded = 0 firemodes = list( - list(mode_name="semiauto", burst=1, fire_delay= 10, move_delay=null, burst_accuracy=null, dispersion=null), - list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=3, burst_accuracy=list(0,-1,-1), dispersion=list(0, 10, 15)) + list(mode_name="semiauto", burst=1, fire_delay= 10, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=null, burst_accuracy=list(0,-1,-1), dispersion=list(0, 10, 15)) ) /obj/item/gun/projectile/automatic/rifle/shotgun/update_icon() diff --git a/code/modules/projectiles/guns/projectile/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm index b315b64765b..4dc9a8dd204 100644 --- a/code/modules/projectiles/guns/projectile/pistol.dm +++ b/code/modules/projectiles/guns/projectile/pistol.dm @@ -138,7 +138,7 @@ firemodes = list( list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), - list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=2, burst_accuracy=list(1,0,0), dispersion=list(0, 10)) + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=null, burst_accuracy=list(1,0,0), dispersion=list(0, 10)) ) diff --git a/code/modules/projectiles/guns/projectile/sniper.dm b/code/modules/projectiles/guns/projectile/sniper.dm index 01ae0c29735..85270fe7509 100644 --- a/code/modules/projectiles/guns/projectile/sniper.dm +++ b/code/modules/projectiles/guns/projectile/sniper.dm @@ -200,7 +200,7 @@ firemodes = list( list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), - list(mode_name="2-round bursts", burst=2, fire_delay=null, move_delay=4, burst_accuracy=list(0,-1,-1), dispersion=list(0, 8)) + list(mode_name="2-round bursts", burst=2, fire_delay=null, move_delay=null, burst_accuracy=list(0,-1,-1), dispersion=list(0, 8)) ) /obj/item/gun/projectile/automatic/rifle/w556/verb/scope() diff --git a/html/changelogs/mattatlas-gunsnguns.yml b/html/changelogs/mattatlas-gunsnguns.yml new file mode 100644 index 00000000000..773ad26d10c --- /dev/null +++ b/html/changelogs/mattatlas-gunsnguns.yml @@ -0,0 +1,42 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: MattAtlas + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "Removed extra move delay on a lot of automatic guns." + - bugfix: "Fixed recoil not working properly."