From ba42ec76f3fb3e1697a9b86c5a8fe4e94509dd59 Mon Sep 17 00:00:00 2001 From: Geeves Date: Fri, 16 Oct 2020 21:06:45 +0200 Subject: [PATCH] Simple Mob Shields (#10242) --- code/modules/mob/living/carbon/human/human_attackhand.dm | 8 +++++--- html/changelogs/geeves-shield_stuff.yml | 6 ++++++ 2 files changed, 11 insertions(+), 3 deletions(-) create mode 100644 html/changelogs/geeves-shield_stuff.yml diff --git a/code/modules/mob/living/carbon/human/human_attackhand.dm b/code/modules/mob/living/carbon/human/human_attackhand.dm index 8e45c536c9d..b1a7fc3a384 100644 --- a/code/modules/mob/living/carbon/human/human_attackhand.dm +++ b/code/modules/mob/living/carbon/human/human_attackhand.dm @@ -463,14 +463,16 @@ return /mob/living/carbon/human/attack_generic(var/mob/user, var/damage, var/attack_message) - if(!damage) return user.attack_log += text("\[[time_stamp()]\] attacked [src.name] ([src.ckey])") src.attack_log += text("\[[time_stamp()]\] was attacked by [user.name] ([user.ckey])") - src.visible_message("[user] has [attack_message] [src]!") user.do_attack_animation(src) + if(damage < 15 && check_shields(damage, null, user, null, "\the [user]")) + return + + visible_message(SPAN_DANGER("[user] has [attack_message] [src]!")) var/dam_zone = user.zone_sel?.selecting if(!dam_zone) @@ -479,7 +481,7 @@ var/armor_block = run_armor_check(affecting, "melee") apply_damage(damage, BRUTE, affecting, armor_block) updatehealth() - return 1 + return TRUE //Used to attack a joint through grabbing /mob/living/carbon/human/proc/grab_joint(var/mob/living/user, var/def_zone) diff --git a/html/changelogs/geeves-shield_stuff.yml b/html/changelogs/geeves-shield_stuff.yml new file mode 100644 index 00000000000..d8baf670fd7 --- /dev/null +++ b/html/changelogs/geeves-shield_stuff.yml @@ -0,0 +1,6 @@ +author: Geeves + +delete-after: True + +changes: + - rscadd: "Shields can now block simple mob attacks, such as carp and spiders, as long as the attack does less than 15 damage. You won't block juggernauts or spider queens." \ No newline at end of file