From 90e0297389fe484b1ccfb23a0cbbacf01ae7c9bb Mon Sep 17 00:00:00 2001 From: "bbusse@gmail.com" Date: Sun, 9 Oct 2011 20:57:36 +0000 Subject: [PATCH] Gas filters and mixers can be connected and wrenched around like any other pipe machinery, and new ones can be extruded from the pipe dispenser. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2338 316c924e-a436-60f5-8080-3fe189b3f50e --- code/ATMOSPHERICS/components/filter.dm | 389 ------------------ code/ATMOSPHERICS/components/mixer.dm | 301 -------------- .../components/trinary_devices/filter.dm | 234 +++++++++++ .../components/trinary_devices/mixer.dm | 155 +++++++ .../trinary_devices/trinary_base.dm | 163 ++++++++ code/game/machinery/pipe/construction.dm | 53 +++ code/game/machinery/pipe/pipe_dispenser.dm | 2 + icons/obj/pipe-item.dmi | Bin 10824 -> 14277 bytes maps/tgstation.2.0.8.dmm | 240 +++++------ tgstation.dme | 7 +- 10 files changed, 732 insertions(+), 812 deletions(-) delete mode 100644 code/ATMOSPHERICS/components/filter.dm delete mode 100644 code/ATMOSPHERICS/components/mixer.dm create mode 100644 code/ATMOSPHERICS/components/trinary_devices/filter.dm create mode 100644 code/ATMOSPHERICS/components/trinary_devices/mixer.dm create mode 100644 code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm diff --git a/code/ATMOSPHERICS/components/filter.dm b/code/ATMOSPHERICS/components/filter.dm deleted file mode 100644 index 278c99955d..0000000000 --- a/code/ATMOSPHERICS/components/filter.dm +++ /dev/null @@ -1,389 +0,0 @@ -obj/machinery/atmospherics/filter - icon = 'filter.dmi' - icon_state = "intact_off" - density = 1 - - name = "Gas filter" - - dir = SOUTH - initialize_directions = SOUTH|NORTH|WEST - req_access = list(access_atmospherics) - - var/on = 0 - var/temp = null // -- TLE - - var/datum/gas_mixture/air_in - var/datum/gas_mixture/air_out1 - var/datum/gas_mixture/air_out2 - - var/obj/machinery/atmospherics/node_in - var/obj/machinery/atmospherics/node_out1 - var/obj/machinery/atmospherics/node_out2 - - var/datum/pipe_network/network_in - var/datum/pipe_network/network_out1 - var/datum/pipe_network/network_out2 - - var/target_pressure = ONE_ATMOSPHERE - - var/filter_type = 0 -/* -Filter types: --1: Nothing - 0: Carbon Molecules: Plasma Toxin, Oxygen Agent B - 1: Oxygen: Oxygen ONLY - 2: Nitrogen: Nitrogen ONLY - 3: Carbon Dioxide: Carbon Dioxide ONLY - 4: Sleeping Agent (N2O) -*/ - - var/frequency = 0 - var/datum/radio_frequency/radio_connection - - proc - set_frequency(new_frequency) - radio_controller.remove_object(src, frequency) - frequency = new_frequency - if(frequency) - radio_connection = radio_controller.add_object(src, frequency, RADIO_ATMOSIA) - - New() - ..() - switch(dir) - if(NORTH) - initialize_directions = NORTH|EAST|SOUTH - if(SOUTH) - initialize_directions = NORTH|SOUTH|WEST - if(EAST) - initialize_directions = EAST|WEST|SOUTH - if(WEST) - initialize_directions = NORTH|EAST|WEST - if(radio_controller) - initialize() - - update_icon() - if(node_out1&&node_out2&&node_in) - icon_state = "intact_[on?("on"):("off")]" - else - var/node_out1_direction = get_dir(src, node_out1) - var/node_out2_direction = get_dir(src, node_out2) - - var/node_in_bit = (node_in)?(1):(0) - - icon_state = "exposed_[node_out1_direction|node_out2_direction]_[node_in_bit]_off" - - on = 0 - - return - - New() - ..() - - air_in = new - air_out1 = new - air_out2 = new - - air_in.volume = 200 - air_out1.volume = 200 - air_out2.volume = 200 - - process() - ..() - if(!on) - return 0 - - var/output_starting_pressure = air_out2.return_pressure() - - if(output_starting_pressure >= target_pressure) - //No need to mix if target is already full! - return 1 - - //Calculate necessary moles to transfer using PV=nRT - - var/pressure_delta = target_pressure - output_starting_pressure - var/transfer_moles - - if(air_in.temperature > 0) - transfer_moles = pressure_delta*air_out2.volume/(air_in.temperature * R_IDEAL_GAS_EQUATION) - - //Actually transfer the gas - - if(transfer_moles > 0) - var/datum/gas_mixture/removed = air_in.remove(transfer_moles) - - if(!removed) - return - var/datum/gas_mixture/filtered_out = new - filtered_out.temperature = removed.temperature - - switch(filter_type) - if(0) //removing hydrocarbons - filtered_out.toxins = removed.toxins - removed.toxins = 0 - - if(removed.trace_gases.len>0) - for(var/datum/gas/trace_gas in removed.trace_gases) - if(istype(trace_gas, /datum/gas/oxygen_agent_b)) - removed.trace_gases -= trace_gas - filtered_out.trace_gases += trace_gas - - if(1) //removing O2 - filtered_out.oxygen = removed.oxygen - removed.oxygen = 0 - - if(2) //removing N2 - filtered_out.nitrogen = removed.nitrogen - removed.nitrogen = 0 - - if(3) //removing CO2 - filtered_out.carbon_dioxide = removed.carbon_dioxide - removed.carbon_dioxide = 0 - - if(4)//removing N2O - if(removed.trace_gases.len>0) - for(var/datum/gas/trace_gas in removed.trace_gases) - if(istype(trace_gas, /datum/gas/sleeping_agent)) - removed.trace_gases -= trace_gas - filtered_out.trace_gases += trace_gas - - else - filtered_out = null - - - air_out1.merge(filtered_out) - air_out2.merge(removed) - - if(network_out1) - network_out1.update = 1 - - if(network_out2) - network_out2.update = 1 - - if(network_in) - network_in.update = 1 - - return 1 - -// Housekeeping and pipe network stuff below - network_expand(datum/pipe_network/new_network, obj/machinery/atmospherics/pipe/reference) - if(reference == node_out1) - network_out1 = new_network - - else if(reference == node_out2) - network_out2 = new_network - - else if(reference == node_in) - network_in = new_network - - if(new_network.normal_members.Find(src)) - return 0 - - new_network.normal_members += src - - return null - - Del() - loc = null - - if(node_out1) - node_out1.disconnect(src) - del(network_out1) - - if(node_out2) - node_out2.disconnect(src) - del(network_out2) - - if(node_in) - node_in.disconnect(src) - del(network_in) - - node_out1 = null - node_out2 = null - node_in = null - - ..() - - initialize() - if(node_out1 && node_in) return - - var/node_in_connect = turn(dir, -180) - var/node_out1_connect = turn(dir, -90) - var/node_out2_connect = dir - - - for(var/obj/machinery/atmospherics/target in get_step(src,node_out1_connect)) - if(target.initialize_directions & get_dir(target,src)) - node_out1 = target - break - - for(var/obj/machinery/atmospherics/target in get_step(src,node_out2_connect)) - if(target.initialize_directions & get_dir(target,src)) - node_out2 = target - break - - for(var/obj/machinery/atmospherics/target in get_step(src,node_in_connect)) - if(target.initialize_directions & get_dir(target,src)) - node_in = target - break - - update_icon() - - set_frequency(frequency) - - build_network() - if(!network_out1 && node_out1) - network_out1 = new /datum/pipe_network() - network_out1.normal_members += src - network_out1.build_network(node_out1, src) - - if(!network_out2 && node_out2) - network_out2 = new /datum/pipe_network() - network_out2.normal_members += src - network_out2.build_network(node_out2, src) - - if(!network_in && node_in) - network_in = new /datum/pipe_network() - network_in.normal_members += src - network_in.build_network(node_in, src) - - - return_network(obj/machinery/atmospherics/reference) - build_network() - - if(reference==node_out1) - return network_out1 - - if(reference==node_out2) - return network_out2 - - if(reference==node_in) - return network_in - - return null - - reassign_network(datum/pipe_network/old_network, datum/pipe_network/new_network) - if(network_out1 == old_network) - network_out1 = new_network - - if(network_out2 == old_network) - network_out2 = new_network - - if(network_in == old_network) - network_in = new_network - - return 1 - - return_network_air(datum/pipe_network/reference) - var/list/results = list() - - if(network_out1 == reference) - results += air_out1 - - if(network_out2 == reference) - results += air_out2 - - if(network_in == reference) - results += air_in - - return results - - disconnect(obj/machinery/atmospherics/reference) - if(reference==node_out1) - del(network_out1) - node_out1 = null - - else if(reference==node_out2) - del(network_out2) - node_out2 = null - - else if(reference==node_in) - del(network_in) - node_in = null - - return null - - -obj/machinery/atmospherics/filter/attack_hand(user as mob) // -- TLE - if(..()) - return - - if(!src.allowed(user)) - user << "\red Access denied." - return -/* - dat += "Autolathe Wires:
" - var/wire - for(wire in src.wires) - dat += text("[wire] Wire: [src.wires[wire] ? "Mend" : "Cut"] Pulse
") - - dat += text("The red light is [src.disabled ? "off" : "on"].
") - dat += text("The green light is [src.shocked ? "off" : "on"].
") - dat += text("The blue light is [src.hacked ? "off" : "on"].
") -*/ - var/dat - var/current_filter_type - switch(filter_type) - if(0) - current_filter_type = "Carbon Molecules" - if(1) - current_filter_type = "Oxygen" - if(2) - current_filter_type = "Nitrogen" - if(3) - current_filter_type = "Carbon Dioxide" - if(4) - current_filter_type = "Nitrous Oxide" - if(-1) - current_filter_type = "Nothing" - else - current_filter_type = "ERROR - Report this bug to the admin, please!" - - dat += {" - Power: [on?"On":"Off"]
- Filtering: [current_filter_type]

-

Set Filter Type:

- Carbon Molecules
- Oxygen
- Nitrogen
- Carbon Dioxide
- Nitrous Oxide
- Nothing
-
Desirable output pressure: - [src.target_pressure] | Change - "} -/* - user << browse("[src.name] control[dat]","window=atmo_filter") - onclose(user, "atmo_filter") - return - - if (src.temp) - dat = text("[]

Clear Screen", src.temp, src) - //else - // src.on != src.on -*/ - user << browse("[src.name] control[dat]", "window=atmo_filter") - onclose(user, "atmo_filter") - return - -obj/machinery/atmospherics/filter/Topic(href, href_list) // -- TLE - if(..()) - return - usr.machine = src - src.add_fingerprint(usr) - if(href_list["filterset"]) - src.filter_type = text2num(href_list["filterset"]) - if (href_list["temp"]) - src.temp = null - if(href_list["set_press"]) - var/new_pressure = input(usr,"Enter new output pressure (0-4500kPa)","Pressure control",src.target_pressure) as num - src.target_pressure = max(0, min(4500, new_pressure)) - if(href_list["power"]) - on=!on - src.update_icon() - src.updateUsrDialog() -/* - for(var/mob/M in viewers(1, src)) - if ((M.client && M.machine == src)) - src.attack_hand(M) -*/ - return diff --git a/code/ATMOSPHERICS/components/mixer.dm b/code/ATMOSPHERICS/components/mixer.dm deleted file mode 100644 index 9ad3c44cf1..0000000000 --- a/code/ATMOSPHERICS/components/mixer.dm +++ /dev/null @@ -1,301 +0,0 @@ -obj/machinery/atmospherics/mixer - icon = 'mixer.dmi' - icon_state = "intact_off" - density = 1 - - name = "Gas mixer" - - dir = SOUTH - initialize_directions = SOUTH|NORTH|WEST - req_access = list(access_atmospherics) - - var/on = 0 - - var/datum/gas_mixture/air_in1 - var/datum/gas_mixture/air_in2 - var/datum/gas_mixture/air_out - - var/obj/machinery/atmospherics/node_in1 - var/obj/machinery/atmospherics/node_in2 - var/obj/machinery/atmospherics/node_out - - var/datum/pipe_network/network_in1 - var/datum/pipe_network/network_in2 - var/datum/pipe_network/network_out - - var/target_pressure = ONE_ATMOSPHERE - var/node1_concentration = 0.5 - var/node2_concentration = 0.5 - - update_icon() - if(node_in1&&node_in2&&node_out) - icon_state = "intact_[on?("on"):("off")]" - else - var/node_in1_direction = get_dir(src, node_in1) - var/node_in2_direction = get_dir(src, node_in2) - - var/node_out_bit = (node_out)?(1):(0) - - icon_state = "exposed_[node_in1_direction|node_in2_direction]_[node_out_bit]_off" - - on = 0 - - return - - New() - ..() - switch(dir) - if(NORTH) - initialize_directions = NORTH|EAST|SOUTH - if(EAST) - initialize_directions = EAST|SOUTH|WEST - if(SOUTH) - initialize_directions = SOUTH|WEST|NORTH - if(WEST) - initialize_directions = WEST|NORTH|EAST - air_in1 = new - air_in2 = new - air_out = new - - air_in1.volume = 200 - air_in2.volume = 200 - air_out.volume = 300 - - process() - ..() - if(!on) - return 0 - - var/output_starting_pressure = air_out.return_pressure() - - if(output_starting_pressure >= target_pressure) - //No need to mix if target is already full! - return 1 - - //Calculate necessary moles to transfer using PV=nRT - - var/pressure_delta = target_pressure - output_starting_pressure - var/transfer_moles1 = 0 - var/transfer_moles2 = 0 - - if(air_in1.temperature > 0) - transfer_moles1 = (node1_concentration*pressure_delta)*air_out.volume/(air_in1.temperature * R_IDEAL_GAS_EQUATION) - - if(air_in2.temperature > 0) - transfer_moles2 = (node2_concentration*pressure_delta)*air_out.volume/(air_in2.temperature * R_IDEAL_GAS_EQUATION) - - var/air_in1_moles = air_in1.total_moles() - var/air_in2_moles = air_in2.total_moles() - - if((air_in1_moles < transfer_moles1) || (air_in2_moles < transfer_moles2)) - if(!transfer_moles1 || !transfer_moles2) return - var/ratio = min(air_in1_moles/transfer_moles1, air_in2_moles/transfer_moles2) - - transfer_moles1 *= ratio - transfer_moles2 *= ratio - - //Actually transfer the gas - - if(transfer_moles1 > 0) - var/datum/gas_mixture/removed1 = air_in1.remove(transfer_moles1) - air_out.merge(removed1) - - if(transfer_moles2 > 0) - var/datum/gas_mixture/removed2 = air_in2.remove(transfer_moles2) - air_out.merge(removed2) - - if(network_in1 && transfer_moles1) - network_in1.update = 1 - - if(network_in2 && transfer_moles2) - network_in2.update = 1 - - if(network_out) - network_out.update = 1 - - return 1 - -// Housekeeping and pipe network stuff below - network_expand(datum/pipe_network/new_network, obj/machinery/atmospherics/pipe/reference) - if(reference == node_in1) - network_in1 = new_network - - else if(reference == node_in2) - network_in2 = new_network - - else if(reference == node_out) - network_out = new_network - - if(new_network.normal_members.Find(src)) - return 0 - - new_network.normal_members += src - - return null - - Del() - loc = null - - if(node_in1) - node_in1.disconnect(src) - del(network_in1) - - if(node_in2) - node_in2.disconnect(src) - del(network_in2) - - if(node_out) - node_out.disconnect(src) - del(network_out) - - node_in1 = null - node_in2 = null - node_out = null - - ..() - - initialize() - if(node_in1 && node_out) return - - var/node_out_connect = dir - var/node_in1_connect = turn(dir, -90) - var/node_in2_connect = turn(dir, -180) - - for(var/obj/machinery/atmospherics/target in get_step(src,node_in1_connect)) - if(target.initialize_directions & get_dir(target,src)) - node_in1 = target - break - - for(var/obj/machinery/atmospherics/target in get_step(src,node_in2_connect)) - if(target.initialize_directions & get_dir(target,src)) - node_in2 = target - break - - for(var/obj/machinery/atmospherics/target in get_step(src,node_out_connect)) - if(target.initialize_directions & get_dir(target,src)) - node_out = target - break - - update_icon() - - build_network() - if(!network_in1 && node_in1) - network_in1 = new /datum/pipe_network() - network_in1.normal_members += src - network_in1.build_network(node_in1, src) - - if(!network_in2 && node_in2) - network_in2 = new /datum/pipe_network() - network_in2.normal_members += src - network_in2.build_network(node_in2, src) - - if(!network_out && node_out) - network_out = new /datum/pipe_network() - network_out.normal_members += src - network_out.build_network(node_out, src) - - - return_network(obj/machinery/atmospherics/reference) - build_network() - - if(reference==node_in1) - return network_in1 - - if(reference==node_in2) - return network_in2 - - if(reference==node_out) - return network_out - - return null - - reassign_network(datum/pipe_network/old_network, datum/pipe_network/new_network) - if(network_in1 == old_network) - network_in1 = new_network - - if(network_in2 == old_network) - network_in2 = new_network - - if(network_out == old_network) - network_out = new_network - - return 1 - - return_network_air(datum/pipe_network/reference) - var/list/results = list() - - if(network_in1 == reference) - results += air_in1 - - if(network_in2 == reference) - results += air_in2 - - if(network_out == reference) - results += air_out - - return results - - disconnect(obj/machinery/atmospherics/reference) - if(reference==node_in1) - del(network_in1) - node_in1 = null - - else if(reference==node_in2) - del(network_in2) - node_in2 = null - - else if(reference==node_out) - del(network_out) - node_out = null - - return null - - - attack_hand(user as mob) - if(..()) - return - src.add_fingerprint(usr) - if(!src.allowed(user)) - user << "\red Access denied." - return - usr.machine = src - var/dat = {"Power: [on?"On":"Off"]
- Desirable output pressure: - [target_pressure]kPa | Change -
- Node 1 Concentration: - - - - - [node1_concentration]([node1_concentration*100]%) - + - + -
- Node 2 Concentration: - - - - - [node2_concentration]([node2_concentration*100]%) - + - + - "} - - user << browse("[src.name] control[dat]", "window=atmo_mixer") - onclose(user, "atmo_mixer") - return - - Topic(href,href_list) - if(href_list["power"]) - on = !on - if(href_list["set_press"]) - var/new_pressure = input(usr,"Enter new output pressure (0-4500kPa)","Pressure control",src.target_pressure) as num - src.target_pressure = max(0, min(4500, new_pressure)) - if(href_list["node1_c"]) - var/value = text2num(href_list["node1_c"]) - src.node1_concentration = max(0, min(1, src.node1_concentration + value)) - src.node2_concentration = max(0, min(1, src.node2_concentration - value)) - if(href_list["node2_c"]) - var/value = text2num(href_list["node2_c"]) - src.node2_concentration = max(0, min(1, src.node2_concentration + value)) - src.node1_concentration = max(0, min(1, src.node1_concentration - value)) - src.update_icon() - src.updateUsrDialog() - return diff --git a/code/ATMOSPHERICS/components/trinary_devices/filter.dm b/code/ATMOSPHERICS/components/trinary_devices/filter.dm new file mode 100644 index 0000000000..6747230f45 --- /dev/null +++ b/code/ATMOSPHERICS/components/trinary_devices/filter.dm @@ -0,0 +1,234 @@ +obj/machinery/atmospherics/trinary/filter + icon = 'filter.dmi' + icon_state = "intact_off" + density = 1 + + name = "Gas filter" + + req_access = list(access_atmospherics) + + var/on = 0 + var/temp = null // -- TLE + + var/target_pressure = ONE_ATMOSPHERE + + var/filter_type = 0 +/* +Filter types: +-1: Nothing + 0: Carbon Molecules: Plasma Toxin, Oxygen Agent B + 1: Oxygen: Oxygen ONLY + 2: Nitrogen: Nitrogen ONLY + 3: Carbon Dioxide: Carbon Dioxide ONLY + 4: Sleeping Agent (N2O) +*/ + + var/frequency = 0 + var/datum/radio_frequency/radio_connection + + proc + set_frequency(new_frequency) + radio_controller.remove_object(src, frequency) + frequency = new_frequency + if(frequency) + radio_connection = radio_controller.add_object(src, frequency, RADIO_ATMOSIA) + + New() + if(radio_controller) + initialize() + ..() + + update_icon() + if(node2 && node3 && node1) + icon_state = "intact_[on?("on"):("off")]" + else + icon_state = "hintact_off" + on = 0 + + return + + New() + ..() + + process() + ..() + if(!on) + return 0 + + var/output_starting_pressure = air3.return_pressure() + + if(output_starting_pressure >= target_pressure) + //No need to mix if target is already full! + return 1 + + //Calculate necessary moles to transfer using PV=nRT + + var/pressure_delta = target_pressure - output_starting_pressure + var/transfer_moles + + if(air1.temperature > 0) + transfer_moles = pressure_delta*air3.volume/(air1.temperature * R_IDEAL_GAS_EQUATION) + + //Actually transfer the gas + + if(transfer_moles > 0) + var/datum/gas_mixture/removed = air1.remove(transfer_moles) + + if(!removed) + return + var/datum/gas_mixture/filtered_out = new + filtered_out.temperature = removed.temperature + + switch(filter_type) + if(0) //removing hydrocarbons + filtered_out.toxins = removed.toxins + removed.toxins = 0 + + if(removed.trace_gases.len>0) + for(var/datum/gas/trace_gas in removed.trace_gases) + if(istype(trace_gas, /datum/gas/oxygen_agent_b)) + removed.trace_gases -= trace_gas + filtered_out.trace_gases += trace_gas + + if(1) //removing O2 + filtered_out.oxygen = removed.oxygen + removed.oxygen = 0 + + if(2) //removing N2 + filtered_out.nitrogen = removed.nitrogen + removed.nitrogen = 0 + + if(3) //removing CO2 + filtered_out.carbon_dioxide = removed.carbon_dioxide + removed.carbon_dioxide = 0 + + if(4)//removing N2O + if(removed.trace_gases.len>0) + for(var/datum/gas/trace_gas in removed.trace_gases) + if(istype(trace_gas, /datum/gas/sleeping_agent)) + removed.trace_gases -= trace_gas + filtered_out.trace_gases += trace_gas + + else + filtered_out = null + + + air2.merge(filtered_out) + air3.merge(removed) + + if(network2) + network2.update = 1 + + if(network3) + network3.update = 1 + + if(network1) + network1.update = 1 + + return 1 + + initialize() + set_frequency(frequency) + ..() + + attackby(var/obj/item/weapon/W as obj, var/mob/user as mob) + if (!istype(W, /obj/item/weapon/wrench)) + return ..() + var/turf/T = src.loc + if (level==1 && isturf(T) && T.intact) + user << "\red You must remove the plating first." + return 1 + var/datum/gas_mixture/int_air = return_air() + var/datum/gas_mixture/env_air = loc.return_air() + if ((int_air.return_pressure()-env_air.return_pressure()) > 2*ONE_ATMOSPHERE) + user << "\red You cannot unwrench this [src], it too exerted due to internal pressure." + add_fingerprint(user) + return 1 + playsound(src.loc, 'Ratchet.ogg', 50, 1) + user << "\blue You begin to unfasten \the [src]..." + if (do_after(user, 40)) + user.visible_message( \ + "[user] unfastens \the [src].", \ + "\blue You have unfastened \the [src].", \ + "You hear ratchet.") + new /obj/item/pipe(loc, make_from=src) + del(src) + + +obj/machinery/atmospherics/trinary/filter/attack_hand(user as mob) // -- TLE + if(..()) + return + + if(!src.allowed(user)) + user << "\red Access denied." + return + + var/dat + var/current_filter_type + switch(filter_type) + if(0) + current_filter_type = "Carbon Molecules" + if(1) + current_filter_type = "Oxygen" + if(2) + current_filter_type = "Nitrogen" + if(3) + current_filter_type = "Carbon Dioxide" + if(4) + current_filter_type = "Nitrous Oxide" + if(-1) + current_filter_type = "Nothing" + else + current_filter_type = "ERROR - Report this bug to the admin, please!" + + dat += {" + Power: [on?"On":"Off"]
+ Filtering: [current_filter_type]

+

Set Filter Type:

+ Carbon Molecules
+ Oxygen
+ Nitrogen
+ Carbon Dioxide
+ Nitrous Oxide
+ Nothing
+
Desirable output pressure: + [src.target_pressure] | Change + "} +/* + user << browse("[src.name] control[dat]","window=atmo_filter") + onclose(user, "atmo_filter") + return + + if (src.temp) + dat = text("[]

Clear Screen", src.temp, src) + //else + // src.on != src.on +*/ + user << browse("[src.name] control[dat]", "window=atmo_filter") + onclose(user, "atmo_filter") + return + +obj/machinery/atmospherics/trinary/filter/Topic(href, href_list) // -- TLE + if(..()) + return + usr.machine = src + src.add_fingerprint(usr) + if(href_list["filterset"]) + src.filter_type = text2num(href_list["filterset"]) + if (href_list["temp"]) + src.temp = null + if(href_list["set_press"]) + var/new_pressure = input(usr,"Enter new output pressure (0-4500kPa)","Pressure control",src.target_pressure) as num + src.target_pressure = max(0, min(4500, new_pressure)) + if(href_list["power"]) + on=!on + src.update_icon() + src.updateUsrDialog() +/* + for(var/mob/M in viewers(1, src)) + if ((M.client && M.machine == src)) + src.attack_hand(M) +*/ + return + + diff --git a/code/ATMOSPHERICS/components/trinary_devices/mixer.dm b/code/ATMOSPHERICS/components/trinary_devices/mixer.dm new file mode 100644 index 0000000000..801b8bf83f --- /dev/null +++ b/code/ATMOSPHERICS/components/trinary_devices/mixer.dm @@ -0,0 +1,155 @@ +obj/machinery/atmospherics/trinary/mixer + icon = 'mixer.dmi' + icon_state = "intact_off" + density = 1 + + name = "Gas mixer" + + req_access = list(access_atmospherics) + + var/on = 0 + + var/target_pressure = ONE_ATMOSPHERE + var/node1_concentration = 0.5 + var/node2_concentration = 0.5 + + //node 3 is the outlet, nodes 1 & 2 are intakes + + update_icon() + if(node2 && node3 && node1) + icon_state = "intact_[on?("on"):("off")]" + else + icon_state = "intact_off" + on = 0 + + return + + New() + ..() + air3.volume = 300 + + process() + ..() + if(!on) + return 0 + + var/output_starting_pressure = air3.return_pressure() + + if(output_starting_pressure >= target_pressure) + //No need to mix if target is already full! + return 1 + + //Calculate necessary moles to transfer using PV=nRT + + var/pressure_delta = target_pressure - output_starting_pressure + var/transfer_moles1 = 0 + var/transfer_moles2 = 0 + + if(air1.temperature > 0) + transfer_moles1 = (node1_concentration*pressure_delta)*air3.volume/(air1.temperature * R_IDEAL_GAS_EQUATION) + + if(air2.temperature > 0) + transfer_moles2 = (node2_concentration*pressure_delta)*air3.volume/(air2.temperature * R_IDEAL_GAS_EQUATION) + + var/air1_moles = air1.total_moles() + var/air2_moles = air2.total_moles() + + if((air1_moles < transfer_moles1) || (air2_moles < transfer_moles2)) + if(!transfer_moles1 || !transfer_moles2) return + var/ratio = min(air1_moles/transfer_moles1, air2_moles/transfer_moles2) + + transfer_moles1 *= ratio + transfer_moles2 *= ratio + + //Actually transfer the gas + + if(transfer_moles1 > 0) + var/datum/gas_mixture/removed1 = air1.remove(transfer_moles1) + air3.merge(removed1) + + if(transfer_moles2 > 0) + var/datum/gas_mixture/removed2 = air2.remove(transfer_moles2) + air3.merge(removed2) + + if(network1 && transfer_moles1) + network1.update = 1 + + if(network2 && transfer_moles2) + network2.update = 1 + + if(network3) + network3.update = 1 + + return 1 + + attackby(var/obj/item/weapon/W as obj, var/mob/user as mob) + if (!istype(W, /obj/item/weapon/wrench)) + return ..() + var/turf/T = src.loc + if (level==1 && isturf(T) && T.intact) + user << "\red You must remove the plating first." + return 1 + var/datum/gas_mixture/int_air = return_air() + var/datum/gas_mixture/env_air = loc.return_air() + if ((int_air.return_pressure()-env_air.return_pressure()) > 2*ONE_ATMOSPHERE) + user << "\red You cannot unwrench this [src], it too exerted due to internal pressure." + add_fingerprint(user) + return 1 + playsound(src.loc, 'Ratchet.ogg', 50, 1) + user << "\blue You begin to unfasten \the [src]..." + if (do_after(user, 40)) + user.visible_message( \ + "[user] unfastens \the [src].", \ + "\blue You have unfastened \the [src].", \ + "You hear ratchet.") + new /obj/item/pipe(loc, make_from=src) + del(src) + + attack_hand(user as mob) + if(..()) + return + src.add_fingerprint(usr) + if(!src.allowed(user)) + user << "\red Access denied." + return + usr.machine = src + var/dat = {"Power: [on?"On":"Off"]
+ Desirable output pressure: + [target_pressure]kPa | Change +
+ Node 1 Concentration: + - + - + [node1_concentration]([node1_concentration*100]%) + + + + +
+ Node 2 Concentration: + - + - + [node2_concentration]([node2_concentration*100]%) + + + + + "} + + user << browse("[src.name] control[dat]", "window=atmo_mixer") + onclose(user, "atmo_mixer") + return + + Topic(href,href_list) + if(href_list["power"]) + on = !on + if(href_list["set_press"]) + var/new_pressure = input(usr,"Enter new output pressure (0-4500kPa)","Pressure control",src.target_pressure) as num + src.target_pressure = max(0, min(4500, new_pressure)) + if(href_list["node1_c"]) + var/value = text2num(href_list["node1_c"]) + src.node1_concentration = max(0, min(1, src.node1_concentration + value)) + src.node2_concentration = max(0, min(1, src.node2_concentration - value)) + if(href_list["node2_c"]) + var/value = text2num(href_list["node2_c"]) + src.node2_concentration = max(0, min(1, src.node2_concentration + value)) + src.node1_concentration = max(0, min(1, src.node1_concentration - value)) + src.update_icon() + src.updateUsrDialog() + return diff --git a/code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm b/code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm new file mode 100644 index 0000000000..e22208b071 --- /dev/null +++ b/code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm @@ -0,0 +1,163 @@ +obj/machinery/atmospherics/trinary + dir = SOUTH + initialize_directions = SOUTH|NORTH|WEST + + var/datum/gas_mixture/air1 + var/datum/gas_mixture/air2 + var/datum/gas_mixture/air3 + + var/obj/machinery/atmospherics/node1 + var/obj/machinery/atmospherics/node2 + var/obj/machinery/atmospherics/node3 + + var/datum/pipe_network/network1 + var/datum/pipe_network/network2 + var/datum/pipe_network/network3 + + New() + ..() + switch(dir) + if(NORTH) + initialize_directions = EAST|NORTH|SOUTH + if(SOUTH) + initialize_directions = SOUTH|WEST|NORTH + if(EAST) + initialize_directions = EAST|WEST|SOUTH + if(WEST) + initialize_directions = WEST|NORTH|EAST + air1 = new + air2 = new + air3 = new + + air1.volume = 200 + air2.volume = 200 + air3.volume = 200 + +// Housekeeping and pipe network stuff below + network_expand(datum/pipe_network/new_network, obj/machinery/atmospherics/pipe/reference) + if(reference == node1) + network1 = new_network + + else if(reference == node2) + network2 = new_network + + else if (reference == node3) + network3 = new_network + + if(new_network.normal_members.Find(src)) + return 0 + + new_network.normal_members += src + + return null + + Del() + loc = null + + if(node1) + node1.disconnect(src) + del(network1) + if(node2) + node2.disconnect(src) + del(network2) + if(node3) + node3.disconnect(src) + del(network3) + + node1 = null + node2 = null + node3 = null + + ..() + + initialize() + if(node1 && node2 && node3) return + + var/node1_connect = turn(dir, -180) + var/node2_connect = turn(dir, -90) + var/node3_connect = dir + + for(var/obj/machinery/atmospherics/target in get_step(src,node1_connect)) + if(target.initialize_directions & get_dir(target,src)) + node1 = target + break + + for(var/obj/machinery/atmospherics/target in get_step(src,node2_connect)) + if(target.initialize_directions & get_dir(target,src)) + node2 = target + break + + for(var/obj/machinery/atmospherics/target in get_step(src,node3_connect)) + if(target.initialize_directions & get_dir(target,src)) + node3 = target + break + + update_icon() + + build_network() + if(!network1 && node1) + network1 = new /datum/pipe_network() + network1.normal_members += src + network1.build_network(node1, src) + + if(!network2 && node2) + network2 = new /datum/pipe_network() + network2.normal_members += src + network2.build_network(node2, src) + + if(!network3 && node3) + network3 = new /datum/pipe_network() + network3.normal_members += src + network3.build_network(node3, src) + + + return_network(obj/machinery/atmospherics/reference) + build_network() + + if(reference==node1) + return network1 + + if(reference==node2) + return network2 + + if(reference==node3) + return network3 + + return null + + reassign_network(datum/pipe_network/old_network, datum/pipe_network/new_network) + if(network1 == old_network) + network1 = new_network + if(network2 == old_network) + network2 = new_network + if(network3 == old_network) + network3 = new_network + + return 1 + + return_network_air(datum/pipe_network/reference) + var/list/results = list() + + if(network1 == reference) + results += air1 + if(network2 == reference) + results += air2 + if(network3 == reference) + results += air3 + + return results + + disconnect(obj/machinery/atmospherics/reference) + if(reference==node1) + del(network1) + node1 = null + + else if(reference==node2) + del(network2) + node2 = null + + else if(reference==node3) + del(network3) + node3 = null + + return null \ No newline at end of file diff --git a/code/game/machinery/pipe/construction.dm b/code/game/machinery/pipe/construction.dm index 6dc3344df4..f3190658e9 100644 --- a/code/game/machinery/pipe/construction.dm +++ b/code/game/machinery/pipe/construction.dm @@ -15,6 +15,8 @@ Buildable meters #define PIPE_SCRUBBER 10 #define PIPE_INSULATED_STRAIGHT 11 #define PIPE_INSULATED_BENT 12 +#define PIPE_GAS_FILTER 13 +#define PIPE_GAS_MIXER 14 /obj/item/pipe name = "pipe" @@ -57,6 +59,10 @@ Buildable meters src.pipe_type = PIPE_MVALVE else if(istype(make_from, /obj/machinery/atmospherics/binary/pump)) src.pipe_type = PIPE_PUMP + else if(istype(make_from, /obj/machinery/atmospherics/trinary/filter)) + src.pipe_type = PIPE_GAS_FILTER + else if(istype(make_from, /obj/machinery/atmospherics/trinary/mixer)) + src.pipe_type = PIPE_GAS_MIXER else if(istype(make_from, /obj/machinery/atmospherics/unary/vent_scrubber)) src.pipe_type = PIPE_SCRUBBER else @@ -84,6 +90,8 @@ Buildable meters "scrubber", \ "insulated pipe", \ "bent insulated pipe", \ + "gas filter", \ + "gas mixer", \ ) name = nlist[pipe_type+1] + " fitting" var/list/islist = list( \ @@ -100,6 +108,8 @@ Buildable meters "scrubber", \ "insulated", \ "insulated", \ + "filter", \ + "mixer", \ ) icon_state = islist[pipe_type + 1] @@ -162,6 +172,8 @@ Buildable meters return dir if(PIPE_MANIFOLD) return flip|cw|acw + if(PIPE_GAS_FILTER, PIPE_GAS_MIXER) + return dir|flip|cw return 0 /obj/item/pipe/proc/get_pdir() //endpoints for regular pipes @@ -366,6 +378,45 @@ Buildable meters P.node2.initialize() P.node2.build_network() + if(PIPE_GAS_FILTER) //gas filter + var/obj/machinery/atmospherics/trinary/filter/P = new(src.loc) + P.dir = dir + P.initialize_directions = pipe_dir + if (pipename) + P.name = pipename + var/turf/T = P.loc + P.level = T.intact ? 2 : 1 + P.initialize() + P.build_network() + if (P.node1) + P.node1.initialize() + P.node1.build_network() + if (P.node2) + P.node2.initialize() + P.node2.build_network() + if (P.node3) + P.node3.initialize() + P.node3.build_network() + + if(PIPE_GAS_MIXER) //gas filter + var/obj/machinery/atmospherics/trinary/mixer/P = new(src.loc) + P.dir = dir + P.initialize_directions = pipe_dir + if (pipename) + P.name = pipename + var/turf/T = P.loc + P.level = T.intact ? 2 : 1 + P.initialize() + P.build_network() + if (P.node1) + P.node1.initialize() + P.node1.build_network() + if (P.node2) + P.node2.initialize() + P.node2.build_network() + if (P.node3) + P.node3.initialize() + P.node3.build_network() if(PIPE_SCRUBBER) //scrubber var/obj/machinery/atmospherics/unary/vent_scrubber/S = new(src.loc) @@ -448,3 +499,5 @@ Buildable meters #undef PIPE_SCRUBBER #undef PIPE_INSULATED_STRAIGHT #undef PIPE_INSULATED_BENT +#undef PIPE_GAS_FILTER +#undef PIPE_GAS_MIXER diff --git a/code/game/machinery/pipe/pipe_dispenser.dm b/code/game/machinery/pipe/pipe_dispenser.dm index 372c7d86d1..25de2c5138 100644 --- a/code/game/machinery/pipe/pipe_dispenser.dm +++ b/code/game/machinery/pipe/pipe_dispenser.dm @@ -24,6 +24,8 @@ Gas Pump
Scrubber
Meter
+Gas Filter
+Gas Mixer
Heat exchange:
Pipe
Bent Pipe
diff --git a/icons/obj/pipe-item.dmi b/icons/obj/pipe-item.dmi index d973bd0df6d1479ac25d31414fa397c23f1c6ffe..459b7e52cc8d60c65be56470a2b664fce2678d09 100644 GIT binary patch literal 14277 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 R<_&>=st+_2KgnCX{6Do$J+A-& literal 10824 zcmZX)1yodD^fr8lkd%-R=@L*tKoIHf1`+8HMY=l&Dd|uFr8}jO4haEi5RmTfA&2}9 zzyJHbU#&H3=FUC$o_p>-`|SNZ&px4QDzf*n$*~~_x-Ty$r2#=Oa0o46-UHt|;3w0p@G{a9u4(XWhiv1mj}&Gio%$B&1WsEW9IG)CgnFNgF6PEaNjzq?DR zHFZM}EhH}`uIZk zqN44=VB(v=F9k(~ZaA-0R^OJe)=)C){t`z>KJTt=&9MGV1Gm$XX4yhWwrOKZ z!`T#38sq|(ieraLw2p3KJbAdMXt;&Brz-`o3p9S1xtR@YZjR=u-X_}q+CK{jzPRw@ zVr9jF4%%=yFg0ItK~_l053k<5VP0EVfs8-+-M@dI9zsKb{T(0I*j&i0+o)SlB^n(a zJ>01r%q%X(rFdyeY_TVab9dYF5wb(4(k!E}5L+>x&3|xRvGyA2E#lA<_c*_>u&r39 zGT$ZL5kjk(jx^>pUm*=PW>0IEcg5w0)QJ~e8~R5cZ>~7;_27L)C8MFi;8aJgWPum2 zI`I{J%)o42eePUmqTRc0A4gUAfH90-h&o!6h?#sG!Jn+@Uypr1NP++jwrKxP$tO-m zB;+$TnIps|Y5!j{ybvum>SaQ2XZAg_yC;(5%fc!uDrhmSnHI|92N$!kgTF&YzR1TT zqoe(QnJvH|3ZSp3pg-zp3>_UErQeG>;K3R}JPZ%R>8GEZoArD+dG@Q>=Mqh@JFjzt z@;pAC^jF_yS!Qi*;#2&{6+Z`u@;OENx81NZ+khmxmW&MXnMRLFV)>3OP3MN$u=(~y z&gb0RB=nyDD2bGij#I9UTNJwbkb(JJQ z`;_?!G}O-8f`dogW?}?rGtE8}A8F+tNhjlnN=T^((qfWPQ~%zXtjxKLh>n&dmaf%* z1`Ze~@f4393J3^T(;0Dyq^TC?=Zo3eJ_`#A%TK#p?M=uz9vzvU4i5{%W>QJ7sd*?Z zEzQEl_5}g%1AV;v@Bw^BL`5kKPOm!3dr;zq4A0Kqhd;ZOZ$3LcC09UoL0dRZ&qa!0D^f6}P)RSA@ z3_mG2ZkHXd&Kv*KE92V68Vcq%g!EY!JPgLAum(*vD#Z# z&U|`w)U+GZqGYz#AxjRMh_%nsv8>Op&_wJzXQz^OubY5{MKG%DXnB@O4?N=p0wx$e zfwX(v1YA9C5QYvnW-L^}l+b3s5>N4}AXS5qpNHNzK}aAUoLlG~7~s`Q%Z}N1e*XM9 z)Ji&-wjt)cv=Q(J1`MH<0#=zI)$?rgkabn(Pdt4+q4-}>X-(!gHu4MpFot{QndX6p z1!Zvo+#mU|*suKgkN+(qr^Q3w1z*^R!BZyQv(In-+eG#XKJJuDctv ztLM$L1ROA*-h7D_(k<(Z zc4E4d(E8dWvg{<}MVxY{V#4?_jexV9!tyUSa%C5kC^yKr#mLwIwKBdmL{7$QV~9=? zVKKtNVO&fpo=rZ#e}TY<0&WhfiL>fU9IV{?&u@PwUbQ}kTL zw8N}$if;5@%W@Lbh%aVj5<4NXLJb*^o0onKxf*UWEuvj)(vKHfnHV``-ca^q>{4vb zbMXYP*@#aoGK~GEipk#)={Z8fu~PFC`;*pk@AS14^N+K?UXfFWg-3zEu>|H|(9ZNi z@v4=y;i#0=gN`^8#_N?Db2`85?~}N1$Icz8y3b;#Znk)&;t03h5EPukmY*~)w?i>& zQK3s-J}YGTr#GYdk-H0mkz6jEaW`OozpcTS#`+FN@lN()32oCZ8{@w?6BUZ#Z1v@>Id4@g|6;L#NgVnojJRq69)h_b)T_ojF?kG>JBb&-#(S(uOcS#g@E6|x|L z38Qr}-@@FS07grInf~+Vcx+JQ2{)&t?+7n!Yip|`IQU+y5Sq%;KM?jz6}dy9p$w`@OuUQGOHp-PHv$%z|qJz#BS6%i4Q0 zb*PYiUED}S9QoU`O!MMB#Xrdmp`>WCyuvo99ycdG>xjOi|4l|IORZH?;&<*)Ku!m;}OLX2Tn4j{40NdSR-;R zDR|#>TUuO)yhUfgZmsVdVcygI=^E8V;=k*C$^1k{J||yylR1r34=01Rwk#d2t#Lt` z%4BH+Qwd;CO7f#ek7}LP@cj zhS_vMrFnVGYx`2ZGBWohGGdO|(8Xi0f6`*w{|7Hf$;rt(e(2R$j<^k`3cDY6J}fuw z!qe2$q~+jH9d*&F1mFl45AW?=<5of5!CI1?f@@yzKe}>pJwdpp@#aVl=!gJKyigqg zjQWO#94GLl{`xgKG~ywX=Wdw;u&jRhTj`l2FujkL(?tE6-(7ilcqEGYiFkT?mf1}6 z-c3e+e*O@fAOWViKudM?>*srN7k~VsU0VPu+U(3xV+jPPmW!DgBU8W+pu`DJcp>?R_8)5na6h@Ilc6JER?3 zkdc>c6h@{@xgBDPfk!Qr&naZwb`CIQ_A8YvQ>yn_;Q&;76ALMGn2r~OX z`uUCa+2@c}NKH?V)!YUpGBQ%W>AEYLMpjxnNb{&-PHa3g@7I`SRiVV4CW=5F8zcbm1mXn|4J7_I~YE-4KFHDX~{`hr0R>mxWWasXr9aQjD_!>l3VP_p@2I zZ-c1mUrT#n+SeMPTH23V43g6fj*XQ$$)u#E(Z@@TqJgnrt#ypX0jHq#F!~g>4HbK* zXyO+~%s(3#eCGKNrtwd1(G+Ww6L8Xq7a0tNsI)0+vA&9`s&D#E=|{D)X1ns^{?FCu z&#T^t)DXzZ%EB1;3+1>N;BrB3AkAdbVxI50wS{#a{gJ+Z!j1vjg1|(?LYG`Z_SLr^*LReZh#`%m6AmO>|=X zn(6!E1f0CQX5r?6_xka~L_#|Ntt-`KvTEb+2~Xi=ls{Fr%%_L1t(lp;dxwUBPc7x< z<|dJAQjyyETesQ3xeV2{0RHJpjpbeV8s>d(FMAaYiMdq_sG>|EQ$A?-R~_ntJ!Qm? z`Fkt&nI<8av?Ou^!8pu||18il|6i%S*h5)zz!_);r4y{4O>==lSAeXA4GNzn=b!kg zY&{nd!He!ft(i`#THbf{pMtqJ89H=^k!Y8{MSrl0#8iYZlr-!zFehtV1uHajOt zTdCfoBvw(&974SZ@evMJ2s){#;Gy`7&0Hp~qS?;Way7c{>N;BRS$v+yEK$_LHF_K|X_e>~T-M_}d`1?}zOFZa5x-{@ zMI}gjmYnSb1%CX9GX9h=tPP3YJvi7^;inzkJa}P$xFmh-GafQl)Eu6iOi4Va_o?OT zJ%N$8Z@crP)}t2Eipt92GaZg+2K9m9X+no9M74h%u;3N=*;U2F2?Ea+K~U62rrf>{ zvwqQabKupN^inmBL_Q>1#XHcL^V7(PhO%Pr<4Dwh)m8}$fPw|#Jp3)hF}JT(>9nqL z2-Y~)pvUEI4MTAD;Tk8Kel0+aj%zMmX8G%Ujjdz&kNM3@S@AA}}`s@S{P}4(L;<`k1Qfb$HmRdhjdcl@CpZ=04mn!5;EqWfTtgkOq z;CrL`q@856w9tT`#lx<6)0--iCDw4E}T;-`;J`uf6Y^&iTp`GZ`6~ z+6Hxawj*3O1%*W2Uv-Z%HJ8&x-Tm)KKN919zEe#|~Krd_U-<{q*F zOz1;lE|fnweTDU##si`hQ$|NhUBxOt3r$UzN~jn+VNQQ~dvhND?&jUKEIIKG z`+15J7E2a~0T7sKUbYaeUO`uYAcRw%iPehTgg#_l3@rPF?THKs1M%1G&-J%z164(@ zopsUdx4`x6e^&1>0MIl>NX;_TFc}yaM)mdPS8|iw1#lGLz%M+44ac`y3h%Ja$K8L3*to0|2mQYbqMG8LF*&~2=XF*0r-YuI9 zT=i5C*D+WWooB_KdAlFIKgAhK6T!#KWhc@aTwL0|QNgrLt~@syXI`+QXheSm0^z%N z?-oLtS&1j8LF$RwFCxURfJIMX>2Ebg9NFyVMs)yD!Vxv$%=Po_n__MMyBJ-}R8$ts z2SW(;QKJLTH|G6Yx6qtvLFDjvdEp&Bp0O`;GFVv{`(d|HUTb}w6V34}Dm`3qkl@x4OCWzmw1tw!nh+|2g{1u#)ckvK$&>^GDA6 z`A_aqjceN%PHr7e=H+eYCkJVM#|&h+G7-?y2`mxa;$CM`WWl-*?v{!eQb{Q4!4zh9 zNi0!+I6D%F%-u2$I^3ok5tgUvKHm3IPM8M~QOoD-Nxy)(bj^REO)L|JXu0yTROb8H zQT#?X()jD4RgT|6{hn2EVu*1No;O(xQLJ_Y_jXhCuvZxyyqq#Uo+NgsTu_L?-HPwVBC(X^2NMIPXEVa19lyw?BV0MG2qHcTMcmrnY!O(RL_b-((8OsIL# z&;JS)98h9N&SGgB8F84sSLTt|{tE%+Ed^k`!;*$Q2~M(ih^uYDZPKjs@hdKC=w22_CUMAKHcU~y20Dcyfib!RnO_d{O!#d@^s-I7Y{a|;#n$iIkdYz zr9}KZ@cHJcXM{j{ukgfTy;Bg2Q$_F202x!KEaof5okCdVe)H0HhKxxa`tMq42vLyE zW(*n_FOWqa=w)>I6SD9NDT$>CsiQ-5?v=&wJ8O&jji4!CPf#XZS;hm2Seu+nYJzk9qwHn zMung1-EzSOhSnovXy+}r$Eps4$g|sXe9QN>-d?>4P6Y*6qPCVO(3kPQj8aVL&SJou z&d-;lfixX-_XJlr6j$#obvK&Uu{lGiHR`tv)C#9v*j-PL#jQv=l+Fxs= z=XzY%=h7436)MkhgoQB)j6lK4l9&)qxI$48lc9`!%UokOe=k&^s?4mPoJ&wpue^&! zNBGIe4O|ytWo|B4g9maA*WhH0U0V7yOo+?EI`t=S1nNOm^!O$3ru11ZL9E$;rtQU@;=QUeR3vfP;b$AO-Tz6~Tbh=4Yy~XkPL@ZN`8D_7<9< z0NE+|=FQP178ek(-=!S&KZKF1ZzpVpHow5~VXj?fz~F9!~$2m;8^rS9M}&O>-l zB!is$#qBf0j?W$*p0@p(zS&Kav$ij#)H@;`af9**(8zdtZ%=Dl*k?m_&bJ)vI7LLB zjX{g{WFV0Lj8SdR$z^Kn<3u@M%T?BH@f99O6}B=LZEe`A#{o&J>bP;%w&u84PT6PY zAD8Cq*Na`s$|LK*HV2Nci0;@-GzEpaj!vkbg{1`0&Y~#!QPKu6ltj`B3!ehz3`F`T z(V$x8dz3T}eM-Fz459Wkr|+M?V#4bcq47O8p@bc5WJNEbLhs+dhwmI^giwcly9GJ- z;yZLLEPQ~9sX8vUZ&VBSyB)6~(5)v14s@(Kj&^(Lj{)J(L#!)SlS#tF*qd=JcJm^* z_^Lc-cZI#Ad^$bl@-M34I_NR+V1$Q<*$g~Oa8UVqX4D*E%*nSqd(Xp0Dfux{$mfCw zS^xx|=)(J|eCY^aLw84nt|J~KtxSV^&va^jyvIscR~Lc+CDHV5zT9ho;MbRDs1P0{ zU;4TCQUA;3wU#|5G53nyM^jZ;wf5rAn-6l8TeD%hBsY3=qEmA_h|OF^r>Z}q4oe+X z{Mak~FOVybDkf;GkUWX6Aq%b|EX19jqdT<#bV(@-<;dg7(b0gB@8tS*j_6=rZES7D ziNK8a=bBz|6QAuxx~q<05V7Az4}Rlz@V=_0pIvdXwpMaryG4V)%FF$!5gmW4nF8;? z^utqnl!jaMA?F*rQPWE=#+BuR!xb7nd)k7PQDZY^%KK)#;#JPUy2GfdLvgoSn_&IK za1t5r|4qQ!L0dvh{$XbHBvVn&451@>(M3D14`X#6T7{-WkR8^@`UTLQU>br6U**i6 zEc;F;SN*hXaGi+t>C-ab>x;l2ICjiPm5^0UeL*E@mB;xP5D*Fpu!EH5QTTOM1XFf) ztbwT1x_-0>4E~QI=W{RioZqdFKVLe~?^v2u6CXT58=Hm$ctjn|oS`QTh7f%^^)r&(lywK|u=EHzgezk|AY4qv}XH{2dBPzqIX&fIsCv{mcexK2)S8i>wmg z0y0Rbv`hc|(QW?h0b;7r&COZgTo*GTtr2AhnI;~bSV-#y%nFS6Z#r__U{tHZMI53{virXWaX0zR+co(l@McE;S(ti|cMLzzo(x zG~_CwLzY4-`c+QhP5@;$Gc#L4uBUY^b%wie6!t9IGs%%-i2Y9Y4?Q%B?rN{WShvTG zmvJ`6i~qk)b;9W5}<5BaJ?E^uJKRp@+xly;A2H^WNq{kR@N17 z-GIn(LQUg+;9oGtGc0eg@ut*}UH38TgU3kZxe%zI;zmYDHHE0ByxojR`i2E1e*XM< zNN6D&Pdy1LdQ(cu&CMPA?OUjHIH~-+-F!3Ebd6otx<5q9rWZVj3fmNH%ajfmD~WvH zdZ^vxS)G5w(6VY~rr@VLkQYnEeqE&X0|jF9Tf%}`3ttzpDT-QA@f9e~h`>FL))u$M ziZtlZVb(C5eEbV9tvJxr>JS z`k~3mCz~cR7rVKr%r8PWp_O1+Y!R+T4yLm}<}?EX18iC2c$f_L4L?8s2EWriCr3v% zZeN$XJF|~#&Q4%zxoI1*EL5MYGs9mC*lQ#t;)&U~L-qw(s0o^S3Oy~aDAEa+NLs=B zDMqHbT=sUI&rZFP}FXJYHQSrG3rei%*j+!FYSNA{(He zHGnEC5W@m*50&Y|6f-sske@+zM zmxrX8>wS+pyFBstc5p$e&vB9unX7<+n9h%#`PfeAP*Z=6-1}=`xjI3+Smvfl&o^-f9D042k@+ALsi0X`fkUFEET<>eZr7Fg;b$o`8 zpQZLXait4!+*``bW>Bv=MRC&>gfnsmwh)8~FO3NtC-a-ig`{$SaL${RcYo9~`yLg^ zl>}{}xU1UkRmJF0#jy_Luw9`s;K}(4vu_=X3fZN8xp9t`we;(C5frR@flN+Lwy5Z7 z-hKCiN`jA4YlpCO+(bo1MT!a@dhEx=6S%N)v+qbHN8R^LpD&2$QA@y`H6CPe8qV6RWRK-n)z)S^n@iFOTy|Z<)z)*%hO%= z{iZYe+%)1^IY7hdFpZHF?=>#$X6u89m{q`j4v?ce8F=GF089m?`(4aMIk3DW)(&5z4c%CFG-hf|alr#Cz-`_3(qIyxHtS^d%<8T7w$GYla?Zd+ zOJh8arDDBCoSanOpdb+O0uXHyP>k&-oV@vW9lFjHm)L5JM)b<)lwWX-N_YXip?MsAOGc{ajrF!H%&13DG z#cvJ{_?^Xb(A83XjkjFh6^+<2gD@xG=L4%MmO<67qzA=iDAALZAn`lJ?e>MIMe^;f z_4GaC!hVjIH?gsVk^)kf{XMKGv6D`QN)aae5^udKK#}#avmNe(URt6i#)tkKAz!t% zABv45USZ9KfAl^0h4JyCGakfz9gQLP#Z~*_AWNMCAnO%tm!o){?)-{p*Q0g2M~TPm zF|-4%P&oa2?`4h`Vj7V>NuAujn27(HC>^K_WRD*G(z9y{+S}W+2-macOJ0H7;SXed zJUN{Kgo6flbyw}A)KQjrjT;5)-tl#8{Tj%$* zgCC)W0gz{D(M6}YWCbpHvKHaD2s2tQ?hvd!&xiDVIz~sc!Uq}g0#D46mXXxvb=&C1r#X)!p@vc1) z`LU8Gdi|utpdlDYwogSUC@9zyQY;gBaT8e>n5ymQ-#P3A&F?>KG%P(|rn%)?$`B&H^4h3rnO_^aa>AL-df^HSd|X@ZAQ2 z|A$w!Q$Zoi#{WMT`a2y^IhXpq+FQkP;duAgttiG(jm1&RnmX7T3du{WNR>z!fBe4y DEztzm diff --git a/maps/tgstation.2.0.8.dmm b/maps/tgstation.2.0.8.dmm index 8aeb3f0bf4..6de015e5e8 100644 --- a/maps/tgstation.2.0.8.dmm +++ b/maps/tgstation.2.0.8.dmm @@ -4253,7 +4253,7 @@ "bDO" = (/turf/simulated/floor,/area/atmos) "bDP" = (/obj/machinery/atmospherics/pipe/simple{color = "blue"; icon_state = "intact-b"; level = 2},/turf/simulated/wall/r_wall,/area/atmos) "bDQ" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/turf/simulated/floor,/area/atmos) -"bDR" = (/obj/machinery/atmospherics/filter{dir = 4},/turf/simulated/floor,/area/atmos) +"bDR" = (/obj/machinery/atmospherics/trinary/filter{dir = 4},/turf/simulated/floor,/area/atmos) "bDS" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/turf/simulated/floor,/area/atmos) "bDT" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/atmos) "bDU" = (/obj/machinery/atmospherics/pipe/manifold{dir = 1; icon_state = "manifold"; level = 2},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor,/area/atmos) @@ -4651,7 +4651,7 @@ "bLw" = (/obj/machinery/atmospherics/pipe/simple{color = "yellow"; dir = 6; icon_state = "intact-y"; level = 2},/obj/machinery/meter,/turf/simulated/floor,/area/atmos) "bLx" = (/obj/machinery/atmospherics/pipe/simple{color = "yellow"; dir = 9; icon_state = "intact-y"; level = 2},/turf/simulated/floor,/area/atmos) "bLy" = (/obj/machinery/atmospherics/pipe/simple{color = "red"; icon_state = "intact-r"; level = 2},/turf/simulated/floor,/area/atmos) -"bLz" = (/obj/machinery/atmospherics/filter{dir = 1; filter_type = 4; icon_state = "intact_on"; name = "Gas filter (N2O tank)"; on = 1},/turf/simulated/floor,/area/atmos) +"bLz" = (/obj/machinery/atmospherics/trinary/filter{dir = 1; filter_type = 4; icon_state = "intact_on"; name = "Gas filter (N2O tank)"; on = 1},/turf/simulated/floor,/area/atmos) "bLA" = (/obj/machinery/atmospherics/pipe/simple{color = "green"; dir = 4; icon_state = "intact-g"; level = 2},/obj/machinery/meter,/turf/simulated/floor{icon_state = "escape"; dir = 5},/area/atmos) "bLB" = (/obj/machinery/atmospherics/pipe/simple{color = "green"; dir = 4; icon_state = "intact-g"; initialize_directions = 12; level = 1},/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple{color = "cyan"; icon_state = "intact-c"},/turf/simulated/floor/plating,/area/atmos) "bLC" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 8; frequency = 1441; icon_state = "on"; id = "n2o_in"; on = 1; pixel_y = 1},/turf/simulated/floor/engine/n20,/area/atmos) @@ -4818,7 +4818,7 @@ "bOH" = (/obj/structure/closet/extinguisher{pixel_x = 27; pixel_y = 0},/turf/simulated/floor{icon_state = "caution"; dir = 5},/area/hallway/primary/aft) "bOI" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor,/area/atmos) "bOJ" = (/obj/machinery/atmospherics/binary/pump{dir = 0; icon_state = "intact_on"; on = 1},/turf/simulated/floor,/area/atmos) -"bOK" = (/obj/machinery/atmospherics/filter{dir = 1; icon_state = "intact_on"; name = "Gas filter (Toxins tank)"; on = 1},/turf/simulated/floor,/area/atmos) +"bOK" = (/obj/machinery/atmospherics/trinary/filter{dir = 1; icon_state = "intact_on"; name = "Gas filter (Toxins tank)"; on = 1},/turf/simulated/floor,/area/atmos) "bOL" = (/obj/machinery/atmospherics/pipe/simple{color = "green"; dir = 4; icon_state = "intact-g"; level = 2},/obj/machinery/meter,/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/atmos) "bOM" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 8; frequency = 1441; icon_state = "on"; id = "tox_in"; on = 1; pixel_y = 1},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) "bON" = (/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) @@ -4975,7 +4975,7 @@ "bRI" = (/obj/machinery/atmospherics/pipe/simple{color = "red"; dir = 4; icon_state = "intact-r"; level = 2},/obj/machinery/atmospherics/pipe/simple{color = "yellow"; icon_state = "intact-y"; level = 2},/turf/simulated/floor,/area/atmos) "bRJ" = (/obj/machinery/atmospherics/pipe/simple{color = "red"; dir = 4; icon_state = "intact-r"; level = 2},/obj/machinery/atmospherics/binary/pump{dir = 1; icon_state = "intact_off"; name = "N2 to Pure"; on = 0},/turf/simulated/floor,/area/atmos) "bRK" = (/obj/machinery/atmospherics/pipe/simple{color = "red"; dir = 9; icon_state = "intact-r"; level = 2},/obj/item/weapon/cigbutt,/turf/simulated/floor,/area/atmos) -"bRL" = (/obj/machinery/atmospherics/filter{dir = 1; filter_type = 3; icon_state = "intact_on"; name = "Gas filter (CO2 tank)"; on = 1},/turf/simulated/floor,/area/atmos) +"bRL" = (/obj/machinery/atmospherics/trinary/filter{dir = 1; filter_type = 3; icon_state = "intact_on"; name = "Gas filter (CO2 tank)"; on = 1},/turf/simulated/floor,/area/atmos) "bRM" = (/obj/machinery/atmospherics/pipe/simple{color = "green"; dir = 4; icon_state = "intact-g"; level = 2},/obj/machinery/meter,/turf/simulated/floor{dir = 5; icon_state = "yellow"},/area/atmos) "bRN" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 8; frequency = 1441; icon_state = "on"; id = "co2_in"; on = 1; pixel_y = 1},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) "bRO" = (/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) @@ -5044,7 +5044,7 @@ "bSZ" = (/obj/machinery/atmospherics/pipe/simple{color = "red"; dir = 9; icon_state = "intact-r"; level = 2},/turf/simulated/floor,/area/atmos) "bTa" = (/obj/machinery/atmospherics/pipe/manifold{color = "cyan"; dir = 8; icon_state = "manifold-c"; initialize_directions = 11; level = 2},/turf/simulated/floor,/area/atmos) "bTb" = (/obj/machinery/atmospherics/binary/pump{dir = 4; icon_state = "intact_on"; name = "O2 to Air"; on = 1},/turf/simulated/floor,/area/atmos) -"bTc" = (/obj/machinery/atmospherics/mixer{icon_state = "intact_on"; name = "Gas mixer (N2/O2)"; node1_concentration = 0.8; node2_concentration = 0.2; on = 1; pixel_x = 0; pixel_y = 1; target_pressure = 4500},/turf/simulated/floor,/area/atmos) +"bTc" = (/obj/machinery/atmospherics/trinary/mixer{icon_state = "intact_on"; name = "Gas mixer (N2/O2)"; node1_concentration = 0.8; node2_concentration = 0.2; on = 1; pixel_x = 0; pixel_y = 1; target_pressure = 4500},/turf/simulated/floor,/area/atmos) "bTd" = (/obj/machinery/atmospherics/pipe/simple{color = "yellow"; dir = 5; icon_state = "intact-y"; level = 2},/turf/simulated/floor,/area/atmos) "bTe" = (/obj/machinery/atmospherics/binary/pump{dir = 8; icon_state = "intact_off"; name = "CO2 to Pure"; on = 0},/obj/machinery/atmospherics/pipe/simple{color = "green"; icon_state = "intact-g"; level = 2},/turf/simulated/floor,/area/atmos) "bTf" = (/obj/machinery/atmospherics/valve/digital{color = "yellow"; dir = 4; name = "CO2 Outlet Valve"},/turf/simulated/floor{dir = 6; icon_state = "yellow"},/area/atmos) @@ -5087,10 +5087,10 @@ "bTQ" = (/obj/machinery/camera{c_tag = "Atmospherics South West"; dir = 4; network = "SS13"},/obj/machinery/portable_atmospherics/pump,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/turf/simulated/floor,/area/atmos) "bTR" = (/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor,/area/atmos) "bTS" = (/obj/machinery/atmospherics/binary/pump{dir = 1; icon_state = "intact_on"; name = "N2 Out"; on = 1},/turf/simulated/floor,/area/atmos) -"bTT" = (/obj/machinery/atmospherics/filter{dir = 4; filter_type = 2; icon_state = "intact_on"; name = "Gas filter (N2 tank)"; on = 1},/turf/simulated/floor,/area/atmos) +"bTT" = (/obj/machinery/atmospherics/trinary/filter{dir = 4; filter_type = 2; icon_state = "intact_on"; name = "Gas filter (N2 tank)"; on = 1},/turf/simulated/floor,/area/atmos) "bTU" = (/obj/machinery/atmospherics/pipe/simple{color = "green"; dir = 4; icon_state = "intact-g"; level = 2},/turf/simulated/floor,/area/atmos) "bTV" = (/obj/machinery/atmospherics/pipe/simple{color = "green"; dir = 4; icon_state = "intact-g"; level = 2},/obj/machinery/atmospherics/binary/pump{dir = 1; icon_state = "intact_on"; name = "O2 Out"; on = 1},/turf/simulated/floor,/area/atmos) -"bTW" = (/obj/machinery/atmospherics/filter{dir = 4; filter_type = 1; icon_state = "intact_on"; name = "Gas filter (O2 tank)"; on = 1},/turf/simulated/floor,/area/atmos) +"bTW" = (/obj/machinery/atmospherics/trinary/filter{dir = 4; filter_type = 1; icon_state = "intact_on"; name = "Gas filter (O2 tank)"; on = 1},/turf/simulated/floor,/area/atmos) "bTX" = (/obj/machinery/atmospherics/pipe/simple{color = "cyan"; icon_state = "intact-c"; level = 2},/obj/machinery/atmospherics/pipe/simple{color = "green"; dir = 4; icon_state = "intact-g"; initialize_directions = 12; level = 2},/turf/simulated/floor,/area/atmos) "bTY" = (/obj/machinery/atmospherics/pipe/simple{color = "green"; dir = 9; icon_state = "intact-g"; level = 2},/turf/simulated/floor,/area/atmos) "bTZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple{color = "cyan"; dir = 9; icon_state = "intact-c"; level = 2},/turf/simulated/floor/plating,/area/atmos) @@ -5612,23 +5612,23 @@ "cdV" = (/mob/living/silicon/decoy{icon_state = "ai-malf"; name = "GLaDOS"},/turf/unsimulated/floor{icon_state = "whiteshiny"},/area/syndicate_mothership) "cdW" = (/obj/item/device/radio/intercom{broadcasting = 1; dir = 1; freerange = 1; frequency = 1337; listening = 1; name = "Syndicate Ops Intercom"; pixel_y = 0},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "circuit"},/area/syndicate_mothership) "cdX" = (/turf/unsimulated/wall{icon = 'mineral_walls.dmi'; icon_state = "plasma3"},/area/alien) -"cdY" = (/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor5"},/area/alien) +"cdY" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor5"},/area/alien) "cdZ" = (/turf/unsimulated/wall{icon = 'mineral_walls.dmi'; icon_state = "plasma1"},/area/alien) "cea" = (/obj/structure/stool/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate_elite/mothership) "ceb" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate_elite/mothership) "cec" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate_elite/mothership) -"ced" = (/obj/item/weapon/paper{info = "Some stuff is missing..."; name = "Insert alien artifacts here."},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor5"},/area/alien) -"cee" = (/obj/machinery/door/airlock/hatch,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor5"},/area/alien) +"ced" = (/obj/item/weapon/paper{info = "Some stuff is missing..."; name = "Insert alien artifacts here."},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor5"},/area/alien) +"cee" = (/obj/machinery/door/airlock/hatch,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor5"},/area/alien) "cef" = (/turf/space,/area/syndicate_mothership/elite_squad) "ceg" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/syndicate_mothership/elite_squad) -"ceh" = (/obj/machinery/computer/pod{id = "syndicate_elite"; name = "Hull Door Control"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) -"cei" = (/obj/item/device/radio/intercom{broadcasting = 1; dir = 1; freerange = 1; frequency = 1337; listening = 0; name = "Syndicate Ops Intercom"; pixel_y = 28},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) -"cej" = (/obj/effect/landmark{name = "Syndicate-Commando"; tag = "Commando"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) -"cek" = (/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) -"cel" = (/obj/machinery/mech_bay_recharge_port,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) -"cem" = (/obj/mecha/combat/marauder/mauler,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership) -"cen" = (/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership) -"ceo" = (/obj/structure/closet/acloset,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor5"},/area/alien) +"ceh" = (/obj/machinery/computer/pod{id = "syndicate_elite"; name = "Hull Door Control"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) +"cei" = (/obj/item/device/radio/intercom{broadcasting = 1; dir = 1; freerange = 1; frequency = 1337; listening = 0; name = "Syndicate Ops Intercom"; pixel_y = 28},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) +"cej" = (/obj/effect/landmark{name = "Syndicate-Commando"; tag = "Commando"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) +"cek" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) +"cel" = (/obj/machinery/mech_bay_recharge_port,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) +"cem" = (/obj/mecha/combat/marauder/mauler,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership) +"cen" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership) +"ceo" = (/obj/structure/closet/acloset,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor5"},/area/alien) "cep" = (/turf/unsimulated/wall{icon = 'mineral_walls.dmi'; icon_state = "plasma2"},/area/alien) "ceq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{name = "plating"},/area/syndicate_mothership/elite_squad) "cer" = (/turf/space,/area/shuttle/alien/base) @@ -5638,8 +5638,8 @@ "cev" = (/obj/machinery/door/airlock/external{name = "Shuttle Airlock"; req_access_txt = "150"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "syndicate_elite"; name = "Side Hull Door"; opacity = 0},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate_elite/mothership) "cew" = (/turf/unsimulated/floor{name = "plating"},/area/syndicate_mothership/elite_squad) "cex" = (/obj/machinery/door/airlock/external{req_access_txt = "150"},/turf/unsimulated/floor{name = "plating"},/area/syndicate_mothership/elite_squad) -"cey" = (/obj/machinery/door/airlock/glass_security{name = "Airlock"; req_access_txt = "150"},/obj/machinery/door/poddoor{id = "syndicate_elite_mech_room"; name = "Mech Room Door"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) -"cez" = (/obj/structure/stool/bed/alien,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor5"},/area/alien) +"cey" = (/obj/machinery/door/airlock/glass_security{name = "Airlock"; req_access_txt = "150"},/obj/machinery/door/poddoor{id = "syndicate_elite_mech_room"; name = "Mech Room Door"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_mothership/elite_squad) +"cez" = (/obj/structure/stool/bed/alien,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor5"},/area/alien) "ceA" = (/obj/machinery/computer/pod{id = "syndicate_elite"; name = "Hull Door Control"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate_elite/mothership) "ceB" = (/obj/machinery/computer/syndicate_elite_shuttle,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate_elite/mothership) "ceC" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/shuttle/syndicate_elite/mothership) @@ -5651,35 +5651,35 @@ "ceI" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/syndicate_station/start) "ceJ" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/syndicate_station/start) "ceK" = (/turf/space,/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/area/syndicate_station/start) -"ceL" = (/obj/structure/table,/obj/machinery/microwave,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"ceM" = (/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"ceN" = (/obj/structure/table,/obj/machinery/light/lamp{pixel_x = 4; pixel_y = 1},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"ceO" = (/obj/machinery/computer/syndicate_station,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"ceP" = (/obj/structure/table,/obj/item/weapon/pen/sleepypen,/obj/item/weapon/paper,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"ceQ" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"ceR" = (/obj/structure/table,/obj/item/weapon/storage/donkpocket_kit{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"ceS" = (/obj/structure/stool{pixel_y = 8},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"ceT" = (/obj/structure/table,/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"ceU" = (/obj/effect/landmark{name = "Syndicate-Gear-Closet"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceL" = (/obj/structure/table,/obj/machinery/microwave,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceM" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceN" = (/obj/structure/table,/obj/machinery/light/lamp{pixel_x = 4; pixel_y = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceO" = (/obj/machinery/computer/syndicate_station,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceP" = (/obj/structure/table,/obj/item/weapon/pen/sleepypen,/obj/item/weapon/paper,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceQ" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceR" = (/obj/structure/table,/obj/item/weapon/storage/donkpocket_kit{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceS" = (/obj/structure/stool{pixel_y = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceT" = (/obj/structure/table,/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceU" = (/obj/effect/landmark{name = "Syndicate-Gear-Closet"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "ceV" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/syndicate_station/start) -"ceW" = (/obj/machinery/door/window,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceW" = (/obj/machinery/door/window,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "ceX" = (/turf/space,/turf/simulated/shuttle/wall{dir = 4; icon_state = "diagonalWall3"},/area/syndicate_station/start) -"ceY" = (/obj/structure/table,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"ceY" = (/obj/structure/table,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "ceZ" = (/turf/unsimulated/wall,/area/centcom) -"cfa" = (/obj/effect/landmark{name = "Nuclear-Closet"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cfa" = (/obj/effect/landmark{name = "Nuclear-Closet"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cfb" = (/turf/unsimulated/wall{desc = "Why it no open!"; icon = 'rapid_pdoor.dmi'; icon_state = "pdoor1"; name = "External Airlock"},/area) "cfc" = (/turf/unsimulated/wall{desc = "Why it no open!"; icon = 'rapid_pdoor.dmi'; icon_state = "pdoor1"; name = "Shuttle Bay Blast Door"},/area/centcom) "cfd" = (/turf/unsimulated/floor{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/centcom) "cfe" = (/turf/unsimulated/floor{name = "plating"},/area/centcom) -"cff" = (/obj/structure/stool/chair{dir = 4},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cff" = (/obj/structure/stool/chair{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cfg" = (/obj/effect/securearea{name = "EXTERNAL AIRLOCK"; desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"},/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/syndicate_station/start) -"cfh" = (/obj/machinery/door/poddoor{id = "syndicate"; name = "Outer Airlock"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cfh" = (/obj/machinery/door/poddoor{id = "syndicate"; name = "Outer Airlock"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cfi" = (/turf/unsimulated/floor{name = "plating"},/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/shuttle/administration/centcom) "cfj" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/shuttle/administration/centcom) "cfk" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/plating,/area/shuttle/administration/centcom) "cfl" = (/turf/unsimulated/floor{name = "plating"},/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/area/shuttle/administration/centcom) -"cfm" = (/obj/structure/table,/obj/item/device/aicard,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cfn" = (/obj/structure/table,/obj/machinery/computer/pod/old/syndicate{id = "syndicate"; pixel_x = -3; pixel_y = 8},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cfm" = (/obj/structure/table,/obj/item/device/aicard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cfn" = (/obj/structure/table,/obj/machinery/computer/pod/old/syndicate{id = "syndicate"; pixel_x = -3; pixel_y = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cfo" = (/obj/machinery/vending/boozeomat,/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/shuttle/administration/centcom) "cfp" = (/obj/machinery/vending/coffee,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "cfq" = (/obj/machinery/vending/cigarette,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) @@ -5687,16 +5687,16 @@ "cfs" = (/turf/simulated/floor/plating,/area/shuttle/administration/centcom) "cft" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/item/device/multitool,/obj/item/weapon/cleaner,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "cfu" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) -"cfv" = (/obj/machinery/door/window{dir = 4; icon = 'windoor.dmi'; req_access_txt = "0"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cfw" = (/obj/machinery/door/airlock/external,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cfv" = (/obj/machinery/door/window{dir = 4; icon = 'windoor.dmi'; req_access_txt = "0"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cfw" = (/obj/machinery/door/airlock/external,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cfx" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "cfy" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access_txt = "101"},/turf/simulated/floor/plating,/area/shuttle/administration/centcom) "cfz" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "cfA" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/machinery/cell_charger,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "cfB" = (/turf/unsimulated/wall,/area/centcom/living) -"cfC" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cfC" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cfD" = (/obj/machinery/atmospherics/pipe/simple{dir = 10},/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/syndicate_station/start) -"cfE" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate,/obj/item/clothing/head/helmet/space/syndicate,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cfE" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate,/obj/item/clothing/head/helmet/space/syndicate,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cfF" = (/obj/machinery/door/window/northright,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "cfG" = (/obj/structure/table/reinforced{icon_state = "reinf_tabledir"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "cfH" = (/obj/structure/table/reinforced{icon_state = "reinf_tabledir"},/obj/item/weapon/zippo,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) @@ -5729,16 +5729,16 @@ "cgi" = (/turf/unsimulated/floor{name = "plating"},/area/centcom/suppy) "cgj" = (/turf/unsimulated/floor{tag = "icon-warnplate (EAST)"; icon_state = "warnplate"; dir = 4},/area/centcom/suppy) "cgk" = (/turf/unsimulated/wall{desc = "Why it no open!"; icon = 'rapid_pdoor.dmi'; icon_state = "pdoor1"; name = "Shuttle Bay Blast Door"},/area/centcom/suppy) -"cgl" = (/obj/machinery/sleeper{icon_state = "sleeper_0-r"; orient = "RIGHT"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) -"cgm" = (/obj/effect/landmark{name = "Syndicate-Spawn"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) -"cgn" = (/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) -"cgo" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/table,/obj/item/stack/medical/bruise_pack,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) -"cgp" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/table,/obj/item/stack/medical/ointment,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) -"cgq" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler,/obj/item/clothing/glasses/night,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cgr" = (/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler,/obj/item/clothing/glasses/night,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cgs" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/infra,/obj/item/clothing/glasses/night,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cgt" = (/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cgu" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/weapon/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgl" = (/obj/machinery/sleeper{icon_state = "sleeper_0-r"; orient = "RIGHT"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) +"cgm" = (/obj/effect/landmark{name = "Syndicate-Spawn"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) +"cgn" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) +"cgo" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/table,/obj/item/stack/medical/bruise_pack,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) +"cgp" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/table,/obj/item/stack/medical/ointment,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) +"cgq" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler,/obj/item/clothing/glasses/night,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgr" = (/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/signaler,/obj/item/clothing/glasses/night,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgs" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/infra,/obj/item/clothing/glasses/night,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgt" = (/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgu" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/weapon/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cgv" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_r (EAST)"; icon_state = "propulsion_r"; dir = 4},/turf/space,/area/shuttle/administration/centcom) "cgw" = (/turf/unsimulated/floor{name = "plating"},/turf/simulated/shuttle/wall{dir = 4; icon_state = "diagonalWall3"},/area/shuttle/administration/centcom) "cgx" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{tag = "icon-redyellowfull"; icon_state = "redyellowfull"},/area/centcom/living) @@ -5750,26 +5750,26 @@ "cgD" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s6"; icon_state = "swall_s6"; dir = 2},/area/supply/dock) "cgE" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area/supply/dock) "cgF" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area/supply/dock) -"cgG" = (/obj/machinery/door/window{dir = 4; icon = 'windoor.dmi'; req_access_txt = "0"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) -"cgH" = (/obj/machinery/door/window/westright,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cgI" = (/obj/structure/crate/internals,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgG" = (/obj/machinery/door/window{dir = 4; icon = 'windoor.dmi'; req_access_txt = "0"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) +"cgH" = (/obj/machinery/door/window/westright,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgI" = (/obj/structure/crate/internals,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cgJ" = (/turf/unsimulated/floor{name = "plating"},/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/shuttle/administration/centcom) "cgK" = (/obj/machinery/sleeper,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "cgL" = (/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration/centcom) "cgM" = (/turf/unsimulated/floor{tag = "icon-warnplate (EAST)"; icon_state = "warnplate"; dir = 4},/area/centcom) "cgN" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/supply/dock) "cgO" = (/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) -"cgP" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) -"cgQ" = (/obj/machinery/door/window{icon = 'windoor.dmi'; dir = 8},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cgR" = (/obj/structure/table,/obj/effect/landmark{name = "Syndicate-Bomb"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgP" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) +"cgQ" = (/obj/machinery/door/window{icon = 'windoor.dmi'; dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgR" = (/obj/structure/table,/obj/effect/landmark{name = "Syndicate-Bomb"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cgS" = (/turf/unsimulated/floor{tag = "icon-redyellowfull"; icon_state = "redyellowfull"},/area/centcom/living) "cgT" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/shuttle/floor,/area/supply/dock) -"cgU" = (/obj/structure/table,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) -"cgV" = (/obj/item/weapon/weldingtool,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cgW" = (/obj/machinery/door/window{dir = 1},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cgX" = (/obj/item/weapon/crowbar,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cgY" = (/obj/machinery/atmospherics/pipe/simple{dir = 10},/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"cgZ" = (/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgU" = (/obj/structure/table,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) +"cgV" = (/obj/item/weapon/weldingtool,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgW" = (/obj/machinery/door/window{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgX" = (/obj/item/weapon/crowbar,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgY" = (/obj/machinery/atmospherics/pipe/simple{dir = 10},/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"cgZ" = (/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cha" = (/obj/machinery/dna_scannernew,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) "chb" = (/obj/machinery/computer/cloning,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) "chc" = (/obj/machinery/clonepod,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) @@ -5782,17 +5782,17 @@ "chj" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/living) "chk" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/living) "chl" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/living) -"chm" = (/obj/effect/landmark{name = "Nuclear-Bomb"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) -"chn" = (/obj/item/clothing/head/helmet/welding,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"chm" = (/obj/effect/landmark{name = "Nuclear-Bomb"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"chn" = (/obj/item/clothing/head/helmet/welding,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "cho" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) "chp" = (/obj/item/weapon/reagent_containers/food/condiment/saltshaker,/obj/structure/table,/turf/unsimulated/floor{tag = "icon-redyellowfull"; icon_state = "redyellowfull"},/area/centcom/living) "chq" = (/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/living) "chr" = (/obj/structure/secure_closet/meat,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/living) "chs" = (/obj/machinery/chem_master/condimaster{name = "CondiMaster Neo"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/living) -"cht" = (/obj/structure/crate/medical,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) -"chu" = (/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) +"cht" = (/obj/structure/crate/medical,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) +"chu" = (/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/syndicate_station/start) "chv" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/syndicate_station/start) -"chw" = (/obj/item/weapon/extinguisher,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) +"chw" = (/obj/item/weapon/extinguisher,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/syndicate_station/start) "chx" = (/obj/machinery/optable,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/administration/centcom) "chy" = (/obj/structure/table/reinforced,/obj/machinery/librarycomp,/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/shuttle/administration/centcom) "chz" = (/obj/structure/bookcase,/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/shuttle/administration/centcom) @@ -6062,7 +6062,7 @@ "cmD" = (/obj/machinery/door/airlock/external,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "NTrasen"; name = "Outer Airlock"; opacity = 0},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/specops/centcom) "cmE" = (/turf/space,/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/area/shuttle/specops/centcom) "cmF" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access_txt = "101"},/turf/unsimulated/floor{icon_state = "delivery"},/area/centcom/control) -"cmG" = (/obj/structure/table,/obj/item/assembly/shock_kit{icon = 'icons/obj/assemblies.dmi'},/obj/item/device/assembly/signaler,/obj/item/weapon/handcuffs,/obj/item/weapon/melee/classic_baton,/turf/unsimulated/floor{icon_state = "whiteshiny"},/area/centcom/control) +"cmG" = (/obj/structure/table,/obj/item/assembly/shock_kit{icon = 'assemblies.dmi'},/obj/item/device/assembly/signaler,/obj/item/weapon/handcuffs,/obj/item/weapon/melee/classic_baton,/turf/unsimulated/floor{icon_state = "whiteshiny"},/area/centcom/control) "cmH" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion (EAST)"; icon_state = "propulsion"; dir = 4},/turf/space,/area/shuttle/specops/centcom) "cmI" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/shuttle/engine/heater{tag = "icon-heater (WEST)"; icon_state = "heater"; dir = 8},/turf/unsimulated/floor,/area/shuttle/specops/centcom) "cmJ" = (/obj/effect/landmark{name = "Commando-Bomb"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/specops/centcom) @@ -6106,12 +6106,12 @@ "cnv" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/centcom/control) "cnw" = (/obj/structure/table/reinforced{icon_state = "reinf_tabledir"},/obj/machinery/door/window/southleft{name = "Security"; req_access_txt = ""},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/control) "cnx" = (/obj/machinery/door/poddoor{id = "CentComPort"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "green"; dir = 4},/area/centcom/control) -"cny" = (/obj{anchored = 1; icon = 'shuttle.dmi'; icon_state = "floor3"; layer = 1; name = "floor"},/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/shuttle/escape/centcom) +"cny" = (/obj{anchored = 1; icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"; layer = 1; name = "floor"},/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/shuttle/escape/centcom) "cnz" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) "cnA" = (/obj/structure/stool/chair{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) "cnB" = (/obj/machinery/computer/shuttle,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) "cnC" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"cnD" = (/obj{anchored = 1; icon = 'shuttle.dmi'; icon_state = "floor3"; layer = 1; name = "floor"},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/escape/centcom) +"cnD" = (/obj{anchored = 1; icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"; layer = 1; name = "floor"},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/escape/centcom) "cnE" = (/obj/structure/stool/chair{dir = 1},/turf/unsimulated/floor{icon_state = "delivery"},/area/centcom/control) "cnF" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/shuttle/escape/centcom) "cnG" = (/obj/machinery/computer/atmos_alert,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) @@ -6197,7 +6197,7 @@ "cpi" = (/obj/structure/rack,/obj/item/toy/sword,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/holding) "cpj" = (/obj/structure/rack,/obj/item/toy/gun,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/holding) "cpk" = (/obj/machinery/computer/arcade,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/holding) -"cpl" = (/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/centcom/holding) +"cpl" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/holding) "cpm" = (/turf/unsimulated/floor{icon = 'beach.dmi'; icon_state = "sand"; name = "sand"},/area/centcom/holding) "cpn" = (/obj/effect/overlay{anchored = 1; icon = 'icons/misc/beach2.dmi'; icon_state = "palm2"; layer = 10; name = "palm tree"},/obj/effect/overlay{anchored = 1; icon = 'beach.dmi'; icon_state = "coconuts"; name = "coconuts"},/turf/unsimulated/floor{icon = 'beach.dmi'; icon_state = "sand"; name = "sand"},/area/centcom/holding) "cpo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/unsimulated/floor{name = "plating"},/area/centcom/control) @@ -6236,7 +6236,7 @@ "cpV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{name = "plating"},/area/centcom/evac) "cpW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/unsimulated/floor{name = "plating"},/area/centcom/evac) "cpX" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"cpY" = (/obj{anchored = 1; icon = 'shuttle.dmi'; icon_state = "floor"; layer = 1; name = "floor"},/turf/simulated/shuttle/wall{dir = 3; icon_state = "swall_f10"; layer = 2; tag = "icon-swall_f10"},/area/shuttle/escape/centcom) +"cpY" = (/obj{anchored = 1; icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"; layer = 1; name = "floor"},/turf/simulated/shuttle/wall{dir = 3; icon_state = "swall_f10"; layer = 2; tag = "icon-swall_f10"},/area/shuttle/escape/centcom) "cpZ" = (/obj/structure/closet/emcloset,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) "cqa" = (/obj/structure/rack,/obj/item/toy/crayonbox,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/holding) "cqb" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/centcom/holding) @@ -6465,69 +6465,69 @@ "cuq" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area/derelict/ship) "cur" = (/turf/simulated/shuttle/wall{tag = "icon-swall14"; icon_state = "swall14"; dir = 2},/area/derelict/ship) "cus" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area/derelict/ship) -"cut" = (/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/derelict/ship) -"cuu" = (/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cuv" = (/obj/machinery/sleeper,/obj/machinery/light{dir = 1},/obj/effect/decal/remains/human,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cuw" = (/obj/machinery/sleep_console,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cux" = (/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/derelict/ship) +"cut" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/derelict/ship) +"cuu" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cuv" = (/obj/machinery/sleeper,/obj/machinery/light{dir = 1},/obj/effect/decal/remains/human,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cuw" = (/obj/machinery/sleep_console,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cux" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/derelict/ship) "cuy" = (/turf/simulated/shuttle/wall{tag = "icon-swall13"; icon_state = "swall13"; dir = 2},/area/derelict/ship) "cuz" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_r (WEST)"; icon_state = "burst_r"; dir = 8},/turf/space,/area/derelict/ship) "cuA" = (/turf/simulated/shuttle/wall{tag = "icon-swall11"; icon_state = "swall11"; dir = 2},/area/derelict/ship) -"cuB" = (/obj/machinery/computer/med_data,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cuC" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cuB" = (/obj/machinery/computer/med_data,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cuC" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cuD" = (/turf/simulated/shuttle/wall{tag = "icon-swall15"; icon_state = "swall15"; dir = 2},/area/derelict/ship) "cuE" = (/turf/unsimulated/floor{name = "plating"},/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/derelict/ship) "cuF" = (/obj/structure/shuttle/engine/heater{tag = "icon-heater (EAST)"; icon_state = "heater"; dir = 4},/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) "cuG" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion (WEST)"; icon_state = "propulsion"; dir = 8},/turf/space,/area/derelict/ship) -"cuH" = (/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{tag = "icon-swall_f10"; icon_state = "swall_f10"; dir = 2},/area/derelict/ship) -"cuI" = (/obj/item/weapon/scalpel,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cuH" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{tag = "icon-swall_f10"; icon_state = "swall_f10"; dir = 2},/area/derelict/ship) +"cuI" = (/obj/item/weapon/scalpel,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cuJ" = (/turf/simulated/shuttle/wall{tag = "icon-swall7"; icon_state = "swall7"; dir = 2},/area/derelict/ship) "cuK" = (/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) -"cuL" = (/obj/structure/computerframe{anchored = 1},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cuL" = (/obj/structure/computerframe{anchored = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cuM" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) "cuN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) "cuO" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) "cuP" = (/obj/machinery/door/airlock/glass{name = "Hibernation Pods"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) -"cuQ" = (/obj/structure/stool/chair{dir = 1},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cuR" = (/obj/structure/table,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cuQ" = (/obj/structure/stool/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cuR" = (/obj/structure/table,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cuS" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/derelict/ship) -"cuT" = (/obj/item/device/multitool,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cuU" = (/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cuT" = (/obj/item/device/multitool,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cuU" = (/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cuV" = (/obj/machinery/door/unpowered/shuttle,/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) "cuW" = (/turf/unsimulated/floor{name = "plating"},/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/derelict/ship) "cuX" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l (WEST)"; icon_state = "burst_l"; dir = 8},/turf/space,/area/derelict/ship) "cuY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) -"cuZ" = (/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/derelict/ship) -"cva" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvb" = (/obj/machinery/light_switch{pixel_x = 27},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvc" = (/obj/machinery/portable_atmospherics/scrubber,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cuZ" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/derelict/ship) +"cva" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvb" = (/obj/machinery/light_switch{pixel_x = 27},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvc" = (/obj/machinery/portable_atmospherics/scrubber,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cvd" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) -"cve" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvf" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvg" = (/obj/machinery/door/window,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvh" = (/obj/machinery/light{dir = 1},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cve" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvf" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvg" = (/obj/machinery/door/window,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvh" = (/obj/machinery/light{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cvi" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) -"cvj" = (/obj/machinery/light/small{dir = 8},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvk" = (/obj/structure/table,/obj/item/weapon/tank/oxygen,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvj" = (/obj/machinery/light/small{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvk" = (/obj/structure/table,/obj/item/weapon/tank/oxygen,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cvl" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) "cvm" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s6"; icon_state = "swall_s6"; dir = 2},/area) "cvn" = (/turf/simulated/shuttle/wall{tag = "icon-swall14"; icon_state = "swall14"; dir = 2},/area) "cvo" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area) "cvp" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area) -"cvq" = (/obj/structure/table,/obj/item/device/analyzer,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvr" = (/obj/structure/stool/chair{dir = 8},/obj/effect/decal/remains/human,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvs" = (/obj/machinery/light/small{dir = 4},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvq" = (/obj/structure/table,/obj/item/device/analyzer,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvr" = (/obj/structure/stool/chair{dir = 8},/obj/effect/decal/remains/human,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvs" = (/obj/machinery/light/small{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cvt" = (/obj/machinery/door/airlock/glass{name = "Living Module"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) -"cvu" = (/obj/machinery/door/unpowered/shuttle,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvu" = (/obj/machinery/door/unpowered/shuttle,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cvv" = (/turf/simulated/shuttle/wall{tag = "icon-swall7"; icon_state = "swall7"; dir = 2},/area) "cvw" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area) "cvx" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area) "cvy" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area) "cvz" = (/turf/simulated/shuttle/wall{tag = "icon-swall11"; icon_state = "swall11"; dir = 2},/area) -"cvA" = (/obj/machinery/door/window/northright,/obj/effect/decal/remains/human,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvB" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvC" = (/obj/machinery/light,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvD" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvA" = (/obj/machinery/door/window/northright,/obj/effect/decal/remains/human,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvB" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvC" = (/obj/machinery/light,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvD" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cvE" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area) "cvF" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area/derelict/ship) "cvG" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s5"; icon_state = "swall_s5"; dir = 2},/area/derelict/ship) @@ -6538,27 +6538,27 @@ "cvL" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s5"; icon_state = "swall_s5"; dir = 2},/area) "cvM" = (/turf/simulated/shuttle/wall{tag = "icon-swall13"; icon_state = "swall13"; dir = 2},/area) "cvN" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area) -"cvO" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvP" = (/obj/item/weapon/shard,/obj/structure/stool/chair,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvQ" = (/obj/structure/stool/chair,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvR" = (/obj/structure/cable,/obj/structure/computerframe{anchored = 1},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvS" = (/obj/structure/cable,/obj/structure/computerframe{anchored = 1},/obj/item/weapon/cable_coil/cut,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvT" = (/obj/structure/rack,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/tank/emergency_oxygen,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvU" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate,/obj/item/clothing/head/helmet/space/syndicate,/obj/item/clothing/mask/breath,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvV" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/syndicate,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cvW" = (/obj/machinery/power/apc{cell_type = 5000; dir = 8; environ = 0; equipment = 0; lighting = 0; locked = 0; name = "Worn-out APC"; pixel_x = -24; pixel_y = 0},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvO" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvP" = (/obj/item/weapon/shard,/obj/structure/stool/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvQ" = (/obj/structure/stool/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvR" = (/obj/structure/cable,/obj/structure/computerframe{anchored = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvS" = (/obj/structure/cable,/obj/structure/computerframe{anchored = 1},/obj/item/weapon/cable_coil/cut,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvT" = (/obj/structure/rack,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/tank/emergency_oxygen,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvU" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate,/obj/item/clothing/head/helmet/space/syndicate,/obj/item/clothing/mask/breath,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvV" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/syndicate,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cvW" = (/obj/machinery/power/apc{cell_type = 5000; dir = 8; environ = 0; equipment = 0; lighting = 0; locked = 0; name = "Worn-out APC"; pixel_x = -24; pixel_y = 0},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cvX" = (/turf/unsimulated/floor{name = "plating"},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/derelict/ship) "cvY" = (/obj/item/weapon/card/data/clown,/turf/space,/area) "cvZ" = (/obj/machinery/door/poddoor{id = "oldship_gun"; name = "Pod Bay Door"},/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) "cwa" = (/obj/machinery/mass_driver{dir = 8; icon_state = "mass_driver"; id = "oldship_gun"},/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) "cwb" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{name = "plating"},/area/derelict/ship) -"cwc" = (/obj/machinery/door/airlock/glass{name = "Pod Bay"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = "Streight"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cwd" = (/obj/effect/decal/remains/human,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cwc" = (/obj/machinery/door/airlock/glass{name = "Pod Bay"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = "Streight"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cwd" = (/obj/effect/decal/remains/human,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cwe" = (/turf/unsimulated/floor{name = "plating"},/turf/simulated/shuttle/wall{tag = "icon-swall_f10"; icon_state = "swall_f10"; dir = 2},/area/derelict/ship) -"cwf" = (/obj/machinery/computer/pod{id = "oldship_gun"},/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cwg" = (/obj/machinery/light/small,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cwh" = (/obj/structure/table,/obj/item/weapon/screwdriver,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) -"cwi" = (/obj/structure/table,/obj/item/device/radio,/turf/unsimulated/floor{icon = 'shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cwf" = (/obj/machinery/computer/pod{id = "oldship_gun"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cwg" = (/obj/machinery/light/small,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cwh" = (/obj/structure/table,/obj/item/weapon/screwdriver,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) +"cwi" = (/obj/structure/table,/obj/item/device/radio,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/derelict/ship) "cwj" = (/obj/machinery/power/solar/fake,/turf/simulated/floor{icon_state = "solarpanel"},/area) "cwk" = (/turf/space,/area/turret_protected/AIsatextFP) "cwl" = (/turf/space,/area/turret_protected/AIsatextFS) diff --git a/tgstation.dme b/tgstation.dme index 3766ffa756..ae447ec7a0 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -9,6 +9,7 @@ #define FILE_DIR "code/ATMOSPHERICS" #define FILE_DIR "code/ATMOSPHERICS/components" #define FILE_DIR "code/ATMOSPHERICS/components/binary_devices" +#define FILE_DIR "code/ATMOSPHERICS/components/trinary_devices" #define FILE_DIR "code/ATMOSPHERICS/components/unary" #define FILE_DIR "code/datums" #define FILE_DIR "code/datums/diseases" @@ -154,6 +155,7 @@ #define FILE_DIR "icons/turf" #define FILE_DIR "interface" #define FILE_DIR "maps" +#define FILE_DIR "maps/backup" #define FILE_DIR "sound" #define FILE_DIR "sound/ambience" #define FILE_DIR "sound/announcer" @@ -179,8 +181,6 @@ #include "code\ATMOSPHERICS\datum_pipeline.dm" #include "code\ATMOSPHERICS\he_pipes.dm" #include "code\ATMOSPHERICS\pipes.dm" -#include "code\ATMOSPHERICS\components\filter.dm" -#include "code\ATMOSPHERICS\components\mixer.dm" #include "code\ATMOSPHERICS\components\portables_connector.dm" #include "code\ATMOSPHERICS\components\valve.dm" #include "code\ATMOSPHERICS\components\binary_devices\binary_atmos_base.dm" @@ -189,6 +189,9 @@ #include "code\ATMOSPHERICS\components\binary_devices\passive_gate.dm" #include "code\ATMOSPHERICS\components\binary_devices\pump.dm" #include "code\ATMOSPHERICS\components\binary_devices\volume_pump.dm" +#include "code\ATMOSPHERICS\components\trinary_devices\filter.dm" +#include "code\ATMOSPHERICS\components\trinary_devices\mixer.dm" +#include "code\ATMOSPHERICS\components\trinary_devices\trinary_base.dm" #include "code\ATMOSPHERICS\components\unary\cold_sink.dm" #include "code\ATMOSPHERICS\components\unary\generator_input.dm" #include "code\ATMOSPHERICS\components\unary\heat_exchanger.dm"