From 662aba8e00ec63b20e5b65157b7398b99e7c541e Mon Sep 17 00:00:00 2001
From: Swan <122107181+NiceNiceSwan@users.noreply.github.com>
Date: Thu, 12 Dec 2024 18:04:52 +0100
Subject: [PATCH 01/32] added lipoifium
---
GainStation13/code/__DEFINES/atmospherics.dm | 1 +
.../code/modules/atmospherics/auxgm/gas_types.dm | 4 ++++
.../atmospherics/gasmixtures/reactions.dm | 16 ++++++++++++++++
tgstation.dme | 3 +++
4 files changed, 24 insertions(+)
create mode 100644 GainStation13/code/__DEFINES/atmospherics.dm
create mode 100644 GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
create mode 100644 GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
diff --git a/GainStation13/code/__DEFINES/atmospherics.dm b/GainStation13/code/__DEFINES/atmospherics.dm
new file mode 100644
index 0000000000..6943c06b29
--- /dev/null
+++ b/GainStation13/code/__DEFINES/atmospherics.dm
@@ -0,0 +1 @@
+#define GAS_FAT "lipoifium"
diff --git a/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
new file mode 100644
index 0000000000..6c5f6dc048
--- /dev/null
+++ b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
@@ -0,0 +1,4 @@
+/datum/gas/lipoifium
+ id = GAS_FAT
+ specific_heat = 20
+ name = "Lipoifium"
diff --git a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
new file mode 100644
index 0000000000..bc84827e54
--- /dev/null
+++ b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
@@ -0,0 +1,16 @@
+/datum/gas_reaction/lipoifium_formation
+ priority = 12345
+ name = "Lipoifium Formation"
+ id = "lipoifium_formation"
+
+/datum/gas_reaction/lipoifium_formation/init_reqs()
+ min_requirements = list(
+ GAS_PLASMA = 20,
+ GAS_N2 = 20
+ )
+
+/datum/gas_reaction/lipoifium_formation/react(datum/gas_mixture/air)
+ //var/temperature = air.return_temperature()
+ air.adjust_moles(GAS_FAT, 1)
+ air.adjust_moles(GAS_PLASMA, -1)
+ air.adjust_moles(GAS_N2, -1)
diff --git a/tgstation.dme b/tgstation.dme
index 6255779b05..e64ca33ff5 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -4238,4 +4238,7 @@
#include "modular_citadel\code\modules\vectorcrafts\vectorcraft.dm"
#include "modular_citadel\code\modules\vectorcrafts\vectortruck.dm"
#include "modular_citadel\code\modules\vectorcrafts\vectorvariants.dm"
+#include "GainStation13\code\__DEFINES\atmospherics.dm"
+#include "GainStation13\code\modules\atmospherics\auxgm\gas_types.dm"
+#include "GainStation13\code\modules\atmospherics\gasmixtures\reactions.dm"
// END_INCLUDE
From fc95da1557e8ace3db1a2c3c69260f55e7f3755b Mon Sep 17 00:00:00 2001
From: Swan <122107181+NiceNiceSwan@users.noreply.github.com>
Date: Thu, 12 Dec 2024 19:56:29 +0100
Subject: [PATCH 02/32] added TODO's
---
.../code/modules/atmospherics/gasmixtures/reactions.dm | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
index bc84827e54..79776a9ee4 100644
--- a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
+++ b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
@@ -1,16 +1,17 @@
/datum/gas_reaction/lipoifium_formation
- priority = 12345
+ priority = 12345 // TODO: change this shit
name = "Lipoifium Formation"
id = "lipoifium_formation"
/datum/gas_reaction/lipoifium_formation/init_reqs()
- min_requirements = list(
+ min_requirements = list(// TODO: change this shit
GAS_PLASMA = 20,
GAS_N2 = 20
)
/datum/gas_reaction/lipoifium_formation/react(datum/gas_mixture/air)
//var/temperature = air.return_temperature()
+ // TODO: figure out what the fuck adjust_moles do
air.adjust_moles(GAS_FAT, 1)
air.adjust_moles(GAS_PLASMA, -1)
air.adjust_moles(GAS_N2, -1)
From 74a33d5c7c31d397357a0b7bf90cf8df5ff8a2af Mon Sep 17 00:00:00 2001
From: Swan <122107181+NiceNiceSwan@users.noreply.github.com>
Date: Thu, 12 Dec 2024 19:56:52 +0100
Subject: [PATCH 03/32] added lipoifium breathing
---
GainStation13/code/mechanics/lipoifium.dm | 14 ++++++++++++++
tgstation.dme | 1 +
2 files changed, 15 insertions(+)
create mode 100644 GainStation13/code/mechanics/lipoifium.dm
diff --git a/GainStation13/code/mechanics/lipoifium.dm b/GainStation13/code/mechanics/lipoifium.dm
new file mode 100644
index 0000000000..55a03ae3cb
--- /dev/null
+++ b/GainStation13/code/mechanics/lipoifium.dm
@@ -0,0 +1,14 @@
+/obj/item/organ/lungs/proc/lipoifium_breathing(datum/gas_mixture/breath, mob/living/carbon/human/H)
+ if(breath)
+ var/pressure = breath.return_pressure()
+ var/total_moles = breath.total_moles()
+ #define PP_MOLES(X) ((X / total_moles) * pressure)
+ #define PP(air, gas) PP_MOLES(air.get_moles(gas))
+ var/gas_breathed = PP(breath, GAS_FAT)
+ if(gas_breathed > 0)
+ H.adjust_fatness(5 * gas_breathed)
+ breath.adjust_moles(GAS_FAT, -5 * gas_breathed)
+
+/obj/item/organ/lungs/check_breath(datum/gas_mixture/breath, mob/living/carbon/human/H)
+ lipoifium_breathing(breath, H)
+ . = ..()
diff --git a/tgstation.dme b/tgstation.dme
index e64ca33ff5..50c6214c03 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -4241,4 +4241,5 @@
#include "GainStation13\code\__DEFINES\atmospherics.dm"
#include "GainStation13\code\modules\atmospherics\auxgm\gas_types.dm"
#include "GainStation13\code\modules\atmospherics\gasmixtures\reactions.dm"
+#include "GainStation13\code\mechanics\lipoifium.dm"
// END_INCLUDE
From bab6f16e9dbfb06811cb1a3deb5858b44ecac778 Mon Sep 17 00:00:00 2001
From: Swan <122107181+NiceNiceSwan@users.noreply.github.com>
Date: Fri, 13 Dec 2024 13:38:20 +0100
Subject: [PATCH 04/32] added odor and overlay hopefully
---
GainStation13/code/mechanics/lipoifium.dm | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/GainStation13/code/mechanics/lipoifium.dm b/GainStation13/code/mechanics/lipoifium.dm
index 55a03ae3cb..858e93e5be 100644
--- a/GainStation13/code/mechanics/lipoifium.dm
+++ b/GainStation13/code/mechanics/lipoifium.dm
@@ -6,8 +6,10 @@
#define PP(air, gas) PP_MOLES(air.get_moles(gas))
var/gas_breathed = PP(breath, GAS_FAT)
if(gas_breathed > 0)
- H.adjust_fatness(5 * gas_breathed)
- breath.adjust_moles(GAS_FAT, -5 * gas_breathed)
+ // investigate_log("Supermatter shard consumed by singularity.", INVESTIGATE_SINGULO)
+ // message_admins("gas breathed is: [gas_breathed]")
+ H.adjust_fatness(gas_breathed)
+ breath.adjust_moles(GAS_FAT, -gas_breathed)
/obj/item/organ/lungs/check_breath(datum/gas_mixture/breath, mob/living/carbon/human/H)
lipoifium_breathing(breath, H)
From 2e19d2d97cc7c7077aa7ba19ba129af2b47777cb Mon Sep 17 00:00:00 2001
From: Swan <122107181+NiceNiceSwan@users.noreply.github.com>
Date: Fri, 13 Dec 2024 13:38:51 +0100
Subject: [PATCH 05/32] added odor and overlay hopefully
---
GainStation13/code/modules/atmospherics/auxgm/gas_types.dm | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
index 6c5f6dc048..6c20216ef5 100644
--- a/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
+++ b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
@@ -2,3 +2,8 @@
id = GAS_FAT
specific_heat = 20
name = "Lipoifium"
+ moles_visible = MOLES_GAS_VISIBLE
+ // gas_overlay = "miasma"
+ color = "#963"
+ odor = "lard"
+
From f5717c43b57938ad212529b0ff05aefec65558f0 Mon Sep 17 00:00:00 2001
From: Swan <122107181+NiceNiceSwan@users.noreply.github.com>
Date: Sat, 14 Dec 2024 19:54:44 +0100
Subject: [PATCH 06/32] changed requirements from plasma and N2 to BZ and trit
---
.../code/modules/atmospherics/gasmixtures/reactions.dm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
index 79776a9ee4..0057a6e6fb 100644
--- a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
+++ b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
@@ -5,8 +5,8 @@
/datum/gas_reaction/lipoifium_formation/init_reqs()
min_requirements = list(// TODO: change this shit
- GAS_PLASMA = 20,
- GAS_N2 = 20
+ GAS_BZ = 15,
+ GAS_TRITIUM = 15
)
/datum/gas_reaction/lipoifium_formation/react(datum/gas_mixture/air)
From 960d69e9d36e4fdc9fc4d5b741d68675b41ba52f Mon Sep 17 00:00:00 2001
From: Swan <122107181+NiceNiceSwan@users.noreply.github.com>
Date: Sat, 14 Dec 2024 20:40:47 +0100
Subject: [PATCH 07/32] multiplied weight gain by five and made the code more
readeable (?)
---
GainStation13/code/mechanics/lipoifium.dm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/GainStation13/code/mechanics/lipoifium.dm b/GainStation13/code/mechanics/lipoifium.dm
index 858e93e5be..1d2c561027 100644
--- a/GainStation13/code/mechanics/lipoifium.dm
+++ b/GainStation13/code/mechanics/lipoifium.dm
@@ -3,12 +3,13 @@
var/pressure = breath.return_pressure()
var/total_moles = breath.total_moles()
#define PP_MOLES(X) ((X / total_moles) * pressure)
- #define PP(air, gas) PP_MOLES(air.get_moles(gas))
- var/gas_breathed = PP(breath, GAS_FAT)
+ var/gas_breathed = PP_MOLES(breath.get_moles(GAS_FAT))
+ // #define PP(air, gas) PP_MOLES(air.get_moles(gas))
+ // var/gas_breathed = PP(breath, GAS_FAT)
if(gas_breathed > 0)
// investigate_log("Supermatter shard consumed by singularity.", INVESTIGATE_SINGULO)
// message_admins("gas breathed is: [gas_breathed]")
- H.adjust_fatness(gas_breathed)
+ H.adjust_fatness(5 * gas_breathed)
breath.adjust_moles(GAS_FAT, -gas_breathed)
/obj/item/organ/lungs/check_breath(datum/gas_mixture/breath, mob/living/carbon/human/H)
From 401262174658ba1eb7a9248c52d705cd34311022 Mon Sep 17 00:00:00 2001
From: Swan <122107181+NiceNiceSwan@users.noreply.github.com>
Date: Sat, 14 Dec 2024 20:56:21 +0100
Subject: [PATCH 08/32] Added atmos gasses WG option
---
GainStation13/code/modules/client/preferences/preferences.dm | 2 ++
1 file changed, 2 insertions(+)
diff --git a/GainStation13/code/modules/client/preferences/preferences.dm b/GainStation13/code/modules/client/preferences/preferences.dm
index 28bc61c2a1..4919d3703e 100644
--- a/GainStation13/code/modules/client/preferences/preferences.dm
+++ b/GainStation13/code/modules/client/preferences/preferences.dm
@@ -15,6 +15,8 @@
var/weight_gain_viruses = FALSE
///Weight gain from nanites
var/weight_gain_nanites = FALSE
+ //Weight gain from atmos gasses
+ var/weight_gain_atmos = FALSE
///Blueberry Inflation
var/blueberry_inflation = FALSE
///Extreme weight gain
From ac2af85ffd8042b173206235b4b5505eff2fa277 Mon Sep 17 00:00:00 2001
From: Swan <122107181+NiceNiceSwan@users.noreply.github.com>
Date: Sat, 14 Dec 2024 21:02:58 +0100
Subject: [PATCH 09/32] added atmos WG prefs
---
code/modules/client/preferences.dm | 3 +++
1 file changed, 3 insertions(+)
diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index 47cf57175b..060bd31a1c 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -1411,6 +1411,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += "Magic:[weight_gain_magic == TRUE ? "Enabled" : "Disabled"]
"
dat += "Viruses:[weight_gain_viruses == TRUE ? "Enabled" : "Disabled"]
"
dat += "Nanites:[weight_gain_nanites == TRUE ? "Enabled" : "Disabled"]
"
+ dat += "Atmos gasses:[weight_gain_atmos == TRUE ? "Enabled" : "Disabled"]
"
dat += ""
dat +="
"
@@ -3458,6 +3459,8 @@ GLOBAL_LIST_EMPTY(preferences_datums)
weight_gain_viruses = !weight_gain_viruses
if("weight_gain_nanites")
weight_gain_nanites = !weight_gain_nanites
+ if("weight_gain_atmos")
+ weight_gain_atmos = !weight_gain_atmos
if("weight_gain_extreme")
weight_gain_extreme = !weight_gain_extreme
if("weight_gain_persistent")
From 00b06c66b6c08c6e0b6049d3e03727cb3df83412 Mon Sep 17 00:00:00 2001
From: Swan <122107181+NiceNiceSwan@users.noreply.github.com>
Date: Sat, 14 Dec 2024 21:16:15 +0100
Subject: [PATCH 10/32] added atmos WG prefs
---
GainStation13/code/mechanics/fatness.dm | 4 ++++
GainStation13/code/mechanics/lipoifium.dm | 6 ++----
code/__DEFINES/misc.dm | 1 +
code/modules/client/preferences_savefile.dm | 2 ++
4 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/GainStation13/code/mechanics/fatness.dm b/GainStation13/code/mechanics/fatness.dm
index f845f50b68..b2c370571f 100644
--- a/GainStation13/code/mechanics/fatness.dm
+++ b/GainStation13/code/mechanics/fatness.dm
@@ -124,6 +124,10 @@ GLOBAL_LIST_INIT(uncapped_resize_areas, list(/area/command/bridge, /area/mainten
if(!client?.prefs?.weight_gain_nanites)
return FALSE
+ if(FATTENING_TYPE_ATMOS)
+ if(!client?.prefs?.weight_gain_atmos)
+ return FALSE
+
if(FATTENING_TYPE_WEIGHT_LOSS)
if(HAS_TRAIT(src, TRAIT_WEIGHT_LOSS_IMMUNE))
return FALSE
diff --git a/GainStation13/code/mechanics/lipoifium.dm b/GainStation13/code/mechanics/lipoifium.dm
index 1d2c561027..bca6497c9e 100644
--- a/GainStation13/code/mechanics/lipoifium.dm
+++ b/GainStation13/code/mechanics/lipoifium.dm
@@ -3,13 +3,11 @@
var/pressure = breath.return_pressure()
var/total_moles = breath.total_moles()
#define PP_MOLES(X) ((X / total_moles) * pressure)
- var/gas_breathed = PP_MOLES(breath.get_moles(GAS_FAT))
+ var/gas_breathed = PP_MOLES(breath.get_moles(GAS_FAT)) // this does the same thing as the bit below but I think this is more readable
// #define PP(air, gas) PP_MOLES(air.get_moles(gas))
// var/gas_breathed = PP(breath, GAS_FAT)
if(gas_breathed > 0)
- // investigate_log("Supermatter shard consumed by singularity.", INVESTIGATE_SINGULO)
- // message_admins("gas breathed is: [gas_breathed]")
- H.adjust_fatness(5 * gas_breathed)
+ H.adjust_fatness(5 * gas_breathed, FATTENING_TYPE_ATMOS)
breath.adjust_moles(GAS_FAT, -gas_breathed)
/obj/item/organ/lungs/check_breath(datum/gas_mixture/breath, mob/living/carbon/human/H)
diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm
index e10e19c1c5..d914f07c15 100644
--- a/code/__DEFINES/misc.dm
+++ b/code/__DEFINES/misc.dm
@@ -593,6 +593,7 @@ GLOBAL_LIST_INIT(pda_reskins, list(
#define FATTENING_TYPE_MAGIC "magic"
#define FATTENING_TYPE_VIRUS "virus"
#define FATTENING_TYPE_NANITES "nanites"
+#define FATTENING_TYPE_ATMOS "atmos" // yeah I'm taking the name atmos instead of gasses, because fuck you I'm not calling my pref "inflation type gas", some people will get confused, if you wanna do inflation just call it that lol
#define FATTENING_TYPE_RADIATIONS "radiations"
#define FATTENING_TYPE_WEIGHT_LOSS "weight_loss"
#define FATTENING_TYPE_ALMIGHTY "almighty" //This ignores prefs, please only use this for smites and other admin controlled instances.
diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm
index df44203998..09e7a10661 100644
--- a/code/modules/client/preferences_savefile.dm
+++ b/code/modules/client/preferences_savefile.dm
@@ -925,6 +925,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
S["weight_gain_magic"] >> weight_gain_magic
S["weight_gain_viruses"] >> weight_gain_viruses
S["weight_gain_nanites"] >> weight_gain_nanites
+ S["weight_gain_atmos"] >> weight_gain_atmos
S["weight_gain_weapons"] >> weight_gain_weapons
S["weight_gain_extreme"] >> weight_gain_extreme
S["weight_gain_persistent"] >> weight_gain_persistent
@@ -1220,6 +1221,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
WRITE_FILE(S["weight_gain_magic"], weight_gain_magic)
WRITE_FILE(S["weight_gain_viruses"], weight_gain_viruses)
WRITE_FILE(S["weight_gain_nanites"], weight_gain_nanites)
+ WRITE_FILE(S["weight_gain_atmos"], weight_gain_atmos)
WRITE_FILE(S["weight_gain_chems"], weight_gain_chems)
WRITE_FILE(S["weight_gain_weapons"], weight_gain_weapons)
WRITE_FILE(S["weight_gain_extreme"], weight_gain_extreme)
From 7bcb2727ea74b3bb84c90b75524e7d8975495cca Mon Sep 17 00:00:00 2001
From: Swan
Date: Sun, 15 Dec 2024 14:41:57 +0100
Subject: [PATCH 11/32] added lipoifium canister
---
code/modules/atmospherics/machinery/portable/canister.dm | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/code/modules/atmospherics/machinery/portable/canister.dm b/code/modules/atmospherics/machinery/portable/canister.dm
index 4432b497d0..18b07095bf 100644
--- a/code/modules/atmospherics/machinery/portable/canister.dm
+++ b/code/modules/atmospherics/machinery/portable/canister.dm
@@ -61,6 +61,7 @@
"miasma" = /obj/machinery/portable_atmospherics/canister/miasma,
"methane" = /obj/machinery/portable_atmospherics/canister/methane,
"methyl bromide" = /obj/machinery/portable_atmospherics/canister/methyl_bromide
+ "lipoifium" = /obj/machinery/portable_atmospherics/canister/lipoifium
)
/obj/machinery/portable_atmospherics/canister/interact(mob/user)
@@ -167,6 +168,12 @@
icon_state = "purplecyan"
gas_type = GAS_METHYL_BROMIDE
+/obj/machinery/portable_atmospherics/canister/lipoifium
+ name = "lipoifium canister"
+ desc = "Lipoifium. Inhaling causes quick buildup of adipose in one's body."
+ icon_state = "yellowblack"
+ gas_type = GAS_FAT
+
/obj/machinery/portable_atmospherics/canister/proc/get_time_left()
if(timing)
. = round(max(0, valve_timer - world.time) / 10, 1)
From 283a8fcedb44fd6ef6c3bb80054bd33a29cd36dd Mon Sep 17 00:00:00 2001
From: Swan
Date: Sun, 15 Dec 2024 16:33:47 +0100
Subject: [PATCH 12/32] moved the includes (don't know how it did this, it
happened by itself...)
---
tgstation.dme | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/tgstation.dme b/tgstation.dme
index 50c6214c03..29796f6586 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -3922,6 +3922,7 @@
#include "code\modules\VR\vr_sleeper.dm"
#include "code\modules\zombie\items.dm"
#include "code\modules\zombie\organs.dm"
+#include "GainStation13\code\__DEFINES\atmospherics.dm"
#include "GainStation13\code\__HELPERS\global_lists.dm"
#include "GainStation13\code\__HELPERS\transformation.dm"
#include "GainStation13\code\clothing\accessory.dm"
@@ -3986,6 +3987,7 @@
#include "GainStation13\code\mechanics\fattening_trap.dm"
#include "GainStation13\code\mechanics\helplessness.dm"
#include "GainStation13\code\mechanics\infestation.dm"
+#include "GainStation13\code\mechanics\lipoifium.dm"
#include "GainStation13\code\mechanics\metal_cruncher.dm"
#include "GainStation13\code\mechanics\permanent_fat.dm"
#include "GainStation13\code\mechanics\recipes.dm"
@@ -4005,6 +4007,9 @@
#include "GainStation13\code\mobs\emote.dm"
#include "GainStation13\code\mobs\races\caloritegolem.dm"
#include "GainStation13\code\modules\arousal\arousal.dm"
+#include "GainStation13\code\modules\atmospherics\auxgm\gas_types.dm"
+#include "GainStation13\code\modules\atmospherics\gasmixtures\reactions.dm"
+#include "GainStation13\code\modules\atmospherics\machinery\portable\canister.dm"
#include "GainStation13\code\modules\cargo\packs.dm"
#include "GainStation13\code\modules\client\border_control.dm"
#include "GainStation13\code\modules\client\loadout\head.dm"
@@ -4238,8 +4243,4 @@
#include "modular_citadel\code\modules\vectorcrafts\vectorcraft.dm"
#include "modular_citadel\code\modules\vectorcrafts\vectortruck.dm"
#include "modular_citadel\code\modules\vectorcrafts\vectorvariants.dm"
-#include "GainStation13\code\__DEFINES\atmospherics.dm"
-#include "GainStation13\code\modules\atmospherics\auxgm\gas_types.dm"
-#include "GainStation13\code\modules\atmospherics\gasmixtures\reactions.dm"
-#include "GainStation13\code\mechanics\lipoifium.dm"
// END_INCLUDE
From db570bcd55f2fc4d96509e7b01db356a89e0e109 Mon Sep 17 00:00:00 2001
From: Swan
Date: Sun, 15 Dec 2024 16:34:28 +0100
Subject: [PATCH 13/32] added GS13 edit comments, removed lipoifium canister
class and added icon change fix
---
.../atmospherics/machinery/portable/canister.dm | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/code/modules/atmospherics/machinery/portable/canister.dm b/code/modules/atmospherics/machinery/portable/canister.dm
index 18b07095bf..0c940d250d 100644
--- a/code/modules/atmospherics/machinery/portable/canister.dm
+++ b/code/modules/atmospherics/machinery/portable/canister.dm
@@ -60,8 +60,10 @@
"caution" = /obj/machinery/portable_atmospherics/canister,
"miasma" = /obj/machinery/portable_atmospherics/canister/miasma,
"methane" = /obj/machinery/portable_atmospherics/canister/methane,
- "methyl bromide" = /obj/machinery/portable_atmospherics/canister/methyl_bromide
- "lipoifium" = /obj/machinery/portable_atmospherics/canister/lipoifium
+ "methyl bromide" = /obj/machinery/portable_atmospherics/canister/methyl_bromide,
+ // GS13 - edit
+ "lipoifium" = /obj/machinery/portable_atmospherics/canister/lipoifium // :D
+ //GS13 - end edit
)
/obj/machinery/portable_atmospherics/canister/interact(mob/user)
@@ -168,12 +170,6 @@
icon_state = "purplecyan"
gas_type = GAS_METHYL_BROMIDE
-/obj/machinery/portable_atmospherics/canister/lipoifium
- name = "lipoifium canister"
- desc = "Lipoifium. Inhaling causes quick buildup of adipose in one's body."
- icon_state = "yellowblack"
- gas_type = GAS_FAT
-
/obj/machinery/portable_atmospherics/canister/proc/get_time_left()
if(timing)
. = round(max(0, valve_timer - world.time) / 10, 1)
@@ -403,6 +399,9 @@
investigate_log("was relabelled to [initial(replacement.name)] by [key_name(usr)].", INVESTIGATE_ATMOS)
name = initial(replacement.name)
desc = initial(replacement.desc)
+ // GS13 - edit
+ icon = initial(replacement.icon) // GS13 - added for the canister to change the icon file
+ // GS13 - end edit
icon_state = initial(replacement.icon_state)
if("restricted")
restricted = !restricted
From 9dc705805f9bdcee8d74bca27a78e7350b663c6a Mon Sep 17 00:00:00 2001
From: Swan
Date: Sun, 15 Dec 2024 16:34:49 +0100
Subject: [PATCH 14/32] added lipoifium
---
.../modules/atmospherics/machinery/portable/canister.dm | 6 ++++++
1 file changed, 6 insertions(+)
create mode 100644 GainStation13/code/modules/atmospherics/machinery/portable/canister.dm
diff --git a/GainStation13/code/modules/atmospherics/machinery/portable/canister.dm b/GainStation13/code/modules/atmospherics/machinery/portable/canister.dm
new file mode 100644
index 0000000000..edfe243db5
--- /dev/null
+++ b/GainStation13/code/modules/atmospherics/machinery/portable/canister.dm
@@ -0,0 +1,6 @@
+/obj/machinery/portable_atmospherics/canister/lipoifium
+ name = "lipoifium canister"
+ desc = "Lipoifium. Inhaling causes quick buildup of adipose in one's body."
+ icon = 'GainStation13/icons/obj/atmos.dmi'
+ icon_state = "yellowblack"
+ gas_type = GAS_FAT
From 065fc5c7da9373f210af21286aa46e183b8717cb Mon Sep 17 00:00:00 2001
From: Swan
Date: Sun, 15 Dec 2024 16:35:01 +0100
Subject: [PATCH 15/32] added textures
---
GainStation13/icons/obj/atmos.dmi | Bin 0 -> 711 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 GainStation13/icons/obj/atmos.dmi
diff --git a/GainStation13/icons/obj/atmos.dmi b/GainStation13/icons/obj/atmos.dmi
new file mode 100644
index 0000000000000000000000000000000000000000..f884f6ce7999d5c693331b26372e4f4f25bf9c13
GIT binary patch
literal 711
zcmV;&0yzDNP)HNJs#$uK;mz0Jyj?a{vHdQ~&^805mi-00011R#s-2GiJ;)W@Z3ew=6C$
z03ZMW2mk<5QUJwA;`{&r00DGTPE!Ct=GbNc004w~R9JLGWpiV4X>fFDZ*Bkpc$`yK
zaB_9`^iy#0_2eo`Eh^5;&r`5fFwryM;w;ZhDainGjE%TBGg33tGfE(w;*!LYR3KBS
zGBqbBzdR`?F*#d_i!&v&s2C_}$iNFLvJIxT3`lSVBY&*55Nx-H#fHN%v-c16Ufk}XIoBSMLpTacY
ze7;<+S3U3G1(>+GEHGuGL_
z94wA_2ve1KgSzVg4}lluoXPtG00|I)q(=ZHRnBU=^Z*bnhV@ftoe|&eFd_h8X59e7
z`wq|#;{=dJ-sv7-kwfNEs%0uKIliCMbSsRKyQ#Z4)7%_zkyLM?>~82^7Tmrf|VL(A8dtL3aJ
tVHt}EFDbv{IM*sv=tz0#_=EC)`T_`)9L|P*p}GJ7002ovPDHLkV1g5@Czk*K
literal 0
HcmV?d00001
From 9d4bedb0d15c576b678e978b5298b718a15bd6ed Mon Sep 17 00:00:00 2001
From: Swan
Date: Sun, 15 Dec 2024 16:48:51 +0100
Subject: [PATCH 16/32] changed color to be the same as lipoifier, added odor
strength
---
GainStation13/code/modules/atmospherics/auxgm/gas_types.dm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
index 6c20216ef5..9366047c3c 100644
--- a/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
+++ b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
@@ -4,6 +4,7 @@
name = "Lipoifium"
moles_visible = MOLES_GAS_VISIBLE
// gas_overlay = "miasma"
- color = "#963"
+ color = "#e2e1b1"
odor = "lard"
+ odor_strength = 5
From 5408a7b72e055f934343f6c5439457b55671b20b Mon Sep 17 00:00:00 2001
From: Swan
Date: Sun, 15 Dec 2024 16:57:30 +0100
Subject: [PATCH 17/32] changed comments
---
GainStation13/code/modules/atmospherics/auxgm/gas_types.dm | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
index 9366047c3c..243a6b030a 100644
--- a/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
+++ b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
@@ -3,8 +3,7 @@
specific_heat = 20
name = "Lipoifium"
moles_visible = MOLES_GAS_VISIBLE
- // gas_overlay = "miasma"
color = "#e2e1b1"
odor = "lard"
- odor_strength = 5
+ odor_strength = 20 // TODO: doesn't work for now
From 77d1f0f43f98cf83a99882351c10559521129837 Mon Sep 17 00:00:00 2001
From: Swan
Date: Sun, 15 Dec 2024 17:13:16 +0100
Subject: [PATCH 18/32] changed odor_strength to 2 but it STILL DOESN'T WORK
WHY DOESN'T IT WOOOOOOORK?!
---
GainStation13/code/modules/atmospherics/auxgm/gas_types.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
index 243a6b030a..86b8d6ca1d 100644
--- a/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
+++ b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
@@ -5,5 +5,5 @@
moles_visible = MOLES_GAS_VISIBLE
color = "#e2e1b1"
odor = "lard"
- odor_strength = 20 // TODO: doesn't work for now
+ odor_strength = 2 // TODO: doesn't work for now
From 7a779f389f3567afcff37908a295760c6239c424 Mon Sep 17 00:00:00 2001
From: Swan
Date: Sun, 15 Dec 2024 17:18:17 +0100
Subject: [PATCH 19/32] made priority a sane number, added max reaction temp,
changed comments
---
.../code/modules/atmospherics/gasmixtures/reactions.dm | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
index 0057a6e6fb..b36520cd38 100644
--- a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
+++ b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
@@ -1,17 +1,17 @@
/datum/gas_reaction/lipoifium_formation
- priority = 12345 // TODO: change this shit
+ priority = 7
name = "Lipoifium Formation"
id = "lipoifium_formation"
/datum/gas_reaction/lipoifium_formation/init_reqs()
- min_requirements = list(// TODO: change this shit
+ min_requirements = list(
+ "MAX_TEMP" = 100
GAS_BZ = 15,
GAS_TRITIUM = 15
)
/datum/gas_reaction/lipoifium_formation/react(datum/gas_mixture/air)
- //var/temperature = air.return_temperature()
- // TODO: figure out what the fuck adjust_moles do
+ // TODO: make the reaction exothermic, and make it more efficient at lower temperatures
air.adjust_moles(GAS_FAT, 1)
air.adjust_moles(GAS_PLASMA, -1)
air.adjust_moles(GAS_N2, -1)
From c84583f8177d2c6a990472d7b56e30365ce64687 Mon Sep 17 00:00:00 2001
From: Swan
Date: Sun, 15 Dec 2024 19:33:33 +0100
Subject: [PATCH 20/32] fixed an error
---
.../code/modules/atmospherics/gasmixtures/reactions.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
index b36520cd38..a68553cf8e 100644
--- a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
+++ b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
@@ -5,7 +5,7 @@
/datum/gas_reaction/lipoifium_formation/init_reqs()
min_requirements = list(
- "MAX_TEMP" = 100
+ "MAX_TEMP" = 100,
GAS_BZ = 15,
GAS_TRITIUM = 15
)
From ba9e7f8f25104efa61cefd4eb2d45458e5e3fd81 Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Sun, 15 Dec 2024 21:50:15 +0100
Subject: [PATCH 21/32] made the reaction exothermic, added efficiency based on
temperature
---
.../atmospherics/gasmixtures/reactions.dm | 20 ++++++++++++++++---
1 file changed, 17 insertions(+), 3 deletions(-)
diff --git a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
index a68553cf8e..ce34e8909b 100644
--- a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
+++ b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
@@ -12,6 +12,20 @@
/datum/gas_reaction/lipoifium_formation/react(datum/gas_mixture/air)
// TODO: make the reaction exothermic, and make it more efficient at lower temperatures
- air.adjust_moles(GAS_FAT, 1)
- air.adjust_moles(GAS_PLASMA, -1)
- air.adjust_moles(GAS_N2, -1)
+ var/temperature = air.return_temperature()
+ var/reaction_efficiency = 0
+ if (temperature <= 5)
+ reaction_efficiency = 1
+ else if (temperature >= 100)
+ return NO_REACTION
+ else
+ reaction_efficiency = -((temperature - 5) / 95) + 1 // will equal 1 at 5 kelvin, and will linearly fall until 0 at 100k
+
+ var/energy_released = reaction_efficiency*FIRE_CARBON_ENERGY_RELEASED
+ air.adjust_moles(GAS_FAT, reaction_efficiency)
+ air.adjust_moles(GAS_PLASMA, -reaction_efficiency / 2)
+ air.adjust_moles(GAS_N2, -reaction_efficiency / 2)
+ var/heat_capacity = air.heat_capacity()
+ air.set_temperature(max(temperature + energy_released / heat_capacity, TCMB))
+
+ return REACTING
From 1d8f9f9d31244e6d00e14bf4bcdf928982db0b66 Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Mon, 16 Dec 2024 19:46:03 +0100
Subject: [PATCH 22/32] made it so it doesn't blob you out immediately
---
GainStation13/code/mechanics/lipoifium.dm | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/GainStation13/code/mechanics/lipoifium.dm b/GainStation13/code/mechanics/lipoifium.dm
index bca6497c9e..aba3c24bcd 100644
--- a/GainStation13/code/mechanics/lipoifium.dm
+++ b/GainStation13/code/mechanics/lipoifium.dm
@@ -2,13 +2,22 @@
if(breath)
var/pressure = breath.return_pressure()
var/total_moles = breath.total_moles()
+ var/lipoifium_moles = breath.get_moles(GAS_FAT)
#define PP_MOLES(X) ((X / total_moles) * pressure)
- var/gas_breathed = PP_MOLES(breath.get_moles(GAS_FAT)) // this does the same thing as the bit below but I think this is more readable
+ var/gas_breathed = PP_MOLES(lipoifium_moles) // this does the same thing as the bit below but I think this is more readable
// #define PP(air, gas) PP_MOLES(air.get_moles(gas))
// var/gas_breathed = PP(breath, GAS_FAT)
if(gas_breathed > 0)
- H.adjust_fatness(5 * gas_breathed, FATTENING_TYPE_ATMOS)
+ // listen I know I can debug this but sometimes having this show up in chat without a pause is more convenient
+ // message_admins("Lipoifium pp is [gas_breathed]")
+ // message_admins("Lipoifium moles are [lipoifium_moles]")
+ H.adjust_fatness(2 * gas_breathed, FATTENING_TYPE_ATMOS)
breath.adjust_moles(GAS_FAT, -gas_breathed)
+ // TODO: the entire code below is a workaround for default odor not working
+ var/smell_chance = min(lipoifium_moles * 100 / total_moles, 20)
+ if(prob(smell_chance))
+ to_chat(owner, "You can smell lard.")
+
/obj/item/organ/lungs/check_breath(datum/gas_mixture/breath, mob/living/carbon/human/H)
lipoifium_breathing(breath, H)
From 900f825272f5950a15f70964ee30ab078bc8f962 Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Mon, 16 Dec 2024 20:45:56 +0100
Subject: [PATCH 23/32] adjusted odor strength and odor, if someone ever sees
it, we will know
---
GainStation13/code/modules/atmospherics/auxgm/gas_types.dm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
index 86b8d6ca1d..16d4690100 100644
--- a/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
+++ b/GainStation13/code/modules/atmospherics/auxgm/gas_types.dm
@@ -4,6 +4,6 @@
name = "Lipoifium"
moles_visible = MOLES_GAS_VISIBLE
color = "#e2e1b1"
- odor = "lard"
- odor_strength = 2 // TODO: doesn't work for now
+ odor = "that this is a function that wasn't working, but it now, for some reason, is. You should speak to the gods about this and the conditions under which it happened"
+ odor_strength = 1 // TODO: doesn't work for now
From 4ca74f52346d866e6d1bfac82fe84b8aa63bdbe7 Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Mon, 16 Dec 2024 20:54:44 +0100
Subject: [PATCH 24/32] described the odor problem
---
GainStation13/code/mechanics/lipoifium.dm | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/GainStation13/code/mechanics/lipoifium.dm b/GainStation13/code/mechanics/lipoifium.dm
index aba3c24bcd..f376645b05 100644
--- a/GainStation13/code/mechanics/lipoifium.dm
+++ b/GainStation13/code/mechanics/lipoifium.dm
@@ -14,6 +14,10 @@
H.adjust_fatness(2 * gas_breathed, FATTENING_TYPE_ATMOS)
breath.adjust_moles(GAS_FAT, -gas_breathed)
// TODO: the entire code below is a workaround for default odor not working
+ // The problem seems to be auxmos'es get_gasses function not acknowledging that lipoifium exists
+ // which is strange, considering that everything else regarding this gas and auxmos works
+ // I do not know what kind of spaghetti coding must be going on there, but I pray god has in his
+ // care the poor sods who have to work on that
var/smell_chance = min(lipoifium_moles * 100 / total_moles, 20)
if(prob(smell_chance))
to_chat(owner, "You can smell lard.")
From 5ceedf1b584f9bb115af8f4c2037f145ebc52ae3 Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Tue, 17 Dec 2024 08:06:06 +0100
Subject: [PATCH 25/32] changed the name of lipoifium file to fattening gasses
because I will be adding more
---
.../code/mechanics/{lipoifium.dm => fattening_gasses.dm} | 0
tgstation.dme | 2 +-
2 files changed, 1 insertion(+), 1 deletion(-)
rename GainStation13/code/mechanics/{lipoifium.dm => fattening_gasses.dm} (100%)
diff --git a/GainStation13/code/mechanics/lipoifium.dm b/GainStation13/code/mechanics/fattening_gasses.dm
similarity index 100%
rename from GainStation13/code/mechanics/lipoifium.dm
rename to GainStation13/code/mechanics/fattening_gasses.dm
diff --git a/tgstation.dme b/tgstation.dme
index 982f5ba153..9f77448603 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -3987,7 +3987,7 @@
#include "GainStation13\code\mechanics\fattening_trap.dm"
#include "GainStation13\code\mechanics\helplessness.dm"
#include "GainStation13\code\mechanics\infestation.dm"
-#include "GainStation13\code\mechanics\lipoifium.dm"
+#include "GainStation13/code/mechanics/fattening_gasses.dm"
#include "GainStation13\code\mechanics\metal_cruncher.dm"
#include "GainStation13\code\mechanics\permanent_fat.dm"
#include "GainStation13\code\mechanics\recipes.dm"
From 4651d639e9bfb5c398cad39226f9dec9769a7f68 Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Tue, 17 Dec 2024 09:45:59 +0100
Subject: [PATCH 26/32] added canister overlays. One day I'll move them around
---
GainStation13/icons/obj/atmos.dmi | Bin 711 -> 2068 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
diff --git a/GainStation13/icons/obj/atmos.dmi b/GainStation13/icons/obj/atmos.dmi
index f884f6ce7999d5c693331b26372e4f4f25bf9c13..4952aa314624ec6809c4377fa4a5ea8eafe2546a 100644
GIT binary patch
literal 2068
zcmZ{lXIRpU9>@QP<;a!d9;w+i8?Ng-&WuvXRVv~MLq!~^Wria#R8lEzxU;fhl$54P
zIWo7n$C2tG5=>AWr6S%_ILVGZ_r-mld(VCG{e542pWpYz=gs$;ueZCrtd=YQ0P-*o
z=&5ZF`6cO{+jpuo*>2nF@%~606nhbq5FL+;K7S4XQp#?O(qy~LAv+lM>pAYti0D&N
zy01KPaZx`FDtuI~!(gPRX~IW#0sSkcWrWG%_$AXH(gMZ@_3Wq?Fo=BFYap!R$q`q&
z$-Ahf-!8j(S{g|2N7Q{Z3p~iAJPNloAOXh*4)+@q&kOv@E=z#K{xnRF&4RNx0q;!Cd@yPSHyMkdLhI$UZ908&~o
z=n?;vGC`S-hjx%oUwhDwT#ye9zIRtvuc65cX1UYTiXErb@F?g&`Qtk4tR+O*l|{DS
zVd-i}qwi-p0hw3g>LhdeUyP3TSIkH7`!nxe`P8c%Z7Q4dK6{KlbZ>ZiG`v>>{i0n_
za!z<}K)6Y4=Mvi0ahdc`rKx8P_)x3)K!Mfxd*!50Y4<7QeW1rD+uybdXw3NS0G2t0
zTuEoMk@j4Ee^^j@lf8biL^gSZAo^5_ZoQ=9VFXWWqNHO%b{Nb`0x0w*7IgPs#tfGC
ze&06~PxPCGOMB+*Yynr`5yAnhsSRJuU~%5g-L}s`s)bzAEWwM!V&xiCbkE@6DHCC0
zc9AGk{tf8Ta#>8i5}rzch=8CH<`$7pQ{f+y
zyYC^qweZJRC)X0JXp&AYiKG)oU?O=}?vjCjGb%j2kX&8cg{
zoL0Q*r->DRXlLy+sk(ZTt8%pu(l+{Zx2vqcV8-=@k{@zNKa^J$#ENrxqu&vNW>E
zbcN;^ZGiFlbG1ZAcX#)BfWcraQ$O4Mc@n3w@zpPaGjodZ;q@=jYpJoDt&e$0cz+yW
z9HT@Zj76R-B87UfHZN?6(~fbbdeJDy+@2m3XceBE+&G`qOry~YR3}F3F__G(ihub0L8gqt$Tysd4Zn}?S=De1
znXhlXQ)>hRk`AGN_W8=)2{Uf
zgyoR!#zOV=y9YpipomBit2ilD+#go$EHihazbrrhY^r#Fr-HR!-+aV%U6QRVNtrmC&@B((2vKx1gheHy5b^oSHi8xDR2dq#L~lHhyOe
zj|z7y-1Aw*1|fX7nAeN_>2&ja!d8oBxo?CAn-!^pxN+T|!e}j9zhtwgDLzABto#CU
z^0fAAl;QyvbQlMLD3Enq;A2U_JJ{9Mm1Z!=KZ(w7I)M(snJ%9G@|WG(1=((~$h(In
zjk(jeSfuYR#WYMRkh1-JMFNP3h)@W)KdWz-r-T!)U3h~sEgI4m>)sAX>ze_u)?L&kics#+
zyBx8q`uQIE Erj$J
D*n!en
literal 711
zcmV;&0yzDNP)HNJs#$uK;mz0Jyj?a{vHdQ~&^805mi-00011R#s-2GiJ;)W@Z3ew=6C$
z03ZMW2mk<5QUJwA;`{&r00DGTPE!Ct=GbNc004w~R9JLGWpiV4X>fFDZ*Bkpc$`yK
zaB_9`^iy#0_2eo`Eh^5;&r`5fFwryM;w;ZhDainGjE%TBGg33tGfE(w;*!LYR3KBS
zGBqbBzdR`?F*#d_i!&v&s2C_}$iNFLvJIxT3`lSVBY&*55Nx-H#fHN%v-c16Ufk}XIoBSMLpTacY
ze7;<+S3U3G1(>+GEHGuGL_
z94wA_2ve1KgSzVg4}lluoXPtG00|I)q(=ZHRnBU=^Z*bnhV@ftoe|&eFd_h8X59e7
z`wq|#;{=dJ-sv7-kwfNEs%0uKIliCMbSsRKyQ#Z4)7%_zkyLM?>~82^7Tmrf|VL(A8dtL3aJ
tVHt}EFDbv{IM*sv=tz0#_=EC)`T_`)9L|P*p}GJ7002ovPDHLkV1g5@Czk*K
From 245c071c404526e53403a8c9e96e648944ec67ed Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Tue, 17 Dec 2024 09:46:22 +0100
Subject: [PATCH 27/32] placed the fattening_gasses inclusion to be alphabetic
---
tgstation.dme | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tgstation.dme b/tgstation.dme
index 9f77448603..3478a43ce9 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -3984,10 +3984,10 @@
#include "GainStation13\code\mechanics\calorite.dm"
#include "GainStation13\code\mechanics\fatness.dm"
#include "GainStation13\code\mechanics\fatrousal.dm"
+#include "GainStation13\code\mechanics\fattening_gasses.dm"
#include "GainStation13\code\mechanics\fattening_trap.dm"
#include "GainStation13\code\mechanics\helplessness.dm"
#include "GainStation13\code\mechanics\infestation.dm"
-#include "GainStation13/code/mechanics/fattening_gasses.dm"
#include "GainStation13\code\mechanics\metal_cruncher.dm"
#include "GainStation13\code\mechanics\permanent_fat.dm"
#include "GainStation13\code\mechanics\recipes.dm"
From abb10ca69594613344bc2c880b000a0d4205c7f7 Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Tue, 17 Dec 2024 09:46:50 +0100
Subject: [PATCH 28/32] clearing overlays before changing file
---
code/modules/atmospherics/machinery/portable/canister.dm | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/code/modules/atmospherics/machinery/portable/canister.dm b/code/modules/atmospherics/machinery/portable/canister.dm
index 0c940d250d..3085a56b9d 100644
--- a/code/modules/atmospherics/machinery/portable/canister.dm
+++ b/code/modules/atmospherics/machinery/portable/canister.dm
@@ -400,7 +400,11 @@
name = initial(replacement.name)
desc = initial(replacement.desc)
// GS13 - edit
- icon = initial(replacement.icon) // GS13 - added for the canister to change the icon file
+ cut_overlays() // removes all overlays (connector, tank...).
+ icon = initial(replacement.icon) // changes icon file
+ // you may notice that we do not add the overlays back after removing them,
+ // yet they stay when we relabel a can. How? I have no idea. But it works,
+ // and as such, I won't question it
// GS13 - end edit
icon_state = initial(replacement.icon_state)
if("restricted")
From 0d041fbf2e51c885ffe334184bc4786afacbf463 Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Tue, 17 Dec 2024 09:59:55 +0100
Subject: [PATCH 29/32] maybe would be nice if you removed the gasses you're
using to form it eh?
---
.../code/modules/atmospherics/gasmixtures/reactions.dm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
index ce34e8909b..4f19363da1 100644
--- a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
+++ b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
@@ -23,8 +23,8 @@
var/energy_released = reaction_efficiency*FIRE_CARBON_ENERGY_RELEASED
air.adjust_moles(GAS_FAT, reaction_efficiency)
- air.adjust_moles(GAS_PLASMA, -reaction_efficiency / 2)
- air.adjust_moles(GAS_N2, -reaction_efficiency / 2)
+ air.adjust_moles(GAS_TRITIUM, -reaction_efficiency / 2)
+ air.adjust_moles(GAS_BZ, -reaction_efficiency / 2)
var/heat_capacity = air.heat_capacity()
air.set_temperature(max(temperature + energy_released / heat_capacity, TCMB))
From 5f61b40feab0c6ea7128d374ff8f967b4110670c Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Tue, 17 Dec 2024 10:01:24 +0100
Subject: [PATCH 30/32] added check for when we ran out of fuel
---
.../code/modules/atmospherics/gasmixtures/reactions.dm | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
index 4f19363da1..1abd8e77ee 100644
--- a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
+++ b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
@@ -12,6 +12,8 @@
/datum/gas_reaction/lipoifium_formation/react(datum/gas_mixture/air)
// TODO: make the reaction exothermic, and make it more efficient at lower temperatures
+ if (air.get_moles(GAS_BZ) < 15 || air.get_moles(GAS_TRITIUM) < 15)
+ return NO_REACTION
var/temperature = air.return_temperature()
var/reaction_efficiency = 0
if (temperature <= 5)
@@ -21,7 +23,7 @@
else
reaction_efficiency = -((temperature - 5) / 95) + 1 // will equal 1 at 5 kelvin, and will linearly fall until 0 at 100k
- var/energy_released = reaction_efficiency*FIRE_CARBON_ENERGY_RELEASED
+ var/energy_released = reaction_efficiency * FIRE_CARBON_ENERGY_RELEASED
air.adjust_moles(GAS_FAT, reaction_efficiency)
air.adjust_moles(GAS_TRITIUM, -reaction_efficiency / 2)
air.adjust_moles(GAS_BZ, -reaction_efficiency / 2)
From 348a2496ddb94fc84b2bd9c5b116ede7239e3d84 Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Tue, 17 Dec 2024 10:18:48 +0100
Subject: [PATCH 31/32] adjusted temperatur calculations
---
.../code/modules/atmospherics/gasmixtures/reactions.dm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
index 1abd8e77ee..4be7b5f717 100644
--- a/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
+++ b/GainStation13/code/modules/atmospherics/gasmixtures/reactions.dm
@@ -11,7 +11,6 @@
)
/datum/gas_reaction/lipoifium_formation/react(datum/gas_mixture/air)
- // TODO: make the reaction exothermic, and make it more efficient at lower temperatures
if (air.get_moles(GAS_BZ) < 15 || air.get_moles(GAS_TRITIUM) < 15)
return NO_REACTION
var/temperature = air.return_temperature()
@@ -24,10 +23,11 @@
reaction_efficiency = -((temperature - 5) / 95) + 1 // will equal 1 at 5 kelvin, and will linearly fall until 0 at 100k
var/energy_released = reaction_efficiency * FIRE_CARBON_ENERGY_RELEASED
+ var/old_heat_capacity = air.heat_capacity()
air.adjust_moles(GAS_FAT, reaction_efficiency)
air.adjust_moles(GAS_TRITIUM, -reaction_efficiency / 2)
air.adjust_moles(GAS_BZ, -reaction_efficiency / 2)
- var/heat_capacity = air.heat_capacity()
- air.set_temperature(max(temperature + energy_released / heat_capacity, TCMB))
+ var/new_heat_capacity = air.heat_capacity()
+ air.set_temperature(max((temperature * old_heat_capacity + energy_released) / new_heat_capacity, TCMB))
return REACTING
From f2fe45093edb893b97c5a044d3304642887e30fa Mon Sep 17 00:00:00 2001
From: AbsFree
Date: Tue, 17 Dec 2024 15:11:31 +0100
Subject: [PATCH 32/32] changed texture
---
GainStation13/icons/obj/atmos.dmi | Bin 2068 -> 2104 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
diff --git a/GainStation13/icons/obj/atmos.dmi b/GainStation13/icons/obj/atmos.dmi
index 4952aa314624ec6809c4377fa4a5ea8eafe2546a..56c59d4f2447b5d1f9211f172d0e7ce47f519b58 100644
GIT binary patch
delta 1896
zcmb7?X*k=77RLWUVy%6tWn!yXLrQ0At%#tOQlu0mVYH|!#y&<9#M(d{2)l
z`E+zmu+o`mPno~avv3&uH)U6?ob;D~&r32!*ysacDPW1cX}$O)faSTl<57?;)iiE1zl*(jw}UM}NT8M{`62UY
z_|(?A22YC8?T+)?Kn0nDc48?{ue@t$_AtZJB{;3jED+H1We5Z~u`(1;z9){DAO?nwA=RL!(ss%qdTtABAEAVJOl(7vLorIq%2f{Ti@?ZO#q9o
z7E`Z|TJuBv=Hz*dKaD_uc~9O7xvwel_a;K+n@{$Z&+AYkq|!V-zwuW_pYy(Ak;7xc
zesv3+xplei1nf%N+^pt#Z7_1^o9?%ZlUWdcLVLv)qdV!m+NH7|B*gH-Jydfy34gY6
z;uj+hN4oh`IOxH9*M2Wg3BWX}%JH=~E#XKU=w~L!kN8TQqbncsYnSlNeEU!eK^}h2
zhVWCr_CCaK?SF@Wm%-vX?sxx0OhAeBM-%%IiZ8~c*o~w5B=Fk${T%?G0~?6QVwYOsz6Pcf(Cwr?+@xhB<14P2^bnDaGlxD
zF$uDBa&}GvqD)l^08&9goasylRX7|}B}90e`}u*FO`{y-TH$(I&^qK=Z=$p^ywmhO
zCGgRoUeZYR%>^u`xzL8e)|{bD3|dJ)x|Z%fkSj7O&u{trS02Wp
zP&8K`jbO*=CkXoeP#{nZRt_l_91xj`UzBoxdeCD=-x7b!0EG=yv2-hk6oDz$>8r2h
z(J2tw@RP6PjG?)P77M=@XNq*HT8hU9!#42~Sh+q?fo0F_F2eDE7KppG9LjmjH^44C
zv<^7v$U~8{c8HTeYRo<^aX77ER6p2G@A+I?PVukf*R@VZ5x@r2SwkjRvqR85dD3>m}$y&Ui|89mL|DdMvD!1lhT6D-nS%%}LPBr-c{mQ>_oDv+S
z$Q!r}eRR;3rZ?($mDVDSy^|tuMWZ2<#1=a01)yF0tp?Y`fx}pD&B5cs1Cg4wa)JQ}
zjaG-n*skIlYBZ0}2fv@Zeg?09;%Jkf+2WnyVvCkWQ)U)pl`*$Po}2VBj)H
z$QG<7_TR$A1&k;ir_yibj3T0_6+gR~%9@kK32FiWg+g(8nRv+{31+BcVj?5x
zZbbj>r6lm=(u_Q_`0#lW?8@E{1}GW@7maE$@WUSI^&=)3cT2`^ln16i^H3Rf_g=Fb
z^CulXCuW1K=gK||-jbBJxB!R4y{=d)p#6dNciJ!*X)~dsuCGruA|hh;YhvXH*r(Ym
z3@OJvh7tv3WMn`|f`Wo!OhKDHwOgIO+?AEUL`$eHT+0q&FwJN0;1I@iOS`GCw#>!z
zrWD;mgN%h9U@v?+-bVWqW@j;r9Ffa#q_3~i-Fx>^*t(zHwFq-J*NIRorR`3)LRaB*
z=$M8WgQWgHq5KOWB}@u2<|M)5n5%(v$R1uO3Qj=8dX^(*`Tj5Ke{uF3$iBN)Sz0cc
P4xE&uoh!Npg-iPfVq#>A
delta 1860
zcma)&S5#980*3ERP(UdWLNA8446agK>QV<#NTf<10|_Mr1YALygvq6c0Yz$TsDn{Z
znnbD63B3$a4~CvVC`vJ`8fwIKp7vpP&)NT+|LHsDd-$3W#fbc6ND*!Svu9%IW~r;A
zlArQGr{9rW(3OtSIG)+Bu2VfxX8E-I$R*h%to=~g<9egaPu`{J8`BHhUm3M!LcR=oB
zlRD*MGZ=x0#b=F4P@v(O&!*w*TdDX-=mCwQ1wMA~eBHiDpSb!1pfeVIw^OF4ea+b1
z!63hs7Bf@{EQ>Nm;!obewO^NZ)Wkq7v=jnp8XUYG0|w?1zK;X*U>!%I;r6K8wO$jwc!okoJA)xL{8>TDJ
z8@f?M@QZ4#RX;n{Q8ZqG9D@hEkk-&}Vm0c>6o3>h+7=PC37JlP_)vUvc5!h^nG5fF
z?=5o01o4|AlTEr~UsnvDF8Ac9Z1D`&33>s(&8l7RZ~FrSIgPxXg9#<50ggZVbr0Fg
z-B9LzOKNPio!)*|(Iu`GB>;u@4`iT`Oa|te*WF{B7@cgV3tyWIqI&EuTt`Zi84>$_ARJ_@hR9#Z^F4W}suWZd?ue2ubj?T0v$xO~~
zd)jx`Jrk~P(8(67dkF0hsQgeF!r{ytwbq9Vy6b!zja~OLXujk0$eK9x)c*_B^H^AT
zs_cxNT1`{cbL0$XwFoU*!P^A*M%iMf^@!(`aSrG`QfcUPWLKc@tP-ZE=&N^l)d%y)
zAgkm_;m2iNbkBzmO_rT*MC}p1hzR2Ghwzm0@>#b#de(hhgC`d^<})+pvnULS)(9nl
zIX71W>+0?8{RhBgGNG-CIpfdnvGV&LJwj)eFEZb~`m^~&Eb2E$mIIKl(Umq6S!6YO!t;M&}>Gah3`T5`eJfF|U?a($K!?3L@
zZ|uXuhb-A5oam&W{_n6z)5{4bgz*jKi55qj%rk1CS|^F@fnc+fC~25XUsCOJ%}D3o
zMC|(_Kuk5?Io?V4Jh4L9*;%!^CN5l+IWdu0{ukFjD70}j<)&qc`q$Z$JMtFzwTAY)
zb(&}({xt6UfScG&e9xl-UzeEotS2*5`mGJ>2K*F{ifW@6(k$)QjUeq<3)P$j^1i~(
zyS)`ie}~)^B=Yi!_JPF
z?623{xOWQl07Ho&t0X>IFc?&0CAxZHu(Y7ya-ISI
zOXFjTiaFiuaY1WwRo!sxM^ej9V!KN(7cyYrfaYrzUNg1zMp5sAu<yF}_SL$C9-Is$?tLcsT|Qr~+O-h3-(^j#51z_2`9>cENIvF-KtHP2C$j=D*i13S
z_|@{Y^dU5732nSIww=cC%xlyH9H;~t{XA1m^zanB3T$Qq`lewPtXZ+P>qU1JaBcEu
zOQG!zb8Noa@OZ}yQR!_I2npH2M6!esVxlN{DI0yw6ucwQoe!kxQ~{|rHsV4s8Lz_{
zLrj3QF^x_?0Z7Au(9lo`uLmnA(|km%U^luMt6MyxBv85S1r032cj~XHkoj1L@Z%N)
z8B~EIs_d^lw>>f#!>OKj@YIyGm=*vS3MsTL$a_ga&2u}+(6?VcIjCTUsTnN`>uYPn
z{A^y@uW~6$RwbCS%F5xZx~jLh6IDJ)a%?d&Ev@@^s@vWjC?P@axrKEv4u{j`u9hun
zDvKSR7#nlm_!KI;T2*y7I9hUYYD$eO_xlo}I7$#1)*I~NSE$e13lS`Cv;sy(Mj?qx
z#iwoj{Z))16BF@+j5v%GN?xq8sHn)Sy`34YF1H^@#fSZT{@*>+!2c2IzkqE`8w&eH
z{BGYjuEv{jw(B5V$S(JDnwsQ)R8|8m|4;3Ac#_}1Ig4q9Uf{>j=UnV-ZSiUU0)YX3
ALjV8(
|