diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index a1de1580f42..03d610af63f 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -10,7 +10,9 @@ w_class = 2.0 throw_speed = 3 throw_range = 7 - amount_per_transfer_from_this = 10 + var/spray_maxrange = 3 //what the sprayer will set spray_currentrange to in the attack_self. + var/spray_currentrange = 3 //the range of tiles the sprayer will reach when in fixed mode. + amount_per_transfer_from_this = 5 volume = 250 possible_transfer_amounts = null @@ -41,17 +43,12 @@ return var/obj/effect/decal/chempuff/D = new/obj/effect/decal/chempuff(get_turf(src)) - var/tiles =1 D.create_reagents(amount_per_transfer_from_this) - if(amount_per_transfer_from_this >=10) - tiles =1 - else - tiles =3 - reagents.trans_to(D, amount_per_transfer_from_this, 1/tiles) + reagents.trans_to(D, amount_per_transfer_from_this, 1/spray_currentrange) D.color = mix_color_from_reagents(D.reagents.reagent_list) spawn(0) - for(var/i=0, iYou [amount_per_transfer_from_this == 10 ? "remove" : "fix"] the nozzle. You'll now use [amount_per_transfer_from_this] units per spray." @@ -116,7 +115,8 @@ icon_state = "pepperspray" item_state = "pepperspray" volume = 40 - amount_per_transfer_from_this = 10 + spray_maxrange = 4 + amount_per_transfer_from_this = 5 /obj/item/weapon/reagent_containers/spray/pepper/New() @@ -143,12 +143,15 @@ //chemsprayer /obj/item/weapon/reagent_containers/spray/chemsprayer name = "chem sprayer" - desc = "A utility used to spray large amounts of reagent in a given area." + desc = "A utility used to spray large amounts of reagents in a given area." icon = 'icons/obj/gun.dmi' icon_state = "chemsprayer" item_state = "chemsprayer" throwforce = 0 w_class = 3.0 + spray_maxrange = 7 + spray_currentrange = 7 + amount_per_transfer_from_this = 10 volume = 600 origin_tech = "combat=3;materials=3;engineering=3" @@ -205,7 +208,7 @@ var/turf/my_target = pick(the_targets) the_targets -= my_target - for(var/j=1, j<=rand(6,8), j++) + for(var/j=0, j<=spray_currentrange, j++) step_towards(D, my_target) D.reagents.reaction(get_turf(D)) for(var/atom/t in get_turf(D)) @@ -214,6 +217,7 @@ qdel(D) playsound(src.loc, 'sound/effects/spray2.ogg', 50, 1, -6) + user.changeNext_move(4) if(reagents.has_reagent("sacid")) message_admins("[key_name_admin(user)] fired sulphuric acid from a chem sprayer.") @@ -226,6 +230,11 @@ log_game("[key_name(user)] fired Space lube from a chem sprayer.") return +/obj/item/weapon/reagent_containers/spray/chemsprayer/attack_self(var/mob/user) + + amount_per_transfer_from_this = (amount_per_transfer_from_this == 10 ? 5 : 10) + user << "You adjust the output switch. You'll now use [amount_per_transfer_from_this] units per spray." + /obj/item/weapon/reagent_containers/spray/chemsprayer/bioterror/New() ..() reagents.add_reagent("spore", 150)