From ae54169ed80e4533a62f1070e7d10422f34ee408 Mon Sep 17 00:00:00 2001 From: CHOMPStation2StaffMirrorBot <94713762+CHOMPStation2StaffMirrorBot@users.noreply.github.com> Date: Tue, 11 Nov 2025 14:46:22 -0700 Subject: [PATCH] [MIRROR] do_teleport proc fixes (#11968) Co-authored-by: Guti <32563288+TheCaramelion@users.noreply.github.com> --- code/datums/helper_datums/teleport.dm | 9 +++++++-- .../objects/structures/stool_bed_chair_nest/chairs.dm | 2 -- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/code/datums/helper_datums/teleport.dm b/code/datums/helper_datums/teleport.dm index 94e98e1f6a..cc088d5a6a 100644 --- a/code/datums/helper_datums/teleport.dm +++ b/code/datums/helper_datums/teleport.dm @@ -60,7 +60,6 @@ GLOBAL_LIST_INIT(bluespace_item_types, list( if(isliving(teleatom)) var/mob/living/telemob = teleatom var/mob/living/mob = locate() in destturf - // Needs the vore helpers later. Ough. if(can_spontaneous_vore(mob, telemob)) destturf = mob.vore_selected else if(can_spontaneous_vore(telemob, mob)) @@ -86,7 +85,13 @@ GLOBAL_LIST_INIT(bluespace_item_types, list( tele_play_specials(teleatom, curturf, effectin, asoundin) + if(teleatom.buckle_movable) // Specifically office chairs. Fuck you. + teleatom.buckle_movable = FALSE + var/success = teleatom.forceMove(destturf) + + teleatom.buckle_movable = initial(teleatom.buckle_movable) // Double fuck you, office chairs + if(!success) return FALSE @@ -98,7 +103,7 @@ GLOBAL_LIST_INIT(bluespace_item_types, list( for(var/mob/living/rider in teleatom.buckled_mobs) teleatom.unbuckle_mob(rider, TRUE) - var/rider_success = do_teleport(rider, destturf, precision, channel = channel, no_effects = TRUE) + var/rider_success = do_teleport(rider, destination, precision, channel = channel, no_effects = TRUE) if(!rider_success) continue diff --git a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm index 7b35cc15ab..d4655976ad 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm @@ -199,8 +199,6 @@ for (var/mob/O in src.loc) if (O != occupant) Bump(O) - else - unbuckle_mob() /obj/structure/bed/chair/office/Bump(atom/A) ..()