From d37d998bc821493d43fa2e019cda05b75848252f Mon Sep 17 00:00:00 2001 From: Farie82 Date: Tue, 4 Apr 2023 10:43:46 +0200 Subject: [PATCH] Ghosts now don't call moved twice (#20751) --- code/modules/mob/dead/dead.dm | 4 ++-- code/modules/mob/dead/observer/observer_base.dm | 8 ++------ 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/code/modules/mob/dead/dead.dm b/code/modules/mob/dead/dead.dm index f60777a97ff..fc53de0a391 100644 --- a/code/modules/mob/dead/dead.dm +++ b/code/modules/mob/dead/dead.dm @@ -8,14 +8,14 @@ update_z(null) return ..() -/mob/dead/forceMove(atom/destination) +/mob/dead/forceMove(atom/destination, direction = NONE) var/turf/old_turf = get_turf(src) var/turf/new_turf = get_turf(destination) if (old_turf?.z != new_turf?.z) onTransitZ(old_turf?.z, new_turf?.z) var/oldloc = loc loc = destination - Moved(oldloc, NONE) + Moved(oldloc, direction) /mob/dead/onTransitZ(old_z,new_z) ..() diff --git a/code/modules/mob/dead/observer/observer_base.dm b/code/modules/mob/dead/observer/observer_base.dm index cf903b2accb..e4b5ee6a059 100644 --- a/code/modules/mob/dead/observer/observer_base.dm +++ b/code/modules/mob/dead/observer/observer_base.dm @@ -260,12 +260,10 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp setDir(direct) ghostimage.setDir(dir) - var/oldloc = loc - if(NewLoc) - forceMove(NewLoc) + forceMove(NewLoc, direct) else - forceMove(get_turf(src)) //Get out of closets and such as a ghost + forceMove(get_turf(src), direct) //Get out of closets and such as a ghost if((direct & NORTH) && y < world.maxy) y++ else if((direct & SOUTH) && y > 1) @@ -275,8 +273,6 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp else if((direct & WEST) && x > 1) x-- - Moved(oldloc, direct) - /mob/dead/observer/can_use_hands() return 0 /mob/dead/observer/Stat()