mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
Updates Gender Chems (#5355)
* Updates Gender Chems Removes Elixir formulas but keeps their effects, moving them under the Amorphorovir family of chemicals. Also imposes a double preference check now. Spontaneous TF needs to be enabled and you have to accept the alert letting you know what will happen. * Fixed some comments. * Moved stuff to chomp modular folder
This commit is contained in:
@@ -97,29 +97,6 @@
|
||||
required_reagents = list("bicaridine" = 1, "serazine" = 1, "tungsten" = 1)
|
||||
result_amount = 3
|
||||
|
||||
/////GENDER CHANGE RECIPES/////
|
||||
|
||||
/decl/chemical_reaction/instant/change_drug/male
|
||||
name = "Elixer of Change"
|
||||
id = "change_drug_male"
|
||||
result = "change_drug_male"
|
||||
required_reagents = list("blood" = 1, "mutagen" = 1, "iron" = 1)
|
||||
result_amount = 1
|
||||
|
||||
/decl/chemical_reaction/instant/change_drug/female
|
||||
name = "Elixer of Change"
|
||||
id = "change_drug_female"
|
||||
result = "change_drug_female"
|
||||
required_reagents = list("blood" = 1, "mutagen" = 1, "sugar" = 1)
|
||||
result_amount = 1
|
||||
|
||||
/decl/chemical_reaction/instant/change_drug/intersex
|
||||
name = "Elixer of Change"
|
||||
id = "change_drug_intersex"
|
||||
result = "change_drug_intersex"
|
||||
required_reagents = list("change_drug_male" = 1, "change_drug_female" = 1)
|
||||
result_amount = 1
|
||||
|
||||
// Frost oil reactions for material sheets
|
||||
/decl/chemical_reaction/instant/solidification/aluminium
|
||||
name = "Solid Aluminium"
|
||||
|
||||
@@ -60,42 +60,42 @@
|
||||
/decl/chemical_reaction/instant/androrovir
|
||||
name = "Androrovir"
|
||||
id = "androrovir"
|
||||
result = "androrovir"
|
||||
result = "change_drug_male" // CHOMPEdit: using chomp reagents for outputs.
|
||||
required_reagents = list("amorphorovir" = 1, "bicaridine" = 20, "iron" = 20, "ethanol" = 20)
|
||||
result_amount = 1
|
||||
|
||||
/decl/chemical_reaction/instant/gynorovir
|
||||
name = "Gynorovir"
|
||||
id = "gynorovir"
|
||||
result = "gynorovir"
|
||||
result = "change_drug_female" // CHOMPEdit: using chomp reagents for outputs.
|
||||
required_reagents = list("amorphorovir" = 1, "inaprovaline" = 20, "silicon" = 20, "sugar" = 20)
|
||||
result_amount = 1
|
||||
|
||||
/decl/chemical_reaction/instant/androgynorovir
|
||||
name = "Androgynorovir"
|
||||
id = "androgynorovir"
|
||||
result = "androgynorovir"
|
||||
result = "change_drug_intersex" // CHOMPEdit: using chomp reagents for outputs.
|
||||
required_reagents = list("amorphorovir" = 1, "anti_toxin" = 20, "fluorine" = 20, "tungsten" = 20)
|
||||
result_amount = 1
|
||||
|
||||
/decl/chemical_reaction/instant/androrovir_bootleg
|
||||
name = "Bootleg Androrovir"
|
||||
id = "androrovir_bootleg"
|
||||
result = "androrovir"
|
||||
result = "change_drug_male" // CHOMPEdit: using chomp reagents for outputs.
|
||||
required_reagents = list("amorphorovir" = 1, "protein" = 10, "capsaicin" = 10)
|
||||
result_amount = 1
|
||||
|
||||
/decl/chemical_reaction/instant/gynorovir_bootleg
|
||||
name = "Bootleg Gynorovir"
|
||||
id = "gynorovir_bootleg"
|
||||
result = "gynorovir"
|
||||
result = "change_drug_female" // CHOMPEdit: using chomp reagents for outputs.
|
||||
required_reagents = list("amorphorovir" = 1, "soymilk" = 10, "sugar" = 10)
|
||||
result_amount = 1
|
||||
|
||||
/decl/chemical_reaction/instant/androgynorovir_bootleg
|
||||
name = "Bootleg Androgynorovir"
|
||||
id = "androgynorovir_bootleg"
|
||||
result = "androgynorovir"
|
||||
result = "change_drug_intersex" // CHOMPEdit: using chomp reagents for outputs.
|
||||
required_reagents = list("amorphorovir" = 1, "cola" = 10, "berryjuice" = 10)
|
||||
result_amount = 1
|
||||
|
||||
|
||||
@@ -37,57 +37,6 @@
|
||||
|
||||
else if(prob(10))
|
||||
B.absorb_living(P)
|
||||
if(B.reagent_mode_flags & DM_FLAG_REAGENTSABSORB && B.reagents.total_volume < B.reagents.maximum_volume) //CHOMPedit: absorption reagent production
|
||||
//absorption reagent production
|
||||
if(B.reagent_mode_flags & DM_FLAG_REAGENTSABSORB && B.reagents.total_volume < B.reagents.maximum_volume)
|
||||
B.GenerateBellyReagents_absorbed()
|
||||
|
||||
|
||||
///GENDER CHANGE REAGENTS////
|
||||
|
||||
/datum/reagent/change_drug //base chemical
|
||||
name = "Elixer of Change" //always the same name
|
||||
id = "change_drug"
|
||||
metabolism = 100 //set high enough that it does not process multiple times(delay implemented below)
|
||||
description = "the bloods DNA in this seems aggressive"
|
||||
taste_description = "this shouldn't be here" //unobtainable ingame
|
||||
color = "#7F0000"
|
||||
var/gender_change = null //set the gender variable here so we can set it to others in varients
|
||||
|
||||
/datum/reagent/change_drug/male //inherits base chemical properties listed above
|
||||
id = "change_drug_male" //unique ID for each varient
|
||||
taste_description = "old spice odor blocker body wash"
|
||||
reagent_state = LIQUID
|
||||
color = "#428AFF"
|
||||
gender_change = "male"
|
||||
scannable = 1
|
||||
|
||||
/datum/reagent/change_drug/female
|
||||
id = "change_drug_female"
|
||||
taste_description = "spiced honey"
|
||||
reagent_state = LIQUID
|
||||
color = "#FFA0FA"
|
||||
gender_change = "female"
|
||||
scannable = 1
|
||||
|
||||
/datum/reagent/change_drug/intersex
|
||||
id = "change_drug_intersex"
|
||||
taste_description = "something salty and sweet"
|
||||
reagent_state = LIQUID
|
||||
color = "#CB9EFF"
|
||||
gender_change = "herm"
|
||||
scannable = 1
|
||||
|
||||
/datum/reagent/change_drug/affect_blood(var/mob/living/carbon/human/M, var/alien, var/removed) //we need to process the change
|
||||
if(alien == IS_DIONA) //doesn't work on multiple creature hiveminds
|
||||
return
|
||||
if(M.identifying_gender == gender_change) //don't bug them if they're already the same gender
|
||||
return
|
||||
if(M.gender_change_cooldown == 1) //if already done, don't bug them
|
||||
return
|
||||
else
|
||||
M.gender_change_cooldown = 1 //set not to bug them because the chem is activating
|
||||
M << "<span class='notice'>You lose focus as warmth spreads throughout your chest and abdomen.</span>"
|
||||
spawn(300) //wait 30 seconds, growth takes time yo
|
||||
M.gender_change_cooldown = 0 //allow it to bug them again now that we've waited
|
||||
if (alert(M,"This chemical will change your gender, proceed?", "Warning", "Yes", "No") == "Yes") //check if they want this to happen for pref sake
|
||||
M.change_gender_identity(gender_change)
|
||||
M << "<span class='warning'>You feel like a new person</span>" //success
|
||||
|
||||
@@ -123,7 +123,7 @@
|
||||
description = "A base medical concoction, capable of rapidly altering genetic and physical structure of the body. Requires extra processing to allow for a targeted transformation."
|
||||
reagent_state = LIQUID
|
||||
color = "#AAAAAA"
|
||||
|
||||
/* CHOMPStation Removal for using Chompstation reagents over upstreams'
|
||||
/datum/reagent/androrovir
|
||||
name = "Androrovir"
|
||||
id = "androrovir"
|
||||
@@ -186,3 +186,4 @@
|
||||
H.change_gender_identity(PLURAL)
|
||||
H.visible_message("<span class='notice'>[H] suddenly twitches as some of their features seem to contort and reshape, adjusting... In the end, it seems they are now of mixed gender.</span>",
|
||||
"<span class='warning'>Your body suddenly contorts, feeling very different in various ways... By the time the rushing feeling is over it seems you just became of mixed gender.</span>")
|
||||
*/
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
/decl/chemical_reaction/instant/amorphorovir
|
||||
name = "Amorphorovir"
|
||||
id = "amorphorovir"
|
||||
result = "amorphorovir"
|
||||
required_reagents = list("cryptobiolin" = 30, "biomass" = 30, "hyperzine" = 20)
|
||||
catalysts = list("phoron" = 5)
|
||||
result_amount = 1
|
||||
|
||||
/decl/chemical_reaction/instant/androrovir
|
||||
result = "change_drug_male"
|
||||
|
||||
/decl/chemical_reaction/instant/gynorovir
|
||||
result = "change_drug_female"
|
||||
|
||||
/decl/chemical_reaction/instant/androgynorovir
|
||||
result = "change_drug_intersex"
|
||||
|
||||
/decl/chemical_reaction/instant/androrovir_bootleg
|
||||
result = "change_drug_male"
|
||||
|
||||
/decl/chemical_reaction/instant/gynorovir_bootleg
|
||||
result = "change_drug_female"
|
||||
|
||||
/decl/chemical_reaction/instant/androgynorovir_bootleg
|
||||
result = "change_drug_intersex"
|
||||
64
modular_chomp/code/modules/reagents/reagents/medicine.dm
Normal file
64
modular_chomp/code/modules/reagents/reagents/medicine.dm
Normal file
@@ -0,0 +1,64 @@
|
||||
///GENDER CHANGE REAGENTS////
|
||||
|
||||
/datum/reagent/change_drug //base chemical
|
||||
name = "Amorphorovir" //always the same name
|
||||
id = "change_drug"
|
||||
metabolism = 100 //set high enough that it does not process multiple times(delay implemented below)
|
||||
description = "the bloods DNA in this seems aggressive"
|
||||
taste_description = "this shouldn't be here" //unobtainable ingame
|
||||
color = "#7F0000"
|
||||
var/gender_change = null //set the gender variable here so we can set it to others in varients
|
||||
|
||||
/datum/reagent/change_drug/male //inherits base chemical properties listed above
|
||||
name = "Androrovir"
|
||||
id = "change_drug_male" //unique ID for each varient
|
||||
taste_description = "old spice odor blocker and body wash"
|
||||
reagent_state = LIQUID
|
||||
description = \
|
||||
"A medical concoction, capable of rapidly altering genetic and physical structure of the body. This one seems\
|
||||
to realign the target's gender to be male."
|
||||
color = "#428AFF"
|
||||
gender_change = "male"
|
||||
scannable = 1
|
||||
|
||||
/datum/reagent/change_drug/female
|
||||
name = "Gynorovir"
|
||||
id = "change_drug_female"
|
||||
description = \
|
||||
"A medical concoction, capable of rapidly altering genetic and physical structure of the body. This one seems\
|
||||
to realign the target's gender to be female."
|
||||
taste_description = "spiced honey"
|
||||
reagent_state = LIQUID
|
||||
color = "#FFA0FA"
|
||||
gender_change = "female"
|
||||
scannable = 1
|
||||
|
||||
/datum/reagent/change_drug/intersex
|
||||
name = "Androgynorovir"
|
||||
id = "change_drug_intersex"
|
||||
description = \
|
||||
"A medical concoction, capable of rapidly altering genetic and physical structure of the body. This one seems\
|
||||
to realign the target's gender to be mixed."
|
||||
taste_description = "something salty and sweet"
|
||||
reagent_state = LIQUID
|
||||
color = "#CB9EFF"
|
||||
gender_change = "plural"
|
||||
scannable = 1
|
||||
|
||||
/datum/reagent/change_drug/affect_blood(var/mob/living/carbon/human/M, var/alien, var/removed)
|
||||
if (!(alien == IS_DIONA || M.gender == gender_change || M.gender_change_cooldown == 1) && M.allow_spontaneous_tf)
|
||||
//set not to bug them because the chem is activating
|
||||
M.gender_change_cooldown = 1
|
||||
M.visible_message(
|
||||
"<span class='notice'>[M] suddenly twitches as some of their features seem to contort and reshape.</span>",
|
||||
"<span class='notice'>You lose focus as warmth spreads throughout your chest and abdomen.</span>"
|
||||
)
|
||||
//wait 30 seconds, growth takes time yo
|
||||
spawn(300)
|
||||
//allow it to bug them again now that we've waited
|
||||
M.gender_change_cooldown = 0
|
||||
//check if they want this to happen for pref sake
|
||||
if (alert(M,"This chemical will change your gender, proceed?", "Warning", "Yes", "No") == "Yes")
|
||||
M.change_gender_identity(gender_change)
|
||||
M.change_gender(gender_change)
|
||||
M << "<span class='warning'>You feel like a new person.</span>" //success
|
||||
@@ -4585,7 +4585,9 @@
|
||||
#include "modular_chomp\code\modules\projectiles\gun.dm"
|
||||
#include "modular_chomp\code\modules\reagents\machinery\dispenser\chem_synthesizer_ch.dm"
|
||||
#include "modular_chomp\code\modules\reagents\reactions\instant\drinks.dm"
|
||||
#include "modular_chomp\code\modules\reagents\reactions\instant\instant.dm"
|
||||
#include "modular_chomp\code\modules\reagents\reagents\food_drinks.dm"
|
||||
#include "modular_chomp\code\modules\reagents\reagents\medicine.dm"
|
||||
#include "modular_chomp\code\modules\research\designs\power_cells.dm"
|
||||
#include "modular_chomp\code\modules\research\designs\weapons.dm"
|
||||
#include "modular_chomp\code\modules\shieldgen\shield_capacitor.dm"
|
||||
|
||||
Reference in New Issue
Block a user