Moved the Vox skipjack console over to a multi-destination shuttle datum setup.

Conflicts:
	baystation12.dme
	code/game/gamemodes/vox/heist/heist.dm
	code/game/machinery/computer/vox_shuttle.dm
This commit is contained in:
Zuhayr
2014-06-14 02:22:11 -04:00
committed by ZomgPonies
parent e6a8680347
commit 4385b1320c
14 changed files with 306 additions and 222 deletions
+3 -4
View File
@@ -445,7 +445,6 @@
#include "code\game\machinery\computer\syndicate_shuttle.dm"
#include "code\game\machinery\computer\syndicate_specops_shuttle.dm"
#include "code\game\machinery\computer\telescience.dm"
#include "code\game\machinery\computer\vox_shuttle.dm"
#include "code\game\machinery\computer\xenos_shuttle.dm"
#include "code\game\machinery\doors\airlock.dm"
#include "code\game\machinery\doors\airlock_electronics.dm"
@@ -1433,10 +1432,10 @@
#include "code\modules\scripting\Scanner\Tokens.dm"
#include "code\modules\security levels\keycard authentication.dm"
#include "code\modules\security levels\security levels.dm"
#include "code\modules\shuttles\engineering.dm"
#include "code\modules\shuttles\mining.dm"
#include "code\modules\shuttles\research.dm"
#include "code\modules\shuttles\antagonist.dm"
#include "code\modules\shuttles\departmental.dm"
#include "code\modules\shuttles\shuttle.dm"
#include "code\modules\shuttles\shuttles_multi.dm"
#include "code\modules\store\items.dm"
#include "code\modules\store\store.dm"
#include "code\modules\supermatter\supermatter.dm"
+3 -2
View File
@@ -254,8 +254,9 @@ datum/game_mode/proc/auto_declare_completion_heist()
return 1
/datum/game_mode/vox/heist/check_finished()
if (!(is_vox_crew_alive()) || (vox_shuttle_location && (vox_shuttle_location == "start")))
return 1
// DO NOT FORGET TO FIX THIS.
//if (!(is_vox_crew_alive()) || (vox_shuttle_location && (vox_shuttle_location == "start")))
// return 1
return ..()
/datum/game_mode/vox/heist/proc/is_vox_crew_alive()
+2 -2
View File
@@ -229,8 +229,8 @@ datum/game_mode/proc/auto_declare_completion_trade()
return 1
/datum/game_mode/vox/trade/check_finished()
if (!(is_vox_crew_alive()) || (vox_shuttle_location && (vox_shuttle_location == "start")))
return 1
// if (!(is_vox_crew_alive()) || (vox_shuttle_location && (vox_shuttle_location == "start")))
// return 1
return ..()
/datum/game_mode/vox/trade/proc/is_vox_crew_alive()
-129
View File
@@ -1,129 +0,0 @@
#define VOX_SHUTTLE_MOVE_TIME 400
#define VOX_SHUTTLE_COOLDOWN 1200
//Copied from Syndicate shuttle.
var/global/vox_shuttle_location
var/global/announce_vox_departure = 1 //Stealth systems - give an announcement or not.
/obj/machinery/computer/vox_stealth
name = "skipjack cloaking field terminal"
icon = 'icons/obj/computer.dmi'
icon_state = "syndishuttle"
req_access = list(access_syndicate)
/obj/machinery/computer/vox_stealth/attackby(obj/item/I as obj, mob/user as mob)
return attack_hand(user)
/obj/machinery/computer/vox_stealth/attack_ai(mob/user as mob)
return attack_hand(user)
/obj/machinery/computer/vox_stealth/attack_paw(mob/user as mob)
return attack_hand(user)
/obj/machinery/computer/vox_stealth/attack_hand(mob/user as mob)
if(!allowed(user))
user << "\red Access Denied"
return
if(announce_vox_departure)
user << "\red Shuttle stealth systems have been activated. The Exodus will not be warned of our arrival."
announce_vox_departure = 0
else
user << "\red Shuttle stealth systems have been deactivated. The Exodus will be warned of our arrival."
announce_vox_departure = 1
/obj/machinery/computer/vox_station
name = "vox skipjack terminal"
icon = 'icons/obj/computer.dmi'
icon_state = "syndishuttle"
req_access = list(access_syndicate)
var/area/curr_location
var/moving = 0
var/lastMove = 0
var/warning //Warning about the end of the round.
/obj/machinery/computer/vox_station/New()
curr_location= locate(/area/shuttle/vox/station)
/obj/machinery/computer/vox_station/proc/vox_move_to(area/destination as area)
if(moving) return
if(lastMove + VOX_SHUTTLE_COOLDOWN > world.time) return
var/area/dest_location = locate(destination)
if(curr_location == dest_location) return
if(announce_vox_departure)
if(curr_location == locate(/area/shuttle/vox/station))
command_alert("Attention, Exodus, we just tracked a small target bypassing our defensive perimeter. Can't fire on it without hitting the station - you've got incoming visitors, like it or not.", "NSV Icarus")
else if(dest_location == locate(/area/shuttle/vox/station))
command_alert("Your guests are pulling away, Exodus - moving too fast for us to draw a bead on them. Looks like they're heading out of Tau Ceti at a rapid clip.", "NSV Icarus")
moving = 1
lastMove = world.time
if(curr_location.z != dest_location.z)
var/area/transit_location = locate(/area/vox_station/transit)
curr_location.move_contents_to(transit_location)
curr_location = transit_location
sleep(VOX_SHUTTLE_MOVE_TIME)
curr_location.move_contents_to(dest_location)
curr_location = dest_location
moving = 0
return 1
/obj/machinery/computer/vox_station/attackby(obj/item/I as obj, mob/user as mob)
return attack_hand(user)
/obj/machinery/computer/vox_station/attack_ai(mob/user as mob)
return attack_hand(user)
/obj/machinery/computer/vox_station/attack_paw(mob/user as mob)
return attack_hand(user)
/obj/machinery/computer/vox_station/attack_hand(mob/user as mob)
if(!allowed(user))
user << "\red Access Denied"
return
user.set_machine(src)
var/dat = {"Location: [curr_location]<br>
Ready to move[max(lastMove + VOX_SHUTTLE_COOLDOWN - world.time, 0) ? " in [max(round((lastMove + VOX_SHUTTLE_COOLDOWN - world.time) * 0.1), 0)] seconds" : ": now"]<br>
<a href='?src=\ref[src];start=1'>Return to dark space</a><br>
<a href='?src=\ref[src];arrivals=1'>Cyberiad Arrivals Dock</a> |
<a href='?src=\ref[user];mach_close=computer'>Close</a>"}
user << browse(dat, "window=computer;size=575x450")
onclose(user, "computer")
return
/obj/machinery/computer/vox_station/Topic(href, href_list)
if(!isliving(usr)) return
var/mob/living/user = usr
if(in_range(src, user) || istype(user, /mob/living/silicon))
user.set_machine(src)
vox_shuttle_location = "station"
if(href_list["start"])
if(ticker && (istype(ticker.mode,/datum/game_mode/vox/heist) || istype(ticker.mode,/datum/game_mode/vox/trade)))
if(!warning)
user << "\red Returning to dark space will end your mission and report your success or failure. If you are sure, press the button again."
warning = 1
return
vox_move_to(/area/shuttle/vox/station)
vox_shuttle_location = "start"
else if(href_list["arrivals"])
vox_move_to(/area/vox_station/northwest_solars)
add_fingerprint(usr)
updateUsrDialog()
return
/obj/machinery/computer/vox_station/bullet_act(var/obj/item/projectile/Proj)
visible_message("[Proj] ricochets off [src]!")
+1 -1
View File
@@ -2055,7 +2055,7 @@
var/shuttle_tag = input("Which shuttle do you want to call?") as null|anything in shuttles.locations
if(shuttle_tag && !shuttles.moving[shuttle_tag])
move_shuttle(shuttle_tag)
shuttles.move_shuttle(shuttle_tag)
message_admins("\blue [key_name_admin(usr)] moved the [shuttle_tag] shuttle", 1)
log_admin("[key_name(usr)] moved the [shuttle_tag] shuttle")
+9
View File
@@ -0,0 +1,9 @@
/obj/machinery/computer/shuttle_control/multi/vox
name = "skipjack control console"
req_access = list(access_syndicate)
shuttle_tag = "Vox Skipjack"
/obj/machinery/computer/shuttle_control/multi/syndicate
name = "Syndicate control console"
req_access = list(access_syndicate)
shuttle_tag = "Syndicate"
+17
View File
@@ -0,0 +1,17 @@
/obj/machinery/computer/shuttle_control/mining
name = "mining shuttle console"
shuttle_tag = "Mining"
req_access = list(access_mining)
circuit = "/obj/item/weapon/circuitboard/mining_shuttle"
/obj/machinery/computer/shuttle_control/engineering
name = "engineering shuttle console"
shuttle_tag = "Engineering"
req_access = list(access_engine)
circuit = "/obj/item/weapon/circuitboard/engineering_shuttle"
/obj/machinery/computer/shuttle_control/research
name = "research shuttle console"
shuttle_tag = "Research"
req_access = list(access_research)
circuit = "/obj/item/weapon/circuitboard/research_shuttle"
-5
View File
@@ -1,5 +0,0 @@
/obj/machinery/computer/shuttle_control/engineering
name = "engineering shuttle console"
shuttle_tag = "Engineering"
req_access = list(access_engine)
circuit = "/obj/item/weapon/circuitboard/engineering_shuttle"
-5
View File
@@ -1,5 +0,0 @@
/obj/machinery/computer/shuttle_control/mining
name = "mining shuttle console"
shuttle_tag = "Mining"
req_access = list(access_mining)
circuit = "/obj/item/weapon/circuitboard/mining_shuttle"
-5
View File
@@ -1,5 +0,0 @@
/obj/machinery/computer/shuttle_control/research
name = "research shuttle console"
shuttle_tag = "Research"
req_access = list(access_research)
circuit = "/obj/item/weapon/circuitboard/research_shuttle"
+134 -56
View File
@@ -10,6 +10,9 @@ var/global/datum/shuttle_controller/shuttles
var/list/areas_offsite = list()
var/list/areas_station = list()
//Shuttles with multiple destinations don't quite behave in the same way as ferries.
var/list/multi_shuttles = list()
/datum/shuttle_controller/New()
..()
@@ -52,6 +55,134 @@ var/global/datum/shuttle_controller/shuttles
areas_offsite["Research"] = locate(/area/shuttle/research/outpost)
areas_station["Research"] = locate(/area/shuttle/research/station)
//Vox Shuttle.
var/datum/multi_shuttle/VS = new
VS.origin = /area/shuttle/vox/station
VS.destinations = list(
"NSS Cyberiad" = /area/vox_station/northwest_solars
)
VS.announcer = "NSV Icarus"
VS.arrival_message = "Attention, Exodus, we just tracked a small target bypassing our defensive perimeter. Can't fire on it without hitting the station - you've got incoming visitors, like it or not."
VS.departure_message = "Your guests are pulling away, Exodus - moving too fast for us to draw a bead on them. Looks like they're heading out of the system at a rapid clip."
VS.interim = /area/vox_station/transit
multi_shuttles["Vox Skipjack"] = VS
locations["Vox Skipjack"] = 1
delays["Vox Skipjack"] = 10
moving["Vox Skipjack"] = 0
//Nuke Ops shuttle.
var/datum/multi_shuttle/MS = new
MS.origin = /area/syndicate_station/start
MS.destinations = list(
"NW" = /area/syndicate_station/northwest,
"N" = /area/syndicate_station/north,
"NE" = /area/syndicate_station/northeast,
"SW" = /area/syndicate_station/southwest,
"S" = /area/syndicate_station/south,
"SE" = /area/syndicate_station/southeast,
"Telecomms" = /area/syndicate_station/commssat,
"Mining" = /area/syndicate_station/mining
)
multi_shuttles["Syndicate"] = MS
locations["Syndicate"] = 1
delays["Syndicate"] = 10
moving["Syndicate"] = 0
/datum/shuttle_controller/proc/move_shuttle(var/shuttle_tag,var/area/origin,var/area/destination)
world << "move_shuttle() called for [shuttle_tag] leaving [origin] en route to [destination]."
if(!shuttle_tag || isnull(locations[shuttle_tag]))
return
if(moving[shuttle_tag] == 1) return
moving[shuttle_tag] = 1
spawn(delays[shuttle_tag]*10)
var/area/area_going_to
if(destination)
world << "Using supplied destination [destination]."
area_going_to = destination
else
world << "Using controller value [(locations[shuttle_tag] == 1 ? areas_station[shuttle_tag] : areas_offsite[shuttle_tag])]."
area_going_to = (locations[shuttle_tag] == 1 ? areas_station[shuttle_tag] : areas_offsite[shuttle_tag])
var/area/area_coming_from
if(origin)
world << "Using supplied origin [origin]."
area_coming_from = origin
else
world << "Using controller value [(locations[shuttle_tag] == 1 ? areas_offsite[shuttle_tag] : areas_station[shuttle_tag])]."
area_coming_from = (locations[shuttle_tag] == 1 ? areas_offsite[shuttle_tag] : areas_station[shuttle_tag])
world << "area_coming_from: [area_coming_from]"
world << "area_going_to: [area_going_to]"
if(area_coming_from == area_going_to)
world << "cancelling move, shuttle will overlap."
moving[shuttle_tag] = 0
return
var/list/dstturfs = list()
var/throwy = world.maxy
for(var/turf/T in area_going_to)
dstturfs += T
if(T.y < throwy)
throwy = T.y
for(var/turf/T in dstturfs)
var/turf/D = locate(T.x, throwy - 1, 1)
for(var/atom/movable/AM as mob|obj in T)
AM.Move(D)
if(istype(T, /turf/simulated))
del(T)
for(var/mob/living/carbon/bug in area_going_to)
bug.gib()
for(var/mob/living/simple_animal/pest in area_going_to)
pest.gib()
area_coming_from.move_contents_to(area_going_to)
locations[shuttle_tag] = !locations[shuttle_tag]
for(var/mob/M in area_going_to)
if(M.client)
M << "\red The ship lurches beneath you!"
spawn(0)
if(M.buckled)
shake_camera(M, 3, 1)
else
shake_camera(M, 10, 1)
if(istype(M, /mob/living/carbon))
if(!M.buckled)
M.Weaken(3)
moving[shuttle_tag] = 0
return
//This is for shuttles with a timer before arrival such as the vox skipjack and the escape shuttle.
/datum/shuttle_controller/proc/move_shuttle_long(var/shuttle_tag,var/area/departing,var/area/destination,var/area/interim,var/delay)
move_shuttle(shuttle_tag,locate(departing),locate(interim))
spawn(1)
moving[shuttle_tag] = 1 //So they can't jump out by messing with the console.
sleep(delay)
moving[shuttle_tag] = 0
move_shuttle(shuttle_tag,locate(interim),locate(destination))
return
/obj/machinery/computer/shuttle_control
name = "shuttle console"
icon = 'icons/obj/computer.dmi'
@@ -86,14 +217,14 @@ var/global/datum/shuttle_controller/shuttles
return
usr.set_machine(src)
src.add_fingerprint(usr)
if(href_list["move"])
if (!shuttles.moving[shuttle_tag])
usr << "\blue [shuttle_tag] Shuttle recieved message and will be sent shortly."
move_shuttle(shuttle_tag)
shuttles.move_shuttle(shuttle_tag)
else
usr << "\blue [shuttle_tag] Shuttle is already moving."
updateUsrDialog()
/obj/machinery/computer/shuttle_control/attackby(obj/item/weapon/W as obj, mob/user as mob)
@@ -102,57 +233,4 @@ var/global/datum/shuttle_controller/shuttles
hacked = 1
usr << "You short out the console's ID checking system. It's now available to everyone!"
else
..()
proc/move_shuttle(var/shuttle_tag,var/area/offsite,var/area/station)
if(!shuttle_tag || isnull(shuttles.locations[shuttle_tag]))
return
if(shuttles.moving[shuttle_tag] == 1) return
shuttles.moving[shuttle_tag] = 1
spawn(shuttles.delays[shuttle_tag]*10)
var/list/dstturfs = list()
var/throwy = world.maxy
var/area/area_going_to = (shuttles.locations[shuttle_tag] == 1 ? shuttles.areas_station[shuttle_tag] : shuttles.areas_offsite[shuttle_tag])
var/area/area_coming_from = (shuttles.locations[shuttle_tag] == 1 ? shuttles.areas_offsite[shuttle_tag] : shuttles.areas_station[shuttle_tag])
for(var/turf/T in area_going_to)
dstturfs += T
if(T.y < throwy)
throwy = T.y
for(var/turf/T in dstturfs)
var/turf/D = locate(T.x, throwy - 1, 1)
for(var/atom/movable/AM as mob|obj in T)
AM.Move(D)
if(istype(T, /turf/simulated))
del(T)
for(var/mob/living/carbon/bug in area_going_to)
bug.gib()
for(var/mob/living/simple_animal/pest in area_going_to)
pest.gib()
area_coming_from.move_contents_to(area_going_to)
shuttles.locations[shuttle_tag] = !shuttles.locations[shuttle_tag]
for(var/mob/M in area_going_to)
if(M.client)
spawn(0)
if(M.buckled)
shake_camera(M, 3, 1)
else
shake_camera(M, 10, 1)
if(istype(M, /mob/living/carbon))
if(!M.buckled)
M.Weaken(3)
shuttles.moving[shuttle_tag] = 0
return
..()
+124
View File
@@ -0,0 +1,124 @@
//This is a holder for things like the Vox and Nuke shuttle.
/datum/multi_shuttle
var/cloaked = 1
var/at_origin = 1
var/move_time = 240
var/cooldown = 200
var/announcer
var/arrival_message
var/departure_message
var/area/interim
var/area/last_departed
var/list/destinations
var/area/origin
var/return_warning = 0
/datum/multi_shuttle/New()
..()
if(origin) last_departed = origin
/datum/multi_shuttle/proc/announce_departure()
if(cloaked || isnull(departure_message))
return
command_alert(departure_message,(announcer ? announcer : "Central Command"))
/datum/multi_shuttle/proc/announce_arrival()
if(cloaked || isnull(arrival_message))
return
command_alert(arrival_message,(announcer ? announcer : "Central Command"))
/obj/machinery/computer/shuttle_control/multi
icon_state = "syndishuttle"
/obj/machinery/computer/shuttle_control/multi/attack_hand(user as mob)
if(..(user))
return
src.add_fingerprint(user)
var/dat
dat = "<center>[shuttle_tag] Ship Control<hr>"
if(shuttles.moving[shuttle_tag])
dat += "Location: <font color='red'>Moving</font> <br>"
else
var/area/areacheck = get_area(src)
dat += "Location: [areacheck.name]<br>"
dat += "<b><A href='?src=\ref[src];toggle_cloak=[1]'>Toggle cloaking field</A></b><br>"
dat += "<b><A href='?src=\ref[src];move_multi=[1]'>Move ship</A></b><br>"
dat += "<b><A href='?src=\ref[src];start=[1]'>Return to base</A></b></center>"
user << browse("[dat]", "window=[shuttle_tag]shuttlecontrol;size=220x220")
/obj/machinery/computer/shuttle_control/multi/Topic(href, href_list)
if(..())
return
usr.set_machine(src)
src.add_fingerprint(usr)
var/datum/multi_shuttle/MS = shuttles.multi_shuttles[shuttle_tag]
if(!istype(MS)) return
if (shuttles.moving[shuttle_tag])
usr << "\blue [shuttle_tag] vessel is moving."
return
if(href_list["start"])
if(MS.at_origin)
usr << "\red You are already at your home base."
return
if(!MS.return_warning)
usr << "\red Returning to your home base will end your mission. If you are sure, press the button again."
//TODO: Actually end the mission.
MS.return_warning = 1
return
shuttles.move_shuttle_long(shuttle_tag,MS.last_departed,MS.origin,MS.interim,MS.move_time)
MS.last_departed = MS.origin
MS.at_origin = 1
if(href_list["toggle_cloak"])
if(!shuttles.multi_shuttles) return
MS.cloaked = !MS.cloaked
usr << "\red Ship stealth systems have been [(MS.cloaked ? "activated. The station will not" : "deactivated. The station will")] be warned of our arrival."
if(href_list["move_multi"])
if(!shuttles.multi_shuttles) return
var/choice = input("Select a destination.") as null|anything in MS.destinations
if(!choice) return
usr << "\blue [shuttle_tag] main computer recieved message."
if(MS.at_origin)
MS.announce_arrival()
MS.last_departed = MS.origin
MS.at_origin = 0
shuttles.move_shuttle_long(shuttle_tag,MS.last_departed,MS.destinations[choice],MS.interim,MS.move_time)
MS.last_departed = MS.destinations[choice]
return
else if(choice == MS.origin)
MS.announce_departure()
shuttles.move_shuttle(shuttle_tag,locate(MS.last_departed),locate(MS.destinations[choice]))
MS.last_departed = MS.destinations[choice]
updateUsrDialog()
+11 -11
View File
@@ -1469,7 +1469,7 @@
"aCm" = (/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/hallway/secondary/entry)
"aCn" = (/obj/machinery/light,/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/hallway/secondary/entry)
"aCo" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 6},/area/hallway/secondary/entry)
"aCp" = (/obj/machinery/computer/engineering_shuttle{req_access = null; req_one_access_txt = "11;24"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry)
"aCp" = (/obj/machinery/computer/shuttle_control/engineering{req_access = null; req_one_access_txt = "11;24"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry)
"aCq" = (/obj/structure/grille,/obj/structure/window/plasmareinforced,/obj/structure/window/plasmareinforced{dir = 4},/obj/structure/window/plasmareinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area)
"aCr" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/hallway/secondary/entry)
"aCs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/hallway/secondary/entry)
@@ -2532,7 +2532,7 @@
"aWJ" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/bridge)
"aWK" = (/turf/simulated/floor{icon_state = "red"; dir = 1},/area/bridge)
"aWL" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/bridge)
"aWM" = (/obj/machinery/computer/mining_shuttle,/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/bridge)
"aWM" = (/obj/machinery/computer/shuttle_control/mining,/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/bridge)
"aWN" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor,/area/bridge)
"aWO" = (/obj/machinery/computer/station_alert,/turf/simulated/floor{dir = 5; icon_state = "blue"},/area/bridge)
"aWP" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/bridge)
@@ -2883,7 +2883,7 @@
"bdw" = (/obj/structure/flora/kirbyplants,/turf/simulated/floor,/area/quartermaster/qm)
"bdx" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red{pixel_x = 2; pixel_y = 6},/obj/item/weapon/rcs,/turf/simulated/floor,/area/quartermaster/qm)
"bdy" = (/obj/structure/table,/obj/item/weapon/coin/silver{pixel_x = -3; pixel_y = 3},/obj/item/weapon/coin/silver,/obj/item/device/eftpos{eftpos_name = "Quartermaster EFTPOS scanner"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/quartermaster/qm)
"bdz" = (/obj/machinery/computer/mining_shuttle,/turf/simulated/floor,/area/quartermaster/qm)
"bdz" = (/obj/machinery/computer/shuttle_control/mining,/turf/simulated/floor,/area/quartermaster/qm)
"bdA" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area/quartermaster/qm)
"bdB" = (/obj/machinery/computer/security/mining,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = 0; pixel_y = 30},/turf/simulated/floor,/area/quartermaster/qm)
"bdC" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/quartermaster/qm)
@@ -4482,7 +4482,7 @@
"bIj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/medical/research_shuttle_dock)
"bIk" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/space,/area/shuttle/research/station)
"bIl" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless,/area/shuttle/research/station)
"bIm" = (/obj/machinery/computer/research_shuttle,/turf/simulated/shuttle/floor,/area/shuttle/research/station)
"bIm" = (/obj/machinery/computer/shuttle_control/research,/turf/simulated/shuttle/floor,/area/shuttle/research/station)
"bIn" = (/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "QMLoaddoor2"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/structure/plasticflaps/mining,/turf/simulated/floor/plating,/area/quartermaster/storage)
"bIo" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/turf/simulated/floor/plating,/area/quartermaster/storage)
"bIp" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/turf/simulated/floor,/area/quartermaster/storage)
@@ -4796,7 +4796,7 @@
"bOl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"bOm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"bOn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"bOo" = (/obj/machinery/computer/research_shuttle,/turf/simulated/floor{icon_state = "white"},/area/medical/research_shuttle_dock)
"bOo" = (/obj/machinery/computer/shuttle_control/research,/turf/simulated/floor{icon_state = "white"},/area/medical/research_shuttle_dock)
"bOp" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/research_shuttle_dock)
"bOq" = (/obj/machinery/atmospherics/pipe/manifold{_color = "red"; icon_state = "manifold-r-f"; level = 1; name = "pipe manifold"},/obj/machinery/camera{c_tag = "Research Division Dock"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/research_shuttle_dock)
"bOr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/airlock/research{name = "Research Shuttle Dock"; req_access_txt = "65"},/turf/simulated/floor{icon_state = "white"},/area/medical/research_shuttle_dock)
@@ -5276,7 +5276,7 @@
"bXx" = (/turf/simulated/floor/airless{dir = 10; icon_state = "warning"},/area/toxins/test_area)
"bXy" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/shuttle/mining/station)
"bXz" = (/obj/structure/table,/turf/simulated/shuttle/floor,/area/shuttle/mining/station)
"bXA" = (/obj/machinery/computer/mining_shuttle,/turf/simulated/shuttle/floor,/area/shuttle/mining/station)
"bXA" = (/obj/machinery/computer/shuttle_control/mining,/turf/simulated/shuttle/floor,/area/shuttle/mining/station)
"bXB" = (/obj/machinery/computer/security/mining,/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/obj/machinery/camera{c_tag = "Mining Dock"; dir = 4; network = list("SS13")},/turf/simulated/floor{dir = 8; icon_state = "brown"},/area/quartermaster/miningdock)
"bXC" = (/obj/structure/stool/bed/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Shaft Miner"},/turf/simulated/floor,/area/quartermaster/miningdock)
"bXD" = (/obj/structure/rack{dir = 1},/obj/item/weapon/modkit/unathi,/obj/item/weapon/modkit/unathi,/turf/simulated/floor{tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4},/area/quartermaster/miningdock)
@@ -5354,7 +5354,7 @@
"bYX" = (/obj/structure/grille,/obj/structure/window/plasmareinforced,/obj/structure/window/plasmareinforced{dir = 8},/obj/structure/window/plasmareinforced{dir = 4},/turf/simulated/floor/plating,/area)
"bYY" = (/obj/item/weapon/ore/iron,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/quartermaster/miningdock)
"bYZ" = (/obj/structure/closet/crate,/obj/machinery/light/small{dir = 4},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/quartermaster/miningdock)
"bZa" = (/obj/machinery/computer/mining_shuttle,/turf/simulated/floor{dir = 9; icon_state = "brown"},/area/quartermaster/miningdock)
"bZa" = (/obj/machinery/computer/shuttle_control/mining,/turf/simulated/floor{dir = 9; icon_state = "brown"},/area/quartermaster/miningdock)
"bZb" = (/obj/effect/landmark/start{name = "Shaft Miner"},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/simulated/floor,/area/quartermaster/miningdock)
"bZc" = (/obj/effect/landmark/start{name = "Shaft Miner"},/turf/simulated/floor,/area/quartermaster/miningdock)
"bZd" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; level = 2; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor,/area/quartermaster/miningdock)
@@ -9637,7 +9637,7 @@
"dDq" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/light/small,/turf/simulated/floor{icon_state = "freezerfloor"},/area/djstation)
"dDr" = (/obj/structure/toilet{pixel_y = 8},/turf/simulated/floor{icon_state = "freezerfloor"},/area/djstation)
"dDs" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/djstation)
"dDt" = (/obj/machinery/computer/engineering_shuttle,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/djstation)
"dDt" = (/obj/machinery/computer/shuttle_control/engineering,/turf/simulated/floor{icon_state = "cafeteria"; dir = 5},/area/djstation)
"dDu" = (/obj/structure/computerframe{anchored = 1},/turf/simulated/floor{icon_state = "grimy"},/area/djstation)
"dDv" = (/obj/structure/stool/bed/chair/comfy/black{dir = 8},/turf/simulated/floor{icon_state = "grimy"},/area/djstation)
"dDw" = (/obj/machinery/light/small,/turf/simulated/floor{icon_state = "grimy"},/area/djstation)
@@ -9655,7 +9655,7 @@
"dDI" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/shuttle/floor{tag = "icon-floor2"; icon_state = "floor2"},/area/shuttle/constructionsite/site)
"dDJ" = (/obj/structure/shuttle/engine/heater{tag = "icon-heater (EAST)"; icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/shuttle/constructionsite/site)
"dDK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/shuttle/constructionsite/site)
"dDL" = (/obj/machinery/computer/engineering_shuttle,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/constructionsite/site)
"dDL" = (/obj/machinery/computer/shuttle_control/engineering,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/constructionsite/site)
"dDM" = (/turf/simulated/shuttle/wall{tag = "icon-swall2"; icon_state = "swall2"; dir = 2},/area/shuttle/constructionsite/site)
"dDN" = (/obj/machinery/computer/atmos_alert,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/constructionsite/site)
"dDO" = (/obj/structure/shuttle/engine/heater{tag = "icon-heater (EAST)"; icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/shuttle/constructionsite/site)
@@ -10159,7 +10159,7 @@
"dNs" = (/obj/effect/gibspawner/human,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/mine/abandoned)
"dNt" = (/obj/effect/alien/weeds{icon_state = "weeds1"},/obj/effect/decal/remains/xeno,/turf/simulated/floor/plating,/area/mine/abandoned)
"dNu" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/transit_tube{icon_state = "N-S"},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/research_outpost/entry)
"dNv" = (/obj/machinery/computer/research_shuttle,/turf/simulated/floor{icon_state = "bot"},/area/research_outpost/entry)
"dNv" = (/obj/machinery/computer/shuttle_control/research,/turf/simulated/floor{icon_state = "bot"},/area/research_outpost/entry)
"dNw" = (/turf/simulated/floor,/area/research_outpost/entry)
"dNx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/research_outpost/entry)
"dNy" = (/obj/machinery/atmospherics/pipe/simple{_color = "red"; dir = 6; icon_state = "intact-r-f"; level = 1},/turf/simulated/floor,/area/research_outpost/entry)
@@ -11107,7 +11107,7 @@
"efE" = (/obj/machinery/atmospherics/pipe/simple{dir = 9; icon_state = "intact-f"},/turf/simulated/floor,/area/mine/production)
"efF" = (/obj/machinery/mineral/processing_unit_console,/turf/simulated/wall/r_wall,/area/mine/production)
"efG" = (/obj/machinery/mineral/processing_unit,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production)
"efH" = (/obj/machinery/computer/mining_shuttle,/turf/simulated/floor,/area/mine/production)
"efH" = (/obj/machinery/computer/shuttle_control/mining,/turf/simulated/floor,/area/mine/production)
"efI" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/closet/crate,/turf/simulated/floor,/area/mine/production)
"efJ" = (/obj/machinery/conveyor{dir = 2; id = "mining_internal"},/obj/machinery/mineral/output,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production)
"efK" = (/turf/simulated/wall/r_wall,/area/mine/production)
+2 -2
View File
@@ -8975,9 +8975,9 @@
"dqE" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/shuttle/plating{name = "Vox plating"; nitrogen = 100; oxygen = 0},/area/shuttle/vox/station)
"dqF" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/shuttle/plating{name = "Vox plating"; nitrogen = 100; oxygen = 0},/area/shuttle/vox/station)
"dqG" = (/obj/machinery/door/airlock/hatch{name = "Teleporter Access"; req_access_txt = "0"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "ADMINLOCKDOWN"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin)
"dqH" = (/obj/machinery/computer/vox_station,/turf/simulated/shuttle/plating{name = "Vox plating"; nitrogen = 100; oxygen = 0},/area/shuttle/vox/station)
"dqH" = (/obj/machinery/computer/shuttle_control/multi/vox,/turf/simulated/shuttle/plating{name = "Vox plating"; nitrogen = 100; oxygen = 0},/area/shuttle/vox/station)
"dqI" = (/obj/machinery/computer/station_alert,/turf/simulated/shuttle/plating{name = "Vox plating"; nitrogen = 100; oxygen = 0},/area/shuttle/vox/station)
"dqJ" = (/obj/machinery/computer/vox_stealth,/turf/simulated/shuttle/plating{name = "Vox plating"; nitrogen = 100; oxygen = 0},/area/shuttle/vox/station)
"dqJ" = (/obj/machinery/computer/shuttle_control/multi/vox,/turf/simulated/shuttle/plating{name = "Vox plating"; nitrogen = 100; oxygen = 0},/area/shuttle/vox/station)
"dqK" = (/obj/structure/rack,/obj/item/weapon/tank/jetpack/oxygen,/obj/item/weapon/tank/jetpack/oxygen,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin)
"dqL" = (/obj/structure/rack,/obj/item/clothing/suit/space,/obj/item/clothing/suit/space,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space,/obj/item/clothing/head/helmet/space,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin)
"dqM" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s5"; icon_state = "swall_s5"; dir = 2},/area/alien{icon_state = "red2"; name = "\improper Vox base"})