diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 29dc32db338..087bffa4f61 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -229,6 +229,8 @@ var/current_skin ///// List of options to reskin. var/list/unique_reskin + /// Do we apply a click cooldown when resisting this object if it is restraining them? + var/resist_cooldown = CLICK_CD_BREAKOUT /obj/item/Initialize(mapload) if(attack_verb_continuous) diff --git a/code/game/objects/items/handcuffs.dm b/code/game/objects/items/handcuffs.dm index 1d8adbbb278..192842e6447 100644 --- a/code/game/objects/items/handcuffs.dm +++ b/code/game/objects/items/handcuffs.dm @@ -175,6 +175,7 @@ desc = "Fake handcuffs meant for gag purposes." breakouttime = 1 SECONDS restraint_strength = HANDCUFFS_TYPE_WEAK + resist_cooldown = CLICK_CD_SLOW /** * # Cable restraints @@ -356,6 +357,7 @@ name = "fake zipties" desc = "Fake zipties meant for gag purposes." breakouttime = 1 SECONDS + resist_cooldown = CLICK_CD_SLOW /obj/item/restraints/handcuffs/cable/zipties/fake/used desc = "A pair of broken fake zipties." diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index ffd82716b7c..df8010d9797 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -254,7 +254,7 @@ var/obj/item/restraints/cuffs = src.get_item_by_slot(ITEM_SLOT_HANDCUFFED) buckle_cd = cuffs.breakouttime - visible_message(span_warning("[src] attempts to unbuckle [p_them()]self!"), + visible_message(span_warning("[src] attempts to unbuckle [p_them()]self!"), span_notice("You attempt to unbuckle yourself... \ (This will take around [DisplayTimeText(buckle_cd)] and you must stay still.)")) @@ -262,7 +262,7 @@ if(buckled) to_chat(src, span_warning("You fail to unbuckle yourself!")) return - + if(QDELETED(src) || isnull(buckled)) return @@ -283,8 +283,8 @@ type = 2 if(I) if(type == 1) - changeNext_move(CLICK_CD_BREAKOUT) - last_special = world.time + CLICK_CD_BREAKOUT + changeNext_move(I.resist_cooldown) + last_special = world.time + I.resist_cooldown if(type == 2) changeNext_move(CLICK_CD_RANGE) last_special = world.time + CLICK_CD_RANGE