From 900d8d00af02d71258ebe93ad6fa508b85145a38 Mon Sep 17 00:00:00 2001 From: CameronWoof Date: Sat, 3 Aug 2019 20:37:02 -0700 Subject: [PATCH 1/4] Officially ends the non-stop thrill ride of coating the station in your various fluids for "fun" --- code/__DEFINES/citadel_defines.dm | 2 +- modular_citadel/code/modules/arousal/organs/breasts.dm | 8 ++++++++ modular_citadel/code/modules/arousal/organs/genitals.dm | 2 +- modular_citadel/code/modules/arousal/organs/testicles.dm | 8 ++++++++ modular_citadel/code/modules/arousal/organs/womb.dm | 8 ++++++++ 5 files changed, 26 insertions(+), 2 deletions(-) diff --git a/code/__DEFINES/citadel_defines.dm b/code/__DEFINES/citadel_defines.dm index b71b7b8efa..efea053e85 100644 --- a/code/__DEFINES/citadel_defines.dm +++ b/code/__DEFINES/citadel_defines.dm @@ -40,7 +40,7 @@ #define BALLS_SACK_SIZE_DEF 8 #define BALLS_SACK_SIZE_MAX 40 -#define CUM_RATE 5 +#define CUM_RATE 0.015 #define CUM_RATE_MULT 1 #define CUM_EFFICIENCY 1//amount of nutrition required per life() diff --git a/modular_citadel/code/modules/arousal/organs/breasts.dm b/modular_citadel/code/modules/arousal/organs/breasts.dm index 1223f0b616..11e57a783f 100644 --- a/modular_citadel/code/modules/arousal/organs/breasts.dm +++ b/modular_citadel/code/modules/arousal/organs/breasts.dm @@ -26,6 +26,14 @@ return reagents.maximum_volume = fluid_max_volume if(fluid_id && producing) + if(reagents.total_volume == 0) // Apparently, 0.015 gets rounded down to zero and no reagents are created if we don't start it with 0.1 in the tank. + fluid_rate = 0.1 + else + fluid_rate = CUM_RATE + if(reagents.total_volume >= 5) + fluid_mult = 0.5 + else + fluid_mult = 1 generate_milk() /obj/item/organ/genital/breasts/proc/generate_milk() diff --git a/modular_citadel/code/modules/arousal/organs/genitals.dm b/modular_citadel/code/modules/arousal/organs/genitals.dm index 63d6834409..c4fffea355 100644 --- a/modular_citadel/code/modules/arousal/organs/genitals.dm +++ b/modular_citadel/code/modules/arousal/organs/genitals.dm @@ -10,7 +10,7 @@ var/fluid_transfer_factor = 0.0 //How much would a partner get in them if they climax using this? var/size = 2 //can vary between num or text, just used in icon_state strings var/fluid_id = null - var/fluid_max_volume = 50 + var/fluid_max_volume = 15 var/fluid_efficiency = 1 var/fluid_rate = 1 var/fluid_mult = 1 diff --git a/modular_citadel/code/modules/arousal/organs/testicles.dm b/modular_citadel/code/modules/arousal/organs/testicles.dm index 1e6b4d62d4..eb02832f47 100644 --- a/modular_citadel/code/modules/arousal/organs/testicles.dm +++ b/modular_citadel/code/modules/arousal/organs/testicles.dm @@ -24,6 +24,14 @@ if(QDELETED(src)) return if(reagents && producing) + if(reagents.total_volume == 0) // Apparently, 0.015 gets rounded down to zero and no reagents are created if we don't start it with 0.1 in the tank. + fluid_rate = 0.1 + else + fluid_rate = CUM_RATE + if(reagents.total_volume >= 5) + fluid_mult = 0.5 + else + fluid_mult = 1 generate_cum() /obj/item/organ/genital/testicles/proc/generate_cum() diff --git a/modular_citadel/code/modules/arousal/organs/womb.dm b/modular_citadel/code/modules/arousal/organs/womb.dm index 686d9059a0..87ac2df0f2 100644 --- a/modular_citadel/code/modules/arousal/organs/womb.dm +++ b/modular_citadel/code/modules/arousal/organs/womb.dm @@ -17,6 +17,14 @@ if(QDELETED(src)) return if(reagents && producing) + if(reagents.total_volume == 0) // Apparently, 0.015 gets rounded down to zero and no reagents are created if we don't start it with 0.1 in the tank. + fluid_rate = 0.1 + else + fluid_rate = CUM_RATE + if(reagents.total_volume >= 5) + fluid_mult = 0.5 + else + fluid_mult = 1 generate_femcum() /obj/item/organ/genital/womb/proc/generate_femcum() From 6f02c5c6f6cb30ae91f361505b68926807bc97dd Mon Sep 17 00:00:00 2001 From: CameronWoof Date: Sun, 4 Aug 2019 01:10:17 -0700 Subject: [PATCH 2/4] don't pre-fill the tank --- modular_citadel/code/modules/arousal/organs/breasts.dm | 4 ---- modular_citadel/code/modules/arousal/organs/testicles.dm | 4 ---- modular_citadel/code/modules/arousal/organs/womb.dm | 4 ---- 3 files changed, 12 deletions(-) diff --git a/modular_citadel/code/modules/arousal/organs/breasts.dm b/modular_citadel/code/modules/arousal/organs/breasts.dm index 11e57a783f..9771dd0897 100644 --- a/modular_citadel/code/modules/arousal/organs/breasts.dm +++ b/modular_citadel/code/modules/arousal/organs/breasts.dm @@ -15,10 +15,6 @@ can_climax = TRUE fluid_transfer_factor = 0.5 -/obj/item/organ/genital/breasts/Initialize() - . = ..() - reagents.add_reagent(fluid_id, fluid_max_volume) - /obj/item/organ/genital/breasts/on_life() if(QDELETED(src)) return diff --git a/modular_citadel/code/modules/arousal/organs/testicles.dm b/modular_citadel/code/modules/arousal/organs/testicles.dm index eb02832f47..f4ef4b5064 100644 --- a/modular_citadel/code/modules/arousal/organs/testicles.dm +++ b/modular_citadel/code/modules/arousal/organs/testicles.dm @@ -16,10 +16,6 @@ can_climax = TRUE var/sent_full_message = TRUE //defaults to 1 since they're full to start -/obj/item/organ/genital/testicles/Initialize() - . = ..() - reagents.add_reagent(fluid_id, fluid_max_volume) - /obj/item/organ/genital/testicles/on_life() if(QDELETED(src)) return diff --git a/modular_citadel/code/modules/arousal/organs/womb.dm b/modular_citadel/code/modules/arousal/organs/womb.dm index 87ac2df0f2..3f190b72ac 100644 --- a/modular_citadel/code/modules/arousal/organs/womb.dm +++ b/modular_citadel/code/modules/arousal/organs/womb.dm @@ -9,10 +9,6 @@ fluid_id = "femcum" producing = TRUE -/obj/item/organ/genital/womb/Initialize() - . = ..() - reagents.add_reagent(fluid_id, fluid_max_volume) - /obj/item/organ/genital/womb/on_life() if(QDELETED(src)) return From 33d883367a3369a1dfee6d561054a21095112a79 Mon Sep 17 00:00:00 2001 From: Cameron! Date: Mon, 5 Aug 2019 06:41:57 -0700 Subject: [PATCH 3/4] makes fluid_rate match the intended rate --- code/__DEFINES/citadel_defines.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/__DEFINES/citadel_defines.dm b/code/__DEFINES/citadel_defines.dm index efea053e85..3b94303308 100644 --- a/code/__DEFINES/citadel_defines.dm +++ b/code/__DEFINES/citadel_defines.dm @@ -40,7 +40,7 @@ #define BALLS_SACK_SIZE_DEF 8 #define BALLS_SACK_SIZE_MAX 40 -#define CUM_RATE 0.015 +#define CUM_RATE 0.035 #define CUM_RATE_MULT 1 #define CUM_EFFICIENCY 1//amount of nutrition required per life() From d09fa0d8a0b995614193bbd191745279600e9126 Mon Sep 17 00:00:00 2001 From: CameronWoof Date: Mon, 5 Aug 2019 07:48:27 -0700 Subject: [PATCH 4/4] fix for smoke and odysseus exploits --- .../code/modules/reagents/reagents/cit_reagents.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm b/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm index ee8268128a..c4c1cff1e7 100644 --- a/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm +++ b/modular_citadel/code/modules/reagents/reagents/cit_reagents.dm @@ -8,6 +8,7 @@ data = list("donor"=null,"viruses"=null,"donor_DNA"=null,"blood_type"=null,"resistances"=null,"trace_chem"=null,"mind"=null,"ckey"=null,"gender"=null,"real_name"=null) reagent_state = LIQUID color = "#FFFFFF" // rgb: 255, 255, 255 + can_synth = FALSE nutriment_factor = 0.5 * REAGENTS_METABOLISM /datum/reagent/consumable/semen/reaction_turf(turf/T, reac_volume) @@ -19,7 +20,6 @@ var/obj/effect/decal/cleanable/semen/S = locate() in T if(!S) S = new(T) - S.reagents.add_reagent("semen", reac_volume) if(data["blood_DNA"]) S.add_blood_DNA(list(data["blood_DNA"] = data["blood_type"])) @@ -50,6 +50,7 @@ data = list("donor"=null,"viruses"=null,"donor_DNA"=null,"blood_type"=null,"resistances"=null,"trace_chem"=null,"mind"=null,"ckey"=null,"gender"=null,"real_name"=null) reagent_state = LIQUID color = "#AAAAAA77" + can_synth = FALSE nutriment_factor = 0.5 * REAGENTS_METABOLISM /obj/effect/decal/cleanable/femcum @@ -82,7 +83,6 @@ var/obj/effect/decal/cleanable/femcum/S = locate() in T if(!S) S = new(T) - S.reagents.add_reagent("femcum", reac_volume) if(data["blood_DNA"]) S.add_blood_DNA(list(data["blood_DNA"] = data["blood_type"]))