diff --git a/code/datums/components/crafting/recipes.dm b/code/datums/components/crafting/recipes.dm index a87496a212..bc76082f0a 100644 --- a/code/datums/components/crafting/recipes.dm +++ b/code/datums/components/crafting/recipes.dm @@ -24,11 +24,3 @@ /datum/crafting_recipe/proc/check_requirements(mob/user, list/collected_requirements) return TRUE -/datum/crafting_recipe/gripperoffbrand - name = "Improvised Gripper Gloves" - reqs = list( - /obj/item/clothing/gloves/fingerless = 1 - // /obj/item/stack/sticky_tape = 1 - ) - result = /obj/item/clothing/gloves/tackler/offbrand - category = CAT_CLOTHING diff --git a/code/datums/components/crafting/recipes/recipes_clothing.dm b/code/datums/components/crafting/recipes/recipes_clothing.dm index b9e3c379b4..b065ce2f25 100644 --- a/code/datums/components/crafting/recipes/recipes_clothing.dm +++ b/code/datums/components/crafting/recipes/recipes_clothing.dm @@ -303,3 +303,16 @@ /obj/item/stack/cable_coil = 10) time = 100 //Takes awhile to put all the garlics on the coil and knot it. category = CAT_CLOTHING + +/datum/crafting_recipe/gripperoffbrand + name = "Improvised Gripper Gloves" + reqs = list( + /obj/item/clothing/gloves/fingerless = 1, + // /obj/item/stack/sticky_tape = 1 + /obj/item/stack/cable_coil = 5, + /obj/item/stack/sheet/cloth = 2, + ) + result = /obj/item/clothing/gloves/tackler/offbrand + category = CAT_CLOTHING + tools = list(TOOL_WIRECUTTER) + time = 20 diff --git a/code/datums/components/tackle.dm b/code/datums/components/tackle.dm index 8ffa6c5452..1134f310aa 100644 --- a/code/datums/components/tackle.dm +++ b/code/datums/components/tackle.dm @@ -84,8 +84,8 @@ to_chat(user, "You're not ready to tackle!") return - if(user.has_status_effect(STATUS_EFFECT_TASED)) // can't tackle if you just got shoved - to_chat(user, "You cant tackle while you are tased!") + if(user.has_status_effect(STATUS_EFFECT_TASED)) // can't tackle if you just got tased + to_chat(user, "You can't tackle while tased!") return user.face_atom(A) @@ -353,7 +353,7 @@ if(94 to 98) user.visible_message("[user] slams face-first into [hit] with a concerning squish, immediately going limp!", "You slam face-first into [hit], and immediately lose consciousness!") - user.adjustStaminaLoss(30) + user.adjustStaminaLoss(100) user.adjustBruteLoss(30) user.Unconscious(100) user.gain_trauma_type(BRAIN_TRAUMA_MILD) @@ -370,7 +370,7 @@ if(prob(80)) user.gain_trauma(/datum/brain_trauma/mild/concussion) user.playsound_local(get_turf(user), 'sound/weapons/flashbang.ogg', 100, TRUE, 8, 0.9) - user.Knockdown(40) + user.DefaultCombatKnockdown(40) shake_camera(user, 5, 5) user.overlay_fullscreen("flash", /obj/screen/fullscreen/flash) user.clear_fullscreen("flash", 2.5) @@ -380,14 +380,14 @@ user.adjustStaminaLoss(30) user.adjustBruteLoss(10) user.confused += 10 - user.Knockdown(30) + user.DefaultCombatKnockdown(30) shake_camera(user, 3, 4) if(1 to 63) user.visible_message("[user] slams into [hit]!", "You slam into [hit]!") user.adjustStaminaLoss(20) user.adjustBruteLoss(10) - user.Knockdown(30) + user.DefaultCombatKnockdown(30) shake_camera(user, 2, 2) playsound(user, 'sound/weapons/smash.ogg', 70, TRUE) @@ -413,13 +413,14 @@ //shard.AddElement(/datum/element/embed, shard.embedding) W.obj_destruction() user.adjustStaminaLoss(10 * speed) - user.Paralyze(30) + user.DefaultCombatKnockdown(40) + user.Paralyze(5) user.visible_message("[user] slams into [W] and shatters it, shredding [user.p_them()]self with glass!", "You slam into [W] and shatter it, shredding yourself with glass!") else user.visible_message("[user] slams into [W] like a bug, then slowly slides off it!", "You slam into [W] like a bug, then slowly slide off it!") - user.Paralyze(10) - user.Knockdown(30) + user.Paralyze(2) + user.DefaultCombatKnockdown(20) W.take_damage(20 * speed) user.adjustStaminaLoss(10 * speed) user.adjustBruteLoss(5 * speed) @@ -464,8 +465,8 @@ owner.visible_message("[owner] trips over [kevved] and slams into it face-first[HOW_big_of_a_miss_did_we_just_make]!", "You trip over [kevved] and slam into it face-first[HOW_big_of_a_miss_did_we_just_make]!") owner.adjustStaminaLoss(20 + messes.len * 2) owner.adjustBruteLoss(10 + messes.len) - owner.Paralyze(5 * messes.len) // half a second of paralyze for each thing you knock around - owner.Knockdown(20 + 5 * messes.len) // 2 seconds of knockdown after the paralyze + owner.Paralyze(2 * messes.len) + owner.DefaultCombatKnockdown(20 + 5 * messes.len) // 2 seconds of knockdown after the paralyze for(var/obj/item/I in messes) var/dist = rand(1, 3) diff --git a/code/game/gamemodes/clown_ops/clown_ops.dm b/code/game/gamemodes/clown_ops/clown_ops.dm index d0914b8d8f..11898701fa 100644 --- a/code/game/gamemodes/clown_ops/clown_ops.dm +++ b/code/game/gamemodes/clown_ops/clown_ops.dm @@ -37,7 +37,7 @@ uniform = /obj/item/clothing/under/syndicate shoes = /obj/item/clothing/shoes/clown_shoes/combat mask = /obj/item/clothing/mask/gas/clown_hat - gloves = /obj/item/clothing/gloves/tackler/combat/insulated + gloves = /obj/item/clothing/gloves/combat back = /obj/item/storage/backpack/clown ears = /obj/item/radio/headset/syndicate/alt l_pocket = /obj/item/pinpointer/nuke/syndicate diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index 5da95bbd3a..93852e917c 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -120,7 +120,7 @@ uniform = /obj/item/clothing/under/syndicate shoes = /obj/item/clothing/shoes/combat - gloves = /obj/item/clothing/gloves/tackler/combat/insulated + gloves = /obj/item/clothing/gloves/combat ears = /obj/item/radio/headset/syndicate/alt l_pocket = /obj/item/pinpointer/nuke/syndicate id = /obj/item/card/id/syndicate diff --git a/code/modules/antagonists/bloodsucker/powers/fortitude.dm b/code/modules/antagonists/bloodsucker/powers/fortitude.dm index bae802c176..76f3cc77a4 100644 --- a/code/modules/antagonists/bloodsucker/powers/fortitude.dm +++ b/code/modules/antagonists/bloodsucker/powers/fortitude.dm @@ -31,7 +31,6 @@ was_running = (user.m_intent == MOVE_INTENT_RUN) if(was_running) user.toggle_move_intent() - was_running = TRUE while(B && ContinueActive(user) || user.m_intent == MOVE_INTENT_RUN) if(istype(user.buckled, /obj/vehicle)) //We dont want people using fortitude being able to use vehicles var/obj/vehicle/V = user.buckled diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm index 8bdaeefb8b..a37dc8b638 100644 --- a/code/modules/clothing/gloves/miscellaneous.dm +++ b/code/modules/clothing/gloves/miscellaneous.dm @@ -154,7 +154,7 @@ armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 30) strip_mod = 0.9 -/obj/item/clothing/gloves/tackler/combat/insulated +/obj/item/clothing/gloves/combat name = "combat gloves" desc = "These tactical gloves are fireproof and shock resistant." icon_state = "combat" diff --git a/code/modules/clothing/gloves/tacklers.dm b/code/modules/clothing/gloves/tacklers.dm index f11c7ccd6b..54a7b28d5f 100644 --- a/code/modules/clothing/gloves/tacklers.dm +++ b/code/modules/clothing/gloves/tacklers.dm @@ -70,7 +70,7 @@ resistance_flags = NONE /obj/item/clothing/gloves/tackler/combat/insulated - name = "guerilla gloves" + name = "guerrilla gloves" desc = "Superior quality combative gloves, good for performing tackle takedowns as well as absorbing electrical shocks." siemens_coefficient = 0 permeability_coefficient = 0.05 diff --git a/code/modules/clothing/outfits/ert.dm b/code/modules/clothing/outfits/ert.dm index 43df2eec2f..7cd2e9b394 100644 --- a/code/modules/clothing/outfits/ert.dm +++ b/code/modules/clothing/outfits/ert.dm @@ -69,8 +69,8 @@ id = /obj/item/card/id/ert/Security suit = /obj/item/clothing/suit/space/hardsuit/ert/sec glasses = /obj/item/clothing/glasses/hud/security/sunglasses - gloves = /obj/item/clothing/gloves/tackler/combat/insulated belt = /obj/item/storage/belt/security/full + back = /obj/item/storage/backpack/security backpack_contents = list(/obj/item/storage/box/engineer=1,\ /obj/item/storage/box/handcuffs=1,\ /obj/item/clothing/mask/gas/sechailer=1,\ diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index a1fc5edcd3..75908888f2 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -98,7 +98,7 @@ /mob/living/carbon/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) . = ..() var/hurt = TRUE - if(src.GetComponent(/datum/component/tackler)) + if(GetComponent(/datum/component/tackler)) return if(throwingdatum?.thrower && iscyborg(throwingdatum.thrower)) var/mob/living/silicon/robot/R = throwingdatum.thrower diff --git a/code/modules/uplink/uplink_items/uplink_clothing.dm b/code/modules/uplink/uplink_items/uplink_clothing.dm index d6336bd982..014e0452b5 100644 --- a/code/modules/uplink/uplink_items/uplink_clothing.dm +++ b/code/modules/uplink/uplink_items/uplink_clothing.dm @@ -89,4 +89,11 @@ name = "Wall Walking Boots" desc = "Through bluespace magic stolen from an organisation that hoards technology, these boots simply allow you to slip through the atoms that make up anything, but only while walking, for safety reasons. As well as this, they unfortunately cause minor breath loss as the majority of atoms in your lungs are sucked out into any solid object you walk through." item = /obj/item/clothing/shoes/wallwalkers - cost = 6 \ No newline at end of file + cost = 6 + +/datum/uplink_item/device_tools/guerillagloves + name = "Guerilla Gloves" + desc = "A pair of highly robust combat gripper gloves that excels at performing takedowns at close range, with an added lining of insulation. Careful not to hit a wall!" + item = /obj/item/clothing/gloves/tackler/combat/insulated + include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops) + cost = 2