From 853e5b1b6850598313821359052fd64c74042b57 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 05:21:11 +0100
Subject: [PATCH 01/21] Update neutral.dm
---
code/datums/traits/neutral.dm | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm
index 064febb2d2..b6d964dfaf 100644
--- a/code/datums/traits/neutral.dm
+++ b/code/datums/traits/neutral.dm
@@ -189,3 +189,14 @@
/datum/quirk/dullahan/post_add()
quirk_holder.AddComponent(/datum/component/dullahan)
+
+// GS13 EDIT START
+/datum/quirk/biofuel
+ name = "Biofuel Processor"
+ desc = "Your robotic body is equipped to eat and digest food the same way organic crew can."
+ value = 0
+ mob_trait = TRAIT_BIOFUEL
+
+/datum/quirk/biofuel/post_add()
+ REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD)
+// GS13 EDIT END
From 70623955db7c424879857feb3bd3d8d49d576781 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 05:22:02 +0100
Subject: [PATCH 02/21] Update traits.dm
---
code/__DEFINES/traits.dm | 1 +
1 file changed, 1 insertion(+)
diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm
index 98d5205a20..7c55fe07fb 100644
--- a/code/__DEFINES/traits.dm
+++ b/code/__DEFINES/traits.dm
@@ -289,6 +289,7 @@
#define TRAIT_METAL_CRUNCHER "metal_cruncher"
#define TRAIT_WATER_SPONGE "water_sponge"
#define TRAIT_FATROUSAL "fatrousal"
+#define TRAIT_BIOFUEL "biofuel_processor"
//GS13 Port
#define TRAIT_HEADPAT_SLUT "headpat_slut"
From ca31fc413faf213b8b4afe690d118b5bc2c0503d Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 05:55:25 +0100
Subject: [PATCH 03/21] Update neutral.dm
---
code/datums/traits/neutral.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm
index b6d964dfaf..4db452d59c 100644
--- a/code/datums/traits/neutral.dm
+++ b/code/datums/traits/neutral.dm
@@ -198,5 +198,5 @@
mob_trait = TRAIT_BIOFUEL
/datum/quirk/biofuel/post_add()
- REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD)
+ REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, TRAIT_GENERIC) //no idea how trait source works
// GS13 EDIT END
From d70b94efbf7134368f8fcc2ddd76689554b7238d Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 06:05:59 +0100
Subject: [PATCH 04/21] Update neutral.dm
---
code/datums/traits/neutral.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm
index 4db452d59c..5ce4a7b30d 100644
--- a/code/datums/traits/neutral.dm
+++ b/code/datums/traits/neutral.dm
@@ -198,5 +198,5 @@
mob_trait = TRAIT_BIOFUEL
/datum/quirk/biofuel/post_add()
- REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, TRAIT_GENERIC) //no idea how trait source works
+ REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, TRAIT_SPECIES)
// GS13 EDIT END
From 86a696dccf9ca09e3d6600d3e7c8b6146a720223 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 06:08:21 +0100
Subject: [PATCH 05/21] Update neutral.dm
---
code/datums/traits/neutral.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm
index 5ce4a7b30d..8863e601b2 100644
--- a/code/datums/traits/neutral.dm
+++ b/code/datums/traits/neutral.dm
@@ -198,5 +198,5 @@
mob_trait = TRAIT_BIOFUEL
/datum/quirk/biofuel/post_add()
- REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, TRAIT_SPECIES)
+ REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, SPECIES_TRAIT)
// GS13 EDIT END
From f60cbd00c0e051bd0933ac29608a9f81dd91ff40 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 06:28:46 +0100
Subject: [PATCH 06/21] Update reagents.dm
---
code/__DEFINES/reagents.dm | 2 ++
1 file changed, 2 insertions(+)
diff --git a/code/__DEFINES/reagents.dm b/code/__DEFINES/reagents.dm
index 2b0f51f230..3e8f6081bd 100644
--- a/code/__DEFINES/reagents.dm
+++ b/code/__DEFINES/reagents.dm
@@ -77,6 +77,8 @@
#define REAGENT_SPLITRETAINVOL (1<<7) //Retains initial volume of chem when splitting
#define REAGENT_ORGANIC_PROCESS (1<<8) //Can be processed by organic carbons - will otherwise slowly dissipate
#define REAGENT_ROBOTIC_PROCESS (1<<9) //Can be processed by robotic carbons - will otherwise slowly dissipate
+//GS13 edit
+#define REAGENT_BIOFUEL_PROCESS (1<<10) //Can be processed by robotic carbons with biofuel processor trait - should be on nutriment-type reagents and fatchems only
#define REAGENT_ALL_PROCESS (REAGENT_ORGANIC_PROCESS | REAGENT_ROBOTIC_PROCESS) //expand this if you for some reason add more process flags
From 0ab306c463d5fbba24fa7c79cf96b6343ee72581 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 06:37:38 +0100
Subject: [PATCH 07/21] Update reagents.dm
---
code/__HELPERS/reagents.dm | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/code/__HELPERS/reagents.dm b/code/__HELPERS/reagents.dm
index 0ecf82b191..8c8bc75cd2 100644
--- a/code/__HELPERS/reagents.dm
+++ b/code/__HELPERS/reagents.dm
@@ -106,4 +106,8 @@
/proc/is_reagent_processing_invalid(datum/reagent/R, mob/living/owner)
if(!R || !owner)
return TRUE
+ //GS13 edit start
+ if(HAS_TRAIT(owner, TRAIT_BIOFUEL) && (R.chemical_flags & REAGENT_BIOFUEL_PROCESS))
+ return FALSE
+ //GS13 edit end
return ((HAS_TRAIT(owner, TRAIT_ROBOTIC_ORGANISM) && !(R.chemical_flags & REAGENT_ROBOTIC_PROCESS)) || (!HAS_TRAIT(owner, TRAIT_ROBOTIC_ORGANISM) && !(R.chemical_flags & REAGENT_ORGANIC_PROCESS)))
From eb32d8f49b9657b6d39e8caebebe80ce7f7a0f9f Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 07:01:58 +0100
Subject: [PATCH 08/21] Update food_reagents.dm
---
code/modules/reagents/chemistry/reagents/food_reagents.dm | 1 +
1 file changed, 1 insertion(+)
diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.dm b/code/modules/reagents/chemistry/reagents/food_reagents.dm
index d156f3e36b..e8149946b7 100644
--- a/code/modules/reagents/chemistry/reagents/food_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/food_reagents.dm
@@ -12,6 +12,7 @@
taste_description = "generic food"
taste_mult = 4
value = REAGENT_VALUE_VERY_COMMON
+ chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS // GS13 edit; lets robots with the biofuel trait process foodchems
var/nutriment_factor = 1 * REAGENTS_METABOLISM
var/max_nutrition = INFINITY
var/quality = 0 //affects mood, typically higher for mixed drinks with more complex recipes
From 05e5f39e9c29d8146105b56fe9d034c62c613261 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 07:08:07 +0100
Subject: [PATCH 09/21] Update consumable_reagents.dm
---
.../reagents/chemistry/reagents/consumable_reagents.dm | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/GainStation13/code/modules/reagents/chemistry/reagents/consumable_reagents.dm b/GainStation13/code/modules/reagents/chemistry/reagents/consumable_reagents.dm
index 9cef5cb2ab..8c7901bea2 100644
--- a/GainStation13/code/modules/reagents/chemistry/reagents/consumable_reagents.dm
+++ b/GainStation13/code/modules/reagents/chemistry/reagents/consumable_reagents.dm
@@ -8,6 +8,7 @@
reagent_state = LIQUID
color = "#e2e1b1"
metabolization_rate = 0.5 * REAGENTS_METABOLISM
+ chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS
/datum/reagent/consumable/lipoifier/on_mob_life(mob/living/carbon/M)
M.adjust_fatness(15, FATTENING_TYPE_CHEM)
@@ -22,6 +23,7 @@
// GS13 tweak
metabolization_rate = 0.7 * REAGENTS_METABOLISM
overdose_threshold = 105
+ chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS
/datum/reagent/medicine/lipolicide/overdose_process(mob/living/carbon/C)
. = ..()
@@ -51,6 +53,7 @@
reagent_state = LIQUID
taste_description = "fizziness"
metabolization_rate = 2 * REAGENTS_METABOLISM
+ chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS
/datum/reagent/consumable/fizulphite/on_mob_life(mob/living/carbon/M)
if(M && M?.client?.prefs.weight_gain_chems)
@@ -69,6 +72,7 @@
reagent_state = LIQUID
taste_description = "smoothness"
metabolization_rate = 0.8 * REAGENTS_METABOLISM
+ chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS
/datum/reagent/consumable/extilphite/on_mob_life(mob/living/carbon/M)
if(M && M?.client?.prefs.weight_gain_chems)
@@ -91,6 +95,7 @@
reagent_state = LIQUID
taste_description = "sulfury sweetness"
metabolization_rate = 0.5 * REAGENTS_METABOLISM //Done by Zestyspy, Jan 2023
+ chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS
/datum/reagent/consumable/flatulose/on_mob_life(mob/living/carbon/M)
if(M && M?.client?.prefs.weight_gain_chems)
@@ -136,6 +141,7 @@
taste_description = "blueberry pie"
var/no_mob_color = FALSE
value = 10 //it sells. Make that berry factory
+ chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS //screw it let robots have juice why not
/datum/reagent/blueberry_juice/on_mob_life(mob/living/carbon/M)
if(M?.client)
From b61403fe3a26d37287561fbe7733d6143211c474 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 07:38:54 +0100
Subject: [PATCH 10/21] Update bitfields.dm
---
code/_globalvars/bitfields.dm | 1 +
1 file changed, 1 insertion(+)
diff --git a/code/_globalvars/bitfields.dm b/code/_globalvars/bitfields.dm
index c66823050b..dac68a6cca 100644
--- a/code/_globalvars/bitfields.dm
+++ b/code/_globalvars/bitfields.dm
@@ -100,6 +100,7 @@ DEFINE_BITFIELD(chemical_flags, list(
"REAGENT_ONMOBMERGE" = REAGENT_ONMOBMERGE,
"REAGENT_ORGANIC_PROCESS" = REAGENT_ORGANIC_PROCESS,
"REAGENT_ROBOTIC_PROCESS" = REAGENT_ROBOTIC_PROCESS,
+ "REAGENT_BIOFUEL_PROCESS" = REAGENT_BIOFUEL_PROCESS,
"REAGENT_SNEAKYNAME" = REAGENT_SNEAKYNAME,
"REAGENT_SPLITRETAINVOL" = REAGENT_SPLITRETAINVOL,
))
From 48d4516a4869f5b60c9a3b88012a44441f207231 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 08:11:07 +0100
Subject: [PATCH 11/21] Update fermi_fat.dm
---
.../code/modules/reagents/chemistry/reagents/fermi_fat.dm | 2 ++
1 file changed, 2 insertions(+)
diff --git a/GainStation13/code/modules/reagents/chemistry/reagents/fermi_fat.dm b/GainStation13/code/modules/reagents/chemistry/reagents/fermi_fat.dm
index 2e4968752a..068adfc5b6 100644
--- a/GainStation13/code/modules/reagents/chemistry/reagents/fermi_fat.dm
+++ b/GainStation13/code/modules/reagents/chemistry/reagents/fermi_fat.dm
@@ -8,6 +8,7 @@
overdose_threshold = 50
metabolization_rate = REAGENTS_METABOLISM / 4
can_synth = FALSE //DO NOT MAKE THIS SNYTHESIZABLE, THESE CHEMS ARE SUPPOSED TO NOT BE USED COMMONLY
+ chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS
overdose_threshold = 50
addiction_threshold = 100
@@ -150,6 +151,7 @@
pH = 7
metabolization_rate = REAGENTS_METABOLISM / 4
can_synth = FALSE
+ chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS
overdose_threshold = 50
From b300816edc680dcf015b82260a2ac5b4e6d5eaf5 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sat, 12 Apr 2025 22:56:30 +0100
Subject: [PATCH 12/21] APC nutrition tweaks
---
code/modules/surgery/organs/augments_arms.dm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm
index a99b6a926e..646adc8d52 100644
--- a/code/modules/surgery/organs/augments_arms.dm
+++ b/code/modules/surgery/organs/augments_arms.dm
@@ -378,7 +378,7 @@
A.cell.use(A.cell.charge)
to_chat(H, "You siphon off as much as [A] can spare.")
break
- if(H.nutrition > NUTRITION_LEVEL_WELL_FED)
+ if(H.nutrition > NUTRITION_LEVEL_FAT) //GS13 edit; I considered uncapped but it drains APCs and fattens stupid fast. could be fun uncapped but speed would need tweaking
to_chat(H, "You are now fully charged.")
break
in_use = FALSE
@@ -397,7 +397,7 @@
C.use(siphoned_charge)
do_sparks(1, FALSE, C)
H.adjust_nutrition(siphoned_charge / 100) //Less efficient on a pure power basis than APC recharge. Still a very viable way of gaining nutrition. (100 nutrition / base 10k cell)
- if(H.nutrition > NUTRITION_LEVEL_WELL_FED)
+ if(H.nutrition > NUTRITION_LEVEL_FAT) //GS13 edit, as above
to_chat(H, "You are now fully charged.")
break
in_use = FALSE
From 1657eaa06af00ba7dd4f9dbf5e940945e738e384 Mon Sep 17 00:00:00 2001
From: Belaya
Date: Sat, 12 Apr 2025 19:15:41 -0500
Subject: [PATCH 13/21] SSD Examine timer
---
code/modules/mob/living/carbon/human/examine.dm | 2 +-
code/modules/mob/living/carbon/life.dm | 1 +
code/modules/mob/living/living_defines.dm | 1 +
3 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm
index 2a176c755b..ba8ba77170 100644
--- a/code/modules/mob/living/carbon/human/examine.dm
+++ b/code/modules/mob/living/carbon/human/examine.dm
@@ -371,7 +371,7 @@
if(!key)
msg += "[t_He] [t_is] totally catatonic. The stresses of life in deep-space must have been too much for [t_him]. Any recovery is unlikely.\n"
else if(!client)
- msg += "[t_He] [t_has] a blank, absent-minded stare and appears completely unresponsive to anything. [t_He] may snap out of it soon.\n"
+ msg += "[t_He] [t_has] a blank, absent-minded stare and [t_has] been completely unresponsive to anything for [round(((world.time - lastclienttime) / (1 MINUTES)),1)] minutes. [t_He] may snap out of it soon.\n" //GS13 Edit: SSD timer
if(digitalcamo)
msg += "[t_He] [t_is] moving [t_his] body in an unnatural and blatantly inhuman manner.\n"
diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm
index 29f17c0c71..f146e0f9b9 100644
--- a/code/modules/mob/living/carbon/life.dm
+++ b/code/modules/mob/living/carbon/life.dm
@@ -524,6 +524,7 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put
if(!SSD)
add_status_indicator("ssd")
SSD = TRUE
+ lastclienttime = world.time //GS13 Editception: SSD timer
else
if(SSD)
remove_status_indicator("ssd")
diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm
index d3d0919baf..2967865db2 100644
--- a/code/modules/mob/living/living_defines.dm
+++ b/code/modules/mob/living/living_defines.dm
@@ -92,6 +92,7 @@
// GS13 EDIT
var/SSD = FALSE
+ var/lastclienttime = 0 //GS13 Editception: SSD timer
var/list/pipes_shown = list()
var/last_played_vent
From 7d3f1e7ecfbf629d1e23812b20951aa16a66cb38 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sun, 13 Apr 2025 06:51:24 +0100
Subject: [PATCH 14/21] Made sec EVA door accessible to sec officers
(previously warden/HoS only)
---
_maps/map_files/MetaStation/MetaStation.dmm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm
index 1d4bcc9d8b..83bb5419ce 100644
--- a/_maps/map_files/MetaStation/MetaStation.dmm
+++ b/_maps/map_files/MetaStation/MetaStation.dmm
@@ -2393,7 +2393,7 @@
/obj/machinery/door/airlock/security/glass{
dir = 8;
name = "Security E.V.A. Storage";
- req_access_txt = "3"
+ req_access_txt = "1"
},
/obj/structure/cable/yellow{
icon_state = "4-8"
From d9be24df01d1f596d4c043bec4aa2bedbe069088 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sun, 13 Apr 2025 08:54:32 +0100
Subject: [PATCH 15/21] Update neutral.dm
---
code/datums/traits/neutral.dm | 11 -----------
1 file changed, 11 deletions(-)
diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm
index 8863e601b2..064febb2d2 100644
--- a/code/datums/traits/neutral.dm
+++ b/code/datums/traits/neutral.dm
@@ -189,14 +189,3 @@
/datum/quirk/dullahan/post_add()
quirk_holder.AddComponent(/datum/component/dullahan)
-
-// GS13 EDIT START
-/datum/quirk/biofuel
- name = "Biofuel Processor"
- desc = "Your robotic body is equipped to eat and digest food the same way organic crew can."
- value = 0
- mob_trait = TRAIT_BIOFUEL
-
-/datum/quirk/biofuel/post_add()
- REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, SPECIES_TRAIT)
-// GS13 EDIT END
From 87a507c3059dfe4f680c450dbb97fbd96a58b4b1 Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sun, 13 Apr 2025 08:56:54 +0100
Subject: [PATCH 16/21] Update traits.dm
---
GainStation13/code/datums/traits.dm | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/GainStation13/code/datums/traits.dm b/GainStation13/code/datums/traits.dm
index 89484a7b25..58fb96f112 100644
--- a/GainStation13/code/datums/traits.dm
+++ b/GainStation13/code/datums/traits.dm
@@ -148,3 +148,12 @@
species.liked_food |= MEAT
else
species.disliked_food &= ~MEAT
+
+/datum/quirk/biofuel
+ name = "Biofuel Processor"
+ desc = "Your robotic body is equipped to eat and digest food the same way organic crew can."
+ value = 0
+ mob_trait = TRAIT_BIOFUEL
+
+/datum/quirk/biofuel/post_add()
+ REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, SPECIES_TRAIT)
From b3057ba2cfab05c857bd45b798e817cd3942730f Mon Sep 17 00:00:00 2001
From: nullspace-industries
<57872710+nullspace-industries@users.noreply.github.com>
Date: Sun, 13 Apr 2025 09:51:41 +0100
Subject: [PATCH 17/21] New biphasic system for IPC overcharging
---
code/modules/surgery/organs/augments_arms.dm | 34 ++++++++++++++++----
1 file changed, 28 insertions(+), 6 deletions(-)
diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm
index 646adc8d52..c4a0117b15 100644
--- a/code/modules/surgery/organs/augments_arms.dm
+++ b/code/modules/surgery/organs/augments_arms.dm
@@ -360,6 +360,12 @@
/obj/item/apc_powercord/proc/apc_powerdraw_loop(obj/machinery/power/apc/A, mob/living/carbon/human/H)
H.visible_message("[H] inserts a power connector into [A].", "You begin to draw power from [A].")
+
+ //GS13 edit
+ var/overcharge = FALSE
+ if(H.nutrition >= NUTRITION_LEVEL_WELL_FED)
+ overcharge = TRUE
+
while(do_after(H, 10, target = A))
if(loc != H)
to_chat(H, "You must keep your connector out while charging!")
@@ -378,14 +384,25 @@
A.cell.use(A.cell.charge)
to_chat(H, "You siphon off as much as [A] can spare.")
break
- if(H.nutrition > NUTRITION_LEVEL_FAT) //GS13 edit; I considered uncapped but it drains APCs and fattens stupid fast. could be fun uncapped but speed would need tweaking
- to_chat(H, "You are now fully charged.")
- break
+ if(H.nutrition >= NUTRITION_LEVEL_WELL_FED)
+ if(!overcharge) //GS13 edit
+ to_chat(H, "You are now fully charged.")
+ break
+ else
+ if(H.nutrition >= NUTRITION_LEVEL_FAT)
+ to_chat(H, "You've packed as much extra power into your battery as it can handle.")
+ break
in_use = FALSE
H.visible_message("[H] unplugs from [A].", "You unplug from [A].")
/obj/item/apc_powercord/proc/cell_powerdraw_loop(obj/item/stock_parts/cell/C, mob/living/carbon/human/H)
H.visible_message("[H] connects a power cord to [C]", "You begin to draw power from [C].")
+
+ //GS13 edit
+ var/overcharge = FALSE
+ if(H.nutrition >= NUTRITION_LEVEL_WELL_FED)
+ overcharge = TRUE
+
while(do_after(H, 10, target = C))
if(loc != H)
to_chat(H, "You must keep your connector out while charging!")
@@ -397,8 +414,13 @@
C.use(siphoned_charge)
do_sparks(1, FALSE, C)
H.adjust_nutrition(siphoned_charge / 100) //Less efficient on a pure power basis than APC recharge. Still a very viable way of gaining nutrition. (100 nutrition / base 10k cell)
- if(H.nutrition > NUTRITION_LEVEL_FAT) //GS13 edit, as above
- to_chat(H, "You are now fully charged.")
- break
+ if(H.nutrition >= NUTRITION_LEVEL_WELL_FED)
+ if(!overcharge) //GS13 edit
+ to_chat(H, "You are now fully charged.")
+ break
+ else
+ if(H.nutrition >= NUTRITION_LEVEL_FAT)
+ to_chat(H, "You've packed as much extra power into your battery as it can handle.")
+ break
in_use = FALSE
H.visible_message("[H] disconnects [src] from [C].", "You disconnect from [C].")
From ec70a693a51da8d845e40b99feef6e5a1b6bcc9f Mon Sep 17 00:00:00 2001
From: sheepishgoat <100518708+sheepishgoat@users.noreply.github.com>
Date: Sun, 13 Apr 2025 14:47:07 -0400
Subject: [PATCH 18/21] Update code/modules/surgery/organs/augments_arms.dm
---
code/modules/surgery/organs/augments_arms.dm | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm
index c4a0117b15..36c348bca2 100644
--- a/code/modules/surgery/organs/augments_arms.dm
+++ b/code/modules/surgery/organs/augments_arms.dm
@@ -414,13 +414,15 @@
C.use(siphoned_charge)
do_sparks(1, FALSE, C)
H.adjust_nutrition(siphoned_charge / 100) //Less efficient on a pure power basis than APC recharge. Still a very viable way of gaining nutrition. (100 nutrition / base 10k cell)
+ // GS13 EDIT START
if(H.nutrition >= NUTRITION_LEVEL_WELL_FED)
- if(!overcharge) //GS13 edit
+ if(!overcharge)
to_chat(H, "You are now fully charged.")
break
else
if(H.nutrition >= NUTRITION_LEVEL_FAT)
to_chat(H, "You've packed as much extra power into your battery as it can handle.")
break
+ //GS13 EDIT END
in_use = FALSE
H.visible_message("[H] disconnects [src] from [C].", "You disconnect from [C].")
From 590ee3294f5714138bf4b24d17fc779702cb3bf8 Mon Sep 17 00:00:00 2001
From: sheepishgoat <100518708+sheepishgoat@users.noreply.github.com>
Date: Sun, 13 Apr 2025 14:47:11 -0400
Subject: [PATCH 19/21] Update code/modules/surgery/organs/augments_arms.dm
---
code/modules/surgery/organs/augments_arms.dm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm
index 36c348bca2..61895f78e5 100644
--- a/code/modules/surgery/organs/augments_arms.dm
+++ b/code/modules/surgery/organs/augments_arms.dm
@@ -398,10 +398,11 @@
/obj/item/apc_powercord/proc/cell_powerdraw_loop(obj/item/stock_parts/cell/C, mob/living/carbon/human/H)
H.visible_message("[H] connects a power cord to [C]", "You begin to draw power from [C].")
- //GS13 edit
+ //GS13 EDIT START
var/overcharge = FALSE
if(H.nutrition >= NUTRITION_LEVEL_WELL_FED)
overcharge = TRUE
+ //GS13 EDIT END
while(do_after(H, 10, target = C))
if(loc != H)
From 8e87449d404b8d5755b3b035221cd75d12346ba0 Mon Sep 17 00:00:00 2001
From: sheepishgoat <100518708+sheepishgoat@users.noreply.github.com>
Date: Sun, 13 Apr 2025 14:47:15 -0400
Subject: [PATCH 20/21] Update code/modules/surgery/organs/augments_arms.dm
---
code/modules/surgery/organs/augments_arms.dm | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm
index 61895f78e5..26e01d36a8 100644
--- a/code/modules/surgery/organs/augments_arms.dm
+++ b/code/modules/surgery/organs/augments_arms.dm
@@ -384,7 +384,8 @@
A.cell.use(A.cell.charge)
to_chat(H, "You siphon off as much as [A] can spare.")
break
- if(H.nutrition >= NUTRITION_LEVEL_WELL_FED)
+ //GS13 EDIT START
+ if(H.nutrition >= NUTRITION_LEVEL_WELL_FED)
if(!overcharge) //GS13 edit
to_chat(H, "You are now fully charged.")
break
@@ -392,6 +393,7 @@
if(H.nutrition >= NUTRITION_LEVEL_FAT)
to_chat(H, "You've packed as much extra power into your battery as it can handle.")
break
+ //GS13 EDIT END
in_use = FALSE
H.visible_message("[H] unplugs from [A].", "You unplug from [A].")
From 667143c887056ec070ac565cfa186f11b2426e5a Mon Sep 17 00:00:00 2001
From: sheepishgoat <100518708+sheepishgoat@users.noreply.github.com>
Date: Sun, 13 Apr 2025 14:47:21 -0400
Subject: [PATCH 21/21] Update code/modules/surgery/organs/augments_arms.dm
---
code/modules/surgery/organs/augments_arms.dm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm
index 26e01d36a8..f75fb72272 100644
--- a/code/modules/surgery/organs/augments_arms.dm
+++ b/code/modules/surgery/organs/augments_arms.dm
@@ -361,10 +361,11 @@
/obj/item/apc_powercord/proc/apc_powerdraw_loop(obj/machinery/power/apc/A, mob/living/carbon/human/H)
H.visible_message("[H] inserts a power connector into [A].", "You begin to draw power from [A].")
- //GS13 edit
+ //GS13 EDIT START
var/overcharge = FALSE
if(H.nutrition >= NUTRITION_LEVEL_WELL_FED)
overcharge = TRUE
+ //GS13 EDIT END
while(do_after(H, 10, target = A))
if(loc != H)