* Shibari!

Added a new scene item, shibari bindings!
These by default only cover the torso, but by clicking on them in your hands, they can also be set to bind arms and legs, acting in a similar way to handcuffs. They are worn in the suit slot.

They can be found in the costume vendors, maint and the restraints crate from cargo.

They have sprites for humanoid mobs and digitigrade legs, but not tesh yet.

* Fix mistake

Fixes error in previous commit

* Update code/game/objects/items/weapons/handcuffs.dm

Co-authored-by: ShadowLarkens <shadowlarkens@gmail.com>

* Update code/modules/mob/living/carbon/human/human.dm

Co-authored-by: ShadowLarkens <shadowlarkens@gmail.com>

* Make these defines to prevent copy paste errors

---------

Co-authored-by: ShadowLarkens <shadowlarkens@gmail.com>
Co-authored-by: Cameron Lennox <killer65311@gmail.com>
This commit is contained in:
SatinIsle
2025-09-21 22:52:55 +01:00
committed by GitHub
parent 656c525780
commit 14cdd67eed
14 changed files with 128 additions and 8 deletions
@@ -269,6 +269,10 @@
return 1
if (istype(wear_suit, /obj/item/clothing/suit/straight_jacket))
return 1
if (istype(wear_suit, /obj/item/clothing/suit/shibari))
var/obj/item/clothing/suit/shibari/s = wear_suit
if(s.rope_mode == "Arms" || s.rope_mode == "Arms and Legs")
return 1
return 0
/mob/living/carbon/human/var/co2overloadtime = null
@@ -1,5 +1,5 @@
/mob/living/carbon/human/resist_restraints()
if(wear_suit && istype(wear_suit, /obj/item/clothing/suit/straight_jacket))
if(wear_suit && (istype(wear_suit, /obj/item/clothing/suit/straight_jacket) || istype(wear_suit, /obj/item/clothing/suit/shibari)))
return escape_straight_jacket()
return ..()
@@ -14,10 +14,16 @@
break_straight_jacket()
return
var/breakouttime
var/mob/living/carbon/human/H = src
var/obj/item/clothing/suit/straight_jacket/SJ = H.wear_suit
if(istype(wear_suit, /obj/item/clothing/suit/straight_jacket))
var/obj/item/clothing/suit/straight_jacket/S = H.wear_suit
breakouttime = S.resist_time
if(istype(wear_suit, /obj/item/clothing/suit/shibari))
var/obj/item/clothing/suit/shibari/S = H.wear_suit
breakouttime = S.resist_time
var/breakouttime = SJ.resist_time // Configurable per-jacket!
var/obj/item/clothing/suit/SJ = wear_suit
var/attack_type = RESIST_ATTACK_DEFAULT