Shuffle Exited call to after loc is actually changed in forceMove (#38022)

Fixes storage forcing everything to mouse opacity fulltile
This commit is contained in:
kevinz000
2018-05-25 00:08:15 -07:00
committed by Tad Hardesty
parent db76ae9030
commit baf3fbb0cd
4 changed files with 11 additions and 14 deletions
+5 -4
View File
@@ -306,14 +306,14 @@
var/area/old_area = get_area(oldloc)
var/area/destarea = get_area(destination)
if(oldloc && !same_loc)
oldloc.Exited(src, destination)
if(old_area)
old_area.Exited(src, destination)
loc = destination
if(!same_loc)
if(oldloc)
oldloc.Exited(src, destination)
if(old_area)
old_area.Exited(src, destination)
var/turf/oldturf = get_turf(oldloc)
var/turf/destturf = get_turf(destination)
var/old_z = (oldturf ? oldturf.z : null)
@@ -328,6 +328,7 @@
if(AM == src)
continue
AM.Crossed(src, oldloc)
Moved(oldloc, NONE, TRUE)
. = TRUE
+2 -2
View File
@@ -927,9 +927,9 @@
/obj/mecha/Exited(atom/movable/M, atom/newloc)
if(occupant && occupant == M) // The occupant exited the mech without calling go_out()
go_out(1, newloc)
go_out(TRUE, newloc)
/obj/mecha/proc/go_out(var/forced, var/atom/newloc = loc)
/obj/mecha/proc/go_out(forced, atom/newloc = loc)
if(!occupant)
return
var/atom/movable/mob_container
+3 -7
View File
@@ -38,17 +38,13 @@
/obj/item/storage/wallet/Exited(atom/movable/AM)
. = ..()
// The loc has not actually changed yet when this proc is called, so call
// refreshID and have it ignore the outgoing atom.
refreshID(AM)
refreshID()
/obj/item/storage/wallet/proc/refreshID(atom/movable/removed)
/obj/item/storage/wallet/proc/refreshID()
LAZYCLEARLIST(combined_access)
if(!(front_id in src) || front_id == removed)
if(!(front_id in src))
front_id = null
for(var/obj/item/card/id/I in contents)
if(I == removed)
continue
if(!front_id)
front_id = I
LAZYINITLIST(combined_access)
+1 -1
View File
@@ -95,7 +95,7 @@
has_opaque_atom = TRUE
break
/turf/Exited(var/atom/movable/Obj, var/atom/newloc)
/turf/Exited(atom/movable/Obj, atom/newloc)
. = ..()
if (Obj && Obj.opacity)