diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/krav_maga.dm
index ed68403b1d..bcc561a15b 100644
--- a/code/datums/martial/krav_maga.dm
+++ b/code/datums/martial/krav_maga.dm
@@ -84,29 +84,29 @@
if("neck_chop")
streak = ""
neck_chop(A,D)
- return 1
+ return TRUE
if("leg_sweep")
streak = ""
leg_sweep(A,D)
- return 1
+ return TRUE
if("quick_choke")//is actually lung punch
streak = ""
quick_choke(A,D)
- return 1
- return 0
+ return TRUE
+ return FALSE
/datum/martial_art/krav_maga/proc/leg_sweep(mob/living/carbon/human/A, mob/living/carbon/human/D)
var/obj/item/bodypart/affecting = D.get_bodypart(BODY_ZONE_CHEST)
var/armor_block = D.run_armor_check(affecting, "melee")
if(!CHECK_MOBILITY(D, MOBILITY_STAND))
- return 0
+ return FALSE
D.visible_message("[A] leg sweeps [D]!", \
"[A] leg sweeps you!")
playsound(get_turf(A), 'sound/effects/hit_kick.ogg', 50, 1, -1)
D.apply_damage(damage_base + 25, STAMINA, affecting, armor_block)
D.DefaultCombatKnockdown(80, override_hardstun = 1, override_stamdmg = 0)
log_combat(A, D, "leg sweeped")
- return 1
+ return TRUE
/datum/martial_art/krav_maga/proc/quick_choke(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D)//is actually lung punch
D.visible_message("[A] pounds [D] on the chest!", \
@@ -116,7 +116,7 @@
D.losebreath = CLAMP(D.losebreath + 5, 0, 10)
D.adjustOxyLoss(damage_base + 5)
log_combat(A, D, "quickchoked")
- return 1
+ return TRUE
/datum/martial_art/krav_maga/proc/neck_chop(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D)
D.visible_message("[A] karate chops [D]'s neck!", \
@@ -126,11 +126,11 @@
if(D.silent <= 10)
D.silent = CLAMP(D.silent + 10, 0, 10)
log_combat(A, D, "neck chopped")
- return 1
+ return TRUE
/datum/martial_art/krav_maga/grab_act(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D)
if(check_streak(A,D))
- return 1
+ return TRUE
log_combat(A, D, "grabbed (Krav Maga)")
..()
@@ -138,7 +138,7 @@
var/obj/item/bodypart/affecting = D.get_bodypart(ran_zone(A.zone_selected))
var/armor_block = D.run_armor_check(affecting, "melee")
if(check_streak(A,D))
- return 1
+ return TRUE
log_combat(A, D, "punched")
var/picked_hit_type = pick("punches", "kicks")
var/bonus_damage = 0
@@ -155,14 +155,14 @@
D.visible_message("[A] [picked_hit_type] [D]!", \
"[A] [picked_hit_type] you!")
log_combat(A, D, "[picked_hit_type] with [name]")
- return 1
+ return TRUE
/datum/martial_art/krav_maga/disarm_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
if(check_streak(A,D))
- return 1
+ return TRUE
var/obj/item/bodypart/affecting = D.get_bodypart(ran_zone(A.zone_selected))
var/armor_block = D.run_armor_check(affecting, "melee")
- if((D.mobility_flags & MOBILITY_STAND))
+ if(D.mobility_flags & MOBILITY_STAND)
D.visible_message("[A] reprimands [D]!", \
"You're slapped by [A]!", "You hear a sickening sound of flesh hitting flesh!", COMBAT_MESSAGE_RANGE, A)
to_chat(A, "You jab [D]!")
@@ -170,7 +170,7 @@
playsound(D, 'sound/effects/hit_punch.ogg', 50, TRUE, -1)
D.apply_damage(damage_base + 5, STAMINA, affecting, armor_block)
log_combat(A, D, "punched nonlethally")
- if(!(D.mobility_flags & MOBILITY_STAND))
+ else
D.visible_message("[A] reprimands [D]!", \
"You're manhandled by [A]!", "You hear a sickening sound of flesh hitting flesh!", COMBAT_MESSAGE_RANGE, A)
to_chat(A, "You stomp [D]!")
@@ -181,7 +181,7 @@
if(prob(D.getStaminaLoss()))
D.visible_message("[D] sputters and recoils in pain!", "You recoil in pain as you are jabbed in a nerve!")
D.drop_all_held_items()
- return 1
+ return TRUE
//Krav Maga Gloves
diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm
index a2074354f3..3a9d842a73 100644
--- a/code/modules/clothing/gloves/miscellaneous.dm
+++ b/code/modules/clothing/gloves/miscellaneous.dm
@@ -20,12 +20,15 @@
body_parts_covered = ARMS
cold_protection = ARMS
strip_delay = 300 //you can't just yank them off
+ ///Extra damage through the punch.
var/enhancement = 0 //it's a +0 to your punches because it isn't magical
+ ///Main trait added by the gloves to the user on wear.
var/inherited_trait = TRAIT_NOGUNS //what are you, dishonoroable?
+ ///Secondary trait added by the gloves to the user on wear.
var/secondary_trait = TRAIT_FEARLESS //what are you, a coward?
/obj/item/clothing/gloves/fingerless/pugilist/equipped(mob/user, slot)
- ..()
+ . = ..()
if(slot == SLOT_GLOVES)
if(ishuman(user))
var/mob/living/carbon/human/H = user
@@ -36,7 +39,7 @@
H.dna.species.punchdamagelow += enhancement
/obj/item/clothing/gloves/fingerless/pugilist/dropped(mob/user)
- ..()
+
REMOVE_TRAIT(user, TRAIT_PUGILIST, GLOVE_TRAIT)
REMOVE_TRAIT(user, inherited_trait, GLOVE_TRAIT)
REMOVE_TRAIT(user, secondary_trait, GLOVE_TRAIT)
@@ -44,6 +47,7 @@
var/mob/living/carbon/human/H = user
H.dna.species.punchdamagehigh = initial(H.dna.species.punchdamagehigh)
H.dna.species.punchdamagelow = initial(H.dna.species.punchdamagelow)
+ return ..()
/obj/item/clothing/gloves/fingerless/pugilist/chaplain
name = "armwraps of unyielding resolve"
@@ -52,7 +56,7 @@
enhancement = 1 //It is not magic that makes you punch harder, but force of will. Trust me.
secondary_trait = TRAIT_ANTIMAGIC
var/chaplain_spawnable = TRUE
-
+
/obj/item/clothing/gloves/fingerless/pugilist/chaplain/Initialize()
. = ..()
AddComponent(/datum/component/anti_magic, TRUE, TRUE, FALSE, null, null, FALSE)
@@ -72,7 +76,7 @@
armor = list("melee" = 10, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 35, "rad" = 0, "fire" = 50, "acid" = 50)
enhancement = 3
secondary_trait = TRAIT_KI_VAMPIRE
-
+
/obj/item/clothing/gloves/fingerless/pugilist/brassmountain
name = "armbands of the brass mountain"
desc = "A series of scolding hot brass armbands. Makes you pretty keen to bring the light to the unenlightened through unmitigated violence."
@@ -91,21 +95,21 @@
enhancement = 10 //omae wa mou shindeiru
var/warcry = "AT"
secondary_trait = TRAIT_NOHARDCRIT
-
+
/obj/item/clothing/gloves/fingerless/pugilist/rapid/Initialize()
. = ..()
ADD_TRAIT(src, TRAIT_NODROP, GLOVE_TRAIT)
-/obj/item/clothing/gloves/fingerless/pugilist/rapid/Touch(mob/living/target,proximity = TRUE)
- if(!istype(target))
+/obj/item/clothing/gloves/fingerless/pugilist/rapid/Touch(atom/target, proximity = TRUE)
+ if(!isliving(target))
return
var/mob/living/M = loc
M.changeNext_move(CLICK_CD_RAPID)
if(warcry)
- M.say("[warcry]", ignore_spam = TRUE, forced = "north star warcry")
+ M.say("[warcry]", ignore_spam = TRUE, forced = TRUE)
- .= FALSE
+ .return FALSE
/obj/item/clothing/gloves/fingerless/pugilist/rapid/attack_self(mob/user)
var/input = stripped_input(user,"What do you want your battlecry to be? Max length of 6 characters.", ,"", 7)
@@ -125,13 +129,14 @@
var/mob/living/M = loc
- if(M.a_intent == INTENT_HELP)
- if(target.health >= 0 && !HAS_TRAIT(target, TRAIT_FAKEDEATH)) //Can't hug people who are dying/dead
- if(target.on_fire || target.lying) //No spamming extinguishing, helping them up, or other non-hugging/patting help interactions
- return
- else
- M.changeNext_move(CLICK_CD_RAPID)
- . = FALSE
+ if(M.a_intent != INTENT_HELP)
+ return FALSE
+ if(stat != CONSCIOUS) //Can't hug people who are dying/dead
+ return FALSE
+ else
+ M.changeNext_move(CLICK_CD_RAPID)
+
+ return FALSE
/obj/item/clothing/gloves/fingerless/pugilist/rapid/hug/attack_self(mob/user)
return FALSE
diff --git a/icons/mob/hands.dmi b/icons/mob/hands.dmi
index 6cbd958d51..74aabf6021 100644
Binary files a/icons/mob/hands.dmi and b/icons/mob/hands.dmi differ
diff --git a/icons/obj/clothing/gloves.dmi b/icons/obj/clothing/gloves.dmi
index bbdae032c7..d53f53c029 100644
Binary files a/icons/obj/clothing/gloves.dmi and b/icons/obj/clothing/gloves.dmi differ