Update Access/Airlock Controller NanoUI to TGUI (#21732)

PR for conversion of various NanoUI windows to TGUI.
**Access Controller**
<img width="758" height="252" alt="image"
src="https://github.com/user-attachments/assets/3263cc86-2e5f-4285-af39-25665a187a3c"
/>
**Airlock Controller (includes Advanced Airlock Controller)**
<img width="950" height="330" alt="image"
src="https://github.com/user-attachments/assets/1c636673-ec34-4ab2-a33d-1293fe20087b"
/>
This commit is contained in:
Batrachophreno
2026-01-30 14:28:09 -05:00
committed by GitHub
parent 0884b27691
commit 2fa2c731ea
10 changed files with 404 additions and 242 deletions
@@ -39,14 +39,35 @@
var/is_interior = locate(/obj/effect/map_effect/marker_helper/airlock/interior) in loc
var/is_exterior = locate(/obj/effect/map_effect/marker_helper/airlock/exterior) in loc
var/is_out = locate(/obj/effect/map_effect/marker_helper/airlock/out) in loc
var/found_controller = FALSE
// iterate over airlock components under this marker
// and actually set them up
for(var/thing in loc)
// set up the controller
var/obj/machinery/embedded_controller/radio/airlock/airlock_controller/controller = thing
if(istype(controller))
// Check for an advanced controller to set up.
var/obj/machinery/embedded_controller/radio/airlock/advanced_airlock_controller/advanced_controller = thing
if(istype(advanced_controller))
// common controller vars
found_controller = TRUE
advanced_controller.set_frequency(frequency)
advanced_controller.id_tag = MARKER_AIRLOCK_TAG_MASTER
advanced_controller.tag_airpump = MARKER_AIRLOCK_TAG_AIRPUMP_CHAMBER
advanced_controller.tag_chamber_sensor = MARKER_AIRLOCK_TAG_SENSOR_CHAMBER
advanced_controller.tag_exterior_sensor = MARKER_AIRLOCK_TAG_SENSOR_EXTERIOR
advanced_controller.tag_exterior_door = MARKER_AIRLOCK_TAG_DOOR_EXTERIOR
advanced_controller.tag_interior_door = MARKER_AIRLOCK_TAG_DOOR_INTERIOR
advanced_controller.cycle_to_external_air = cycle_to_external_air
advanced_controller.req_access = req_access
advanced_controller.req_one_access = req_one_access
// controller subtype specific vars
advanced_controller.program = new /datum/computer/file/embedded_program/airlock(advanced_controller)
continue
// If we didn't find an advanced controller, fall back to the basic kind
var/obj/machinery/embedded_controller/radio/airlock/airlock_controller/controller = thing
if(istype(controller) && !found_controller)
// common controller vars
found_controller = TRUE
controller.set_frequency(frequency)
controller.id_tag = MARKER_AIRLOCK_TAG_MASTER
controller.tag_airpump = MARKER_AIRLOCK_TAG_AIRPUMP_CHAMBER
@@ -61,8 +82,7 @@
controller.program = new /datum/computer/file/embedded_program/airlock(controller)
continue
// and all the other airlock components
// Now all the other airlock components
var/obj/machinery/door/airlock/door = thing
if(istype(door))
door.set_frequency(frequency)