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."