diff --git a/code/game/objects/items/handcuffs.dm b/code/game/objects/items/handcuffs.dm index 627f3298ccd4..01f147a1b1d0 100644 --- a/code/game/objects/items/handcuffs.dm +++ b/code/game/objects/items/handcuffs.dm @@ -217,7 +217,7 @@ desc = "Use this to keep prisoners in line." gender = PLURAL icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "handcuff" + icon_state = "legcuff" lefthand_file = 'icons/mob/inhands/equipment/security_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/security_righthand.dmi' flags_1 = CONDUCT_1 @@ -235,6 +235,17 @@ var/armed = 0 var/trap_damage = 20 +/obj/item/restraints/legcuffs/beartrap/goliath + name = "tentacle mass" + desc = "Ew." + icon_state = "goliathtrap" + flags_1 = NONE + slowdown = 10 + breakouttime = 5 SECONDS + item_flags = DROPDEL + armed = 1 + trap_damage = 0 + /obj/item/restraints/legcuffs/beartrap/Initialize() . = ..() update_appearance() @@ -294,8 +305,8 @@ snap = FALSE if(snap) close_trap() - L.visible_message("[L] triggers \the [src].", \ - "You trigger \the [src]!") + L.visible_message("[L] gets caught by \the [src]!", \ + "You get caught by \the [src]!") L.apply_damage(trap_damage, BRUTE, def_zone) /obj/item/restraints/legcuffs/beartrap/energy diff --git a/code/modules/mob/living/carbon/carbon_defines.dm b/code/modules/mob/living/carbon/carbon_defines.dm index 7d06c9e1f827..a7dc41b307c4 100644 --- a/code/modules/mob/living/carbon/carbon_defines.dm +++ b/code/modules/mob/living/carbon/carbon_defines.dm @@ -15,7 +15,7 @@ var/silent = 0 ///Can't talk. Value goes down every life proc. NOTE TO FUTURE CODERS: DO NOT INITIALIZE NUMERICAL VARS AS NULL OR I WILL MURDER YOU. var/dreaming = 0 ///How many dream images we have left to send - var/obj/item/handcuffed = null///Whether or not the mob is handcuffed + var/obj/item/handcuffed = null ///Whether or not the mob is handcuffed var/obj/item/legcuffed = null ///Same as handcuffs but for legs. Bear traps use this. var/disgust = 0 diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index d7d6754b0e5d..a0e409c2053d 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -571,7 +571,7 @@ There are several things that need to be remembered: remove_overlay(LEGCUFF_LAYER) clear_alert("legcuffed") if(legcuffed) - overlays_standing[LEGCUFF_LAYER] = mutable_appearance('icons/mob/mob.dmi', "legcuff1", -LEGCUFF_LAYER) + overlays_standing[LEGCUFF_LAYER] = mutable_appearance('icons/mob/mob.dmi', legcuffed.icon_state, -LEGCUFF_LAYER) apply_overlay(LEGCUFF_LAYER) throw_alert("legcuffed", /atom/movable/screen/alert/restrained/legcuffed, new_master = src.legcuffed) diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm index 1fa691b85de7..c078196749fc 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm @@ -328,7 +328,7 @@ for(var/mob/living/L in loc) if((!QDELETED(spawner) && spawner.faction_check_mob(L)) || L.stat == DEAD) continue - visible_message("[src] grabs hold of [L]!") + visible_message("[src] wraps a mass of tentacles around [L]!") on_hit(L) latched = TRUE if(!latched) @@ -337,10 +337,11 @@ deltimer(timerid) timerid = addtimer(CALLBACK(src, PROC_REF(retract)), 10, TIMER_STOPPABLE) -/obj/effect/temp_visual/goliath_tentacle/proc/on_hit(mob/living/L) - L.Stun(100) - L.adjustBruteLoss(rand(10,15)) - +/obj/effect/temp_visual/goliath_tentacle/proc/on_hit(mob/living/target) + target.apply_damage(rand(20,30), BRUTE, pick(BODY_ZONE_L_LEG, BODY_ZONE_R_LEG)) + if(iscarbon(target)) + var/obj/item/restraints/legcuffs/beartrap/goliath/B = new /obj/item/restraints/legcuffs/beartrap/goliath(get_turf(target)) + B.on_entered(src, target) /obj/effect/temp_visual/goliath_tentacle/proc/retract() icon_state = "marker" diff --git a/icons/mob/mob.dmi b/icons/mob/mob.dmi index 64d0cc4ef8ce..142386586679 100644 Binary files a/icons/mob/mob.dmi and b/icons/mob/mob.dmi differ diff --git a/icons/obj/items_and_weapons.dmi b/icons/obj/items_and_weapons.dmi index 5748d2dec958..7a20a687e055 100644 Binary files a/icons/obj/items_and_weapons.dmi and b/icons/obj/items_and_weapons.dmi differ