Changes all appropriate instances of toxins to phoron

This commit is contained in:
Ravensdale
2014-04-10 15:11:26 -07:00
parent c2667a604b
commit 1d6655850f
84 changed files with 841 additions and 841 deletions

View File

@@ -84,8 +84,8 @@ Filter types:
switch(filter_type)
if(0) //removing hydrocarbons
filtered_out.toxins = removed.toxins
removed.toxins = 0
filtered_out.phoron = removed.phoron
removed.phoron = 0
if(removed.trace_gases.len>0)
for(var/datum/gas/trace_gas in removed.trace_gases)

View File

@@ -70,7 +70,7 @@
"scrubbing" = scrubbing,
"panic" = panic,
"filter_co2" = scrub_CO2,
"filter_toxins" = scrub_Toxins,
"filter_phoron" = scrub_Toxins,
"filter_n2o" = scrub_N2O,
"sigtype" = "status"
)
@@ -104,7 +104,7 @@
var/datum/gas_mixture/environment = loc.return_air()
if(scrubbing)
if((environment.toxins>0) || (environment.carbon_dioxide>0) || (environment.trace_gases.len>0))
if((environment.phoron>0) || (environment.carbon_dioxide>0) || (environment.trace_gases.len>0))
var/transfer_moles = min(1, volume_rate/environment.volume)*environment.total_moles()
//Take a gas sample
@@ -116,8 +116,8 @@
var/datum/gas_mixture/filtered_out = new
filtered_out.temperature = removed.temperature
if(scrub_Toxins)
filtered_out.toxins = removed.toxins
removed.toxins = 0
filtered_out.phoron = removed.phoron
removed.phoron = 0
if(scrub_CO2)
filtered_out.carbon_dioxide = removed.carbon_dioxide
removed.carbon_dioxide = 0

View File

@@ -82,7 +82,7 @@ datum/pipe_network
air_transient.oxygen = 0
air_transient.nitrogen = 0
air_transient.toxins = 0
air_transient.phoron = 0
air_transient.carbon_dioxide = 0
@@ -96,7 +96,7 @@ datum/pipe_network
air_transient.oxygen += gas.oxygen
air_transient.nitrogen += gas.nitrogen
air_transient.toxins += gas.toxins
air_transient.phoron += gas.phoron
air_transient.carbon_dioxide += gas.carbon_dioxide
if(gas.trace_gases.len)
@@ -124,7 +124,7 @@ datum/pipe_network
for(var/datum/gas_mixture/gas in gases)
gas.oxygen = air_transient.oxygen*gas.volume/air_transient.volume
gas.nitrogen = air_transient.nitrogen*gas.volume/air_transient.volume
gas.toxins = air_transient.toxins*gas.volume/air_transient.volume
gas.phoron = air_transient.phoron*gas.volume/air_transient.volume
gas.carbon_dioxide = air_transient.carbon_dioxide*gas.volume/air_transient.volume
gas.temperature = air_transient.temperature
@@ -151,7 +151,7 @@ proc/equalize_gases(datum/gas_mixture/list/gases)
var/total_oxygen = 0
var/total_nitrogen = 0
var/total_toxins = 0
var/total_phoron = 0
var/total_carbon_dioxide = 0
var/list/total_trace_gases = list()
@@ -164,7 +164,7 @@ proc/equalize_gases(datum/gas_mixture/list/gases)
total_oxygen += gas.oxygen
total_nitrogen += gas.nitrogen
total_toxins += gas.toxins
total_phoron += gas.phoron
total_carbon_dioxide += gas.carbon_dioxide
if(gas.trace_gases.len)
@@ -188,7 +188,7 @@ proc/equalize_gases(datum/gas_mixture/list/gases)
for(var/datum/gas_mixture/gas in gases)
gas.oxygen = total_oxygen*gas.volume/total_volume
gas.nitrogen = total_nitrogen*gas.volume/total_volume
gas.toxins = total_toxins*gas.volume/total_volume
gas.phoron = total_phoron*gas.volume/total_volume
gas.carbon_dioxide = total_carbon_dioxide*gas.volume/total_volume
gas.temperature = temperature

View File

@@ -39,7 +39,7 @@ datum/pipeline
member.air_temporary.oxygen = air.oxygen*member.volume/air.volume
member.air_temporary.nitrogen = air.nitrogen*member.volume/air.volume
member.air_temporary.toxins = air.toxins*member.volume/air.volume
member.air_temporary.phoron = air.phoron*member.volume/air.volume
member.air_temporary.carbon_dioxide = air.carbon_dioxide*member.volume/air.volume
member.air_temporary.temperature = air.temperature

View File

@@ -884,7 +884,7 @@ obj/machinery/atmospherics/pipe/tank/carbon_dioxide
..()
obj/machinery/atmospherics/pipe/tank/toxins
obj/machinery/atmospherics/pipe/tank/phoron
icon = 'icons/obj/atmospherics/orange_pipe_tank.dmi'
name = "Pressure Tank (Phoron)"
@@ -893,7 +893,7 @@ obj/machinery/atmospherics/pipe/tank/toxins
air_temporary.volume = volume
air_temporary.temperature = T20C
air_temporary.toxins = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature)
air_temporary.phoron = (25*ONE_ATMOSPHERE)*(air_temporary.volume)/(R_IDEAL_GAS_EQUATION*air_temporary.temperature)
..()
@@ -1005,7 +1005,7 @@ obj/machinery/atmospherics/pipe/tank/attackby(var/obj/item/weapon/W as obj, var/
var/o2_concentration = parent.air.oxygen/total_moles
var/n2_concentration = parent.air.nitrogen/total_moles
var/co2_concentration = parent.air.carbon_dioxide/total_moles
var/phoron_concentration = parent.air.toxins/total_moles
var/phoron_concentration = parent.air.phoron/total_moles
var/unknown_concentration = 1-(o2_concentration+n2_concentration+co2_concentration+phoron_concentration)

View File

@@ -4,7 +4,7 @@ Deuterium-deuterium fusion : 40 x 10^7 K
Deuterium-tritium fusion: 4.5 x 10^7 K
*/
//#DEFINE MAX_STORED_ENERGY (held_phoron.toxins * held_phoron.toxins * SPECIFIC_HEAT_TOXIN)
//#DEFINE MAX_STORED_ENERGY (held_phoron.phoron * held_phoron.phoron * SPECIFIC_HEAT_TOXIN)
/obj/effect/rust_em_field
name = "EM Field"
@@ -140,19 +140,19 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
//the amount of phoron pulled in each update is relative to the field strength, with 50T (max field strength) = 100% of area covered by the field
//at minimum strength, 0.25% of the field volume is pulled in per update (?)
//have a max of 1000 moles suspended
if(held_phoron.toxins < transfer_ratio * 1000)
if(held_phoron.phoron < transfer_ratio * 1000)
var/moles_covered = environment.return_pressure()*volume_covered/(environment.temperature * R_IDEAL_GAS_EQUATION)
//world << "\blue moles_covered: [moles_covered]"
//
var/datum/gas_mixture/gas_covered = environment.remove(moles_covered)
var/datum/gas_mixture/phoron_captured = new /datum/gas_mixture()
//
phoron_captured.toxins = round(gas_covered.toxins * transfer_ratio)
//world << "\blue[phoron_captured.toxins] moles of phoron captured"
phoron_captured.phoron = round(gas_covered.phoron * transfer_ratio)
//world << "\blue[phoron_captured.phoron] moles of phoron captured"
phoron_captured.temperature = gas_covered.temperature
phoron_captured.update_values()
//
gas_covered.toxins -= phoron_captured.toxins
gas_covered.phoron -= phoron_captured.phoron
gas_covered.update_values()
//
held_phoron.merge(phoron_captured)
@@ -171,15 +171,15 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
//change held phoron temp according to energy levels
//SPECIFIC_HEAT_TOXIN
if(mega_energy > 0 && held_phoron.toxins)
if(mega_energy > 0 && held_phoron.phoron)
var/heat_capacity = held_phoron.heat_capacity()//200 * number of phoron moles
if(heat_capacity > 0.0003) //formerly MINIMUM_HEAT_CAPACITY
held_phoron.temperature = (heat_capacity + mega_energy * 35000)/heat_capacity
//if there is too much phoron in the field, lose some
/*if( held_phoron.toxins > (MOLES_CELLSTANDARD * 7) * (50 / field_strength) )
/*if( held_phoron.phoron > (MOLES_CELLSTANDARD * 7) * (50 / field_strength) )
LosePhoron()*/
if(held_phoron.toxins > 1)
if(held_phoron.phoron > 1)
//lose a random amount of phoron back into the air, increased by the field strength (want to switch this over to frequency eventually)
var/loss_ratio = rand() * (0.05 + (0.05 * 50 / field_strength))
//world << "lost [loss_ratio*100]% of held phoron"
@@ -187,16 +187,16 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
var/datum/gas_mixture/phoron_lost = new
phoron_lost.temperature = held_phoron.temperature
//
phoron_lost.toxins = held_phoron.toxins * loss_ratio
phoron_lost.phoron = held_phoron.phoron * loss_ratio
//phoron_lost.update_values()
held_phoron.toxins -= held_phoron.toxins * loss_ratio
held_phoron.phoron -= held_phoron.phoron * loss_ratio
//held_phoron.update_values()
//
environment.merge(phoron_lost)
radiation += loss_ratio * mega_energy * 0.1
mega_energy -= loss_ratio * mega_energy * 0.1
else
held_phoron.toxins = 0
held_phoron.phoron = 0
//held_phoron.update_values()
//handle some reactants formatting

View File

@@ -2,7 +2,7 @@
var/obj/item/weapon/card/id/wear_id = null // Fix for station bounced radios -- Skie
var/oxygen_alert = 0
var/toxins_alert = 0
var/phoron_alert = 0
var/fire_alert = 0
var/temperature_alert = 0
@@ -455,7 +455,7 @@
if(src.pullin) src.pullin.icon_state = "pull[src.pulling ? 1 : 0]"
if (src.toxin) src.toxin.icon_state = "tox[src.toxins_alert ? 1 : 0]"
if (src.toxin) src.toxin.icon_state = "tox[src.phoron_alert ? 1 : 0]"
if (src.oxygen) src.oxygen.icon_state = "oxy[src.oxygen_alert ? 1 : 0]"
if (src.fire) src.fire.icon_state = "fire[src.fire_alert ? 1 : 0]"
//NOTE: the alerts dont reset when youre out of danger. dont blame me,

View File

@@ -282,7 +282,7 @@ siphoning
Carbon Dioxide
<A href='?src=\ref[src];alarm=\ref[current];id_tag=[id_tag];command=co2_scrub;val=[!data["filter_co2"]]'>[data["filter_co2"]?"on":"off"]</A>;
Toxins
<A href='?src=\ref[src];alarm=\ref[current];id_tag=[id_tag];command=tox_scrub;val=[!data["filter_toxins"]]'>[data["filter_toxins"]?"on":"off"]</A>;
<A href='?src=\ref[src];alarm=\ref[current];id_tag=[id_tag];command=tox_scrub;val=[!data["filter_phoron"]]'>[data["filter_phoron"]?"on":"off"]</A>;
Nitrous Oxide
<A href='?src=\ref[src];alarm=\ref[current];id_tag=[id_tag];command=n2o_scrub;val=[!data["filter_n2o"]]'>[data["filter_n2o"]?"on":"off"]</A>
<BR>

View File

@@ -193,12 +193,12 @@
return
/obj/structure/closet/wardrobe/toxins_white
name = "toxins wardrobe"
/obj/structure/closet/wardrobe/science_white
name = "science wardrobe"
icon_state = "white"
icon_closed = "white"
/obj/structure/closet/wardrobe/toxins_white/New()
/obj/structure/closet/wardrobe/science_white/New()
new /obj/item/clothing/under/rank/scientist(src)
new /obj/item/clothing/under/rank/scientist(src)
new /obj/item/clothing/under/rank/scientist(src)

View File

@@ -340,7 +340,7 @@
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
new /obj/item/weapon/storage/box(BPK)
new /obj/item/weapon/pen(src)
new /obj/item/device/pda/toxins(src)
new /obj/item/device/pda/science(src)
new /obj/item/weapon/tank/oxygen(src)
new /obj/item/clothing/mask/gas(src)
new /obj/item/clothing/suit/storage/labcoat/science(src)
@@ -360,7 +360,7 @@
new /obj/item/device/radio/headset/headset_medsci(src)
new /obj/item/clothing/under/rank/chemist(src)
new /obj/item/clothing/shoes/white(src)
new /obj/item/device/pda/toxins(src)
new /obj/item/device/pda/science(src)
new /obj/item/clothing/suit/storage/labcoat/chemist(src)
/obj/item/wardrobe/hos

View File

@@ -246,8 +246,8 @@
list("bomb", "explosive", "toxin", "phoron"),
list(
"Do you worry about bombs often?",
"Do you work in toxins?",
"Do you find it odd to worry about bombs on a toxins research vessel?")),
"Do you work in science?",
"Do you find it odd to worry about bombs on a science research vessel?")),
new/datum/text_parser/keyword(
list("work", "job", "head", "staff", "transen"),
list(

View File

@@ -239,14 +239,14 @@ proc/ShareRatio(datum/gas_mixture/A, datum/gas_mixture/B, connecting_tiles)
full_oxy = A.oxygen * size
full_nitro = A.nitrogen * size
full_co2 = A.carbon_dioxide * size
full_phoron = A.toxins * size
full_phoron = A.phoron * size
full_heat_capacity = A.heat_capacity() * size
s_full_oxy = B.oxygen * share_size
s_full_nitro = B.nitrogen * share_size
s_full_co2 = B.carbon_dioxide * share_size
s_full_phoron = B.toxins * share_size
s_full_phoron = B.phoron * share_size
s_full_heat_capacity = B.heat_capacity() * share_size
@@ -265,14 +265,14 @@ proc/ShareRatio(datum/gas_mixture/A, datum/gas_mixture/B, connecting_tiles)
A.oxygen = max(0, (A.oxygen - oxy_avg) * (1-ratio) + oxy_avg )
A.nitrogen = max(0, (A.nitrogen - nit_avg) * (1-ratio) + nit_avg )
A.carbon_dioxide = max(0, (A.carbon_dioxide - co2_avg) * (1-ratio) + co2_avg )
A.toxins = max(0, (A.toxins - phoron_avg) * (1-ratio) + phoron_avg )
A.phoron = max(0, (A.phoron - phoron_avg) * (1-ratio) + phoron_avg )
A.temperature = max(0, (A.temperature - temp_avg) * (1-ratio) + temp_avg )
B.oxygen = max(0, (B.oxygen - oxy_avg) * (1-ratio) + oxy_avg )
B.nitrogen = max(0, (B.nitrogen - nit_avg) * (1-ratio) + nit_avg )
B.carbon_dioxide = max(0, (B.carbon_dioxide - co2_avg) * (1-ratio) + co2_avg )
B.toxins = max(0, (B.toxins - phoron_avg) * (1-ratio) + phoron_avg )
B.phoron = max(0, (B.phoron - phoron_avg) * (1-ratio) + phoron_avg )
B.temperature = max(0, (B.temperature - temp_avg) * (1-ratio) + temp_avg )
@@ -328,7 +328,7 @@ proc/ShareSpace(datum/gas_mixture/A, list/unsimulated_tiles, dbg_output)
unsim_oxygen = avg_unsim.oxygen
unsim_co2 = avg_unsim.carbon_dioxide
unsim_nitrogen = avg_unsim.nitrogen
unsim_phoron = avg_unsim.toxins
unsim_phoron = avg_unsim.phoron
unsim_temperature = avg_unsim.temperature
share_size = max(1, max(size + 3, 1) + avg_unsim.group_multiplier)
tileslen = avg_unsim.group_multiplier
@@ -352,7 +352,7 @@ proc/ShareSpace(datum/gas_mixture/A, list/unsimulated_tiles, dbg_output)
unsim_oxygen += T.oxygen
unsim_co2 += T.carbon_dioxide
unsim_nitrogen += T.nitrogen
unsim_phoron += T.toxins
unsim_phoron += T.phoron
unsim_temperature += T.temperature/unsimulated_tiles.len
//These values require adjustment in order to properly represent a room of the specified size.
@@ -375,7 +375,7 @@ proc/ShareSpace(datum/gas_mixture/A, list/unsimulated_tiles, dbg_output)
full_oxy = A.oxygen * size
full_nitro = A.nitrogen * size
full_co2 = A.carbon_dioxide * size
full_phoron = A.toxins * size
full_phoron = A.phoron * size
full_heat_capacity = A.heat_capacity() * size
@@ -399,7 +399,7 @@ proc/ShareSpace(datum/gas_mixture/A, list/unsimulated_tiles, dbg_output)
A.oxygen = max(0, (A.oxygen - oxy_avg) * (1 - ratio) + oxy_avg )
A.nitrogen = max(0, (A.nitrogen - nit_avg) * (1 - ratio) + nit_avg )
A.carbon_dioxide = max(0, (A.carbon_dioxide - co2_avg) * (1 - ratio) + co2_avg )
A.toxins = max(0, (A.toxins - phoron_avg) * (1 - ratio) + phoron_avg )
A.phoron = max(0, (A.phoron - phoron_avg) * (1 - ratio) + phoron_avg )
A.temperature = max(TCMB, (A.temperature - temp_avg) * (1 - ratio) + temp_avg )

View File

@@ -312,7 +312,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
/datum/controller/air_system/proc/has_same_air(turf/A, turf/B)
if(A.oxygen != B.oxygen) return 0
if(A.nitrogen != B.nitrogen) return 0
if(A.toxins != B.toxins) return 0
if(A.phoron != B.phoron) return 0
if(A.carbon_dioxide != B.carbon_dioxide) return 0
if(A.temperature != B.temperature) return 0
return 1

View File

@@ -19,7 +19,7 @@ client/proc/Zone_Info(turf/T as null|turf)
mob << "No zone here."
var/datum/gas_mixture/mix = T.return_air()
mob << "[mix.return_pressure()] kPa [mix.temperature]C"
mob << "O2: [mix.oxygen] N2: [mix.nitrogen] CO2: [mix.carbon_dioxide] TX: [mix.toxins]"
mob << "O2: [mix.oxygen] N2: [mix.nitrogen] CO2: [mix.carbon_dioxide] TX: [mix.phoron]"
else
if(zone_debug_images)
for(var/zone in zone_debug_images)
@@ -105,7 +105,7 @@ client/proc/Test_ZAS_Connection(var/turf/simulated/T as turf)
client << "<u>Zone Air Contents</u>"
client << "Oxygen: [air.oxygen]"
client << "Nitrogen: [air.nitrogen]"
client << "Phoron: [air.toxins]"
client << "Phoron: [air.phoron]"
client << "Carbon Dioxide: [air.carbon_dioxide]"
client << "Temperature: [air.temperature] K"
client << "Heat Energy: [air.temperature * air.heat_capacity()] J"

View File

@@ -77,8 +77,8 @@ turf/simulated/hotspot_expose(exposed_temperature, exposed_volume, soh)
//the amount of moles might get to low for some functions to catch them and thus result in wonky behaviour
if(air_contents.oxygen < 0.1)
air_contents.oxygen = 0
if(air_contents.toxins < 0.1)
air_contents.toxins = 0
if(air_contents.phoron < 0.1)
air_contents.phoron = 0
if(fuel)
if(fuel.moles < 0.1)
air_contents.trace_gases.Remove(fuel)
@@ -192,7 +192,7 @@ datum/gas_mixture/proc/zburn(obj/effect/decal/cleanable/liquid_fuel/liquid, forc
var/total_fuel = 0
var/datum/gas/volatile_fuel/fuel = locate() in trace_gases
total_fuel += toxins
total_fuel += phoron
if(fuel)
//Volatile Fuel
@@ -227,9 +227,9 @@ datum/gas_mixture/proc/zburn(obj/effect/decal/cleanable/liquid_fuel/liquid, forc
//remove and add gasses as calculated
oxygen -= min(oxygen, total_oxygen * used_reactants_ratio )
toxins -= min(toxins, (toxins * used_fuel_ratio * used_reactants_ratio ) * 3)
if(toxins < 0)
toxins = 0
phoron -= min(phoron, (phoron * used_fuel_ratio * used_reactants_ratio ) * 3)
if(phoron < 0)
phoron = 0
carbon_dioxide += max(2 * total_fuel, 0)
@@ -254,10 +254,10 @@ datum/gas_mixture/proc/check_recombustability(obj/effect/decal/cleanable/liquid_
var/datum/gas/volatile_fuel/fuel = locate() in trace_gases
if(oxygen && (toxins || fuel || liquid))
if(oxygen && (phoron || fuel || liquid))
if(liquid)
return 1
if(toxins >= 0.1)
if(phoron >= 0.1)
return 1
if(fuel && fuel.moles >= 0.1)
return 1
@@ -269,10 +269,10 @@ datum/gas_mixture/proc/check_combustability(obj/effect/decal/cleanable/liquid_fu
var/datum/gas/volatile_fuel/fuel = locate() in trace_gases
if(oxygen && (toxins || fuel || liquid))
if(oxygen && (phoron || fuel || liquid))
if(liquid)
return 1
if (toxins >= 0.1)
if (phoron >= 0.1)
return 1
if(fuel && fuel.moles >= 0.1)
return 1
@@ -288,7 +288,7 @@ datum/gas_mixture/proc/calculate_firelevel(obj/effect/decal/cleanable/liquid_fue
if(check_recombustability(liquid))
total_fuel += toxins
total_fuel += phoron
if(liquid)
total_fuel += liquid.amount

View File

@@ -111,7 +111,7 @@ obj/var/contaminated = 0
if(vsc.plc.GENETIC_CORRUPTION)
if(rand(1,10000) < vsc.plc.GENETIC_CORRUPTION)
randmutb(src)
src << "\red High levels of toxins cause you to spontaneously mutate."
src << "\red High levels of phoron cause you to spontaneously mutate."
domutcheck(src,null)
@@ -158,6 +158,6 @@ turf/Entered(obj/item/I)
var/datum/gas_mixture/env = return_air(1)
if(!env)
return
if(env.toxins > MOLES_PHORON_VISIBLE + 1)
if(env.phoron > MOLES_PHORON_VISIBLE + 1)
if(I.can_contaminate())
I.contaminate()

View File

@@ -183,7 +183,7 @@
GM.oxygen = oxygen
GM.carbon_dioxide = carbon_dioxide
GM.nitrogen = nitrogen
GM.toxins = toxins
GM.phoron = phoron
GM.temperature = temperature
GM.update_values()
@@ -193,12 +193,12 @@
/turf/remove_air(amount as num)
var/datum/gas_mixture/GM = new
var/sum = oxygen + carbon_dioxide + nitrogen + toxins
var/sum = oxygen + carbon_dioxide + nitrogen + phoron
if(sum>0)
GM.oxygen = (oxygen/sum)*amount
GM.carbon_dioxide = (carbon_dioxide/sum)*amount
GM.nitrogen = (nitrogen/sum)*amount
GM.toxins = (toxins/sum)*amount
GM.phoron = (phoron/sum)*amount
GM.temperature = temperature
GM.update_values()
@@ -231,7 +231,7 @@
/turf/proc/make_air()
air = new/datum/gas_mixture
air.temperature = temperature
air.adjust(oxygen, carbon_dioxide, nitrogen, toxins)
air.adjust(oxygen, carbon_dioxide, nitrogen, phoron)
air.group_multiplier = 1
air.volume = CELL_VOLUME

View File

@@ -130,7 +130,7 @@ Class Procs:
/zone/proc/dbg_data(mob/M)
M << name
M << "O2: [air.oxygen] N2: [air.nitrogen] CO2: [air.carbon_dioxide] P: [air.toxins]"
M << "O2: [air.oxygen] N2: [air.nitrogen] CO2: [air.carbon_dioxide] P: [air.phoron]"
M << "P: [air.return_pressure()] kPa V: [air.volume]L T: [air.temperature]<5D>K ([air.temperature - T0C]<5D>C)"
M << "O2 per N2: [(air.nitrogen ? air.oxygen/air.nitrogen : "N/A")] Moles: [air.total_moles]"
M << "Simulated: [contents.len] ([air.group_multiplier])"

View File

@@ -7,8 +7,8 @@ What are the archived variables for?
#define SPECIFIC_HEAT_TOXIN 200
#define SPECIFIC_HEAT_AIR 20
#define SPECIFIC_HEAT_CDO 30
#define HEAT_CAPACITY_CALCULATION(oxygen,carbon_dioxide,nitrogen,toxins) \
max(0, carbon_dioxide * SPECIFIC_HEAT_CDO + (oxygen + nitrogen) * SPECIFIC_HEAT_AIR + toxins * SPECIFIC_HEAT_TOXIN)
#define HEAT_CAPACITY_CALCULATION(oxygen,carbon_dioxide,nitrogen,phoron) \
max(0, carbon_dioxide * SPECIFIC_HEAT_CDO + (oxygen + nitrogen) * SPECIFIC_HEAT_AIR + phoron * SPECIFIC_HEAT_TOXIN)
#define MINIMUM_HEAT_CAPACITY 0.0003
#define QUANTIZE(variable) (round(variable,0.0001))
@@ -45,7 +45,7 @@ What are the archived variables for?
var/oxygen = 0 //Holds the "moles" of each of the four gases.
var/carbon_dioxide = 0
var/nitrogen = 0
var/toxins = 0
var/phoron = 0
var/total_moles = 0 //Updated when a reaction occurs.
@@ -64,7 +64,7 @@ What are the archived variables for?
var/tmp/oxygen_archived //These are variables for use with the archived data
var/tmp/carbon_dioxide_archived
var/tmp/nitrogen_archived
var/tmp/toxins_archived
var/tmp/phoron_archived
var/tmp/temperature_archived
@@ -85,7 +85,7 @@ What are the archived variables for?
oxygen = max(0, oxygen + o2)
carbon_dioxide = max(0, carbon_dioxide + co2)
nitrogen = max(0, nitrogen + n2)
toxins = max(0, toxins + tx)
phoron = max(0, phoron + tx)
//handle trace gasses
for(var/datum/gas/G in traces)
@@ -119,7 +119,7 @@ What are the archived variables for?
//Inputs: None
//Outputs: Heat capacity
var/heat_capacity = HEAT_CAPACITY_CALCULATION(oxygen,carbon_dioxide,nitrogen,toxins)
var/heat_capacity = HEAT_CAPACITY_CALCULATION(oxygen,carbon_dioxide,nitrogen,phoron)
if(trace_gases.len)
for(var/datum/gas/trace_gas in trace_gases)
@@ -133,7 +133,7 @@ What are the archived variables for?
//Inputs: None
//Outputs: Archived heat capacity
var/heat_capacity_archived = HEAT_CAPACITY_CALCULATION(oxygen_archived,carbon_dioxide_archived,nitrogen_archived,toxins_archived)
var/heat_capacity_archived = HEAT_CAPACITY_CALCULATION(oxygen_archived,carbon_dioxide_archived,nitrogen_archived,phoron_archived)
if(trace_gases.len)
for(var/datum/gas/trace_gas in trace_gases)
@@ -143,7 +143,7 @@ What are the archived variables for?
/datum/gas_mixture/proc/total_moles()
return total_moles
/*var/moles = oxygen + carbon_dioxide + nitrogen + toxins
/*var/moles = oxygen + carbon_dioxide + nitrogen + phoron
if(trace_gases.len)
for(var/datum/gas/trace_gas in trace_gases)
@@ -187,7 +187,7 @@ What are the archived variables for?
//Inputs: None
//Outputs: None
total_moles = oxygen + carbon_dioxide + nitrogen + toxins
total_moles = oxygen + carbon_dioxide + nitrogen + phoron
if(trace_gases.len)
for(var/datum/gas/trace_gas in trace_gases)
@@ -206,7 +206,7 @@ What are the archived variables for?
//Outputs: 1 if graphic changed, 0 if unchanged
graphic = 0
if(toxins > MOLES_PHORON_VISIBLE)
if(phoron > MOLES_PHORON_VISIBLE)
graphic = 1
else if(length(trace_gases))
var/datum/gas/sleeping_agent = locate(/datum/gas/sleeping_agent) in trace_gases
@@ -305,7 +305,7 @@ What are the archived variables for?
oxygen_archived = oxygen
carbon_dioxide_archived = carbon_dioxide
nitrogen_archived = nitrogen
toxins_archived = toxins
phoron_archived = phoron
if(trace_gases.len)
for(var/datum/gas/trace_gas in trace_gases)
@@ -329,7 +329,7 @@ What are the archived variables for?
if(((giver.oxygen > MINIMUM_AIR_TO_SUSPEND) && (giver.oxygen >= oxygen*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((giver.carbon_dioxide > MINIMUM_AIR_TO_SUSPEND) && (giver.carbon_dioxide >= carbon_dioxide*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((giver.nitrogen > MINIMUM_AIR_TO_SUSPEND) && (giver.nitrogen >= nitrogen*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((giver.toxins > MINIMUM_AIR_TO_SUSPEND) && (giver.toxins >= toxins*MINIMUM_AIR_RATIO_TO_SUSPEND)))
|| ((giver.phoron > MINIMUM_AIR_TO_SUSPEND) && (giver.phoron >= phoron*MINIMUM_AIR_RATIO_TO_SUSPEND)))
return 0
if(abs(giver.temperature - temperature) > MINIMUM_TEMPERATURE_DELTA_TO_SUSPEND)
return 0
@@ -362,12 +362,12 @@ What are the archived variables for?
oxygen += giver.oxygen*giver.group_multiplier/group_multiplier
carbon_dioxide += giver.carbon_dioxide*giver.group_multiplier/group_multiplier
nitrogen += giver.nitrogen*giver.group_multiplier/group_multiplier
toxins += giver.toxins*giver.group_multiplier/group_multiplier
phoron += giver.phoron*giver.group_multiplier/group_multiplier
else
oxygen += giver.oxygen
carbon_dioxide += giver.carbon_dioxide
nitrogen += giver.nitrogen
toxins += giver.toxins
phoron += giver.phoron
if(giver.trace_gases.len)
for(var/datum/gas/trace_gas in giver.trace_gases)
@@ -399,12 +399,12 @@ What are the archived variables for?
removed.oxygen = QUANTIZE((oxygen/sum)*amount)
removed.nitrogen = QUANTIZE((nitrogen/sum)*amount)
removed.carbon_dioxide = QUANTIZE((carbon_dioxide/sum)*amount)
removed.toxins = QUANTIZE(((toxins/sum)*amount))
removed.phoron = QUANTIZE(((phoron/sum)*amount))
oxygen -= removed.oxygen/group_multiplier
nitrogen -= removed.nitrogen/group_multiplier
carbon_dioxide -= removed.carbon_dioxide/group_multiplier
toxins -= removed.toxins/group_multiplier
phoron -= removed.phoron/group_multiplier
if(trace_gases.len)
for(var/datum/gas/trace_gas in trace_gases)
@@ -436,12 +436,12 @@ What are the archived variables for?
removed.oxygen = QUANTIZE(oxygen*ratio)
removed.nitrogen = QUANTIZE(nitrogen*ratio)
removed.carbon_dioxide = QUANTIZE(carbon_dioxide*ratio)
removed.toxins = QUANTIZE(toxins*ratio)
removed.phoron = QUANTIZE(phoron*ratio)
oxygen -= removed.oxygen/group_multiplier
nitrogen -= removed.nitrogen/group_multiplier
carbon_dioxide -= removed.carbon_dioxide/group_multiplier
toxins -= removed.toxins/group_multiplier
phoron -= removed.phoron/group_multiplier
if(trace_gases.len)
for(var/datum/gas/trace_gas in trace_gases)
@@ -480,7 +480,7 @@ What are the archived variables for?
oxygen = sample.oxygen
carbon_dioxide = sample.carbon_dioxide
nitrogen = sample.nitrogen
toxins = sample.toxins
phoron = sample.phoron
total_moles = sample.total_moles()
trace_gases.len=null
@@ -508,14 +508,14 @@ What are the archived variables for?
var/delta_oxygen = QUANTIZE(oxygen_archived - sharer.oxygen_archived)/TRANSFER_FRACTION
var/delta_carbon_dioxide = QUANTIZE(carbon_dioxide_archived - sharer.carbon_dioxide_archived)/TRANSFER_FRACTION
var/delta_nitrogen = QUANTIZE(nitrogen_archived - sharer.nitrogen_archived)/TRANSFER_FRACTION
var/delta_toxins = QUANTIZE(toxins_archived - sharer.toxins_archived)/TRANSFER_FRACTION
var/delta_phoron = QUANTIZE(phoron_archived - sharer.phoron_archived)/TRANSFER_FRACTION
var/delta_temperature = (temperature_archived - sharer.temperature_archived)
if(((abs(delta_oxygen) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_oxygen) >= oxygen_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((abs(delta_carbon_dioxide) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_carbon_dioxide) >= carbon_dioxide_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((abs(delta_nitrogen) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_nitrogen) >= nitrogen_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((abs(delta_toxins) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_toxins) >= toxins_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)))
|| ((abs(delta_phoron) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_phoron) >= phoron_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)))
return 0
if(abs(delta_temperature) > MINIMUM_TEMPERATURE_DELTA_TO_SUSPEND)
@@ -540,7 +540,7 @@ What are the archived variables for?
if(((abs(delta_oxygen) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_oxygen) >= sharer.oxygen_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((abs(delta_carbon_dioxide) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_carbon_dioxide) >= sharer.carbon_dioxide_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((abs(delta_nitrogen) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_nitrogen) >= sharer.nitrogen_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((abs(delta_toxins) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_toxins) >= sharer.toxins_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)))
|| ((abs(delta_phoron) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_phoron) >= sharer.phoron_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)))
return -1
if(trace_gases.len)
@@ -564,14 +564,14 @@ What are the archived variables for?
var/delta_oxygen = (oxygen_archived - model.oxygen)/TRANSFER_FRACTION
var/delta_carbon_dioxide = (carbon_dioxide_archived - model.carbon_dioxide)/TRANSFER_FRACTION
var/delta_nitrogen = (nitrogen_archived - model.nitrogen)/TRANSFER_FRACTION
var/delta_toxins = (toxins_archived - model.toxins)/TRANSFER_FRACTION
var/delta_phoron = (phoron_archived - model.phoron)/TRANSFER_FRACTION
var/delta_temperature = (temperature_archived - model.temperature)
if(((abs(delta_oxygen) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_oxygen) >= oxygen_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((abs(delta_carbon_dioxide) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_carbon_dioxide) >= carbon_dioxide_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((abs(delta_nitrogen) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_nitrogen) >= nitrogen_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)) \
|| ((abs(delta_toxins) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_toxins) >= toxins_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)))
|| ((abs(delta_phoron) > MINIMUM_AIR_TO_SUSPEND) && (abs(delta_phoron) >= phoron_archived*MINIMUM_AIR_RATIO_TO_SUSPEND)))
return 0
if(abs(delta_temperature) > MINIMUM_TEMPERATURE_DELTA_TO_SUSPEND)
return 0
@@ -597,7 +597,7 @@ What are the archived variables for?
var/delta_oxygen = QUANTIZE(oxygen_archived - sharer.oxygen_archived)/TRANSFER_FRACTION
var/delta_carbon_dioxide = QUANTIZE(carbon_dioxide_archived - sharer.carbon_dioxide_archived)/TRANSFER_FRACTION
var/delta_nitrogen = QUANTIZE(nitrogen_archived - sharer.nitrogen_archived)/TRANSFER_FRACTION
var/delta_toxins = QUANTIZE(toxins_archived - sharer.toxins_archived)/TRANSFER_FRACTION
var/delta_phoron = QUANTIZE(phoron_archived - sharer.phoron_archived)/TRANSFER_FRACTION
var/delta_temperature = (temperature_archived - sharer.temperature_archived)
@@ -630,14 +630,14 @@ What are the archived variables for?
heat_sharer_to_self -= carbon_dioxide_heat_capacity*sharer.temperature_archived
heat_capacity_sharer_to_self -= carbon_dioxide_heat_capacity
if(delta_toxins)
var/toxins_heat_capacity = SPECIFIC_HEAT_TOXIN*delta_toxins
if(delta_toxins > 0)
heat_self_to_sharer += toxins_heat_capacity*temperature_archived
heat_capacity_self_to_sharer += toxins_heat_capacity
if(delta_phoron)
var/phoron_heat_capacity = SPECIFIC_HEAT_TOXIN*delta_phoron
if(delta_phoron > 0)
heat_self_to_sharer += phoron_heat_capacity*temperature_archived
heat_capacity_self_to_sharer += phoron_heat_capacity
else
heat_sharer_to_self -= toxins_heat_capacity*sharer.temperature_archived
heat_capacity_sharer_to_self -= toxins_heat_capacity
heat_sharer_to_self -= phoron_heat_capacity*sharer.temperature_archived
heat_capacity_sharer_to_self -= phoron_heat_capacity
old_self_heat_capacity = heat_capacity()*group_multiplier
old_sharer_heat_capacity = sharer.heat_capacity()*sharer.group_multiplier
@@ -651,10 +651,10 @@ What are the archived variables for?
nitrogen -= delta_nitrogen/group_multiplier
sharer.nitrogen += delta_nitrogen/sharer.group_multiplier
toxins -= delta_toxins/group_multiplier
sharer.toxins += delta_toxins/sharer.group_multiplier
phoron -= delta_phoron/group_multiplier
sharer.phoron += delta_phoron/sharer.group_multiplier
var/moved_moles = (delta_oxygen + delta_carbon_dioxide + delta_nitrogen + delta_toxins)
var/moved_moles = (delta_oxygen + delta_carbon_dioxide + delta_nitrogen + delta_phoron)
var/list/trace_types_considered = list()
@@ -743,7 +743,7 @@ What are the archived variables for?
var/delta_oxygen = QUANTIZE(oxygen_archived - model.oxygen)/TRANSFER_FRACTION
var/delta_carbon_dioxide = QUANTIZE(carbon_dioxide_archived - model.carbon_dioxide)/TRANSFER_FRACTION
var/delta_nitrogen = QUANTIZE(nitrogen_archived - model.nitrogen)/TRANSFER_FRACTION
var/delta_toxins = QUANTIZE(toxins_archived - model.toxins)/TRANSFER_FRACTION
var/delta_phoron = QUANTIZE(phoron_archived - model.phoron)/TRANSFER_FRACTION
var/delta_temperature = (temperature_archived - model.temperature)
@@ -764,10 +764,10 @@ What are the archived variables for?
heat_transferred -= carbon_dioxide_heat_capacity*model.temperature
heat_capacity_transferred -= carbon_dioxide_heat_capacity
if(delta_toxins)
var/toxins_heat_capacity = SPECIFIC_HEAT_TOXIN*delta_toxins
heat_transferred -= toxins_heat_capacity*model.temperature
heat_capacity_transferred -= toxins_heat_capacity
if(delta_phoron)
var/phoron_heat_capacity = SPECIFIC_HEAT_TOXIN*delta_phoron
heat_transferred -= phoron_heat_capacity*model.temperature
heat_capacity_transferred -= phoron_heat_capacity
old_self_heat_capacity = heat_capacity()*group_multiplier
@@ -775,14 +775,14 @@ What are the archived variables for?
oxygen -= delta_oxygen*border_multiplier/group_multiplier
carbon_dioxide -= delta_carbon_dioxide*border_multiplier/group_multiplier
nitrogen -= delta_nitrogen*border_multiplier/group_multiplier
toxins -= delta_toxins*border_multiplier/group_multiplier
phoron -= delta_phoron*border_multiplier/group_multiplier
else
oxygen -= delta_oxygen/group_multiplier
carbon_dioxide -= delta_carbon_dioxide/group_multiplier
nitrogen -= delta_nitrogen/group_multiplier
toxins -= delta_toxins/group_multiplier
phoron -= delta_phoron/group_multiplier
var/moved_moles = (delta_oxygen + delta_carbon_dioxide + delta_nitrogen + delta_toxins)
var/moved_moles = (delta_oxygen + delta_carbon_dioxide + delta_nitrogen + delta_phoron)
if(trace_gases.len)
for(var/datum/gas/trace_gas in trace_gases)
@@ -812,7 +812,7 @@ What are the archived variables for?
temperature_mimic(model, model.thermal_conductivity, border_multiplier)
if((delta_temperature > MINIMUM_TEMPERATURE_TO_MOVE) || abs(moved_moles) > MINIMUM_MOLES_DELTA_TO_MOVE)
var/delta_pressure = temperature_archived*(total_moles() + moved_moles) - model.temperature*(model.oxygen+model.carbon_dioxide+model.nitrogen+model.toxins)
var/delta_pressure = temperature_archived*(total_moles() + moved_moles) - model.temperature*(model.oxygen+model.carbon_dioxide+model.nitrogen+model.phoron)
return delta_pressure*R_IDEAL_GAS_EQUATION/volume
else
return 0
@@ -989,8 +989,8 @@ What are the archived variables for?
if((abs(carbon_dioxide-sample.carbon_dioxide) > MINIMUM_AIR_TO_SUSPEND) && \
((carbon_dioxide < (1-MINIMUM_AIR_RATIO_TO_SUSPEND)*sample.carbon_dioxide) || (carbon_dioxide > (1+MINIMUM_AIR_RATIO_TO_SUSPEND)*sample.carbon_dioxide)))
return 0
if((abs(toxins-sample.toxins) > MINIMUM_AIR_TO_SUSPEND) && \
((toxins < (1-MINIMUM_AIR_RATIO_TO_SUSPEND)*sample.toxins) || (toxins > (1+MINIMUM_AIR_RATIO_TO_SUSPEND)*sample.toxins)))
if((abs(phoron-sample.phoron) > MINIMUM_AIR_TO_SUSPEND) && \
((phoron < (1-MINIMUM_AIR_RATIO_TO_SUSPEND)*sample.phoron) || (phoron > (1+MINIMUM_AIR_RATIO_TO_SUSPEND)*sample.phoron)))
return 0
@@ -1030,7 +1030,7 @@ What are the archived variables for?
oxygen += right_side.oxygen
carbon_dioxide += right_side.carbon_dioxide
nitrogen += right_side.nitrogen
toxins += right_side.toxins
phoron += right_side.phoron
if(trace_gases.len || right_side.trace_gases.len)
for(var/datum/gas/trace_gas in right_side.trace_gases)
@@ -1052,7 +1052,7 @@ What are the archived variables for?
oxygen = max(oxygen - right_side.oxygen)
carbon_dioxide = max(carbon_dioxide - right_side.carbon_dioxide)
nitrogen = max(nitrogen - right_side.nitrogen)
toxins = max(toxins - right_side.toxins)
phoron = max(phoron - right_side.phoron)
if(trace_gases.len || right_side.trace_gases.len)
for(var/datum/gas/trace_gas in right_side.trace_gases)
@@ -1067,7 +1067,7 @@ What are the archived variables for?
oxygen *= factor
carbon_dioxide *= factor
nitrogen *= factor
toxins *= factor
phoron *= factor
if(trace_gases && trace_gases.len)
for(var/datum/gas/trace_gas in trace_gases)
@@ -1080,7 +1080,7 @@ What are the archived variables for?
oxygen /= factor
carbon_dioxide /= factor
nitrogen /= factor
toxins /= factor
phoron /= factor
if(trace_gases && trace_gases.len)
for(var/datum/gas/trace_gas in trace_gases)

View File

@@ -308,14 +308,14 @@
contents.Add(0)
if ("oxygen")
if(t.air_contents.oxygen && !t.air_contents.toxins)
if(t.air_contents.oxygen && !t.air_contents.phoron)
contents.Add(t.air_contents.oxygen)
else
contents.Add(0)
// No races breath this, but never know about downstream servers.
if ("carbon dioxide")
if(t.air_contents.carbon_dioxide && !t.air_contents.toxins)
if(t.air_contents.carbon_dioxide && !t.air_contents.phoron)
contents.Add(t.air_contents.carbon_dioxide)
else
contents.Add(0)

View File

@@ -210,7 +210,7 @@ proc/get_id_photo(var/mob/living/carbon/human/H)
clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_UNDERLAY)
clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_open"), ICON_OVERLAY)
if("Scientist")
clothes_s = new /icon('icons/mob/uniform.dmi', "toxinswhite_s")
clothes_s = new /icon('icons/mob/uniform.dmi', "rndswhite_s")
clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_UNDERLAY)
clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_tox_open"), ICON_OVERLAY)
if("Chemist")

View File

@@ -1344,49 +1344,49 @@ var/list/ghostteleportlocs = list()
name = "Hydroponics"
icon_state = "hydro"
//Toxins
//rnd (Research and Development
/area/toxins/lab
/area/rnd/lab
name = "\improper Research and Development"
icon_state = "toxlab"
/area/toxins/hallway
/area/rnd/hallway
name = "\improper Research Lab"
icon_state = "toxlab"
/area/toxins/rdoffice
/area/rnd/rdoffice
name = "\improper Research Director's Office"
icon_state = "head_quarters"
/area/toxins/supermatter
/area/rnd/supermatter
name = "\improper Supermatter Lab"
icon_state = "toxlab"
/area/toxins/xenobiology
/area/rnd/xenobiology
name = "\improper Xenobiology Lab"
icon_state = "toxlab"
/area/toxins/storage
/area/rnd/storage
name = "\improper Toxins Storage"
icon_state = "toxstorage"
/area/toxins/test_area
/area/rnd/test_area
name = "\improper Toxins Test Area"
icon_state = "toxtest"
/area/toxins/mixing
/area/rnd/mixing
name = "\improper Toxins Mixing Room"
icon_state = "toxmix"
/area/toxins/misc_lab
/area/rnd/misc_lab
name = "\improper Miscellaneous Research"
icon_state = "toxmisc"
/area/toxins/telesci
/area/rnd/telesci
name = "\improper Telescience Lab"
icon_state = "toxmisc"
/area/toxins/server
/area/rnd/server
name = "\improper Server Room"
icon_state = "server"
@@ -1898,7 +1898,7 @@ var/list/the_station_areas = list (
/area/quartermaster,
/area/janitor,
/area/hydroponics,
/area/toxins,
/area/rnd,
/area/storage,
/area/construction,
/area/ai_monitored/storage/eva, //do not try to simplify to "/area/ai_monitored" --rastaf0

View File

@@ -323,7 +323,7 @@ ________________________________________________________________________________
var/o2_level = environment.oxygen/total_moles
var/n2_level = environment.nitrogen/total_moles
var/co2_level = environment.carbon_dioxide/total_moles
var/phoron_level = environment.toxins/total_moles
var/phoron_level = environment.phoron/total_moles
var/unknown_level = 1-(o2_level+n2_level+co2_level+phoron_level)
dat += "<ul>"
dat += "<li>Nitrogen: [round(n2_level*100)]%</li>"

View File

@@ -604,7 +604,7 @@ datum
var/list/all_items = owner.current.get_contents()
for(var/obj/item/I in all_items)
if(!istype(I, steal_target)) continue//If it's not actually that item.
if(I:air_contents:toxins) return 1 //If they got one with plasma
if(I:air_contents:phoron) return 1 //If they got one with plasma
return 0

View File

@@ -557,7 +557,7 @@ datum/objective/steal
for(var/obj/item/I in all_items) //Check for phoron tanks
if(istype(I, steal_target))
found_amount += (target_name=="28 moles of phoron (full tank)" ? (I:air_contents:toxins) : (I:amount))
found_amount += (target_name=="28 moles of phoron (full tank)" ? (I:air_contents:phoron) : (I:amount))
return found_amount>=target_amount
if("50 coins (in bag)")

View File

@@ -53,7 +53,7 @@
H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_sci(H), slot_l_ear)
H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/scientist(H), slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(H), slot_shoes)
H.equip_to_slot_or_del(new /obj/item/device/pda/toxins(H), slot_belt)
H.equip_to_slot_or_del(new /obj/item/device/pda/science(H), slot_belt)
H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/labcoat/science(H), slot_wear_suit)
if(H.backbag == 1)
H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand)
@@ -80,7 +80,7 @@
H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_sci(H), slot_l_ear)
H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/scientist(H), slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(H), slot_shoes)
H.equip_to_slot_or_del(new /obj/item/device/pda/toxins(H), slot_belt)
H.equip_to_slot_or_del(new /obj/item/device/pda/science(H), slot_belt)
H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/labcoat/science(H), slot_wear_suit)
if(H.backbag == 1)
H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/survival(H), slot_r_hand)

View File

@@ -245,7 +245,7 @@
var/pressure_dangerlevel = get_danger_level(environment_pressure, TLV["pressure"])
var/oxygen_dangerlevel = get_danger_level(environment.oxygen*partial_pressure, TLV["oxygen"])
var/co2_dangerlevel = get_danger_level(environment.carbon_dioxide*partial_pressure, TLV["carbon dioxide"])
var/phoron_dangerlevel = get_danger_level(environment.toxins*partial_pressure, TLV["phoron"])
var/phoron_dangerlevel = get_danger_level(environment.phoron*partial_pressure, TLV["phoron"])
var/temperature_dangerlevel = get_danger_level(environment.temperature, TLV["temperature"])
var/other_dangerlevel = get_danger_level(other_moles*partial_pressure, TLV["other"])
@@ -700,7 +700,7 @@
/obj/machinery/alarm/proc/return_status()
var/turf/location = get_turf(src)
var/datum/gas_mixture/environment = location.return_air()
var/total = environment.oxygen + environment.carbon_dioxide + environment.toxins + environment.nitrogen
var/total = environment.oxygen + environment.carbon_dioxide + environment.phoron + environment.nitrogen
var/output = "<b>Air Status:</b><br>"
if(total == 0)
@@ -730,8 +730,8 @@
var/co2_percent = round(environment.carbon_dioxide / total * 100, 2)
current_settings = TLV["phoron"]
var/phoron_dangerlevel = get_danger_level(environment.toxins*partial_pressure, current_settings)
var/phoron_percent = round(environment.toxins / total * 100, 2)
var/phoron_dangerlevel = get_danger_level(environment.phoron*partial_pressure, current_settings)
var/phoron_percent = round(environment.phoron / total * 100, 2)
current_settings = TLV["other"]
var/other_moles = 0.0
@@ -881,7 +881,7 @@ siphoning
Carbon Dioxide
<A href='?src=\ref[src];id_tag=[id_tag];command=co2_scrub;val=[!data["filter_co2"]]'>[data["filter_co2"]?"on":"off"]</A>;
Toxins
<A href='?src=\ref[src];id_tag=[id_tag];command=tox_scrub;val=[!data["filter_toxins"]]'>[data["filter_toxins"]?"on":"off"]</A>;
<A href='?src=\ref[src];id_tag=[id_tag];command=tox_scrub;val=[!data["filter_phoron"]]'>[data["filter_phoron"]?"on":"off"]</A>;
Nitrous Oxide
<A href='?src=\ref[src];id_tag=[id_tag];command=n2o_scrub;val=[!data["filter_n2o"]]'>[data["filter_n2o"]?"on":"off"]</A>
<BR>

View File

@@ -16,7 +16,7 @@ obj/machinery/air_sensor
// 2 for temperature
// Output >= 4 includes gas composition
// 4 for oxygen concentration
// 8 for toxins concentration
// 8 for phoron concentration
// 16 for nitrogen concentration
// 32 for carbon dioxide concentration
@@ -45,14 +45,14 @@ obj/machinery/air_sensor
if(output&4)
signal.data["oxygen"] = round(100*air_sample.oxygen/total_moles,0.1)
if(output&8)
signal.data["toxins"] = round(100*air_sample.toxins/total_moles,0.1)
signal.data["phoron"] = round(100*air_sample.phoron/total_moles,0.1)
if(output&16)
signal.data["nitrogen"] = round(100*air_sample.nitrogen/total_moles,0.1)
if(output&32)
signal.data["carbon_dioxide"] = round(100*air_sample.carbon_dioxide/total_moles,0.1)
else
signal.data["oxygen"] = 0
signal.data["toxins"] = 0
signal.data["phoron"] = 0
signal.data["nitrogen"] = 0
signal.data["carbon_dioxide"] = 0
signal.data["sigtype"]="status"
@@ -151,7 +151,7 @@ obj/machinery/computer/general_air_control
sensor_part += " <B>Pressure:</B> [data["pressure"]] kPa<BR>"
if(data["temperature"])
sensor_part += " <B>Temperature:</B> [data["temperature"]] K<BR>"
if(data["oxygen"]||data["toxins"]||data["nitrogen"]||data["carbon_dioxide"])
if(data["oxygen"]||data["phoron"]||data["nitrogen"]||data["carbon_dioxide"])
sensor_part += " <B>Gas Composition :</B>"
if(data["oxygen"])
sensor_part += "[data["oxygen"]]% O2; "
@@ -159,8 +159,8 @@ obj/machinery/computer/general_air_control
sensor_part += "[data["nitrogen"]]% N; "
if(data["carbon_dioxide"])
sensor_part += "[data["carbon_dioxide"]]% CO2; "
if(data["toxins"])
sensor_part += "[data["toxins"]]% TX; "
if(data["phoron"])
sensor_part += "[data["phoron"]]% TX; "
sensor_part += "<HR>"
else

View File

@@ -34,8 +34,8 @@
icon_state = "blue"
canister_color = "blue"
can_label = 0
/obj/machinery/portable_atmospherics/canister/toxins
name = "Canister \[Toxin (Bio)\]"
/obj/machinery/portable_atmospherics/canister/phoron
name = "Canister \[Phoron\]"
icon_state = "orange"
canister_color = "orange"
can_label = 0
@@ -328,11 +328,11 @@ update_flag
return 1
/obj/machinery/portable_atmospherics/canister/toxins/New()
/obj/machinery/portable_atmospherics/canister/phoron/New()
..()
src.air_contents.toxins = (src.maximum_pressure*filled)*air_contents.volume/(R_IDEAL_GAS_EQUATION*air_contents.temperature)
src.air_contents.phoron = (src.maximum_pressure*filled)*air_contents.volume/(R_IDEAL_GAS_EQUATION*air_contents.temperature)
air_contents.update_values()
src.update_icon()

View File

@@ -125,7 +125,7 @@
var/o2_concentration = air_contents.oxygen/total_moles
var/n2_concentration = air_contents.nitrogen/total_moles
var/co2_concentration = air_contents.carbon_dioxide/total_moles
var/phoron_concentration = air_contents.toxins/total_moles
var/phoron_concentration = air_contents.phoron/total_moles
var/unknown_concentration = 1-(o2_concentration+n2_concentration+co2_concentration+phoron_concentration)

View File

@@ -114,8 +114,8 @@
filtered_out.temperature = removed.temperature
filtered_out.toxins = removed.toxins
removed.toxins = 0
filtered_out.phoron = removed.phoron
removed.phoron = 0
filtered_out.carbon_dioxide = removed.carbon_dioxide
removed.carbon_dioxide = 0

View File

@@ -277,8 +277,8 @@ Airlock index -> wire color are { 9, 4, 6, 7, 5, 8, 1, 2, 3 }.
// if(target_tile.parent && target_tile.parent.group_processing) // THESE PROBABLY DO SOMETHING IMPORTANT BUT I DON'T KNOW HOW TO FIX IT - Erthilo
// target_tile.parent.suspend_group_processing()
var/datum/gas_mixture/napalm = new
var/toxinsToDeduce = 35
napalm.toxins = toxinsToDeduce
var/phoronToDeduce = 35
napalm.phoron = phoronToDeduce
napalm.temperature = 400+T0C
target_tile.assume_air(napalm)
spawn (0) target_tile.hotspot_expose(temperature, 400)

View File

@@ -686,7 +686,7 @@
icon_state = "cart"
icon_deny = "cart-deny"
products = list(/obj/item/weapon/cartridge/medical = 10,/obj/item/weapon/cartridge/engineering = 10,/obj/item/weapon/cartridge/security = 10,
/obj/item/weapon/cartridge/janitor = 10,/obj/item/weapon/cartridge/signal/toxins = 10,/obj/item/device/pda/heads = 10,
/obj/item/weapon/cartridge/janitor = 10,/obj/item/weapon/cartridge/signal/science = 10,/obj/item/device/pda/heads = 10,
/obj/item/weapon/cartridge/captain = 3,/obj/item/weapon/cartridge/quartermaster = 10)

View File

@@ -926,12 +926,12 @@
return
var/datum/gas_mixture/GM = new
if(prob(10))
GM.toxins += 100
GM.phoron += 100
GM.temperature = 1500+T0C //should be enough to start a fire
T.visible_message("The [src] suddenly disgorges a cloud of heated phoron.")
destroy()
else
GM.toxins += 5
GM.phoron += 5
GM.temperature = istype(T) ? T.air.temperature : T20C
T.visible_message("The [src] suddenly disgorges a cloud of phoron.")
T.assume_air(GM)

View File

@@ -16,7 +16,7 @@
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
var/obj/item/weapon/storage/box/B = new(BPK)
new /obj/item/weapon/pen(B)
new /obj/item/device/pda/toxins(src)
new /obj/item/device/pda/science(src)
new /obj/item/weapon/tank/oxygen(src)
new /obj/item/clothing/mask/gas(src)
new /obj/item/device/radio/headset/headset_sci(src)

View File

@@ -69,7 +69,7 @@
var/datum/gas_mixture/payload = new
payload.toxins = 30
payload.phoron = 30
target.zone.air.merge(payload)

View File

@@ -137,7 +137,7 @@
OT.master = V
PT.air_contents.temperature = PHORON_FLASHPOINT
PT.air_contents.toxins = 3
PT.air_contents.phoron = 3
PT.air_contents.carbon_dioxide = 17
PT.air_contents.update_values()

View File

@@ -83,8 +83,8 @@ var/global/list/obj/item/device/pda/PDAs = list()
icon_state = "pda-j"
ttone = "slip"
/obj/item/device/pda/toxins
default_cartridge = /obj/item/weapon/cartridge/signal/toxins
/obj/item/device/pda/science
default_cartridge = /obj/item/weapon/cartridge/signal/science
icon_state = "pda-tox"
ttone = "boom"
@@ -446,7 +446,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
var/o2_level = environment.oxygen/total_moles
var/n2_level = environment.nitrogen/total_moles
var/co2_level = environment.carbon_dioxide/total_moles
var/phoron_level = environment.toxins/total_moles
var/phoron_level = environment.phoron/total_moles
var/unknown_level = 1-(o2_level+n2_level+co2_level+phoron_level)
data["aircontents"] = list(\
"pressure" = "[round(pressure,0.1)]",\
@@ -1165,7 +1165,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
var/o2_concentration = A:air_contents.oxygen/total_moles
var/n2_concentration = A:air_contents.nitrogen/total_moles
var/co2_concentration = A:air_contents.carbon_dioxide/total_moles
var/phoron_concentration = A:air_contents.toxins/total_moles
var/phoron_concentration = A:air_contents.phoron/total_moles
var/unknown_concentration = 1-(o2_concentration+n2_concentration+co2_concentration+phoron_concentration)
@@ -1194,7 +1194,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
var/o2_concentration = T.parent.air.oxygen/total_moles
var/n2_concentration = T.parent.air.nitrogen/total_moles
var/co2_concentration = T.parent.air.carbon_dioxide/total_moles
var/phoron_concentration = T.parent.air.toxins/total_moles
var/phoron_concentration = T.parent.air.phoron/total_moles
var/unknown_concentration = 1-(o2_concentration+n2_concentration+co2_concentration+phoron_concentration)
@@ -1293,7 +1293,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
var/newcart = pick( /obj/item/weapon/cartridge/engineering,
/obj/item/weapon/cartridge/security,
/obj/item/weapon/cartridge/medical,
/obj/item/weapon/cartridge/signal/toxins,
/obj/item/weapon/cartridge/signal/science,
/obj/item/weapon/cartridge/quartermaster)
new newcart(src)

View File

@@ -103,7 +103,7 @@
name = "generic signaler cartridge"
desc = "A data cartridge with an integrated radio signaler module."
/obj/item/weapon/cartridge/signal/toxins
/obj/item/weapon/cartridge/signal/science
name = "Signal Ace 2"
desc = "Complete with integrated radio signaler!"
icon_state = "cart-tox"

View File

@@ -238,7 +238,7 @@ REAGENT SCANNER
var/o2_concentration = environment.oxygen/total_moles
var/n2_concentration = environment.nitrogen/total_moles
var/co2_concentration = environment.carbon_dioxide/total_moles
var/phoron_concentration = environment.toxins/total_moles
var/phoron_concentration = environment.phoron/total_moles
var/unknown_concentration = 1-(o2_concentration+n2_concentration+co2_concentration+phoron_concentration)
if(abs(n2_concentration - N2STANDARD) < 20)

View File

@@ -123,7 +123,7 @@
var/o2_concentration = ptank.air_contents.oxygen/total_moles
var/n2_concentration = ptank.air_contents.nitrogen/total_moles
var/co2_concentration = ptank.air_contents.carbon_dioxide/total_moles
var/phoron_concentration = ptank.air_contents.toxins/total_moles
var/phoron_concentration = ptank.air_contents.phoron/total_moles
var/unknown_concentration = 1-(o2_concentration+n2_concentration+co2_concentration+phoron_concentration)
@@ -163,7 +163,7 @@
usr.set_machine(src)
if(href_list["light"])
if(!ptank) return
if(ptank.air_contents.toxins < 1) return
if(ptank.air_contents.phoron < 1) return
if(!status) return
lit = !lit
if(lit)
@@ -212,8 +212,8 @@
//Transfer 5% of current tank air contents to turf
var/datum/gas_mixture/air_transfer = ptank.air_contents.remove_ratio(0.02*(throw_amount/100))
//air_transfer.toxins = air_transfer.toxins * 5 // This is me not comprehending the air system. I realize this is retarded and I could probably make it work without fucking it up like this, but there you have it. -- TLE
new/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel(target,air_transfer.toxins,get_dir(loc,target))
air_transfer.toxins = 0
new/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel(target,air_transfer.phoron,get_dir(loc,target))
air_transfer.phoron = 0
target.assume_air(air_transfer)
//Burn it based on transfered gas
//target.hotspot_expose(part4.air_contents.temperature*2,300)

View File

@@ -61,7 +61,7 @@
var/datum/gas_mixture/G = src.air_contents.remove(num)
var/allgases = G.carbon_dioxide + G.nitrogen + G.oxygen + G.toxins //fuck trace gases -Pete
var/allgases = G.carbon_dioxide + G.nitrogen + G.oxygen + G.phoron //fuck trace gases -Pete
if(allgases >= 0.005)
return 1

View File

@@ -105,7 +105,7 @@
/obj/item/weapon/tank/phoron/New()
..()
src.air_contents.toxins = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C)
src.air_contents.phoron = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C)
//
src.air_contents.update_values()
return

View File

@@ -97,7 +97,7 @@
var/o2_concentration = air_contents.oxygen/total_moles
var/n2_concentration = air_contents.nitrogen/total_moles
var/co2_concentration = air_contents.carbon_dioxide/total_moles
var/phoron_concentration = air_contents.toxins/total_moles
var/phoron_concentration = air_contents.phoron/total_moles
var/unknown_concentration = 1-(o2_concentration+n2_concentration+co2_concentration+phoron_concentration)

View File

@@ -15,7 +15,7 @@
//new /obj/item/clothing/suit/labcoat/science(src)
new /obj/item/clothing/suit/storage/labcoat(src)
new /obj/item/clothing/shoes/white(src)
// new /obj/item/weapon/cartridge/signal/toxins(src)
// new /obj/item/weapon/cartridge/signal/science(src)
new /obj/item/device/radio/headset/headset_sci(src)
new /obj/item/weapon/tank/air(src)
new /obj/item/clothing/mask/gas(src)

View File

@@ -227,8 +227,8 @@
return
/obj/structure/closet/wardrobe/toxins_white
name = "toxins wardrobe"
/obj/structure/closet/wardrobe/science_white
name = "science wardrobe"
icon_state = "white"
icon_closed = "white"

View File

@@ -322,7 +322,7 @@
newgas.oxygen = gas.oxygen
newgas.carbon_dioxide = gas.carbon_dioxide
newgas.nitrogen = gas.nitrogen
newgas.toxins = gas.toxins
newgas.phoron = gas.phoron
newgas.volume = gas.volume
newgas.temperature = gas.temperature
if(newgas.temperature <= target_temp) return

View File

@@ -207,15 +207,15 @@
var/datum/gas_mixture/napalm = new
var/toxinsToDeduce = temperature/10
var/phoronToDeduce = temperature/10
napalm.toxins = toxinsToDeduce
napalm.phoron = phoronToDeduce
napalm.temperature = 200+T0C
target_tile.assume_air(napalm)
spawn (0) target_tile.hotspot_expose(temperature, 400)
hardness -= toxinsToDeduce/100
hardness -= phoronToDeduce/100
CheckHardness()
/obj/structure/mineral_door/transparent/diamond

View File

@@ -360,7 +360,7 @@ obj/structure/ex_act(severity)
GM.oxygen = air_contents.oxygen
GM.carbon_dioxide = air_contents.carbon_dioxide
GM.nitrogen = air_contents.nitrogen
GM.toxins = air_contents.toxins
GM.phoron = air_contents.phoron
GM.temperature = air_contents.temperature
return GM

View File

@@ -97,8 +97,8 @@
/*if(target_tile.parent && target_tile.parent.group_processing)
target_tile.parent.suspend_group_processing()*/
var/datum/gas_mixture/napalm = new
var/toxinsToDeduce = 20
napalm.toxins = toxinsToDeduce
var/phoronToDeduce = 20
napalm.phoron = phoronToDeduce
napalm.temperature = 400+T0C
target_tile.assume_air(napalm)
spawn (0) target_tile.hotspot_expose(temperature, 400)

View File

@@ -9,7 +9,7 @@
var/oxygen = 0
var/carbon_dioxide = 0
var/nitrogen = 0
var/toxins = 0
var/phoron = 0
//Properties for airtight tiles (/wall)
var/thermal_conductivity = 0.05

View File

@@ -144,7 +144,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
var/t = ""
t+= "Nitrogen : [env.nitrogen]\n"
t+= "Oxygen : [env.oxygen]\n"
t+= "Phoron : [env.toxins]\n"
t+= "Phoron : [env.phoron]\n"
t+= "CO2: [env.carbon_dioxide]\n"
usr.show_message(t, 1)
@@ -956,7 +956,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
if(Rad.anchored)
if(!Rad.P)
var/obj/item/weapon/tank/phoron/Phoron = new/obj/item/weapon/tank/phoron(Rad)
Phoron.air_contents.toxins = 70
Phoron.air_contents.phoron = 70
Rad.drainratio = 0
Rad.P = Phoron
Phoron.loc = Rad

View File

@@ -56,7 +56,7 @@
if(T.active_hotspot)
burning = 1
usr << "\blue @[target.x],[target.y] ([GM.group_multiplier]): O:[GM.oxygen] T:[GM.toxins] N:[GM.nitrogen] C:[GM.carbon_dioxide] w [GM.temperature] Kelvin, [GM.return_pressure()] kPa [(burning)?("\red BURNING"):(null)]"
usr << "\blue @[target.x],[target.y] ([GM.group_multiplier]): O:[GM.oxygen] T:[GM.phoron] N:[GM.nitrogen] C:[GM.carbon_dioxide] w [GM.temperature] Kelvin, [GM.return_pressure()] kPa [(burning)?("\red BURNING"):(null)]"
for(var/datum/gas/trace_gas in GM.trace_gases)
usr << "[trace_gas.type]: [trace_gas.moles]"
feedback_add_details("admin_verb","DAST") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!

View File

@@ -100,7 +100,7 @@
return
/obj/item/weapon/tank/proc/ignite() //This happens when a bomb is told to explode
var/fuel_moles = air_contents.toxins + air_contents.oxygen/6
var/fuel_moles = air_contents.phoron + air_contents.oxygen/6
var/strength = 1
var/turf/ground_zero = get_turf(loc)

View File

@@ -14,7 +14,7 @@
//Plague Dr suit can be found in clothing/suits/bio.dm
/obj/item/clothing/mask/gas/plaguedoctor
name = "plague doctor mask"
desc = "A modernised version of the classic design, this mask will not only filter out toxins but it can also be connected to an air supply."
desc = "A modernised version of the classic design, this mask will not only filter out phoron but it can also be connected to an air supply."
icon_state = "plaguedoctor"
item_state = "gas_mask"
armor = list(melee = 0, bullet = 0, laser = 2,energy = 2, bomb = 0, bio = 75, rad = 0)

View File

@@ -31,9 +31,9 @@
/obj/item/clothing/under/rank/scientist
desc = "It's made of a special fiber that provides minor protection against biohazards. It has markings that denote the wearer as a scientist."
name = "scientist's jumpsuit"
icon_state = "toxins"
icon_state = "science"
item_state = "w_suit"
item_color = "toxinswhite"
item_color = "sciencewhite"
permeability_coefficient = 0.50
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0)
flags = FPRINT | TABLEPASS

View File

@@ -398,7 +398,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
var/o2_concentration = environment.oxygen/total_moles
var/n2_concentration = environment.nitrogen/total_moles
var/co2_concentration = environment.carbon_dioxide/total_moles
var/phoron_concentration = environment.toxins/total_moles
var/phoron_concentration = environment.phoron/total_moles
var/unknown_concentration = 1-(o2_concentration+n2_concentration+co2_concentration+phoron_concentration)
if(abs(n2_concentration - N2STANDARD) < 20)
@@ -417,7 +417,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
src << "\blue CO2: [round(co2_concentration*100)]% ([round(environment.carbon_dioxide,0.01)] moles)"
if(phoron_concentration > 0.01)
src << "\red Phoron: [round(phoron_concentration*100)]% ([round(environment.toxins,0.01)] moles)"
src << "\red Phoron: [round(phoron_concentration*100)]% ([round(environment.phoron,0.01)] moles)"
if(unknown_concentration > 0.01)
src << "\red Unknown: [round(unknown_concentration*100)]% ([round(unknown_concentration*total_moles,0.01)] moles)"

View File

@@ -25,7 +25,7 @@
var/plasma_rate = 5
var/oxygen_alert = 0
var/toxins_alert = 0
var/phoron_alert = 0
var/fire_alert = 0
var/heat_protection = 0.5
@@ -58,7 +58,7 @@
/mob/living/carbon/alien/proc/handle_environment(var/datum/gas_mixture/environment)
//If there are alien weeds on the ground then heal if needed or give some toxins
//If there are alien weeds on the ground then heal if needed or give some plasma
if(locate(/obj/effect/alien/weeds) in loc)
if(health >= maxHealth - getCloneLoss())
adjustToxLoss(plasma_rate)

View File

@@ -2,7 +2,7 @@
/mob/living/carbon/alien/humanoid
oxygen_alert = 0
toxins_alert = 0
phoron_alert = 0
fire_alert = 0
var/temperature_alert = 0
@@ -171,25 +171,25 @@
//Aliens breathe in vaccuum
return 0
var/toxins_used = 0
var/phoron_used = 0
var/breath_pressure = (breath.total_moles()*R_IDEAL_GAS_EQUATION*breath.temperature)/BREATH_VOLUME
//Partial pressure of the toxins in our breath
var/Toxins_pp = (breath.toxins/breath.total_moles())*breath_pressure
//Partial pressure of the phoron in our breath
var/Toxins_pp = (breath.phoron/breath.total_moles())*breath_pressure
if(Toxins_pp) // Detect toxins in air
if(Toxins_pp) // Detect phoron in air
adjustToxLoss(breath.toxins*250)
toxins_alert = max(toxins_alert, 1)
adjustToxLoss(breath.phoron*250)
phoron_alert = max(phoron_alert, 1)
toxins_used = breath.toxins
phoron_used = breath.phoron
else
toxins_alert = 0
phoron_alert = 0
//Breathe in toxins and out oxygen
breath.toxins -= toxins_used
breath.oxygen += toxins_used
//Breathe in phoron and out oxygen
breath.phoron -= phoron_used
breath.oxygen += phoron_used
if(breath.temperature > (T0C+66) && !(COLD_RESISTANCE in mutations)) // Hot air hurts :(
if(prob(20))
@@ -412,7 +412,7 @@
if(pullin) pullin.icon_state = "pull[pulling ? 1 : 0]"
if (toxin) toxin.icon_state = "tox[toxins_alert ? 1 : 0]"
if (toxin) toxin.icon_state = "tox[phoron_alert ? 1 : 0]"
if (oxygen) oxygen.icon_state = "oxy[oxygen_alert ? 1 : 0]"
if (fire) fire.icon_state = "fire[fire_alert ? 1 : 0]"
//NOTE: the alerts dont reset when youre out of danger. dont blame me,

View File

@@ -146,25 +146,25 @@
//Aliens breathe in vaccuum
return 0
var/toxins_used = 0
var/phoron_used = 0
var/breath_pressure = (breath.total_moles()*R_IDEAL_GAS_EQUATION*breath.temperature)/BREATH_VOLUME
//Partial pressure of the toxins in our breath
var/Toxins_pp = (breath.toxins/breath.total_moles())*breath_pressure
//Partial pressure of the phoron in our breath
var/Toxins_pp = (breath.phoron/breath.total_moles())*breath_pressure
if(Toxins_pp) // Detect toxins in air
if(Toxins_pp) // Detect phoron in air
adjustToxLoss(breath.toxins*250)
toxins_alert = max(toxins_alert, 1)
adjustToxLoss(breath.phoron*250)
phoron_alert = max(phoron_alert, 1)
toxins_used = breath.toxins
phoron_used = breath.phoron
else
toxins_alert = 0
phoron_alert = 0
//Breathe in toxins and out oxygen
breath.toxins -= toxins_used
breath.oxygen += toxins_used
//Breathe in phoron and out oxygen
breath.phoron -= phoron_used
breath.oxygen += phoron_used
if(breath.temperature > (T0C+66) && !(COLD_RESISTANCE in mutations)) // Hot air hurts :(
if(prob(20))
@@ -327,7 +327,7 @@ FUCK YOU MORE FAT CODE -Hawk*/
if(pullin) pullin.icon_state = "pull[pulling ? 1 : 0]"
if (toxin) toxin.icon_state = "tox[toxins_alert ? 1 : 0]"
if (toxin) toxin.icon_state = "tox[phoron_alert ? 1 : 0]"
if (oxygen) oxygen.icon_state = "oxy[oxygen_alert ? 1 : 0]"
if (fire) fire.icon_state = "fire[fire_alert ? 1 : 0]"
//NOTE: the alerts dont reset when youre out of danger. dont blame me,

View File

@@ -23,7 +23,7 @@
/mob/living/carbon/human
var/oxygen_alert = 0
var/toxins_alert = 0
var/phoron_alert = 0
var/fire_alert = 0
var/pressure_alert = 0
var/prev_gender = null // Debug for plural genders
@@ -336,13 +336,13 @@
var/datum/gas_mixture/filtered = new
filtered.copy_from(breath)
filtered.toxins *= G.gas_filter_strength
filtered.phoron *= G.gas_filter_strength
for(var/datum/gas/gas in filtered.trace_gases)
gas.moles *= G.gas_filter_strength
filtered.update_values()
loc.assume_air(filtered)
breath.toxins *= 1 - G.gas_filter_strength
breath.phoron *= 1 - G.gas_filter_strength
for(var/datum/gas/gas in breath.trace_gases)
gas.moles *= 1 - G.gas_filter_strength
breath.update_values()
@@ -431,7 +431,7 @@
var/safe_oxygen_min = 16 // Minimum safe partial pressure of O2, in kPa
//var/safe_oxygen_max = 140 // Maximum safe partial pressure of O2, in kPa (Not used for now)
var/safe_co2_max = 10 // Yes it's an arbitrary value who cares?
var/safe_toxins_max = 0.005
var/safe_phoron_max = 0.005
var/SA_para_min = 1
var/SA_sleep_min = 5
var/oxygen_used = 0
@@ -441,8 +441,8 @@
//Partial pressure of the O2 in our breath
var/O2_pp = (breath.oxygen/breath.total_moles())*breath_pressure
// Same, but for the toxins
var/Toxins_pp = (breath.toxins/breath.total_moles())*breath_pressure
// Same, but for the phoron
var/Toxins_pp = (breath.phoron/breath.total_moles())*breath_pressure
// And CO2, lets say a PP of more than 10 will be bad (It's a little less really, but eh, being passed out all round aint no fun)
var/CO2_pp = (breath.carbon_dioxide/breath.total_moles())*breath_pressure // Tweaking to fit the hacky bullshit I've done with atmo -- TLE
//var/CO2_pp = (breath.carbon_dioxide/breath.total_moles())*0.5 // The default pressure value
@@ -506,18 +506,18 @@
else
co2overloadtime = 0
if(Toxins_pp > safe_toxins_max) // Too much toxins
var/ratio = (breath.toxins/safe_toxins_max) * 10
if(Toxins_pp > safe_phoron_max) // Too much phoron
var/ratio = (breath.phoron/safe_phoron_max) * 10
//adjustToxLoss(Clamp(ratio, MIN_PHORON_DAMAGE, MAX_PHORON_DAMAGE)) //Limit amount of damage toxin exposure can do per second
if(reagents)
reagents.add_reagent("phoron", Clamp(ratio, MIN_PHORON_DAMAGE, MAX_PHORON_DAMAGE))
toxins_alert = max(toxins_alert, 1)
phoron_alert = max(phoron_alert, 1)
else if(O2_pp > vox_oxygen_max && species.name == "Vox") //Oxygen is toxic to vox.
var/ratio = (breath.oxygen/vox_oxygen_max) * 1000
adjustToxLoss(Clamp(ratio, MIN_PHORON_DAMAGE, MAX_PHORON_DAMAGE))
toxins_alert = max(toxins_alert, 1)
phoron_alert = max(phoron_alert, 1)
else
toxins_alert = 0
phoron_alert = 0
if(breath.trace_gases.len) // If there's some other shit in the air lets deal with it here.
for(var/datum/gas/sleeping_agent/SA in breath.trace_gases)
@@ -578,7 +578,7 @@
else
loc_temp = environment.temperature
if(abs(loc_temp - 293.15) < 20 && abs(bodytemperature - 310.14) < 0.5 && environment.toxins < MOLES_PHORON_VISIBLE)
if(abs(loc_temp - 293.15) < 20 && abs(bodytemperature - 310.14) < 0.5 && environment.phoron < MOLES_PHORON_VISIBLE)
return // Temperatures are within normal ranges, fuck all this processing. ~Ccomp
//Body temperature is adjusted in two steps. Firstly your body tries to stabilize itself a bit.
@@ -659,7 +659,7 @@
else
pressure_alert = -1
if(environment.toxins > MOLES_PHORON_VISIBLE)
if(environment.phoron > MOLES_PHORON_VISIBLE)
pl_effects()
return
@@ -1341,7 +1341,7 @@
// if(resting || lying || sleeping) rest.icon_state = "rest1"
// else rest.icon_state = "rest0"
if(toxin)
if(hal_screwyhud == 4 || toxins_alert) toxin.icon_state = "tox1"
if(hal_screwyhud == 4 || phoron_alert) toxin.icon_state = "tox1"
else toxin.icon_state = "tox0"
if(oxygen)
if(hal_screwyhud == 3 || oxygen_alert) oxygen.icon_state = "oxy1"

View File

@@ -1027,7 +1027,7 @@ mob/living/carbon/slime/var/temperature_resistance = T0C+75
/obj/item/weapon/reagent_containers/food/snacks/egg/slime/process()
var/turf/location = get_turf(src)
var/datum/gas_mixture/environment = location.return_air()
if (environment.toxins > MOLES_PHORON_VISIBLE)//phoron exposure causes the egg to hatch
if (environment.phoron > MOLES_PHORON_VISIBLE)//phoron exposure causes the egg to hatch
src.Hatch()
/obj/item/weapon/reagent_containers/food/snacks/egg/slime/attackby(obj/item/weapon/W as obj, mob/user as mob)

View File

@@ -2,7 +2,7 @@
/mob/living/carbon/monkey
var/oxygen_alert = 0
var/toxins_alert = 0
var/phoron_alert = 0
var/fire_alert = 0
var/pressure_alert = 0
@@ -243,13 +243,13 @@
var/datum/gas_mixture/filtered = new
filtered.copy_from(breath)
filtered.toxins *= G.gas_filter_strength
filtered.phoron *= G.gas_filter_strength
for(var/datum/gas/gas in filtered.trace_gases)
gas.moles *= G.gas_filter_strength
filtered.update_values()
loc.assume_air(filtered)
breath.toxins *= 1 - G.gas_filter_strength
breath.phoron *= 1 - G.gas_filter_strength
for(var/datum/gas/gas in breath.trace_gases)
gas.moles *= 1 - G.gas_filter_strength
breath.update_values()
@@ -310,7 +310,7 @@
var/safe_oxygen_min = 16 // Minimum safe partial pressure of O2, in kPa
//var/safe_oxygen_max = 140 // Maximum safe partial pressure of O2, in kPa (Not used for now)
var/safe_co2_max = 10 // Yes it's an arbitrary value who cares?
var/safe_toxins_max = 0.5
var/safe_phoron_max = 0.5
var/SA_para_min = 0.5
var/SA_sleep_min = 5
var/oxygen_used = 0
@@ -318,8 +318,8 @@
//Partial pressure of the O2 in our breath
var/O2_pp = (breath.oxygen/breath.total_moles())*breath_pressure
// Same, but for the toxins
var/Toxins_pp = (breath.toxins/breath.total_moles())*breath_pressure
// Same, but for the phoron
var/Toxins_pp = (breath.phoron/breath.total_moles())*breath_pressure
// And CO2, lets say a PP of more than 10 will be bad (It's a little less really, but eh, being passed out all round aint no fun)
var/CO2_pp = (breath.carbon_dioxide/breath.total_moles())*breath_pressure
@@ -360,14 +360,14 @@
else
co2overloadtime = 0
if(Toxins_pp > safe_toxins_max) // Too much toxins
var/ratio = (breath.toxins/safe_toxins_max) * 10
if(Toxins_pp > safe_phoron_max) // Too much phoron
var/ratio = (breath.phoron/safe_phoron_max) * 10
//adjustToxLoss(Clamp(ratio, MIN_PLASMA_DAMAGE, MAX_PLASMA_DAMAGE)) //Limit amount of damage toxin exposure can do per second
if(reagents)
reagents.add_reagent("phoron", Clamp(ratio, MIN_PHORON_DAMAGE, MAX_PHORON_DAMAGE))
toxins_alert = max(toxins_alert, 1)
phoron_alert = max(phoron_alert, 1)
else
toxins_alert = 0
phoron_alert = 0
if(breath.trace_gases.len) // If there's some other shit in the air lets deal with it here.
for(var/datum/gas/sleeping_agent/SA in breath.trace_gases)
@@ -397,7 +397,7 @@
if(!environment)
return
if(abs(environment.temperature - 293.15) < 20 && abs(bodytemperature - 310.14) < 0.5 && environment.toxins < MOLES_PHORON_VISIBLE)
if(abs(environment.temperature - 293.15) < 20 && abs(bodytemperature - 310.14) < 0.5 && environment.phoron < MOLES_PHORON_VISIBLE)
return // Temperatures are within normal ranges, fuck all this processing. ~Ccomp
var/environment_heat_capacity = environment.heat_capacity()
@@ -618,7 +618,7 @@
if(pullin) pullin.icon_state = "pull[pulling ? 1 : 0]"
if (toxin) toxin.icon_state = "tox[toxins_alert ? 1 : 0]"
if (toxin) toxin.icon_state = "tox[phoron_alert ? 1 : 0]"
if (oxygen) oxygen.icon_state = "oxy[oxygen_alert ? 1 : 0]"
if (fire) fire.icon_state = "fire[fire_alert ? 2 : 0]"
//NOTE: the alerts dont reset when youre out of danger. dont blame me,

View File

@@ -252,7 +252,7 @@
if(!C.status)
continue
else
if(C.network != "CREED" && C.network != "thunder" && C.network != "RD" && C.network != "toxins" && C.network != "Prison") COMPILE ERROR! This will have to be updated as camera.network is no longer a string, but a list instead
if(C.network != "CREED" && C.network != "thunder" && C.network != "RD" && C.network != "phoron" && C.network != "Prison") COMPILE ERROR! This will have to be updated as camera.network is no longer a string, but a list instead
cameralist[C.network] = C.network
src.network = input(usr, "Which network would you like to view?") as null|anything in cameralist

View File

@@ -542,7 +542,7 @@
var/o2_level = environment.oxygen/total_moles
var/n2_level = environment.nitrogen/total_moles
var/co2_level = environment.carbon_dioxide/total_moles
var/phoron_level = environment.toxins/total_moles
var/phoron_level = environment.phoron/total_moles
var/unknown_level = 1-(o2_level+n2_level+co2_level+phoron_level)
dat += "Nitrogen: [round(n2_level*100)]%<br>"
dat += "Oxygen: [round(o2_level*100)]%<br>"

View File

@@ -154,7 +154,7 @@
if(istype(T,/turf/simulated))
var/turf/simulated/ST = T
if(ST.air)
var/tox = ST.air.toxins
var/tox = ST.air.phoron
var/oxy = ST.air.oxygen
var/n2 = ST.air.nitrogen
var/co2 = ST.air.carbon_dioxide

View File

@@ -25,7 +25,7 @@
t+= "\red Temperature: [environment.temperature] \n"
t+= "\blue Nitrogen: [environment.nitrogen] \n"
t+= "\blue Oxygen: [environment.oxygen] \n"
t+= "\blue Phoron : [environment.toxins] \n"
t+= "\blue Phoron : [environment.phoron] \n"
t+= "\blue Carbon Dioxide: [environment.carbon_dioxide] \n"
for(var/datum/gas/trace_gas in environment.trace_gases)
usr << "\blue [trace_gas.type]: [trace_gas.moles] \n"

View File

@@ -379,7 +379,7 @@ datum/preferences
if(4)
clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel"), ICON_OVERLAY)
if(SCIENTIST)
clothes_s = new /icon('icons/mob/uniform.dmi', "toxinswhite_s")
clothes_s = new /icon('icons/mob/uniform.dmi', "sciencewhite_s")
clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_UNDERLAY)
clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_tox_open"), ICON_OVERLAY)
if(prob(1))

View File

@@ -352,7 +352,7 @@
/obj/item/weapon/paper/Toxin
name = "Chemical Information"
info = "Known Onboard Toxins:<BR>\n\tGrade A Semi-Liquid Phoron:<BR>\n\t\tHighly poisonous. You cannot sustain concentrations above 15 units.<BR>\n\t\tA gas mask fails to filter phoron after 50 units.<BR>\n\t\tWill attempt to diffuse like a gas.<BR>\n\t\tFiltered by scrubbers.<BR>\n\t\tThere is a bottled version which is very different<BR>\n\t\t\tfrom the version found in canisters!<BR>\n<BR>\n\t\tWARNING: Highly Flammable. Keep away from heat sources<BR>\n\t\texcept in a enclosed fire area!<BR>\n\t\tWARNING: It is a crime to use this without authorization.<BR>\nKnown Onboard Anti-Toxin:<BR>\n\tAnti-Toxin Type 01P: Works against Grade A Phoron.<BR>\n\t\tBest if injected directly into bloodstream.<BR>\n\t\tA full injection is in every regular Med-Kit.<BR>\n\t\tSpecial toxin Kits hold around 7.<BR>\n<BR>\nKnown Onboard Chemicals (other):<BR>\n\tRejuvenation T#001:<BR>\n\t\tEven 1 unit injected directly into the bloodstream<BR>\n\t\t\twill cure paralysis and sleep toxins.<BR>\n\t\tIf administered to a dying patient it will prevent<BR>\n\t\t\tfurther damage for about units*3 seconds.<BR>\n\t\t\tit will not cure them or allow them to be cured.<BR>\n\t\tIt can be administeredd to a non-dying patient<BR>\n\t\t\tbut the chemicals disappear just as fast.<BR>\n\tSleep Toxin T#054:<BR>\n\t\t5 units wilkl induce precisely 1 minute of sleep.<BR>\n\t\t\tThe effect are cumulative.<BR>\n\t\tWARNING: It is a crime to use this without authorization"
info = "Known Onboard Toxins:<BR>\n\tGrade A Semi-Liquid Phoron:<BR>\n\t\tHighly poisonous. You cannot sustain concentrations above 15 units.<BR>\n\t\tA gas mask fails to filter phoron after 50 units.<BR>\n\t\tWill attempt to diffuse like a gas.<BR>\n\t\tFiltered by scrubbers.<BR>\n\t\tThere is a bottled version which is very different<BR>\n\t\t\tfrom the version found in canisters!<BR>\n<BR>\n\t\tWARNING: Highly Flammable. Keep away from heat sources<BR>\n\t\texcept in a enclosed fire area!<BR>\n\t\tWARNING: It is a crime to use this without authorization.<BR>\nKnown Onboard Anti-Toxin:<BR>\n\tAnti-Toxin Type 01P: Works against Grade A Phoron.<BR>\n\t\tBest if injected directly into bloodstream.<BR>\n\t\tA full injection is in every regular Med-Kit.<BR>\n\t\tSpecial toxin Kits hold around 7.<BR>\n<BR>\nKnown Onboard Chemicals (other):<BR>\n\tRejuvenation T#001:<BR>\n\t\tEven 1 unit injected directly into the bloodstream<BR>\n\t\t\twill cure paralysis and sleep phoron.<BR>\n\t\tIf administered to a dying patient it will prevent<BR>\n\t\t\tfurther damage for about units*3 seconds.<BR>\n\t\t\tit will not cure them or allow them to be cured.<BR>\n\t\tIt can be administeredd to a non-dying patient<BR>\n\t\t\tbut the chemicals disappear just as fast.<BR>\n\tSleep Toxin T#054:<BR>\n\t\t5 units wilkl induce precisely 1 minute of sleep.<BR>\n\t\t\tThe effect are cumulative.<BR>\n\t\tWARNING: It is a crime to use this without authorization"
/obj/item/weapon/paper/courtroom
name = "A Crash Course in Legal SOP on SS13"

View File

@@ -13,21 +13,21 @@
/*
process()
if(P)
if(P.air_contents.toxins <= 0)
P.air_contents.toxins = 0
if(P.air_contents.phoron <= 0)
P.air_contents.phoron = 0
eject()
else
P.air_contents.toxins -= 0.001
P.air_contents.phoron -= 0.001
return
*/
HasFuel()
if(P.air_contents.toxins >= 0.1)
if(P.air_contents.phoron >= 0.1)
return 1
return 0
UseFuel()
P.air_contents.toxins -= 0.01
P.air_contents.phoron -= 0.01
return
New()
@@ -56,7 +56,7 @@
examine()
..()
usr << "\blue The generator has [P.air_contents.toxins] units of fuel left, producing [power_gen] per cycle."
usr << "\blue The generator has [P.air_contents.phoron] units of fuel left, producing [power_gen] per cycle."
if(crit_fail) usr << "\red The generator seems to have broken down."
handleInactive()
@@ -144,7 +144,7 @@
else
dat += text("Generator: <A href='?src=\ref[src];action=enable'>Off</A><br>")
if(P)
dat += text("Currently loaded phoron tank: [P.air_contents.toxins]<br>")
dat += text("Currently loaded phoron tank: [P.air_contents.phoron]<br>")
else
dat += text("No phoron tank currently loaded.<br>")
dat += text("Power output: <A href='?src=\ref[src];action=lower_power'>-</A> [power_gen * power_output] <A href='?src=\ref[src];action=higher_power'>+</A><br>")

View File

@@ -27,9 +27,9 @@ var/global/list/rad_collectors = list()
/obj/machinery/power/rad_collector/process()
if(P)
if(P.air_contents.toxins <= 0)
if(P.air_contents.phoron <= 0)
investigate_log("<font color='red'>out of fuel</font>.","singulo")
P.air_contents.toxins = 0
P.air_contents.phoron = 0
eject()
else
P.air_contents.adjust(tx = -0.001*drainratio)
@@ -42,7 +42,7 @@ var/global/list/rad_collectors = list()
toggle_power()
user.visible_message("[user.name] turns the [src.name] [active? "on":"off"].", \
"You turn the [src.name] [active? "on":"off"].")
investigate_log("turned [active?"<font color='green'>on</font>":"<font color='red'>off</font>"] by [user.key]. [P?"Fuel: [round(P.air_contents.toxins/0.29)]%":"<font color='red'>It is empty</font>"].","singulo")
investigate_log("turned [active?"<font color='green'>on</font>":"<font color='red'>off</font>"] by [user.key]. [P?"Fuel: [round(P.air_contents.phoron/0.29)]%":"<font color='red'>It is empty</font>"].","singulo")
return
else
user << "\red The controls are locked!"
@@ -121,7 +121,7 @@ var/global/list/rad_collectors = list()
/obj/machinery/power/rad_collector/proc/receive_pulse(var/pulse_strength)
if(P && active)
var/power_produced = 0
power_produced = P.air_contents.toxins*pulse_strength*20
power_produced = P.air_contents.phoron*pulse_strength*20
add_avail(power_produced)
last_power = power_produced
return

View File

@@ -197,7 +197,7 @@ obj/item/weapon/gun/energy/staff/focus
/obj/item/weapon/gun/energy/toxgun
name = "phoron pistol"
desc = "A specialized firearm designed to fire lethal bolts of toxins."
desc = "A specialized firearm designed to fire lethal bolts of phoron."
icon_state = "toxgun"
fire_sound = 'sound/effects/stealthoff.ogg'
w_class = 3.0

View File

@@ -1186,7 +1186,7 @@ datum
var/datum/gas_mixture/napalm = new
napalm.toxins = 25
napalm.phoron = 25
napalm.temperature = 1400
target_tile.assume_air(napalm)
@@ -1651,10 +1651,10 @@ datum
required_reagents = list("tequilla" = 2, "orangejuice" = 1)
result_amount = 3
toxins_special
phoron_special
name = "Toxins Special"
id = "toxinsspecial"
result = "toxinsspecial"
id = "phoronspecial"
result = "phoronspecial"
required_reagents = list("rum" = 2, "vermouth" = 1, "phoron" = 2)
result_amount = 5

View File

@@ -158,8 +158,8 @@
icon_state = "tequillasunriseglass"
name = "Tequilla Sunrise"
desc = "Oh great, now you feel nostalgic about sunrises back on Terra..."
if("toxinsspecial")
icon_state = "toxinsspecialglass"
if("phoronspecial")
icon_state = "phoronspecialglass"
name = "Toxins Special"
desc = "Whoah, this thing is on FIRE"
if("beepskysmash")

View File

@@ -1567,7 +1567,7 @@ datum/design/stunshell
datum/design/phoronpistol
name = "phoron pistol"
desc = "A specialized firearm designed to fire lethal bolts of toxins."
desc = "A specialized firearm designed to fire lethal bolts of phoron."
id = "ppistol"
req_tech = list("combat" = 5, "phorontech" = 4)
build_type = PROTOLATHE
@@ -1830,14 +1830,14 @@ datum/design/cart_mime
build_path = "/obj/item/weapon/cartridge/mime"
*/
datum/design/cart_toxins
datum/design/cart_science
name = "Signal Ace 2 Cartridge"
desc = "A data cartridge for portable microcomputers."
id = "cart_toxins"
id = "cart_science"
req_tech = list("engineering" = 2, "powerstorage" = 3)
build_type = PROTOLATHE
materials = list("$metal" = 50, "$glass" = 50)
build_path = "/obj/item/weapon/cartridge/toxins"
build_path = "/obj/item/weapon/cartridge/science"
datum/design/cart_quartermaster
name = "Space Parts & Space Vendors Cartridge"
desc = "A data cartridge for portable microcomputers."

View File

@@ -143,7 +143,7 @@ var/list/valid_secondary_effect_types = list(\
else if(env.temperature > 375)
trigger_hot = 1
if(env.toxins >= 10)
if(env.phoron >= 10)
trigger_phoron = 1
if(env.oxygen >= 10)
trigger_oxy = 1

View File

@@ -14,10 +14,10 @@
if(holder)
var/datum/gas_mixture/env = holder.loc.return_air()
if(env)
env.toxins += rand(2,15)
env.phoron += rand(2,15)
/datum/artifact_effect/gasphoron/DoEffectAura()
if(holder)
var/datum/gas_mixture/env = holder.loc.return_air()
if(env && env.total_moles < max_pressure)
env.toxins += pick(0, 0, 0.1, rand())
env.phoron += pick(0, 0, 0.1, rand())

View File

@@ -172,7 +172,7 @@
removed.temperature = max(0, min(removed.temperature, 2500))
//Calculate how much gas to release
removed.toxins += max(device_energy / PHORON_RELEASE_MODIFIER, 0)
removed.phoron += max(device_energy / PHORON_RELEASE_MODIFIER, 0)
removed.oxygen += max((device_energy + removed.temperature - T0C) / OXYGEN_RELEASE_MODIFIER, 0)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 679 B

After

Width:  |  Height:  |  Size: 709 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 KiB

After

Width:  |  Height:  |  Size: 225 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 51 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -380,7 +380,7 @@ Used In File(s): \code\game\objects\items\devices\PDA\PDA.dm
{{:~string('<span class="{0}">{1}%</span>', aircontents.carbon_dioxide > 5 ? 'bad' : 'good' , aircontents.carbon_dioxide)}}
</div>
<div class="itemLabel">
phoron:
Phoron:
</div>
<div class = "itemContent">
{{:~string('<span class="{0}">{1}%</span>', aircontents.phoron > 0 ? 'bad' : 'good' , aircontents.phoron)}}