load the emergency shuttle in late mapping (#30854)

* load the emergency shuttle in late mapping

* fix lints

* register the late loading docking port properly

* fix logging
This commit is contained in:
warriorstar-orion
2025-12-24 10:42:46 -05:00
committed by GitHub
parent e436df7051
commit 05108670a7
6 changed files with 641 additions and 1511 deletions
+5 -19
View File
@@ -295,12 +295,11 @@
return 1
/obj/docking_port/mobile/emergency/Destroy(force)
if(force)
// This'll make the shuttle subsystem use the backup shuttle.
if(SSshuttle.emergency == src)
// If we're the selected emergency shuttle
SSshuttle.emergencyDeregister()
if(force && SSshuttle.emergency == src)
// If we're the selected emergency shuttle
var/msg = "The emergency mobile docking port has been forcibly destroyed. An emergency shuttle may need to be loaded in."
stack_trace(msg)
log_and_message_admins_no_usr(msg)
return ..()
@@ -630,19 +629,6 @@
var/turf/T = pick(turfs)
src.loc = T
/obj/docking_port/mobile/emergency/backup
name = "backup shuttle"
id = "backup"
dwidth = 2
width = 8
height = 8
/obj/docking_port/mobile/emergency/backup/register()
var/current_emergency = SSshuttle.emergency
..()
SSshuttle.emergency = current_emergency
SSshuttle.backup_shuttle = src
#undef NOT_BEGUN
#undef STAGE_1
#undef STAGE_2
+1 -6
View File
@@ -187,12 +187,7 @@
if("load")
shuttle_and_preview_cooldown = world.time + PREVIEW_OR_SHUTTLE_SPAWN_COOLDOWN
var/datum/map_template/shuttle/S = GLOB.shuttle_templates[params["shuttle_id"]]
if(existing_shuttle == SSshuttle.backup_shuttle)
// TODO make the load button disabled
WARNING("The shuttle that the selected shuttle will replace \
is the backup shuttle. Backup shuttle is required to be \
intact for round sanity.")
else if(S)
if(S)
// If successful, returns the mobile docking port
var/obj/docking_port/mobile/mdp = action_load(S)
if(mdp)