diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm
index e6a5fc09e44..40c074c9394 100644
--- a/code/game/objects/items/weapons/handcuffs.dm
+++ b/code/game/objects/items/weapons/handcuffs.dm
@@ -99,6 +99,9 @@
cuffs.loc = target
target.handcuffed = cuffs
target.update_inv_handcuffed()
+ target.drop_r_hand()
+ target.drop_l_hand()
+ target.stop_pulling()
return 1
/obj/item/weapon/handcuffs/equipped(var/mob/living/user,var/slot)
@@ -212,50 +215,12 @@ var/last_chew = 0
elastic = 0
cuff_sound = 'sound/weapons/handcuffs.ogg' //This shold work for now.
-/obj/item/weapon/handcuffs/legcuffs/bola
- name = "bola"
- desc = "Keeps prey in line."
- elastic = 1
- use_time = 0
- breakouttime = 30
- cuff_sound = 'sound/weapons/towelwipe.ogg' //Is there anything this sound can't do?
-
/obj/item/weapon/handcuffs/legcuffs/get_worn_icon_state(var/slot_name)
if(slot_name == slot_legcuffed_str)
return "legcuff1"
return ..()
-/obj/item/weapon/handcuffs/legcuffs/bola/can_place(var/mob/target, var/mob/user)
- if(user) //A ranged legcuff, until proper implementation as items it remains a projectile-only thing.
- return 1
-
-/obj/item/weapon/handcuffs/legcuffs/bola/dropped()
- visible_message("\The [src] falls apart!")
- qdel(src)
-
-/obj/item/weapon/handcuffs/legcuffs/bola/place_legcuffs(var/mob/living/carbon/target, var/mob/user)
- playsound(src.loc, cuff_sound, 30, 1, -2)
-
- var/mob/living/carbon/human/H = target
- if(!istype(H))
- src.dropped()
- return 0
-
- if(!H.has_organ_for_slot(slot_legcuffed))
- H.visible_message("\The [src] slams into [H], but slides off!")
- src.dropped()
- return 0
-
- H.visible_message("\The [H] has been snared by \the [src]!")
-
- // Apply cuffs.
- var/obj/item/weapon/handcuffs/legcuffs/lcuffs = src
- lcuffs.loc = target
- target.legcuffed = lcuffs
- target.update_inv_legcuffed()
- return 1
-
/obj/item/weapon/handcuffs/legcuffs/attack(var/mob/living/carbon/C, var/mob/living/user)
if(!user.IsAdvancedToolUser())
return
@@ -316,6 +281,10 @@ var/last_chew = 0
lcuffs.loc = target
target.legcuffed = lcuffs
target.update_inv_legcuffed()
+ if(target.m_intent != "walk")
+ target.m_intent = "walk"
+ if(target.hud_used && user.hud_used.move_intent)
+ target.hud_used.move_intent.icon_state = "walking"
return 1
/obj/item/weapon/handcuffs/legcuffs/equipped(var/mob/living/user,var/slot)
@@ -325,3 +294,46 @@ var/last_chew = 0
user.m_intent = "walk"
if(user.hud_used && user.hud_used.move_intent)
user.hud_used.move_intent.icon_state = "walking"
+
+
+/obj/item/weapon/handcuffs/legcuffs/bola
+ name = "bola"
+ desc = "Keeps prey in line."
+ elastic = 1
+ use_time = 0
+ breakouttime = 30
+ cuff_sound = 'sound/weapons/towelwipe.ogg' //Is there anything this sound can't do?
+
+/obj/item/weapon/handcuffs/legcuffs/bola/can_place(var/mob/target, var/mob/user)
+ if(user) //A ranged legcuff, until proper implementation as items it remains a projectile-only thing.
+ return 1
+
+/obj/item/weapon/handcuffs/legcuffs/bola/dropped()
+ visible_message("\The [src] falls apart!")
+ qdel(src)
+
+/obj/item/weapon/handcuffs/legcuffs/bola/place_legcuffs(var/mob/living/carbon/target, var/mob/user)
+ playsound(src.loc, cuff_sound, 30, 1, -2)
+
+ var/mob/living/carbon/human/H = target
+ if(!istype(H))
+ src.dropped()
+ return 0
+
+ if(!H.has_organ_for_slot(slot_legcuffed))
+ H.visible_message("\The [src] slams into [H], but slides off!")
+ src.dropped()
+ return 0
+
+ H.visible_message("\The [H] has been snared by \the [src]!")
+
+ // Apply cuffs.
+ var/obj/item/weapon/handcuffs/legcuffs/lcuffs = src
+ lcuffs.loc = target
+ target.legcuffed = lcuffs
+ target.update_inv_legcuffed()
+ if(target.m_intent != "walk")
+ target.m_intent = "walk"
+ if(target.hud_used && user.hud_used.move_intent)
+ target.hud_used.move_intent.icon_state = "walking"
+ return 1
\ No newline at end of file