diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm
index 3d041edfd2..8e0886a30d 100644
--- a/code/__DEFINES/traits.dm
+++ b/code/__DEFINES/traits.dm
@@ -191,6 +191,7 @@
#define TRAIT_MUSICIAN "musician"
#define TRAIT_PERMABONER "permanent_arousal"
#define TRAIT_NEVERBONER "never_aroused"
+#define TRAIT_NYMPHO "nymphomaniac"
#define TRAIT_MASO "masochism"
#define TRAIT_HIGH_BLOOD "high_blood"
#define TRAIT_PARA "paraplegic"
diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm
index 73813fd253..18d565ed5a 100644
--- a/code/datums/traits/neutral.dm
+++ b/code/datums/traits/neutral.dm
@@ -105,6 +105,22 @@
gain_text = "You desire to be hurt."
lose_text = "Pain has become less exciting for you."
+/datum/quirk/libido
+ name = "Nymphomaniac"
+ desc = "You are much more sensitive to arousal."
+ value = 0
+ mob_trait = TRAIT_NYMPHO
+ gain_text = "You are feeling extra wild."
+ lose_text = "You don't feel that burning sensation anymore."
+
+/datum/quirk/libido/add()
+ var/mob/living/carbon/human/H = quirk_holder
+ H.arousal_rate = 3 * initial(H.arousal_rate)
+
+/datum/quirk/libido/remove()
+ var/mob/living/carbon/human/H = quirk_holder
+ H.arousal_rate = initial(H.arousal_rate)
+
/datum/quirk/alcohol_intolerance
name = "Alcohol Intolerance"
desc = "You take toxin damage from alcohol rather than getting drunk."
diff --git a/code/modules/arousal/arousal.dm b/code/modules/arousal/arousal.dm
index 99683f1688..d800d12501 100644
--- a/code/modules/arousal/arousal.dm
+++ b/code/modules/arousal/arousal.dm
@@ -9,6 +9,7 @@
var/hidden_underwear = FALSE
var/hidden_undershirt = FALSE
var/hidden_socks = FALSE
+ var/arousal_rate = 1
//Mob procs
/mob/living/carbon/human/verb/underwear_toggle()
@@ -36,13 +37,14 @@
update_body(TRUE)
-/mob/living/carbon/human/proc/adjust_arousal(strength,aphro = FALSE,maso = FALSE) // returns all genitals that were adjust
+/mob/living/carbon/human/proc/adjust_arousal(strength, cause = "manual toggle", aphro = FALSE,maso = FALSE) // returns all genitals that were adjust
var/list/obj/item/organ/genital/genit_list = list()
if(!client?.prefs.arousable || (aphro && (client?.prefs.cit_toggles & NO_APHRO)) || (maso && !HAS_TRAIT(src, TRAIT_MASO)))
return // no adjusting made here
+ var/enabling = strength > 0
for(var/obj/item/organ/genital/G in internal_organs)
- if(G.genital_flags & GENITAL_CAN_AROUSE && !G.aroused_state && prob(strength*G.sensitivity))
- G.set_aroused_state(strength > 0)
+ if(G.genital_flags & GENITAL_CAN_AROUSE && !G.aroused_state && prob(abs(strength)*G.sensitivity * arousal_rate))
+ G.set_aroused_state(enabling,cause)
G.update_appearance()
if(G.aroused_state)
genit_list += G
@@ -189,7 +191,7 @@
return TRUE
//Here's the main proc itself
-/mob/living/carbon/human/proc/mob_climax(forced_climax=FALSE) //Forced is instead of the other proc, makes you cum if you have the tools for it, ignoring restraints
+/mob/living/carbon/human/proc/mob_climax(forced_climax=FALSE,cause = "") //Forced is instead of the other proc, makes you cum if you have the tools for it, ignoring restraints
if(mb_cd_timer > world.time)
if(!forced_climax) //Don't spam the message to the victim if forced to come too fast
to_chat(src, "You need to wait [DisplayTimeText((mb_cd_timer - world.time), TRUE)] before you can do that again!")
@@ -202,6 +204,7 @@
to_chat(src, "You can't do that while dead!")
return
if(forced_climax) //Something forced us to cum, this is not a masturbation thing and does not progress to the other checks
+ log_message("was forced to climax by [cause]",LOG_EMOTE)
for(var/obj/item/organ/genital/G in internal_organs)
if(!CHECK_BITFIELD(G.genital_flags, CAN_CLIMAX_WITH)) //Skip things like wombs and testicles
continue
diff --git a/code/modules/arousal/genitals.dm b/code/modules/arousal/genitals.dm
index 67de745d22..29aa62d3f4 100644
--- a/code/modules/arousal/genitals.dm
+++ b/code/modules/arousal/genitals.dm
@@ -27,11 +27,12 @@
if(do_update)
update()
-/obj/item/organ/genital/proc/set_aroused_state(new_state)
+/obj/item/organ/genital/proc/set_aroused_state(new_state,cause = "manual toggle")
if(!(genital_flags & GENITAL_CAN_AROUSE))
return FALSE
if(!((HAS_TRAIT(owner,TRAIT_PERMABONER) && !new_state) || HAS_TRAIT(owner,TRAIT_NEVERBONER) && new_state))
aroused_state = new_state
+ owner.log_message("[src]'s arousal was [new_state ? "enabled" : "disabled"] due to [cause]", LOG_EMOTE)
return aroused_state
/obj/item/organ/genital/proc/update()
diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm
index c3cdb3354f..949902fef2 100644
--- a/code/modules/mob/living/carbon/human/species.dm
+++ b/code/modules/mob/living/carbon/human/species.dm
@@ -1547,9 +1547,9 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
if(!user.UseStaminaBuffer(3, warn = TRUE))
return FALSE
user.do_attack_animation(target, ATTACK_EFFECT_ASS_SLAP)
- target.adjust_arousal(20,maso = TRUE)
+ target.adjust_arousal(20,"masochism", maso = TRUE)
if (ishuman(target) && HAS_TRAIT(target, TRAIT_MASO) && target.has_dna() && prob(10))
- target.mob_climax(forced_climax=TRUE)
+ target.mob_climax(forced_climax=TRUE, "masochism")
if (!HAS_TRAIT(target, TRAIT_PERMABONER))
stop_wagging_tail(target)
playsound(target.loc, 'sound/weapons/slap.ogg', 50, 1, -1)
@@ -1931,7 +1931,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
if(BP.receive_damage(damage_amount, 0, wound_bonus = wound_bonus, bare_wound_bonus = bare_wound_bonus, sharpness = sharpness))
H.update_damage_overlays()
if(HAS_TRAIT(H, TRAIT_MASO) && prob(damage_amount))
- H.mob_climax(forced_climax=TRUE)
+ H.mob_climax(forced_climax=TRUE, "masochism")
else//no bodypart, we deal damage with a more general method.
H.adjustBruteLoss(damage_amount)
diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm
index 675502c5fb..f5f236ac81 100644
--- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm
@@ -563,3 +563,128 @@
var/mob/living/carbon/C = M
if(!C.undergoing_cardiac_arrest())
C.set_heartattack(TRUE)
+
+//aphrodisiac & anaphrodisiac
+
+/datum/reagent/drug/aphrodisiac
+ name = "Crocin"
+ description = "Naturally found in the crocus and gardenia flowers, this drug acts as a natural and safe aphrodisiac."
+ taste_description = "strawberries"
+ color = "#FFADFF"//PINK, rgb(255, 173, 255)
+ can_synth = FALSE
+
+/datum/reagent/drug/aphrodisiac/on_mob_life(mob/living/M)
+ if(M && M.client?.prefs.arousable && !(M.client?.prefs.cit_toggles & NO_APHRO))
+ if((prob(min(current_cycle/2,5))))
+ M.emote(pick("moan","blush"))
+ if(prob(min(current_cycle/4,10)))
+ var/aroused_message = pick("You feel frisky.", "You're having trouble suppressing your urges.", "You feel in the mood.")
+ to_chat(M, "[aroused_message]")
+ if(ishuman(M))
+ var/mob/living/carbon/human/H = M
+ var/list/genits = H.adjust_arousal(current_cycle, "crocin", aphro = TRUE) // redundant but should still be here
+ for(var/g in genits)
+ var/obj/item/organ/genital/G = g
+ to_chat(M, "[G.arousal_verb]!")
+ ..()
+
+/datum/reagent/drug/aphrodisiacplus
+ name = "Hexacrocin"
+ description = "Chemically condensed form of basic crocin. This aphrodisiac is extremely powerful and addictive in most animals.\
+ Addiction withdrawals can cause brain damage and shortness of breath. Overdosage can lead to brain damage and a \
+ permanent increase in libido (commonly referred to as 'bimbofication')."
+ taste_description = "liquid desire"
+ color = "#FF2BFF"//dark pink
+ addiction_threshold = 20
+ overdose_threshold = 20
+ can_synth = FALSE
+
+/datum/reagent/drug/aphrodisiacplus/on_mob_life(mob/living/M)
+ if(M && M.client?.prefs.arousable && !(M.client?.prefs.cit_toggles & NO_APHRO))
+ if(prob(5))
+ if(prob(current_cycle))
+ M.say(pick("Hnnnnngghh...", "Ohh...", "Mmnnn..."))
+ else
+ M.emote(pick("moan","blush"))
+ if(prob(5))
+ var/aroused_message
+ if(current_cycle>25)
+ aroused_message = pick("You need to fuck someone!", "You're bursting with sexual tension!", "You can't get sex off your mind!")
+ else
+ aroused_message = pick("You feel a bit hot.", "You feel strong sexual urges.", "You feel in the mood.", "You're ready to go down on someone.")
+ to_chat(M, "[aroused_message]")
+ REMOVE_TRAIT(M,TRAIT_NEVERBONER,APHRO_TRAIT)
+ if(ishuman(M))
+ var/mob/living/carbon/human/H = M
+ var/list/genits = H.adjust_arousal(100, "hexacrocin", aphro = TRUE) // redundant but should still be here
+ for(var/g in genits)
+ var/obj/item/organ/genital/G = g
+ to_chat(M, "[G.arousal_verb]!")
+ ..()
+
+/datum/reagent/drug/aphrodisiacplus/addiction_act_stage2(mob/living/M)
+ if(prob(30))
+ M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 2)
+ ..()
+/datum/reagent/drug/aphrodisiacplus/addiction_act_stage3(mob/living/M)
+ if(prob(30))
+ M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 3)
+
+ ..()
+/datum/reagent/drug/aphrodisiacplus/addiction_act_stage4(mob/living/M)
+ if(prob(30))
+ M.adjustOrganLoss(ORGAN_SLOT_BRAIN, 4)
+ ..()
+
+/datum/reagent/drug/aphrodisiacplus/overdose_process(mob/living/M)
+ if(M && M.client?.prefs.arousable && !(M.client?.prefs.cit_toggles & NO_APHRO) && prob(33))
+ if(prob(5) && ishuman(M) && M.has_dna() && (M.client?.prefs.cit_toggles & BIMBOFICATION))
+ if(!HAS_TRAIT(M,TRAIT_PERMABONER))
+ to_chat(M, "Your libido is going haywire!")
+ ADD_TRAIT(M,TRAIT_PERMABONER,APHRO_TRAIT)
+ ..()
+
+/datum/reagent/drug/anaphrodisiac
+ name = "Camphor"
+ description = "Naturally found in some species of evergreen trees, camphor is a waxy substance. When injested by most animals, it acts as an anaphrodisiac\
+ , reducing libido and calming them. Non-habit forming and not addictive."
+ taste_description = "dull bitterness"
+ taste_mult = 2
+ color = "#D9D9D9"//rgb(217, 217, 217)
+ reagent_state = SOLID
+ can_synth = FALSE
+
+/datum/reagent/drug/anaphrodisiac/on_mob_life(mob/living/M)
+ if(M && M.client?.prefs.arousable && prob(16))
+ if(ishuman(M))
+ var/mob/living/carbon/human/H = M
+ var/list/genits = H.adjust_arousal(-100, "camphor", aphro = TRUE)
+ if(genits.len)
+ to_chat(M, "You no longer feel aroused.")
+ ..()
+
+/datum/reagent/drug/anaphrodisiacplus
+ name = "Hexacamphor"
+ description = "Chemically condensed camphor. Causes an extreme reduction in libido and a permanent one if overdosed. Non-addictive."
+ taste_description = "tranquil celibacy"
+ color = "#D9D9D9"//rgb(217, 217, 217)
+ reagent_state = SOLID
+ overdose_threshold = 20
+ can_synth = FALSE
+
+/datum/reagent/drug/anaphrodisiacplus/on_mob_life(mob/living/M)
+ if(M && M.client?.prefs.arousable)
+ REMOVE_TRAIT(M,TRAIT_PERMABONER,APHRO_TRAIT)
+ if(ishuman(M))
+ var/mob/living/carbon/human/H = M
+ var/list/genits = H.adjust_arousal(-100, "hexacamphor", aphro = TRUE)
+ if(genits.len)
+ to_chat(M, "You no longer feel aroused.")
+
+ ..()
+
+/datum/reagent/drug/anaphrodisiacplus/overdose_process(mob/living/M)
+ if(M && M.client?.prefs.arousable && prob(5))
+ to_chat(M, "You feel like you'll never feel aroused again...")
+ ADD_TRAIT(M,TRAIT_NEVERBONER,APHRO_TRAIT)
+ ..()
diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm
index ba7f9a30d5..6552d82e95 100644
--- a/code/modules/reagents/chemistry/reagents/other_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm
@@ -2362,6 +2362,12 @@
M.emote("nya")
if(prob(20))
to_chat(M, "[pick("Headpats feel nice.", "The feeling of a hairball...", "Backrubs would be nice.", "Whats behind those doors?")]")
+ if(ishuman(M))
+ var/mob/living/carbon/human/H = M
+ var/list/adjusted = H.adjust_arousal(2,"catnip", aphro = TRUE)
+ for(var/g in adjusted)
+ var/obj/item/organ/genital/G = g
+ to_chat(M, "You feel like playing with your [G.name]!")
..()
/datum/reagent/preservahyde
diff --git a/code/modules/reagents/chemistry/recipes/drugs.dm b/code/modules/reagents/chemistry/recipes/drugs.dm
index 468d29c052..8de4b1248f 100644
--- a/code/modules/reagents/chemistry/recipes/drugs.dm
+++ b/code/modules/reagents/chemistry/recipes/drugs.dm
@@ -62,3 +62,35 @@
results = list(/datum/reagent/moonsugar = 1, /datum/reagent/medicine/morphine = 2.5)
required_temp = 315 //a little above normal body temperature
required_reagents = list(/datum/reagent/drug/skooma = 1)
+
+/datum/chemical_reaction/aphro
+ name = "crocin"
+ id = /datum/reagent/drug/aphrodisiac
+ results = list(/datum/reagent/drug/aphrodisiac = 6)
+ required_reagents = list(/datum/reagent/carbon = 2, /datum/reagent/hydrogen = 2, /datum/reagent/oxygen = 2, /datum/reagent/water = 1)
+ required_temp = 400
+ mix_message = "The mixture boils off a pink vapor..."//The water boils off, leaving the crocin
+
+/datum/chemical_reaction/aphroplus
+ name = "hexacrocin"
+ id = /datum/reagent/drug/aphrodisiacplus
+ results = list(/datum/reagent/drug/aphrodisiacplus = 1)
+ required_reagents = list(/datum/reagent/drug/aphrodisiac = 6, /datum/reagent/phenol = 1)
+ required_temp = 400
+ mix_message = "The mixture rapidly condenses and darkens in color..."
+
+/datum/chemical_reaction/anaphro
+ name = "camphor"
+ id = /datum/reagent/drug/anaphrodisiac
+ results = list(/datum/reagent/drug/anaphrodisiac = 6)
+ required_reagents = list(/datum/reagent/carbon = 2, /datum/reagent/hydrogen = 2, /datum/reagent/oxygen = 2, /datum/reagent/sulfur = 1)
+ required_temp = 400
+ mix_message = "The mixture boils off a yellow, smelly vapor..."//Sulfur burns off, leaving the camphor
+
+/datum/chemical_reaction/anaphroplus
+ name = "pentacamphor"
+ id = /datum/reagent/drug/anaphrodisiacplus
+ results = list(/datum/reagent/drug/anaphrodisiacplus = 1)
+ required_reagents = list(/datum/reagent/drug/aphrodisiac = 5, /datum/reagent/acetone = 1)
+ required_temp = 300
+ mix_message = "The mixture thickens and heats up slighty..."
diff --git a/code/modules/reagents/chemistry/recipes/others.dm b/code/modules/reagents/chemistry/recipes/others.dm
index 93a422e2f2..6eb0d5825c 100644
--- a/code/modules/reagents/chemistry/recipes/others.dm
+++ b/code/modules/reagents/chemistry/recipes/others.dm
@@ -718,7 +718,7 @@
name = "felinid mutation toxin"
id = /datum/reagent/mutationtoxin/felinid
results = list(/datum/reagent/mutationtoxin/felinid = 1)
- required_reagents = list(/datum/reagent/toxin/mindbreaker = 1, /datum/reagent/ammonia = 1, /datum/reagent/water = 1, /datum/reagent/pax/catnip = 1, /datum/reagent/mutationtoxin = 1)
+ required_reagents = list(/datum/reagent/toxin/mindbreaker = 1, /datum/reagent/ammonia = 1, /datum/reagent/water = 1, /datum/reagent/drug/aphrodisiac = 10, /datum/reagent/mutationtoxin = 1)
required_temp = 450
/datum/chemical_reaction/moff
diff --git a/code/modules/reagents/reagent_containers/bottle.dm b/code/modules/reagents/reagent_containers/bottle.dm
index e0a7f7c00e..76b08c7cdf 100644
--- a/code/modules/reagents/reagent_containers/bottle.dm
+++ b/code/modules/reagents/reagent_containers/bottle.dm
@@ -417,6 +417,26 @@
name = "bromine bottle"
list_reagents = list(/datum/reagent/bromine = 30)
+/obj/item/reagent_containers/glass/bottle/crocin
+ name = "Crocin bottle"
+ desc = "A bottle of mild aphrodisiac. Increases libido."
+ list_reagents = list(/datum/reagent/drug/aphrodisiac = 30)
+
+/obj/item/reagent_containers/glass/bottle/hexacrocin
+ name = "Hexacrocin bottle"
+ desc = "A bottle of strong aphrodisiac. Increases libido."
+ list_reagents = list(/datum/reagent/drug/aphrodisiacplus = 30)
+
+/obj/item/reagent_containers/glass/bottle/camphor
+ name = "Camphor bottle"
+ desc = "A bottle of mild anaphrodisiac. Reduces libido."
+ list_reagents = list(/datum/reagent/drug/anaphrodisiac = 30)
+
+/obj/item/reagent_containers/glass/bottle/hexacamphor
+ name = "Hexacamphor bottle"
+ desc = "A bottle of strong anaphrodisiac. Reduces libido."
+ list_reagents = list(/datum/reagent/drug/anaphrodisiacplus = 30)
+
//Ichors
/obj/item/reagent_containers/glass/bottle/ichor
possible_transfer_amounts = list(1)
diff --git a/code/modules/surgery/organs/vocal_cords.dm b/code/modules/surgery/organs/vocal_cords.dm
index 064abf1700..0e6456e8b0 100644
--- a/code/modules/surgery/organs/vocal_cords.dm
+++ b/code/modules/surgery/organs/vocal_cords.dm
@@ -829,7 +829,7 @@
if(HAS_TRAIT(L, TRAIT_MASO))
if(ishuman(L))
var/mob/living/carbon/human/H = L
- H.adjust_arousal(3*power_multiplier,maso = TRUE)
+ H.adjust_arousal(3*power_multiplier,"velvet speech", maso = TRUE)
descmessage += "And yet, it feels so good..!" //I don't really understand masco, is this the right sort of thing they like?
E.enthrallTally += power_multiplier
E.resistanceTally -= power_multiplier
diff --git a/code/modules/vending/kinkmate.dm b/code/modules/vending/kinkmate.dm
index 2316682e68..1276436495 100644
--- a/code/modules/vending/kinkmate.dm
+++ b/code/modules/vending/kinkmate.dm
@@ -31,6 +31,8 @@
/obj/item/autosurgeon/testicles = 3,
/obj/item/storage/pill_bottle/penis_enlargement = 5,
/obj/item/storage/pill_bottle/breast_enlargement = 5,
+ /obj/item/reagent_containers/glass/bottle/crocin = 5,
+ /obj/item/reagent_containers/glass/bottle/camphor = 5
/obj/item/storage/daki = 4
)
contraband = list(
@@ -46,6 +48,7 @@
)
premium = list(
/obj/item/clothing/accessory/skullcodpiece/fake = 3,
+ /obj/item/reagent_containers/glass/bottle/hexacrocin = 10,
/obj/item/clothing/under/pants/chaps = 5
)
refill_canister = /obj/item/vending_refill/kink
diff --git a/modular_citadel/code/datums/status_effects/chems.dm b/modular_citadel/code/datums/status_effects/chems.dm
index 8f48e90068..a39c590976 100644
--- a/modular_citadel/code/datums/status_effects/chems.dm
+++ b/modular_citadel/code/datums/status_effects/chems.dm
@@ -500,13 +500,19 @@
else if (lowertext(customTriggers[trigger]) == "shock")
if (lewd && ishuman(C))
var/mob/living/carbon/human/H = C
- H.adjust_arousal(5)
+ H.adjust_arousal(5, "MKUltra", aphro = TRUE)
C.jitteriness += 100
C.stuttering += 25
C.DefaultCombatKnockdown(60)
C.Stun(60)
to_chat(owner, "Your muscles seize up, then start spasming wildy!")
+ else if (lewd && lowertext(customTriggers[trigger]) == "cum")//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+ if(ishuman(C))
+ var/mob/living/carbon/human/H = C
+ H.mob_climax(forced_climax=TRUE, "MKUltra")
+ C.SetStun(10)//We got your stun effects in somewhere, Kev.
+
//kneel (knockdown)
else if (lowertext(customTriggers[trigger]) == "kneel")//as close to kneeling as you can get, I suppose.
to_chat(owner, "You drop to the ground unsurreptitiously.")
@@ -588,6 +594,15 @@
deltaResist *= 1.25
if (owner.reagents.has_reagent(/datum/reagent/medicine/neurine))
deltaResist *= 1.5
+ if (!(owner.client?.prefs.cit_toggles & NO_APHRO) && lewd)
+ if (owner.reagents.has_reagent(/datum/reagent/drug/anaphrodisiac))
+ deltaResist *= 1.5
+ if (owner.reagents.has_reagent(/datum/reagent/drug/anaphrodisiacplus))
+ deltaResist *= 2
+ if (owner.reagents.has_reagent(/datum/reagent/drug/aphrodisiac))
+ deltaResist *= 0.75
+ if (owner.reagents.has_reagent(/datum/reagent/drug/aphrodisiacplus))
+ deltaResist *= 0.5
//Antag resistance
//cultists are already brainwashed by their god
if(iscultist(owner))
diff --git a/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm b/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm
index c144fa9196..ab39e6f4a7 100644
--- a/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm
+++ b/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm
@@ -176,7 +176,7 @@
name = "Sucubus milk"
id = /datum/reagent/fermi/breast_enlarger
results = list(/datum/reagent/fermi/breast_enlarger = 8)
- required_reagents = list(/datum/reagent/medicine/salglu_solution = 2, /datum/reagent/consumable/milk = 1, /datum/reagent/medicine/synthflesh = 2, /datum/reagent/silicon = 5)
+ required_reagents = list(/datum/reagent/medicine/salglu_solution = 1, /datum/reagent/consumable/milk = 1, /datum/reagent/medicine/synthflesh = 2, /datum/reagent/silicon = 3, /datum/reagent/drug/aphrodisiac = 3)
mix_message = "the reaction gives off a mist of milk."
//FermiChem vars:
OptimalTempMin = 200
@@ -216,7 +216,7 @@
name = "Incubus draft"
id = /datum/reagent/fermi/penis_enlarger
results = list(/datum/reagent/fermi/penis_enlarger = 8)
- required_reagents = list(/datum/reagent/blood = 5, /datum/reagent/medicine/synthflesh = 2, /datum/reagent/carbon = 5, /datum/reagent/medicine/salglu_solution = 2)
+ required_reagents = list(/datum/reagent/blood = 5, /datum/reagent/medicine/synthflesh = 2, /datum/reagent/carbon = 2, /datum/reagent/drug/aphrodisiac = 2, /datum/reagent/medicine/salglu_solution = 1)
mix_message = "the reaction gives off a spicy mist."
//FermiChem vars:
OptimalTempMin = 200
@@ -383,7 +383,7 @@
name = "Furranium"
id = /datum/reagent/fermi/furranium
results = list(/datum/reagent/fermi/furranium = 5)
- required_reagents = list(/datum/reagent/pax/catnip = 1, /datum/reagent/silver = 2, /datum/reagent/medicine/salglu_solution = 2)
+ required_reagents = list(/datum/reagent/drug/aphrodisiac = 1, /datum/reagent/moonsugar = 1, /datum/reagent/silver = 2, /datum/reagent/medicine/salglu_solution = 1)
mix_message = "You think you can hear a howl come from the beaker."
//FermiChem vars:
OptimalTempMin = 350
@@ -404,6 +404,10 @@
//FOR INSTANT REACTIONS - DO NOT MULTIPLY LIMIT BY 10.
//There's a weird rounding error or something ugh.
+/datum/chemical_reaction/fermi/furranium/organic
+ id = "furranium_organic"
+ required_reagents = list(/datum/reagent/drug/aphrodisiac = 1, /datum/reagent/pax/catnip = 1, /datum/reagent/silver = 2, /datum/reagent/medicine/salglu_solution = 1)
+
//Nano-b-gone
/datum/chemical_reaction/fermi/nanite_b_gone//done test
name = "Naninte bain"