From 07cc46c38de274bff0fa44ba3361919f653ab10e Mon Sep 17 00:00:00 2001 From: Casper3667 <8396443+Casper3667@users.noreply.github.com> Date: Sun, 19 Dec 2021 05:10:06 +0100 Subject: [PATCH] fixes railing jumping (#12849) Co-authored-by: TGW Co-authored-by: Werner <1331699+Arrow768@users.noreply.github.com> --- code/game/objects/structures/railing.dm | 5 +++-- html/changelogs/RailingFix.yml | 6 ++++++ 2 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 html/changelogs/RailingFix.yml diff --git a/code/game/objects/structures/railing.dm b/code/game/objects/structures/railing.dm index d3d1dfbde0d..e420ce8d720 100644 --- a/code/game/objects/structures/railing.dm +++ b/code/game/objects/structures/railing.dm @@ -280,8 +280,9 @@ /obj/structure/railing/can_climb(var/mob/living/user, climb_dir, post_climb_check=0) . = ..() + var/turf/dest = get_step(user, climb_dir) if(. && get_turf(user) == get_turf(src)) - if(turf_is_crowded(TRUE) || !user.Adjacent(get_step(src, climb_dir))) + if(turf_is_crowded(TRUE) || !user.Adjacent(dest) || turf_contains_dense_objects(dest) && get_turf(src) != dest) to_chat(user, SPAN_DANGER("You can't climb there, the way is blocked.")) return FALSE @@ -303,7 +304,7 @@ LAZYREMOVE(climbers, user) return - user.forceMove(get_step(src, climb_dir)) + user.forceMove(get_step(user, climb_dir)) user.visible_message(SPAN_WARNING("\The [user] climbs over \the [src]!")) LAZYREMOVE(climbers, user) diff --git a/html/changelogs/RailingFix.yml b/html/changelogs/RailingFix.yml new file mode 100644 index 00000000000..2e0413cd33f --- /dev/null +++ b/html/changelogs/RailingFix.yml @@ -0,0 +1,6 @@ +author: TheGreyWolf + +delete-after: True + +changes: + - bugfix: "Jumping over railings will no longer move people into solid objects."