From 53dd4fc85780ba8435864b5f323b9db8e782f3af Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sat, 18 Jul 2020 20:50:28 -0700 Subject: [PATCH 1/3] Update areas.dm --- code/game/area/areas.dm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index dabbe93bec..f87f7a757c 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -516,7 +516,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) used_environ += amount -/area/Entered(atom/movable/M) +/area/Entered(atom/movable/M, atom/OldLoc) set waitfor = FALSE SEND_SIGNAL(src, COMSIG_AREA_ENTERED, M) SEND_SIGNAL(M, COMSIG_ENTER_AREA, src) //The atom that enters the area @@ -524,6 +524,11 @@ GLOBAL_LIST_EMPTY(teleportlocs) return var/mob/living/L = M + var/turf/oldTurf = get_turf(OldLoc) + var/area/A = oldTurf?.loc + if(A && (A.has_gravity != has_gravity)) + L.update_gravity(L.mob_has_gravity()) + if(!L.ckey) return From 9b1aa3949700fda6c4d1eed6232f868306f5caf8 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sat, 18 Jul 2020 20:51:30 -0700 Subject: [PATCH 2/3] Update space.dm --- code/game/turfs/space/space.dm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/code/game/turfs/space/space.dm b/code/game/turfs/space/space.dm index b131a1ed70..42096866c4 100644 --- a/code/game/turfs/space/space.dm +++ b/code/game/turfs/space/space.dm @@ -133,10 +133,15 @@ else to_chat(user, "The plating is going to need some support! Place metal rods first.") -/turf/open/space/Entered(atom/movable/A) +/turf/open/space/Entered(atom/movable/A, atom/OldLoc) ..() if ((!(A) || src != A.loc)) return + + var/turf/old = get_turf(OldLoc) + if(!isspaceturf(old) && ismob(A)) + var/mob/M = A + M.update_gravity(M.mob_has_gravity()) if(destination_z && destination_x && destination_y && !(A.pulledby || !A.can_be_z_moved)) var/tx = destination_x From 5b408d5b33c0f039f43abf3f7962b48cfe0d918f Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sat, 18 Jul 2020 20:52:15 -0700 Subject: [PATCH 3/3] Update space.dm --- code/game/turfs/space/space.dm | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/code/game/turfs/space/space.dm b/code/game/turfs/space/space.dm index 42096866c4..0e028ed4af 100644 --- a/code/game/turfs/space/space.dm +++ b/code/game/turfs/space/space.dm @@ -134,9 +134,7 @@ to_chat(user, "The plating is going to need some support! Place metal rods first.") /turf/open/space/Entered(atom/movable/A, atom/OldLoc) - ..() - if ((!(A) || src != A.loc)) - return + . = ..() var/turf/old = get_turf(OldLoc) if(!isspaceturf(old) && ismob(A)) @@ -175,6 +173,12 @@ stoplag()//Let a diagonal move finish, if necessary A.newtonian_move(A.inertia_dir) +/turf/open/space/Exited(atom/movable/AM, atom/OldLoc) + . = ..() + var/turf/old = get_turf(OldLoc) + if(!isspaceturf(old) && ismob(AM)) + var/mob/M = AM + M.update_gravity(M.mob_has_gravity()) /turf/open/space/MakeSlippery(wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent) return