diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm
index 04f7825c999..327afcb2a2b 100644
--- a/code/game/objects/items/stacks/medical.dm
+++ b/code/game/objects/items/stacks/medical.dm
@@ -73,7 +73,7 @@
else if(user.gender == FEMALE)
t_himself = "herself"
user.visible_message("[user] starts to apply [src] on [t_himself]...", "You begin applying [src] on yourself...")
- if(!do_mob(user, M, self_delay))
+ if(!do_mob(user, M, self_delay, extra_checks=CALLBACK(M, /mob/living/proc/can_inject,user,1)))
return
user.visible_message("[user] applies [src] on [t_himself].", "You apply [src] on yourself.")
diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm
index 46a9d30f8fc..0cb848974af 100644
--- a/code/modules/reagents/reagent_containers/syringes.dm
+++ b/code/modules/reagents/reagent_containers/syringes.dm
@@ -80,7 +80,7 @@
target.visible_message("[user] is trying to take a blood sample from [target]!", \
"[user] is trying to take a blood sample from [target]!")
busy = 1
- if(!do_mob(user, target))
+ if(!do_mob(user, target, extra_checks=CALLBACK(L, /mob/living/proc/can_inject,user,1)))
busy = 0
return
if(reagents.total_volume >= reagents.maximum_volume)
@@ -123,13 +123,12 @@
if(L != user)
L.visible_message("[user] is trying to inject [L]!", \
"[user] is trying to inject [L]!")
- if(!do_mob(user, L))
+ if(!do_mob(user, L, extra_checks=CALLBACK(L, /mob/living/proc/can_inject,user,1)))
return
if(!reagents.total_volume)
return
if(L.reagents.total_volume >= L.reagents.maximum_volume)
return
-
L.visible_message("[user] injects [L] with the syringe!", \
"[user] injects [L] with the syringe!")