mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-18 19:39:42 +01:00
@@ -43,10 +43,14 @@ var/list/escape_pods_by_name = list()
|
||||
name = "escape pod controller"
|
||||
var/datum/shuttle/autodock/ferry/escape_pod/pod
|
||||
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1)
|
||||
var/data[0]
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod/ui_interact(mob/user, datum/tgui/ui)
|
||||
ui = SStgui.try_update_ui(user, src, ui)
|
||||
if(!ui)
|
||||
ui = new(user, src, "EscapePodConsole", name, ui_x=470, ui_y=270)
|
||||
ui.open()
|
||||
|
||||
data = list(
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod/ui_data(mob/user)
|
||||
return list(
|
||||
"docking_status" = docking_program.get_docking_status(),
|
||||
"override_enabled" = docking_program.override_enabled,
|
||||
"door_state" = docking_program.memory["door_status"]["state"],
|
||||
@@ -55,28 +59,21 @@ var/list/escape_pods_by_name = list()
|
||||
"is_armed" = pod.arming_controller.armed
|
||||
)
|
||||
|
||||
ui = SSnanoui.try_update_ui(user, src, ui_key, ui, data, force_open)
|
||||
|
||||
if (!ui)
|
||||
ui = new(user, src, ui_key, "escape_pod_console.tmpl", name, 470, 290)
|
||||
ui.set_initial_data(data)
|
||||
ui.open()
|
||||
ui.set_auto_update(1)
|
||||
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod/Topic(href, href_list)
|
||||
if(..())
|
||||
return 1
|
||||
|
||||
if(href_list["manual_arm"])
|
||||
pod.arming_controller.arm()
|
||||
if(href_list["force_launch"])
|
||||
if (pod.can_force())
|
||||
pod.force_launch(src)
|
||||
else if (evacuation_controller.has_evacuated() && pod.can_launch()) //allow players to manually launch ahead of time if the shuttle leaves
|
||||
pod.launch(src)
|
||||
|
||||
return 0
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod/ui_act(action, params)
|
||||
. = ..()
|
||||
if(.)
|
||||
return
|
||||
|
||||
if(action == "command")
|
||||
if(params["command"] == "manual_arm")
|
||||
pod.arming_controller.arm()
|
||||
return TRUE
|
||||
if(params["command"] == "force_launch")
|
||||
if (pod.can_force())
|
||||
pod.force_launch(src)
|
||||
else if (evacuation_controller.has_evacuated() && pod.can_launch()) //allow players to manually launch ahead of time if the shuttle leaves
|
||||
pod.launch(src)
|
||||
return TRUE
|
||||
|
||||
|
||||
//This controller is for the escape pod berth (station side)
|
||||
@@ -88,28 +85,24 @@ var/list/escape_pods_by_name = list()
|
||||
docking_program = new/datum/computer/file/embedded_program/docking/simple/escape_pod(src)
|
||||
program = docking_program
|
||||
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod_berth/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1)
|
||||
var/data[0]
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod_berth/ui_interact(mob/user, datum/tgui/ui)
|
||||
ui = SStgui.try_update_ui(user, src, ui)
|
||||
if(!ui)
|
||||
ui = new(user, src, "EscapePodBerthConsole", name, ui_x=470, ui_y=200)
|
||||
ui.open()
|
||||
|
||||
var/armed = null
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod_berth/ui_data(mob/user)
|
||||
var/armed = FALSE
|
||||
if (istype(docking_program, /datum/computer/file/embedded_program/docking/simple/escape_pod))
|
||||
var/datum/computer/file/embedded_program/docking/simple/escape_pod/P = docking_program
|
||||
armed = P.armed
|
||||
|
||||
data = list(
|
||||
return list(
|
||||
"docking_status" = docking_program.get_docking_status(),
|
||||
"override_enabled" = docking_program.override_enabled,
|
||||
"armed" = armed
|
||||
)
|
||||
|
||||
ui = SSnanoui.try_update_ui(user, src, ui_key, ui, data, force_open)
|
||||
|
||||
if (!ui)
|
||||
ui = new(user, src, ui_key, "escape_pod_berth_console.tmpl", name, 470, 290)
|
||||
ui.set_initial_data(data)
|
||||
ui.open()
|
||||
ui.set_auto_update(1)
|
||||
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod_berth/emag_act(var/remaining_charges, var/mob/user)
|
||||
if (!emagged)
|
||||
to_chat(user, "<span class='notice'>You emag the [src], arming the escape pod!</span>")
|
||||
|
||||
Reference in New Issue
Block a user