diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm
index 1a251c02cc9..a6c371d15fe 100644
--- a/code/modules/mob/living/living.dm
+++ b/code/modules/mob/living/living.dm
@@ -540,6 +540,7 @@
if(C.handcuffed)
C.handcuffed = null
C.update_inv_handcuffed(0)
+ return
else
C.legcuffed = null
C.update_inv_legcuffed(0)
@@ -571,18 +572,19 @@
C.visible_message("[C] attempts to remove [I]!")
C << "You attempt to remove [I]. (This will take around [displaytime] minutes and you need to stand still.)"
spawn(0)
- if(do_after(C, breakouttime))
+ if(do_after(C, breakouttime, 10))
if(!I || C.buckled)
return
C.visible_message("[C] manages to remove [I]!")
C << "You successfully remove [I]."
if(C.handcuffed)
- C.handcuffed.loc = usr.loc
+ C.handcuffed.loc = C.loc
C.handcuffed = null
C.update_inv_handcuffed(0)
+ return
if(C.legcuffed)
- C.legcuffed.loc = usr.loc
+ C.legcuffed.loc = C.loc
C.legcuffed = null
C.update_inv_legcuffed(0)
else