diff --git a/code/modules/projectiles/guns/misc/chem_gun.dm b/code/modules/projectiles/guns/misc/chem_gun.dm
index 82539ddc09..9ec9ed8a0e 100644
--- a/code/modules/projectiles/guns/misc/chem_gun.dm
+++ b/code/modules/projectiles/guns/misc/chem_gun.dm
@@ -19,7 +19,7 @@
var/last_synth = 0
var/obj/item/reagent_containers/glass/bottle/vial/vial
var/list/allowed_containers = list(/obj/item/reagent_containers/glass/bottle/vial/small, /obj/item/reagent_containers/glass/bottle/vial/large)
- var/quickload = TRUE //
+ var/quickload = TRUE
/obj/item/gun/chem/Initialize()
. = ..()
@@ -54,11 +54,34 @@
/obj/item/gun/chem/attackby(obj/item/I, mob/living/user)
if((istype(I, /obj/item/reagent_containers/glass/bottle/vial)))
if(vial)
+ if(!quickload)
+ to_chat(user, "[src] can not hold more than one vial!")
+ return FALSE
+ unload_hypo(vial, user)
+ else
+ var/obj/item/reagent_containers/glass/bottle/vial/V = I
+ if(!is_type_in_list(V, allowed_containers))
+ to_chat(user, "[src] doesn't accept this type of vial.")
+ return FALSE
+ if(!user.transferItemToLoc(V,src))
+ return FALSE
+ vial = V
+ user.visible_message("[user] has loaded a vial into [src].","You have loaded [vial] into [src].")
+ update_icon()
+ playsound(loc, 'sound/weapons/autoguninsert.ogg', 35, 1)
+ return TRUE
+ else
+ to_chat(user, "This doesn't fit in [src].")
+ return FALSE
+
+/*
+/obj/item/hypospray/mkii/attackby(obj/item/I, mob/living/user)
+ if((istype(I, /obj/item/reagent_containers/glass/bottle/vial) && vial != null))
if(!quickload)
to_chat(user, "[src] can not hold more than one vial!")
return FALSE
unload_hypo(vial, user)
- else
+ if((istype(I, /obj/item/reagent_containers/glass/bottle/vial)))
var/obj/item/reagent_containers/glass/bottle/vial/V = I
if(!is_type_in_list(V, allowed_containers))
to_chat(user, "[src] doesn't accept this type of vial.")
@@ -73,17 +96,15 @@
else
to_chat(user, "This doesn't fit in [src].")
return FALSE
+*/
/obj/item/gun/chem/on_attack_hand(mob/user, act_intent = user.a_intent, unarmed_attack_flags)
. = ..() //Don't bother changing this or removing it from containers will break.
/obj/item/gun/chem/attack_self(mob/living/user)
- if(user && user.incapacitated())
- if(user.incapacitated())
- return
- else if(!vial)
+ if(user && !user.incapacitated())
+ if(!vial)
to_chat(user, "This Hypo needs to be loaded first!")
- return
else
unload_hypo(vial,user)