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!")