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