From 1bdcceabb8a7f29be57457253be9e962b25590a5 Mon Sep 17 00:00:00 2001 From: juniper <70682905+crunchypretzels@users.noreply.github.com> Date: Sun, 23 Jul 2023 08:43:54 -0400 Subject: [PATCH] Fixes Shrapnel Pinning (#16822) * yangechog * always a smart one, that gem Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com> * where would i be without better coders Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com> * cangeyhog Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com> --------- Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com> --- .../mob/living/carbon/human/human_defense.dm | 18 ++++---- html/changelogs/crunchypretzels-shrapnerf.yml | 41 +++++++++++++++++++ 2 files changed, 52 insertions(+), 7 deletions(-) create mode 100644 html/changelogs/crunchypretzels-shrapnerf.yml diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 31e09640383..11661ee1c5c 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -418,14 +418,18 @@ emp_act if(!O || !src) return - if(O.loc == src && O.sharp) //Projectile is embedded and suitable for pinning. - var/turf/T = near_wall(dir,2) + if(O != ITEMSIZE_TINY) + if(O.loc == src && O.sharp) //Projectile is embedded and suitable for pinning. + var/turf/T = near_wall(dir,2) - if(T) - src.forceMove(T) - visible_message("[src] is pinned to the wall by [O]!","You are pinned to the wall by [O]!") - src.anchored = 1 - src.pinned += O + if(T) + src.forceMove(T) + visible_message( + SPAN_WARNING("\The [src] is pinned to the wall by \the [O]!"), + SPAN_WARNING("You are pinned to the wall by \the [O]!") + ) + src.anchored = TRUE + src.pinned += O else if(ishuman(AM)) var/mob/living/carbon/human/H = AM H.Weaken(3) diff --git a/html/changelogs/crunchypretzels-shrapnerf.yml b/html/changelogs/crunchypretzels-shrapnerf.yml new file mode 100644 index 00000000000..bde03ed1b6c --- /dev/null +++ b/html/changelogs/crunchypretzels-shrapnerf.yml @@ -0,0 +1,41 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: crunchypretzels + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - bugfix: "Fixed shrapnel pinning people to walls."