From 0234874f65158bdfd2ccaf884efefc917a79f758 Mon Sep 17 00:00:00 2001
From: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Date: Wed, 5 Nov 2025 11:41:41 +1100
Subject: [PATCH] Krav Maga > Kaza Ruk: Tail sweep criminals (#93773)
---
_maps/RandomZLevels/caves.dmm | 2 +-
code/__DEFINES/melee.dm | 2 +-
.../martial/{krav_maga.dm => kaza_ruk.dm} | 178 +++++++++++-------
.../items/implants/implant_kaza_ruk.dm | 41 ++++
.../items/implants/implant_krav_maga.dm | 41 ----
code/game/objects/items/storage/garment.dm | 2 +-
.../game/objects/items/storage/uplink_kits.dm | 2 +-
.../modules/deathmatch/deathmatch_modifier.dm | 2 +-
.../modules/uplink/uplink_items/spy_unique.dm | 4 +-
tgstation.dme | 4 +-
10 files changed, 161 insertions(+), 117 deletions(-)
rename code/datums/martial/{krav_maga.dm => kaza_ruk.dm} (57%)
create mode 100644 code/game/objects/items/implants/implant_kaza_ruk.dm
delete mode 100644 code/game/objects/items/implants/implant_krav_maga.dm
diff --git a/_maps/RandomZLevels/caves.dmm b/_maps/RandomZLevels/caves.dmm
index 9891aa74685..77d1040d891 100644
--- a/_maps/RandomZLevels/caves.dmm
+++ b/_maps/RandomZLevels/caves.dmm
@@ -152,7 +152,7 @@
/area/awaymission/caves/bmp_asteroid/level_four)
"ba" = (
/obj/structure/table/wood/fancy,
-/obj/item/clothing/gloves/krav_maga/combatglovesplus,
+/obj/item/clothing/gloves/kaza_ruk/combatglovesplus,
/turf/open/floor/engine/cult,
/area/awaymission/caves/bmp_asteroid/level_four)
"bf" = (
diff --git a/code/__DEFINES/melee.dm b/code/__DEFINES/melee.dm
index c6bfbcddc76..7762381d0e9 100644
--- a/code/__DEFINES/melee.dm
+++ b/code/__DEFINES/melee.dm
@@ -4,7 +4,7 @@
#define MARTIALART_CQC "CQC"
#define MARTIALART_EVIL_BOXING "evil boxing"
#define MARTIALART_HUNTER_BOXING "hunter boxing"
-#define MARTIALART_KRAVMAGA "krav maga"
+#define MARTIALART_KAZA_RUK "Kaza Ruk"
#define MARTIALART_MUSHPUNCH "mushroom punch"
#define MARTIALART_PLASMAFIST "plasma fist"
#define MARTIALART_PSYCHOBRAWL "psychotic brawling"
diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/kaza_ruk.dm
similarity index 57%
rename from code/datums/martial/krav_maga.dm
rename to code/datums/martial/kaza_ruk.dm
index 1df05ac15ad..c70624369cd 100644
--- a/code/datums/martial/krav_maga.dm
+++ b/code/datums/martial/kaza_ruk.dm
@@ -1,19 +1,29 @@
-/datum/martial_art/krav_maga
- name = "Krav Maga"
- id = MARTIALART_KRAVMAGA
+/datum/martial_art/kaza_ruk
+ name = "Kaza Ruk"
+ id = MARTIALART_KAZA_RUK
+ grab_damage_modifier = 5
+ grab_escape_chance_modifier = -10
VAR_PRIVATE/datum/action/neck_chop/neckchop
- VAR_PRIVATE/datum/action/leg_sweep/legsweep
+ VAR_PRIVATE/datum/action/low_sweep/lowsweep
VAR_PRIVATE/datum/action/lung_punch/lungpunch
-/datum/martial_art/krav_maga/New()
+/datum/martial_art/kaza_ruk/activate_style(mob/living/new_holder)
+ . = ..()
+ RegisterSignal(new_holder, COMSIG_HUMAN_PUNCHED, PROC_REF(blow_followup))
+
+/datum/martial_art/kaza_ruk/deactivate_style(mob/living/old_holder)
+ . = ..()
+ UnregisterSignal(old_holder, COMSIG_HUMAN_PUNCHED)
+
+/datum/martial_art/kaza_ruk/New()
. = ..()
neckchop = new(src)
- legsweep = new(src)
+ lowsweep = new(src)
lungpunch = new(src)
-/datum/martial_art/krav_maga/Destroy()
+/datum/martial_art/kaza_ruk/Destroy()
neckchop = null
- legsweep = null
+ lowsweep = null
lungpunch = null
return ..()
@@ -36,24 +46,24 @@
owner.visible_message(span_danger("[owner] assumes the Neck Chop stance!"), "Your next attack will be a Neck Chop.")
source.streak = "neck_chop"
-/datum/action/leg_sweep
- name = "Leg Sweep"
+/datum/action/low_sweep
+ name = "Low Sweep"
desc = "Trips the victim, knocking them down for a brief moment."
button_icon = 'icons/mob/actions/actions_items.dmi'
button_icon_state = "legsweep"
check_flags = AB_CHECK_INCAPACITATED|AB_CHECK_HANDS_BLOCKED|AB_CHECK_CONSCIOUS
-/datum/action/leg_sweep/Trigger(mob/clicker, trigger_flags)
+/datum/action/low_sweep/Trigger(mob/clicker, trigger_flags)
. = ..()
if(!.)
return
var/datum/martial_art/source = target
- if (source.streak == "leg_sweep")
+ if (source.streak == "low_sweep")
owner.visible_message(span_danger("[owner] assumes a neutral stance."), "Your next attack is cleared.")
source.streak = ""
else
- owner.visible_message(span_danger("[owner] assumes the Leg Sweep stance!"), "Your next attack will be a Leg Sweep.")
- source.streak = "leg_sweep"
+ owner.visible_message(span_danger("[owner] assumes the Low Sweep stance!"), "Your next attack will be a Low Sweep.")
+ source.streak = "low_sweep"
/datum/action/lung_punch//referred to internally as 'quick choke'
name = "Lung Punch"
@@ -74,30 +84,30 @@
owner.visible_message(span_danger("[owner] assumes the Lung Punch stance!"), "Your next attack will be a Lung Punch.")
source.streak = "quick_choke"//internal name for lung punch
-/datum/martial_art/krav_maga/activate_style(mob/living/new_holder)
+/datum/martial_art/kaza_ruk/activate_style(mob/living/new_holder)
. = ..()
to_chat(new_holder, span_userdanger("You know the arts of [name]!"))
to_chat(new_holder, span_danger("Place your cursor over a move at the top of the screen to see what it does."))
neckchop.Grant(new_holder)
- legsweep.Grant(new_holder)
+ lowsweep.Grant(new_holder)
lungpunch.Grant(new_holder)
-/datum/martial_art/krav_maga/deactivate_style(mob/living/remove_from)
+/datum/martial_art/kaza_ruk/deactivate_style(mob/living/remove_from)
to_chat(remove_from, span_userdanger("You suddenly forget the arts of [name]..."))
neckchop?.Remove(remove_from)
- legsweep?.Remove(remove_from)
+ lowsweep?.Remove(remove_from)
lungpunch?.Remove(remove_from)
return ..()
-/datum/martial_art/krav_maga/proc/check_streak(mob/living/attacker, mob/living/defender)
+/datum/martial_art/kaza_ruk/proc/check_streak(mob/living/attacker, mob/living/defender)
switch(streak)
if("neck_chop")
streak = ""
neck_chop(attacker, defender)
return TRUE
- if("leg_sweep")
+ if("low_sweep")
streak = ""
- leg_sweep(attacker, defender)
+ low_sweep(attacker, defender)
return TRUE
if("quick_choke")//is actually lung punch
streak = ""
@@ -105,26 +115,40 @@
return TRUE
return FALSE
-/datum/martial_art/krav_maga/proc/leg_sweep(mob/living/attacker, mob/living/defender)
+/datum/martial_art/kaza_ruk/proc/low_sweep(mob/living/attacker, mob/living/defender)
if(defender.stat != CONSCIOUS || defender.IsParalyzed())
return MARTIAL_ATTACK_INVALID
if(HAS_TRAIT(attacker, TRAIT_PACIFISM))
return MARTIAL_ATTACK_INVALID // Does 5 damage, so we can't let pacifists leg sweep.
+
+ var/tail_sweeping = FALSE
+ var/sweeping_language = "leg"
+ if(ishuman(attacker))
+ var/mob/living/carbon/possible_human = attacker
+ var/obj/item/organ/tail/lizard/possible_lizard_tail = possible_human.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL)
+ if(possible_lizard_tail)
+ tail_sweeping = TRUE
+ sweeping_language = "tail"
+
defender.visible_message(
- span_warning("[attacker] leg sweeps [defender]!"),
+ span_warning("[attacker] [sweeping_language] sweeps [defender]!"),
span_userdanger("Your legs are sweeped by [attacker]!"),
span_hear("You hear a sickening sound of flesh hitting flesh!"),
null,
attacker,
)
- to_chat(attacker, span_danger("You leg sweep [defender]!"))
+ to_chat(attacker, span_danger("You [sweeping_language] sweep [defender]!"))
playsound(attacker, 'sound/effects/hit_kick.ogg', 50, TRUE, -1)
+
+ if(tail_sweeping)
+ attacker.emote("spin")
+
defender.apply_damage(5, BRUTE, BODY_ZONE_CHEST)
defender.Knockdown(6 SECONDS)
log_combat(attacker, defender, "leg sweeped")
return MARTIAL_ATTACK_SUCCESS
-/datum/martial_art/krav_maga/proc/quick_choke(mob/living/attacker, mob/living/defender)//is actually lung punch
+/datum/martial_art/kaza_ruk/proc/quick_choke(mob/living/attacker, mob/living/defender)//is actually lung punch
attacker.do_attack_animation(defender)
defender.visible_message(
span_warning("[attacker] pounds [defender] on the chest!"),
@@ -141,7 +165,7 @@
log_combat(attacker, defender, "quickchoked")
return MARTIAL_ATTACK_SUCCESS
-/datum/martial_art/krav_maga/proc/neck_chop(mob/living/attacker, mob/living/defender)
+/datum/martial_art/kaza_ruk/proc/neck_chop(mob/living/attacker, mob/living/defender)
if(HAS_TRAIT(attacker, TRAIT_PACIFISM))
return MARTIAL_ATTACK_INVALID // Does 10 damage, so we can't let pacifists neck chop.
attacker.do_attack_animation(defender)
@@ -159,39 +183,16 @@
log_combat(attacker, defender, "neck chopped")
return MARTIAL_ATTACK_SUCCESS
-/datum/martial_art/krav_maga/harm_act(mob/living/attacker, mob/living/defender)
- var/picked_hit_type = pick("punch", "kick")
- var/bonus_damage = 0
- if(defender.body_position == LYING_DOWN)
- bonus_damage += 5
- picked_hit_type = "stomp"
-
- if(defender.check_block(attacker, 10 + bonus_damage, "[attacker]'s [picked_hit_type]", UNARMED_ATTACK))
+/datum/martial_art/kaza_ruk/harm_act(mob/living/attacker, mob/living/defender)
+ if(defender.check_block(attacker, 10, attacker.name, UNARMED_ATTACK))
return MARTIAL_ATTACK_FAIL
+
if(check_streak(attacker, defender))
return MARTIAL_ATTACK_SUCCESS
- log_combat(attacker, defender, "[picked_hit_type]ed")
- var/obj/item/bodypart/affecting = defender.get_bodypart(defender.get_random_valid_zone(attacker.zone_selected))
- defender.apply_damage(10 + bonus_damage, attacker.get_attack_type(), affecting)
- if(picked_hit_type == "kick" || picked_hit_type == "stomp")
- attacker.do_attack_animation(defender, ATTACK_EFFECT_KICK)
- playsound(defender, 'sound/effects/hit_kick.ogg', 50, TRUE, -1)
- else
- attacker.do_attack_animation(defender, ATTACK_EFFECT_PUNCH)
- playsound(defender, 'sound/effects/hit_punch.ogg', 50, TRUE, -1)
- defender.visible_message(
- span_danger("[attacker] [picked_hit_type]s [defender]!"),
- span_userdanger("You're [picked_hit_type]ed by [attacker]!"),
- span_hear("You hear a sickening sound of flesh hitting flesh!"),
- COMBAT_MESSAGE_RANGE,
- attacker,
- )
- to_chat(attacker, span_danger("You [picked_hit_type] [defender]!"))
- log_combat(attacker, defender, "[picked_hit_type] with [name]")
- return MARTIAL_ATTACK_SUCCESS
+ return MARTIAL_ATTACK_INVALID
-/datum/martial_art/krav_maga/disarm_act(mob/living/attacker, mob/living/defender)
+/datum/martial_art/kaza_ruk/disarm_act(mob/living/attacker, mob/living/defender)
if(defender.check_block(attacker, 0, attacker.name, UNARMED_ATTACK))
return MARTIAL_ATTACK_FAIL
if(check_streak(attacker, defender))
@@ -208,22 +209,65 @@
)
to_chat(attacker, span_danger("You disarm [defender]!"))
playsound(defender, 'sound/items/weapons/thudswoosh.ogg', 50, TRUE, -1)
- log_combat(attacker, defender, "disarmed (Krav Maga)", addition = "(disarmed of [stuff_in_hand])")
+ log_combat(attacker, defender, "disarmed (Kaza Ruk)", addition = "(disarmed of [stuff_in_hand])")
return MARTIAL_ATTACK_INVALID // normal shove
-//Krav Maga Gloves
+/// First, determine if we're going to execute our followup attack
-/obj/item/clothing/gloves/krav_maga
- abstract_type = /obj/item/clothing/gloves/krav_maga
+/datum/martial_art/kaza_ruk/proc/blow_followup(mob/living/source, mob/living/target, damage, attack_type, obj/item/bodypart/affecting, final_armor_block, kicking, limb_sharpness)
+ SIGNAL_HANDLER
+
+ if(!prob(50))
+ return
+
+ addtimer(CALLBACK(src, PROC_REF(execute_followup), source, target, damage, attack_type, affecting, final_armor_block, kicking, limb_sharpness), 0.25 SECONDS)
+
+/// After our delay, do the followup.
+
+/datum/martial_art/kaza_ruk/proc/execute_followup(mob/living/source, mob/living/target, damage, attack_type, obj/item/bodypart/affecting, final_armor_block, kicking, limb_sharpness)
+ if(QDELETED(source) || QDELETED(target))
+ return
+
+ if(!source.Adjacent(target))
+ return
+
+ var/tail_usage = FALSE
+ var/kick_language = "an axe kick"
+ var/strike_language = "an elbow strike"
+ if(ishuman(source))
+ var/mob/living/carbon/possible_human = source
+ var/obj/item/organ/tail/lizard/possible_lizard_tail = possible_human.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL)
+ if(possible_lizard_tail)
+ tail_usage = TRUE
+ kick_language = "a helmsplitter tail strike"
+ strike_language = "a whiplash tail spin"
+
+ source.visible_message(
+ span_warning("[source] follows up with [kicking ? kick_language : strike_language] against [target]!"),
+ span_notice("You deliver [kicking ? kick_language : strike_language] against [target]!"),
+ span_hear("You hear a sickening sound of flesh hitting flesh!"),
+ )
+ if(tail_usage)
+ source.emote(kicking ? "flip" : "spin")
+ playsound(source, 'sound/effects/hit_punch.ogg', 50, TRUE, -1)
+ source.do_attack_animation(target, ATTACK_EFFECT_KICK)
+ target.apply_damage(round(damage/3,1), attack_type, affecting, final_armor_block, wound_bonus = damage) //Ostensibly, apply a third of our damage again // We're not being too fussy about limb bonuses for this
+ log_combat(source, target, "auto-followup strike (Kaza Ruk)")
+
+//Kaza Ruk Gloves
+
+/obj/item/clothing/gloves/kaza_ruk
+ abstract_type = /obj/item/clothing/gloves/kaza_ruk
clothing_traits = list(TRAIT_FAST_CUFFING)
-/obj/item/clothing/gloves/krav_maga/Initialize(mapload)
+/obj/item/clothing/gloves/kaza_ruk/Initialize(mapload)
. = ..()
- AddComponent(/datum/component/martial_art_giver, /datum/martial_art/krav_maga)
+ AddComponent(/datum/component/martial_art_giver, /datum/martial_art/kaza_ruk)
-/obj/item/clothing/gloves/krav_maga/sec//more obviously named, given to sec
- name = "krav maga gloves"
- desc = "These gloves can teach you to perform Krav Maga using nanochips."
+/obj/item/clothing/gloves/kaza_ruk/sec//more obviously named, given to sec
+ name = "kaza ruk gloves"
+ desc = "These gloves seem to guide you through a non-lizardperson friendly variant of the Tiziran martial art, Kaza Ruk. \
+ You're not entirely sure how they do that. Probably nanites."
icon_state = "fightgloves"
greyscale_colors = "#c41e0d"
cold_protection = HANDS
@@ -232,9 +276,9 @@
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
resistance_flags = NONE
-/obj/item/clothing/gloves/krav_maga/combatglovesplus
+/obj/item/clothing/gloves/kaza_ruk/combatglovesplus
name = "combat gloves plus"
- desc = "These tactical gloves are fireproof and electrically insulated, and through the use of nanochip technology will teach you the martial art of krav maga."
+ desc = "These tactical gloves are fireproof and electrically insulated. These gloves seem to guide you through a non-lizardperson friendly variant of the Tiziran martial art, Kaza Ruk."
icon_state = "black"
greyscale_colors = "#2f2e31"
siemens_coefficient = 0
@@ -244,9 +288,9 @@
heat_protection = HANDS
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
resistance_flags = NONE
- armor_type = /datum/armor/krav_maga_combatglovesplus
+ armor_type = /datum/armor/kaza_ruk_combatglovesplus
-/datum/armor/krav_maga_combatglovesplus
+/datum/armor/kaza_ruk_combatglovesplus
bio = 90
fire = 80
acid = 50
diff --git a/code/game/objects/items/implants/implant_kaza_ruk.dm b/code/game/objects/items/implants/implant_kaza_ruk.dm
new file mode 100644
index 00000000000..ce26fb1b678
--- /dev/null
+++ b/code/game/objects/items/implants/implant_kaza_ruk.dm
@@ -0,0 +1,41 @@
+/obj/item/implant/kaza_ruk
+ name = "kaza ruk implant"
+ desc = "Teaches you the Tiziran martial arts of Kaza Ruk in 5 short instructional videos beamed directly into your eyeballs."
+ icon = 'icons/obj/scrolls.dmi'
+ icon_state ="scroll2"
+ /// The martial art style this implant teaches.
+ var/datum/martial_art/kaza_ruk/style
+
+/obj/item/implant/kaza_ruk/get_data()
+ var/dat = {"Implant Specifications:
+ Name: Kaza Ruk Implant
+ Life: 4 hours after death of host
+ Implant Details:
+ Function: Teaches even the clumsiest host the arts of Kaza Ruk."}
+ return dat
+
+/obj/item/implant/kaza_ruk/Initialize(mapload)
+ . = ..()
+ style = new(src)
+
+/obj/item/implant/kaza_ruk/Destroy()
+ QDEL_NULL(style)
+ return ..()
+
+/obj/item/implant/kaza_ruk/activate()
+ . = ..()
+ if(isnull(imp_in.mind))
+ return
+ if(style.unlearn(imp_in))
+ return
+
+ style.teach(imp_in)
+
+/obj/item/implanter/kaza_ruk
+ name = "implanter (kaza ruk)"
+ imp_type = /obj/item/implant/kaza_ruk
+
+/obj/item/implantcase/kaza_ruk
+ name = "implant case - 'Kaza Ruk'"
+ desc = "A glass case containing an implant that can teach the user the Tiziran martial arts of Kaza Ruk."
+ imp_type = /obj/item/implant/kaza_ruk
diff --git a/code/game/objects/items/implants/implant_krav_maga.dm b/code/game/objects/items/implants/implant_krav_maga.dm
deleted file mode 100644
index 5dd821a683d..00000000000
--- a/code/game/objects/items/implants/implant_krav_maga.dm
+++ /dev/null
@@ -1,41 +0,0 @@
-/obj/item/implant/krav_maga
- name = "krav maga implant"
- desc = "Teaches you the arts of Krav Maga in 5 short instructional videos beamed directly into your eyeballs."
- icon = 'icons/obj/scrolls.dmi'
- icon_state ="scroll2"
- /// The martial art style this implant teaches.
- var/datum/martial_art/krav_maga/style
-
-/obj/item/implant/krav_maga/get_data()
- var/dat = {"Implant Specifications:
- Name: Krav Maga Implant
- Life: 4 hours after death of host
- Implant Details:
- Function: Teaches even the clumsiest host the arts of Krav Maga."}
- return dat
-
-/obj/item/implant/krav_maga/Initialize(mapload)
- . = ..()
- style = new(src)
-
-/obj/item/implant/krav_maga/Destroy()
- QDEL_NULL(style)
- return ..()
-
-/obj/item/implant/krav_maga/activate()
- . = ..()
- if(isnull(imp_in.mind))
- return
- if(style.unlearn(imp_in))
- return
-
- style.teach(imp_in)
-
-/obj/item/implanter/krav_maga
- name = "implanter (krav maga)"
- imp_type = /obj/item/implant/krav_maga
-
-/obj/item/implantcase/krav_maga
- name = "implant case - 'Krav Maga'"
- desc = "A glass case containing an implant that can teach the user the arts of Krav Maga."
- imp_type = /obj/item/implant/krav_maga
diff --git a/code/game/objects/items/storage/garment.dm b/code/game/objects/items/storage/garment.dm
index 4fe7ad9c664..fb0a5742773 100644
--- a/code/game/objects/items/storage/garment.dm
+++ b/code/game/objects/items/storage/garment.dm
@@ -100,7 +100,7 @@
new /obj/item/clothing/suit/armor/vest/warden/alt(src)
new /obj/item/clothing/under/rank/security/warden/formal(src)
new /obj/item/clothing/under/rank/security/warden/skirt(src)
- new /obj/item/clothing/gloves/krav_maga/sec(src)
+ new /obj/item/clothing/gloves/kaza_ruk/sec(src)
new /obj/item/clothing/glasses/hud/security/sunglasses(src)
new /obj/item/clothing/mask/gas/sechailer(src)
diff --git a/code/game/objects/items/storage/uplink_kits.dm b/code/game/objects/items/storage/uplink_kits.dm
index 4529983a926..f00ec2945fd 100644
--- a/code/game/objects/items/storage/uplink_kits.dm
+++ b/code/game/objects/items/storage/uplink_kits.dm
@@ -301,7 +301,7 @@
new /obj/item/clothing/head/helmet/marine/pmc(src)
new /obj/item/clothing/mask/gas/sechailer(src)
new /obj/item/clothing/glasses/night(src) // 3~ TC
- new /obj/item/clothing/gloves/krav_maga/combatglovesplus(src) //5TC
+ new /obj/item/clothing/gloves/kaza_ruk/combatglovesplus(src) //5TC
new /obj/item/clothing/shoes/jackboots(src)
new /obj/item/storage/belt/military/assault/fisher(src) //items in this belt easily costs 18 TC
diff --git a/code/modules/deathmatch/deathmatch_modifier.dm b/code/modules/deathmatch/deathmatch_modifier.dm
index 9a225bc67da..ed657caedfd 100644
--- a/code/modules/deathmatch/deathmatch_modifier.dm
+++ b/code/modules/deathmatch/deathmatch_modifier.dm
@@ -580,7 +580,7 @@
name = "Random martial arts"
description = "Everyone learns a random martial art!"
blacklisted_maps = list(/datum/lazy_template/deathmatch/meatower)
- // krav maga excluded because its too common and too simple, mushpunch excluded because its horrible and not even funny
+ // kaza ruk excluded because its too common and too simple, mushpunch excluded because its horrible and not even funny
var/static/list/weighted_martial_arts = list(
// common
/datum/martial_art/cqc = 30,
diff --git a/code/modules/uplink/uplink_items/spy_unique.dm b/code/modules/uplink/uplink_items/spy_unique.dm
index 04f9b4ba6f5..e201b804df5 100644
--- a/code/modules/uplink/uplink_items/spy_unique.dm
+++ b/code/modules/uplink/uplink_items/spy_unique.dm
@@ -31,10 +31,10 @@
item = /obj/item/clothing/gloves/combat
cost = 1
-/datum/uplink_item/spy_unique/krav_maga
+/datum/uplink_item/spy_unique/kaza_ruk
name = "Combat Gloves Plus"
desc = "A pair of combat gloves plus. They're insulated AND you can do martial arts with it!"
- item = /obj/item/clothing/gloves/krav_maga/combatglovesplus
+ item = /obj/item/clothing/gloves/kaza_ruk/combatglovesplus
/datum/uplink_item/spy_unique/tackle_gloves
name = "Guerrilla Gloves"
diff --git a/tgstation.dme b/tgstation.dme
index 604bd04a20f..2d55c38f86d 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -1757,7 +1757,7 @@
#include "code\datums\martial\boxing.dm"
#include "code\datums\martial\cqc.dm"
#include "code\datums\martial\junglearts.dm"
-#include "code\datums\martial\krav_maga.dm"
+#include "code\datums\martial\kaza_ruk.dm"
#include "code\datums\martial\mushpunch.dm"
#include "code\datums\martial\plasma_fist.dm"
#include "code\datums\martial\psychotic_brawl.dm"
@@ -2735,7 +2735,7 @@
#include "code\game\objects\items\implants\implant_deathrattle.dm"
#include "code\game\objects\items\implants\implant_explosive.dm"
#include "code\game\objects\items\implants\implant_freedom.dm"
-#include "code\game\objects\items\implants\implant_krav_maga.dm"
+#include "code\game\objects\items\implants\implant_kaza_ruk.dm"
#include "code\game\objects\items\implants\implant_mindshield.dm"
#include "code\game\objects\items\implants\implant_misc.dm"
#include "code\game\objects\items\implants\implant_spell.dm"