diff --git a/code/game/objects/structures/railings.dm b/code/game/objects/structures/railings.dm index 19a943d20f4..d7b0958e8c5 100644 --- a/code/game/objects/structures/railings.dm +++ b/code/game/objects/structures/railings.dm @@ -67,20 +67,21 @@ return TRUE /obj/structure/railing/CanPass(atom/movable/mover, turf/target) - ..() + . = ..() if(get_dir(loc, target) & dir) - var/checking = UNSTOPPABLE | FLYING | FLOATING - return !density || mover.movement_type & checking + var/checking = FLYING | FLOATING + return . || mover.movement_type & checking return TRUE /obj/structure/railing/corner/CanPass() ..() return TRUE -/obj/structure/railing/CheckExit(atom/movable/O, turf/target) +/obj/structure/railing/CheckExit(atom/movable/mover, turf/target) ..() if(get_dir(loc, target) & dir) - return FALSE + var/checking = UNSTOPPABLE | FLYING | FLOATING + return !density || mover.movement_type & checking || mover.move_force >= MOVE_FORCE_EXTREMELY_STRONG return TRUE /obj/structure/railing/corner/CheckExit()