diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm
index db4e890d60..54142ea35c 100644
--- a/code/game/objects/items/stacks/medical.dm
+++ b/code/game/objects/items/stacks/medical.dm
@@ -279,16 +279,25 @@
if(M == user && prob(75))
user.visible_message("\The [user] fumbles [src].", "You fumble [src].", "You hear something being wrapped.")
return
- var/obj/item/stack/medical/splint/S = split(1)
- if(S)
- if(affecting.apply_splint(S))
- S.forceMove(affecting)
- if (M != user)
+ if(ishuman(user))
+ var/obj/item/stack/medical/splint/S = split(1)
+ if(S)
+ if(affecting.apply_splint(S))
+ S.forceMove(affecting)
+ if (M != user)
+ user.visible_message("\The [user] finishes applying [src] to [M]'s [limb].", "You finish applying \the [src] to [M]'s [limb].", "You hear something being wrapped.")
+ else
+ user.visible_message("\The [user] successfully applies [src] to their [limb].", "You successfully apply \the [src] to your [limb].", "You hear something being wrapped.")
+ return
+ S.dropInto(src.loc) //didn't get applied, so just drop it
+ if(isrobot(user))
+ var/obj/item/stack/medical/splint/B = src
+ if(B)
+ if(affecting.apply_splint(B))
+ B.forceMove(affecting)
user.visible_message("\The [user] finishes applying [src] to [M]'s [limb].", "You finish applying \the [src] to [M]'s [limb].", "You hear something being wrapped.")
- else
- user.visible_message("\The [user] successfully applies [src] to their [limb].", "You successfully apply \the [src] to your [limb].", "You hear something being wrapped.")
- return
- S.dropInto(src.loc) //didn't get applied, so just drop it
+ B.use(1)
+ return
user.visible_message("\The [user] fails to apply [src].", "You fail to apply [src].", "You hear something being wrapped.")
return