diff --git a/code/datums/shuttles.dm b/code/datums/shuttles.dm index f2f675724c8b..1213619f0353 100644 --- a/code/datums/shuttles.dm +++ b/code/datums/shuttles.dm @@ -14,8 +14,6 @@ var/port_x_offset var/port_y_offset - var/tags - /datum/map_template/shuttle/proc/prerequisites_met() return TRUE @@ -101,8 +99,7 @@ /datum/map_template/shuttle/proc/post_load(obj/docking_port/mobile/M) if(movement_force) M.movement_force = movement_force.Copy() - if(tags) - M.tag = tags + /datum/map_template/shuttle/vehicle shuttle_id = MOBILE_SHUTTLE_VEHICLE_ELEVATOR @@ -111,9 +108,15 @@ /datum/map_template/shuttle/trijent_elevator name = "Trijent Elevator" shuttle_id = MOBILE_TRIJENT_ELEVATOR + var/elevator_network + +/datum/map_template/shuttle/trijent_elevator/post_load(obj/docking_port/mobile/M) + if(elevator_network) + var/obj/docking_port/mobile/trijent_elevator/elev = M + elev.elevator_network = elevator_network /datum/map_template/shuttle/trijent_elevator/A - tags="A" + elevator_network="A" /datum/map_template/shuttle/trijent_elevator/B - tags="B" + elevator_network="B" diff --git a/code/modules/shuttle/computers/trijent_elevator_control.dm b/code/modules/shuttle/computers/trijent_elevator_control.dm index 9eaa16e56775..5ce241466945 100644 --- a/code/modules/shuttle/computers/trijent_elevator_control.dm +++ b/code/modules/shuttle/computers/trijent_elevator_control.dm @@ -43,12 +43,13 @@ /obj/structure/machinery/computer/shuttle/elevator_controller/proc/get_landing_zones() . = list() - var/obj/docking_port/mobile/shuttle = SSshuttle.getShuttle(shuttleId) + var/obj/docking_port/mobile/trijent_elevator/shuttle = SSshuttle.getShuttle(shuttleId) + for(var/obj/docking_port/stationary/trijent_elevator/elev in SSshuttle.stationary) - if(shuttle.tag == "") + if(shuttle.elevator_network == "" || elev.elevator_network == null) . += list(elev) continue - if(shuttle.tag == elev.tag) + if(shuttle.elevator_network == elev.elevator_network) . += list(elev) continue diff --git a/code/modules/shuttle/shuttles.md b/code/modules/shuttle/shuttles.md index 1dc987b37b83..d12758c6fbe3 100644 --- a/code/modules/shuttle/shuttles.md +++ b/code/modules/shuttle/shuttles.md @@ -35,6 +35,7 @@ To setup an elevator: - place the docking port where you want the elevator to sit - give the docking port instance a unique ID - give the docking port instance a unique Name +- make sure the door direction is correct west/east - give the docking port shuttle_area the area name for where it sits - if you want to build a docking port 'network' then change the roudnstart_template to a subclass - if you want to assign a docking port to a 'network' then give it a value in "tag" diff --git a/code/modules/shuttle/shuttles/trijent_elevator.dm b/code/modules/shuttle/shuttles/trijent_elevator.dm index e8b2b73ec22d..be99728ce0db 100644 --- a/code/modules/shuttle/shuttles/trijent_elevator.dm +++ b/code/modules/shuttle/shuttles/trijent_elevator.dm @@ -19,6 +19,7 @@ movement_force = list("KNOCKDOWN" = 0, "THROW" = 0) var/datum/door_controller/aggregate/door_control + var/elevator_network /obj/docking_port/mobile/trijent_elevator/Initialize(mapload, ...) . = ..() @@ -43,6 +44,7 @@ // shutters to clear the area var/airlock_area var/airlock_exit + var/elevator_network /obj/docking_port/stationary/trijent_elevator/proc/get_doors() . = list() @@ -57,8 +59,6 @@ if(istype(arriving_shuttle, /obj/docking_port/mobile/trijent_elevator)) var/obj/docking_port/mobile/trijent_elevator/elevator = arriving_shuttle elevator.door_control.control_doors("open", airlock_exit) - if(elevator.tag != "") - elevator.tag = tag // open dock doors var/datum/door_controller/single/door_control = new() diff --git a/maps/map_files/DesertDam/Desert_Dam.dmm b/maps/map_files/DesertDam/Desert_Dam.dmm index f0b8dc76bd20..8c60e52b6f33 100644 --- a/maps/map_files/DesertDam/Desert_Dam.dmm +++ b/maps/map_files/DesertDam/Desert_Dam.dmm @@ -14391,7 +14391,8 @@ /obj/docking_port/stationary/trijent_elevator/occupied{ id = "trigent_lz2"; name = "Lz2 Elevator"; - airlock_area = /area/shuttle/trijent_shuttle/lz2 + airlock_area = /area/shuttle/trijent_shuttle/lz2; + elevator_network = "B" }, /turf/open/gm/empty, /area/shuttle/trijent_shuttle/lz2) @@ -61547,7 +61548,8 @@ id = "trigent_omega"; name = "Omega Elevator"; airlock_exit = "east"; - airlock_area = /area/shuttle/trijent_shuttle/omega + airlock_area = /area/shuttle/trijent_shuttle/omega; + elevator_network = "B" }, /turf/open/gm/empty, /area/shuttle/trijent_shuttle/omega) @@ -63402,8 +63404,8 @@ id = "trigent_engineering"; name = "Engineering Elevator"; airlock_exit = "east"; - tag = "A"; - airlock_area = /area/shuttle/trijent_shuttle/engi + airlock_area = /area/shuttle/trijent_shuttle/engi; + elevator_network = "A" }, /turf/open/gm/empty, /area/shuttle/trijent_shuttle/engi) @@ -64045,7 +64047,8 @@ /obj/docking_port/stationary/trijent_elevator/occupied{ id = "trigent_lz1"; name = "Lz1 Elevator"; - tag = "A" + elevator_network = "A"; + airlock_area = /area/shuttle/trijent_shuttle/lz1 }, /turf/open/gm/empty, /area/shuttle/trijent_shuttle/lz1)