mirror of
https://github.com/yogstation13/Yogstation.git
synced 2025-02-26 09:04:50 +00:00
fuck
This commit is contained in:
@@ -690,7 +690,7 @@
|
|||||||
if(!istype(T))
|
if(!istype(T))
|
||||||
return
|
return
|
||||||
var/datum/gas_mixture/environment = T.return_air()
|
var/datum/gas_mixture/environment = T.return_air()
|
||||||
if(!istype(environment))
|
if(!environment)
|
||||||
return
|
return
|
||||||
var/pressure = environment.return_pressure()
|
var/pressure = environment.return_pressure()
|
||||||
if(pressure <= LAVALAND_EQUIPMENT_EFFECT_PRESSURE)
|
if(pressure <= LAVALAND_EQUIPMENT_EFFECT_PRESSURE)
|
||||||
|
|||||||
@@ -21,6 +21,8 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
var/datum/gas_mixture/turf_air = T.return_air()
|
var/datum/gas_mixture/turf_air = T.return_air()
|
||||||
|
if(!turf_air)
|
||||||
|
return
|
||||||
var/datum/gas_mixture/stank_breath = T.remove_air(1 / turf_air.return_volume() * turf_air.total_moles())
|
var/datum/gas_mixture/stank_breath = T.remove_air(1 / turf_air.return_volume() * turf_air.total_moles())
|
||||||
if(!stank_breath)
|
if(!stank_breath)
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -394,7 +394,7 @@
|
|||||||
. = 0
|
. = 0
|
||||||
|
|
||||||
if(M.loc)
|
if(M.loc)
|
||||||
environment = M.loc.return_air()
|
environment = M.return_air()
|
||||||
if(environment)
|
if(environment)
|
||||||
if(environment.get_moles(GAS_PLASMA) > GLOB.gas_data.visibility[GAS_PLASMA]) //if there's enough plasma in the air to see
|
if(environment.get_moles(GAS_PLASMA) > GLOB.gas_data.visibility[GAS_PLASMA]) //if there's enough plasma in the air to see
|
||||||
. += power * 0.5
|
. += power * 0.5
|
||||||
|
|||||||
@@ -42,7 +42,7 @@
|
|||||||
|
|
||||||
/obj/effect/proc_holder/spell/targeted/olfaction/cast(list/targets, mob/living/user = usr)
|
/obj/effect/proc_holder/spell/targeted/olfaction/cast(list/targets, mob/living/user = usr)
|
||||||
//can we sniff? is there miasma in the air?
|
//can we sniff? is there miasma in the air?
|
||||||
var/datum/gas_mixture/air = user.loc.return_air()
|
var/datum/gas_mixture/air = user.return_air()
|
||||||
if(air.get_moles(GAS_MIASMA) >= 0.1)
|
if(air.get_moles(GAS_MIASMA) >= 0.1)
|
||||||
user.adjust_disgust(sensitivity * 45)
|
user.adjust_disgust(sensitivity * 45)
|
||||||
to_chat(user, span_warning("With your overly sensitive nose, you get a whiff of stench and feel sick! Try moving to a cleaner area!"))
|
to_chat(user, span_warning("With your overly sensitive nose, you get a whiff of stench and feel sick! Try moving to a cleaner area!"))
|
||||||
|
|||||||
@@ -135,14 +135,12 @@
|
|||||||
airlock.bolt()
|
airlock.bolt()
|
||||||
|
|
||||||
/obj/machinery/advanced_airlock_controller/update_icon(use_hash = FALSE)
|
/obj/machinery/advanced_airlock_controller/update_icon(use_hash = FALSE)
|
||||||
var/turf/location = get_turf(src)
|
if(!isopenturf(get_turf(src)))
|
||||||
if(!location)
|
|
||||||
return
|
return
|
||||||
var/pressure = 0
|
var/pressure = 0
|
||||||
if(location)
|
var/datum/gas_mixture/environment = return_air()
|
||||||
var/datum/gas_mixture/environment = location.return_air()
|
if(environment)
|
||||||
if(environment)
|
pressure = environment.return_pressure()
|
||||||
pressure = environment.return_pressure()
|
|
||||||
var/maxpressure = (exterior_pressure && (cyclestate == AIRLOCK_CYCLESTATE_OUTCLOSING || cyclestate == AIRLOCK_CYCLESTATE_OUTOPENING || cyclestate == AIRLOCK_CYCLESTATE_OUTOPEN)) ? exterior_pressure : interior_pressure
|
var/maxpressure = (exterior_pressure && (cyclestate == AIRLOCK_CYCLESTATE_OUTCLOSING || cyclestate == AIRLOCK_CYCLESTATE_OUTOPENING || cyclestate == AIRLOCK_CYCLESTATE_OUTOPEN)) ? exterior_pressure : interior_pressure
|
||||||
var/pressure_bars = round(pressure / maxpressure * 5 + 0.01)
|
var/pressure_bars = round(pressure / maxpressure * 5 + 0.01)
|
||||||
|
|
||||||
@@ -295,15 +293,13 @@
|
|||||||
update_icon(TRUE)
|
update_icon(TRUE)
|
||||||
return
|
return
|
||||||
|
|
||||||
var/turf/location = get_turf(src)
|
if(!isopenturf(get_turf(src)))
|
||||||
if(!location)
|
|
||||||
update_icon(TRUE)
|
update_icon(TRUE)
|
||||||
return
|
return
|
||||||
var/pressure = 0
|
var/pressure = 0
|
||||||
if(location)
|
var/datum/gas_mixture/environment = return_air()
|
||||||
var/datum/gas_mixture/environment = location.return_air()
|
if(environment)
|
||||||
if(environment)
|
pressure = environment.return_pressure()
|
||||||
pressure = environment.return_pressure()
|
|
||||||
|
|
||||||
update_error_status()
|
update_error_status()
|
||||||
var/doors_valid = TRUE
|
var/doors_valid = TRUE
|
||||||
@@ -596,10 +592,9 @@
|
|||||||
ui.open()
|
ui.open()
|
||||||
|
|
||||||
/obj/machinery/advanced_airlock_controller/ui_data(mob/user)
|
/obj/machinery/advanced_airlock_controller/ui_data(mob/user)
|
||||||
var/turf/T = get_turf(src)
|
|
||||||
var/pressure = 0
|
var/pressure = 0
|
||||||
if(T)
|
if(isopenturf(get_turf(src)))
|
||||||
var/datum/gas_mixture/environment = T.return_air()
|
var/datum/gas_mixture/environment = return_air()
|
||||||
if(environment)
|
if(environment)
|
||||||
pressure = environment.return_pressure()
|
pressure = environment.return_pressure()
|
||||||
|
|
||||||
|
|||||||
@@ -70,8 +70,7 @@
|
|||||||
update_icon()
|
update_icon()
|
||||||
return PROCESS_KILL
|
return PROCESS_KILL
|
||||||
|
|
||||||
var/turf/L = loc
|
if(!isopenturf(get_turf(src)))
|
||||||
if(!istype(L))
|
|
||||||
if(mode != ELECTROLYZER_MODE_STANDBY)
|
if(mode != ELECTROLYZER_MODE_STANDBY)
|
||||||
mode = ELECTROLYZER_MODE_STANDBY
|
mode = ELECTROLYZER_MODE_STANDBY
|
||||||
update_icon()
|
update_icon()
|
||||||
@@ -86,7 +85,7 @@
|
|||||||
if(mode == ELECTROLYZER_MODE_STANDBY)
|
if(mode == ELECTROLYZER_MODE_STANDBY)
|
||||||
return
|
return
|
||||||
|
|
||||||
var/datum/gas_mixture/env = L.return_air() //get air from the turf
|
var/datum/gas_mixture/env = return_air() //get air from the turf
|
||||||
var/datum/gas_mixture/removed = env.remove(0.1 * env.total_moles())
|
var/datum/gas_mixture/removed = env.remove(0.1 * env.total_moles())
|
||||||
|
|
||||||
if(!removed)
|
if(!removed)
|
||||||
|
|||||||
@@ -111,10 +111,11 @@
|
|||||||
|
|
||||||
//Thanks to spaceheater.dm for inspiration :)
|
//Thanks to spaceheater.dm for inspiration :)
|
||||||
/obj/machinery/shuttle/engine/proc/fireEngine()
|
/obj/machinery/shuttle/engine/proc/fireEngine()
|
||||||
var/turf/heatTurf = loc
|
if(!isopenturf(get_turf(src)))
|
||||||
if(!heatTurf)
|
return
|
||||||
|
var/datum/gas_mixture/env = return_air()
|
||||||
|
if(!env)
|
||||||
return
|
return
|
||||||
var/datum/gas_mixture/env = heatTurf.return_air()
|
|
||||||
var/heat_cap = env.heat_capacity()
|
var/heat_cap = env.heat_capacity()
|
||||||
var/req_power = abs(env.return_temperature() - ENGINE_HEAT_TARGET) * heat_cap
|
var/req_power = abs(env.return_temperature() - ENGINE_HEAT_TARGET) * heat_cap
|
||||||
req_power = min(req_power, ENGINE_HEATING_POWER)
|
req_power = min(req_power, ENGINE_HEATING_POWER)
|
||||||
|
|||||||
@@ -73,14 +73,13 @@
|
|||||||
return PROCESS_KILL
|
return PROCESS_KILL
|
||||||
|
|
||||||
if(cell && cell.charge > 0)
|
if(cell && cell.charge > 0)
|
||||||
var/turf/L = loc
|
if(!isopenturf(get_turf(src)))
|
||||||
if(!istype(L))
|
|
||||||
if(mode != HEATER_MODE_STANDBY)
|
if(mode != HEATER_MODE_STANDBY)
|
||||||
mode = HEATER_MODE_STANDBY
|
mode = HEATER_MODE_STANDBY
|
||||||
update_icon()
|
update_icon()
|
||||||
return
|
return
|
||||||
|
|
||||||
var/datum/gas_mixture/env = L.return_air()
|
var/datum/gas_mixture/env = return_air()
|
||||||
|
|
||||||
var/newMode = HEATER_MODE_STANDBY
|
var/newMode = HEATER_MODE_STANDBY
|
||||||
if(setMode != HEATER_MODE_COOL && env.return_temperature() < targetTemperature - temperatureTolerance)
|
if(setMode != HEATER_MODE_COOL && env.return_temperature() < targetTemperature - temperatureTolerance)
|
||||||
@@ -185,13 +184,10 @@
|
|||||||
data["minTemp"] = max(settableTemperatureMedian - settableTemperatureRange - T0C, TCMB)
|
data["minTemp"] = max(settableTemperatureMedian - settableTemperatureRange - T0C, TCMB)
|
||||||
data["maxTemp"] = settableTemperatureMedian + settableTemperatureRange - T0C
|
data["maxTemp"] = settableTemperatureMedian + settableTemperatureRange - T0C
|
||||||
|
|
||||||
var/turf/L = get_turf(loc)
|
|
||||||
var/curTemp
|
var/curTemp
|
||||||
if(istype(L))
|
if(isopenturf(get_turf(src)))
|
||||||
var/datum/gas_mixture/env = L.return_air()
|
var/datum/gas_mixture/env = return_air()
|
||||||
curTemp = env.return_temperature()
|
curTemp = env?.return_temperature()
|
||||||
else if(isturf(L))
|
|
||||||
curTemp = L.return_temperature()
|
|
||||||
if(isnull(curTemp))
|
if(isnull(curTemp))
|
||||||
data["currentTemp"] = "N/A"
|
data["currentTemp"] = "N/A"
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -148,10 +148,9 @@ GLOBAL_LIST_EMPTY(telecomms_list)
|
|||||||
/obj/machinery/telecomms/proc/update_speed()
|
/obj/machinery/telecomms/proc/update_speed()
|
||||||
if(!on)
|
if(!on)
|
||||||
return
|
return
|
||||||
var/turf/T = get_turf(src) //yogs
|
|
||||||
var/speedloss = 0
|
var/speedloss = 0
|
||||||
var/datum/gas_mixture/env = T.return_air()
|
var/datum/gas_mixture/env = return_air()
|
||||||
var/temperature = env.return_temperature()
|
var/temperature = env?.return_temperature()
|
||||||
if(temperature <= 150) // 150K optimal operating parameters
|
if(temperature <= 150) // 150K optimal operating parameters
|
||||||
net_efective = 100
|
net_efective = 100
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -385,14 +385,13 @@ GLOBAL_LIST_EMPTY(PDAs)
|
|||||||
if (3)
|
if (3)
|
||||||
dat += "<h4>[PDAIMG(atmos)] Atmospheric Readings</h4>"
|
dat += "<h4>[PDAIMG(atmos)] Atmospheric Readings</h4>"
|
||||||
|
|
||||||
var/turf/T = user.loc
|
if (!isopenturf(get_turf(user)))
|
||||||
if (isnull(T))
|
|
||||||
dat += "Unable to obtain a reading.<br>"
|
dat += "Unable to obtain a reading.<br>"
|
||||||
else
|
else
|
||||||
var/datum/gas_mixture/environment = T.return_air()
|
var/datum/gas_mixture/environment = user.return_air()
|
||||||
|
|
||||||
var/pressure = environment.return_pressure()
|
var/pressure = environment?.return_pressure()
|
||||||
var/total_moles = environment.total_moles()
|
var/total_moles = environment?.total_moles()
|
||||||
|
|
||||||
dat += "Air Pressure: [round(pressure,0.1)] kPa<br>"
|
dat += "Air Pressure: [round(pressure,0.1)] kPa<br>"
|
||||||
|
|
||||||
|
|||||||
@@ -599,11 +599,14 @@ GENE SCANNER
|
|||||||
if (user.stat || user.eye_blind)
|
if (user.stat || user.eye_blind)
|
||||||
return
|
return
|
||||||
|
|
||||||
var/turf/location = user.loc
|
if(!isopenturf(get_turf(user)))
|
||||||
if(!istype(location))
|
|
||||||
return
|
return
|
||||||
|
|
||||||
var/datum/gas_mixture/environment = location.return_air()
|
var/datum/gas_mixture/environment = user.return_air()
|
||||||
|
|
||||||
|
if(!environment)
|
||||||
|
to_chat(user, span_info("No air detected."))
|
||||||
|
return
|
||||||
|
|
||||||
var/pressure = environment.return_pressure()
|
var/pressure = environment.return_pressure()
|
||||||
var/total_moles = environment.total_moles()
|
var/total_moles = environment.total_moles()
|
||||||
|
|||||||
@@ -35,4 +35,4 @@
|
|||||||
if(tank)
|
if(tank)
|
||||||
return tank.air_contents
|
return tank.air_contents
|
||||||
else
|
else
|
||||||
return loc.return_air()
|
return loc?.return_air()
|
||||||
|
|||||||
@@ -177,8 +177,9 @@
|
|||||||
sleep(OPEN_DURATION + 0.2 SECONDS)
|
sleep(OPEN_DURATION + 0.2 SECONDS)
|
||||||
pod_moving = FALSE
|
pod_moving = FALSE
|
||||||
if(!QDELETED(pod))
|
if(!QDELETED(pod))
|
||||||
var/datum/gas_mixture/floor_mixture = loc.return_air()
|
var/datum/gas_mixture/floor_mixture = loc?.return_air()
|
||||||
equalize_all_gases_in_list(list(pod.air_contents,floor_mixture))
|
if(floor_mixture)
|
||||||
|
equalize_all_gases_in_list(list(pod.air_contents,floor_mixture))
|
||||||
|
|
||||||
/obj/structure/transit_tube/station/init_tube_dirs()
|
/obj/structure/transit_tube/station/init_tube_dirs()
|
||||||
switch(dir)
|
switch(dir)
|
||||||
|
|||||||
@@ -284,11 +284,11 @@
|
|||||||
data["fire_alarm"] = A.fire
|
data["fire_alarm"] = A.fire
|
||||||
|
|
||||||
var/turf/T = get_turf(src)
|
var/turf/T = get_turf(src)
|
||||||
var/datum/gas_mixture/environment = T.return_air()
|
var/datum/gas_mixture/environment = T?.return_air()
|
||||||
var/datum/tlv/cur_tlv
|
var/datum/tlv/cur_tlv
|
||||||
|
|
||||||
data["environment_data"] = list()
|
data["environment_data"] = list()
|
||||||
var/pressure = environment.return_pressure()
|
var/pressure = environment?.return_pressure()
|
||||||
cur_tlv = TLV["pressure"]
|
cur_tlv = TLV["pressure"]
|
||||||
data["environment_data"] += list(list(
|
data["environment_data"] += list(list(
|
||||||
"name" = "Pressure",
|
"name" = "Pressure",
|
||||||
@@ -296,7 +296,7 @@
|
|||||||
"unit" = "kPa",
|
"unit" = "kPa",
|
||||||
"danger_level" = cur_tlv.get_danger_level(pressure)
|
"danger_level" = cur_tlv.get_danger_level(pressure)
|
||||||
))
|
))
|
||||||
var/temperature = environment.return_temperature()
|
var/temperature = environment?.return_temperature()
|
||||||
cur_tlv = TLV["temperature"]
|
cur_tlv = TLV["temperature"]
|
||||||
data["environment_data"] += list(list(
|
data["environment_data"] += list(list(
|
||||||
"name" = "Temperature",
|
"name" = "Temperature",
|
||||||
@@ -304,9 +304,9 @@
|
|||||||
"unit" = "K ([round(temperature - T0C, 0.1)]C)",
|
"unit" = "K ([round(temperature - T0C, 0.1)]C)",
|
||||||
"danger_level" = cur_tlv.get_danger_level(temperature)
|
"danger_level" = cur_tlv.get_danger_level(temperature)
|
||||||
))
|
))
|
||||||
var/total_moles = environment.total_moles()
|
var/total_moles = environment?.total_moles()
|
||||||
var/partial_pressure = R_IDEAL_GAS_EQUATION * environment.return_temperature() / environment.return_volume()
|
var/partial_pressure = R_IDEAL_GAS_EQUATION * environment?.return_temperature() / environment?.return_volume()
|
||||||
for(var/gas_id in environment.get_gases())
|
for(var/gas_id in environment?.get_gases())
|
||||||
if(!(gas_id in TLV)) // We're not interested in this gas, it seems.
|
if(!(gas_id in TLV)) // We're not interested in this gas, it seems.
|
||||||
continue
|
continue
|
||||||
cur_tlv = TLV[gas_id]
|
cur_tlv = TLV[gas_id]
|
||||||
@@ -658,13 +658,16 @@
|
|||||||
if((stat & (NOPOWER|BROKEN)) || shorted)
|
if((stat & (NOPOWER|BROKEN)) || shorted)
|
||||||
return
|
return
|
||||||
|
|
||||||
var/turf/location = get_turf(src)
|
if(!isopenturf(get_turf(src)))
|
||||||
if(!location)
|
|
||||||
return
|
return
|
||||||
|
|
||||||
var/datum/tlv/cur_tlv
|
var/datum/tlv/cur_tlv
|
||||||
|
|
||||||
var/datum/gas_mixture/environment = location.return_air()
|
var/datum/gas_mixture/environment = return_air()
|
||||||
|
|
||||||
|
if(!environment)
|
||||||
|
return
|
||||||
|
|
||||||
var/partial_pressure = R_IDEAL_GAS_EQUATION * environment.return_temperature() / environment.return_volume()
|
var/partial_pressure = R_IDEAL_GAS_EQUATION * environment.return_temperature() / environment.return_volume()
|
||||||
|
|
||||||
cur_tlv = TLV["pressure"]
|
cur_tlv = TLV["pressure"]
|
||||||
|
|||||||
@@ -128,6 +128,10 @@
|
|||||||
|
|
||||||
var/datum/gas_mixture/air_contents = airs[1]
|
var/datum/gas_mixture/air_contents = airs[1]
|
||||||
var/datum/gas_mixture/environment = loc.return_air()
|
var/datum/gas_mixture/environment = loc.return_air()
|
||||||
|
|
||||||
|
if(!environment)
|
||||||
|
return
|
||||||
|
|
||||||
var/environment_pressure = environment.return_pressure()
|
var/environment_pressure = environment.return_pressure()
|
||||||
var/environment_moles = environment.total_moles()
|
var/environment_moles = environment.total_moles()
|
||||||
var/last_moles_real_added = environment_moles - last_moles
|
var/last_moles_real_added = environment_moles - last_moles
|
||||||
|
|||||||
@@ -150,6 +150,9 @@
|
|||||||
var/datum/gas_mixture/environment = tile.return_air()
|
var/datum/gas_mixture/environment = tile.return_air()
|
||||||
var/datum/gas_mixture/air_contents = airs[1]
|
var/datum/gas_mixture/air_contents = airs[1]
|
||||||
|
|
||||||
|
if(!environment)
|
||||||
|
return FALSE
|
||||||
|
|
||||||
if(air_contents.return_pressure() >= 50 * ONE_ATMOSPHERE || !islist(filter_types))
|
if(air_contents.return_pressure() >= 50 * ONE_ATMOSPHERE || !islist(filter_types))
|
||||||
return FALSE
|
return FALSE
|
||||||
|
|
||||||
|
|||||||
@@ -422,14 +422,13 @@
|
|||||||
var/datum/gas_mixture/env = L.return_air()
|
var/datum/gas_mixture/env = L.return_air()
|
||||||
var/pressure_delta = (SEND_PRESSURE*1.01) - air_contents.return_pressure()
|
var/pressure_delta = (SEND_PRESSURE*1.01) - air_contents.return_pressure()
|
||||||
|
|
||||||
if(env.return_temperature() > 0)
|
if(env?.return_temperature() > 0)
|
||||||
var/transfer_moles = 0.1 * pressure_delta*air_contents.return_volume()/(env.return_temperature() * R_IDEAL_GAS_EQUATION)
|
var/transfer_moles = 0.1 * pressure_delta*air_contents.return_volume()/(env.return_temperature() * R_IDEAL_GAS_EQUATION)
|
||||||
|
|
||||||
//Actually transfer the gas
|
//Actually transfer the gas
|
||||||
var/datum/gas_mixture/removed = env.remove(transfer_moles)
|
var/datum/gas_mixture/removed = env.remove(transfer_moles)
|
||||||
air_contents.merge(removed)
|
air_contents.merge(removed)
|
||||||
|
|
||||||
|
|
||||||
//if full enough, switch to ready mode
|
//if full enough, switch to ready mode
|
||||||
if(air_contents.return_pressure() >= SEND_PRESSURE)
|
if(air_contents.return_pressure() >= SEND_PRESSURE)
|
||||||
full_pressure = TRUE
|
full_pressure = TRUE
|
||||||
|
|||||||
Reference in New Issue
Block a user