diff --git a/code/datums/brain_damage/severe.dm b/code/datums/brain_damage/severe.dm index ebc6091d31..832fd5b4f4 100644 --- a/code/datums/brain_damage/severe.dm +++ b/code/datums/brain_damage/severe.dm @@ -205,6 +205,7 @@ owner.remove_trait(TRAIT_PACIFISM, TRAUMA_TRAIT) ..() +//ported from TG /datum/brain_trauma/severe/hypnotic_stupor name = "Hypnotic Stupor" desc = "Patient is prone to episodes of extreme stupor that leaves them extremely suggestible." diff --git a/code/modules/antagonists/valentines/valentine.dm b/code/modules/antagonists/valentines/valentine.dm index 31e69b32c2..f53d61ab6d 100644 --- a/code/modules/antagonists/valentines/valentine.dm +++ b/code/modules/antagonists/valentines/valentine.dm @@ -27,6 +27,7 @@ var/mob/living/L = owner L.remove_status_effect(STATUS_EFFECT_INLOVE) + /datum/antagonist/valentine/greet() to_chat(owner, "You're on a date with [date.name]! Protect [date.p_them()] at all costs. This takes priority over all other loyalties.") @@ -42,4 +43,26 @@ if(objectives_complete) return "[owner.name] protected [owner.p_their()] date" else - return "[owner.name] date failed!" \ No newline at end of file + return "[owner.name] date failed!" + +//Just so it's distinct, basically. +/datum/antagonist/valentine/chem/greet() + to_chat(owner, "You're in love with [date.name]! Protect [date.p_them()] at all costs. This takes priority over all other loyalties.") + +/datum/antagonist/valentine/chem/check_completion() + if(date.M.stat != DEAD) + return TRUE + return FALSE + +/datum/antagonist/valentine/chem/roundend_report() + var/objectives_complete = TRUE + if(owner.objectives.len) + for(var/datum/objective/objective in owner.objectives) + if(!objective.check_completion()) + objectives_complete = FALSE + break + + if(objectives_complete) + return "[owner.name] protected [owner.p_their()] love: [date.name]! What a cutie!" + else + return "[owner.name] date failed!" diff --git a/code/modules/events/holiday/vday.dm b/code/modules/events/holiday/vday.dm index a4e8b276b5..368e30e7eb 100644 --- a/code/modules/events/holiday/vday.dm +++ b/code/modules/events/holiday/vday.dm @@ -41,9 +41,12 @@ else L.mind.add_antag_datum(/datum/antagonist/heartbreaker) -/proc/forge_valentines_objective(mob/living/lover,mob/living/date) +/proc/forge_valentines_objective(mob/living/lover,mob/living/date,var/chemLove = FALSE) lover.mind.special_role = "valentine" - var/datum/antagonist/valentine/V = new + if (chemLove == TRUE) + var/datum/antagonist/valentine/chem/V = new //Changes text and EOG check basically. + else + var/datum/antagonist/valentine/V = new V.date = date.mind lover.mind.add_antag_datum(V) //These really should be teams but i can't be assed to incorporate third wheels right now diff --git a/code/modules/mob/living/blood.dm b/code/modules/mob/living/blood.dm index 551e01c3ef..a3c888ebfc 100644 --- a/code/modules/mob/living/blood.dm +++ b/code/modules/mob/living/blood.dm @@ -46,6 +46,8 @@ nutrition_ratio = 0.8 else nutrition_ratio = 1 + if(has_trait(TRAIT_HIGH_BLOOD)) + nutrition_ratio *= 1.2 if(satiety > 80) nutrition_ratio *= 1.25 nutrition = max(0, nutrition - nutrition_ratio * HUNGER_FACTOR) diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 9a08276999..97f1b2dd36 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -296,3 +296,109 @@ if(L.a_intent == INTENT_HARM && L.reagents && !stat) L.reagents.add_reagent("nutriment", 0.4) L.reagents.add_reagent("vitamin", 0.4) + +//Cat made +/mob/living/simple_animal/pet/cat/custom_cat + name = "White cat" //Incase it somehow gets spawned without an ID + desc = "A cute white catto!" + icon_state = "custom_cat" + icon_living = "custom_cat" + icon_dead = "custom_cat_dead" + gender = FEMALE + gold_core_spawnable = NO_SPAWN + health = 50 //So people can't instakill it + maxHealth = 50 + +//secretcatchemcode, shh!! Of couse I hide it amongst cats. Also, yes, I expect you, Mr.Maintaner to read and review this, dispite it being hidden and not mentioned in the changelogs. +//ChemReactionVars: +/datum/chemical_reaction/fermi/secretcatchem //DONE + name = "secretcatchem" + id = "secretcatchem" + results = list("secretcatchem" = 2) + required_reagents = list("stable_plasma" = 0.5, "sugar" = 0.5, "cream" = 0.5, "blood" = 0.5) + required_catalysts = list("felinidmutationtoxin" = 5) + mix_message = "the reaction gives off a meow!" + //FermiChem vars: + OptimalTempMin = 700 // Lower area of bell curve for determining heat based rate reactions + OptimalTempMax = 800 // Upper end for above + ExplodeTemp = 900 // Temperature at which reaction explodes + OptimalpHMin = 6 // Lowest value of pH determining pH a 1 value for pH based rate reactions (Plateu phase) + OptimalpHMax = 8 // Higest value for above + ReactpHLim = 2 // How far out pH wil react, giving impurity place (Exponential phase) + CatalystFact = 0 // How much the catalyst affects the reaction (0 = no catalyst) + CurveSharpT = 0 // How sharp the temperature exponential curve is (to the power of value) + CurveSharppH = 0 // How sharp the pH exponential curve is (to the power of value) + ThermicConstant = 0 // Temperature change per 1u produced + HIonRelease = 0 // pH change per 1u reaction (inverse for some reason) + RateUpLim = 0.1 // Optimal/max rate possible if all conditions are perfect + FermiChem = TRUE // If the chemical uses the Fermichem reaction mechanics + FermiExplode = FALSE // If the chemical explodes in a special way + PurityMin = 0.2 + +/datum/chemical_reaction/fermi/secretcatchem/Initialize() + message_admins("randomizing reaction") + OptimalTempMin += rand(-100, 100) + OptimalTempMax += rand(-100, 100) + ExplodeTemp += rand(-100, 100) + OptimalpHMin += rand(-1, 1) + OptimalpHMax += rand(-1, 1) + ReactpHLim += rand(-2, 2) + CurveSharpT += rand(0.01, 5) + CurveSharppH += rand(0.01, 5) + ThermicConstant += rand(-50, 50) + HIonRelease += rand(-0.25, 0.25) + RateUpLim += rand(0, 100) + PurityMin += rand(-0.1, 0.1) + var/additions = list("aluminum", "silver", "gold", "plasma", "silicon", "bluespace") + var/chosenA = pick(additions) + required_reagents[chosenA] = rand(0.1, 1) + +/datum/chemical_reaction/fermi/secretcatchem/FermiFinish(datum/reagents/holder, var/atom/my_atom)//Strange how this doesn't work but the other does. + message_admins("Someone found the hidden reaction. Amazing!! Please tell Fermi!!") + +//ReagentVars +//Turns you into a cute catto while it's in your system. +//If you manage to gamble perfectly, makes you a catgirl after you transform back. But really, you shouldn't end up with that with how random it is. +/datum/reagent/fermi/secretcatchem //Should I hide this from code divers? A secret cit chem? + name = "secretcatchem" //an attempt at hiding it + id = "secretcatchem" + description = "An illegal and hidden chem that turns people into cats/catgirls. It's said that it's so rare and unstable that having it means you've been blessed." + taste_description = "hairballs and cream" + color = "#ffc224" + var/catshift = FALSE + var/mob/living/simple_animal/pet/cat/custom_cat/catto + //var/mob/living/carbon/human/origin maybe unneeded + +/datum/reagent/fermi/secretcatchem/New() + name = "Catgirli[pick("a","u","e","y")]m [pick("apex", "prime", "meow")]" + +/datum/reagent/fermi/secretcatchem/on_mob_add(mob/living/carbon/human/H) + . = ..() + //origin = H + var/current_species = H.dna.species.type + var/datum/species/mutation = /datum/species/human/felinid + if((mutation && mutation != current_species) && (purity > 0.9))//ONLY if purity is 1, and given the stuff is random. It's basically impossible to get this to 1. + H.set_species(mutation) + H.gender = FEMALE + catshift = TRUE + catto = new(get_turf(H.loc)) + H.mind.transfer_to(catto) + H.moveToNullspace() + catto.name = M.name + catto.desc = "A cute catto! They remind you of [M] somehow." + catto.color = "#[dna.features["mcolor"]]" + +/datum/reagent/fermi/secretcatchem/on_mob_life(mob/living/carbon/human/H) + if(prob(5)) + playsound(get_turf(catto), 'modular_citadel/sound/voice/merowr.ogg', 50, 1, -1) + catto.emote("me","lets out a meowrowr!") + ..() + +/datum/reagent/fermi/secretcatchem/on_mob_add(mob/living/carbon/human/H) + var/words = "Your body shifts back to normal." + if(catshift == TRUE) + words += " ...But wait, are those ears and a tail?") + to_chat(H, "[words]") + H.doMove(catto) + catto.mind.transfer_to(M) + qdel(catto) diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index a1359072a4..b7e4f6aa96 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -128,7 +128,7 @@ im update_total() handle_reactions() - //pH = REAGENT_NORMAL_PH Maybe unnessicary? + pH = REAGENT_NORMAL_PH //Maybe unnessicary? NO incredibly nessicary, blows the beaker up otherwise return amount /datum/reagents/proc/get_master_reagent_name() @@ -347,7 +347,7 @@ im /datum/reagents/proc/beaker_check(atom/A) if(istype(A, /obj/item/reagent_containers/glass/beaker/meta)) return - if(istype(A, /obj/item/reagent_containers/glass/beaker/plastic)) + if(istype(A, /obj/item/reagent_containers/glass/beaker/plastic))//reaclly weird how this runtimes but the previous doesn't if(chem_temp > 444)//assuming polypropylene var/list/seen = viewers(5, get_turf(A)) var/iconhtml = icon2html(A, seen) @@ -379,6 +379,10 @@ im if(reagents_holder_flags & REAGENT_NOREACT) //Not sure on reagents_holder_flags, but I think it checks to see if theres a reaction with current stuff. return //Yup, no reactions here. No siree. + //QPlasticCheck - this is done to reduce calculations + if (istype(my_atom, /obj/item/reagent_containers/glass/beaker/plastic)) + beaker_check() + var/reaction_occurred = 0 // checks if reaction, binary variable var/continue_reacting = FALSE //Helps keep track what kind of reaction is occuring; standard or fermi. @@ -692,7 +696,7 @@ im deltapH = 1 //This should never proc: else - //message_admins("Fermichem's pH broke!! Please let Fermis know!!") + message_admins("Fermichem's pH broke!! Please let Fermis know!!") WARNING("[my_atom] attempted to determine FermiChem pH for '[C.id]' which broke for some reason! ([usr])") //TODO Add CatalystFact //message_admins("calculating pH factor(purity), pH: [pH], min: [C.OptimalpHMin]-[C.ReactpHLim], max: [C.OptimalpHMax]+[C.ReactpHLim], deltapH: [deltapH]") @@ -728,8 +732,6 @@ im // End. /* - for(var/B in cached_required_reagents) // - tempVol = min(reactedVol, round(get_reagent_amount(B) / cached_required_reagents[B]))//a simple one over the other? (Is this for multiplying end product? Useful for toxinsludge buildup) */ //message_admins("cached_results: [cached_results], reactedVol: [reactedVol], stepChemAmmount [stepChemAmmount]") diff --git a/code/modules/spells/spell_types/shapeshift.dm b/code/modules/spells/spell_types/shapeshift.dm index a31b5394e0..e3b3ac6416 100644 --- a/code/modules/spells/spell_types/shapeshift.dm +++ b/code/modules/spells/spell_types/shapeshift.dm @@ -18,7 +18,7 @@ var/shapeshift_type //Incase I ever get lucky enough to be a wizard. Also why can you be a dog but not a cat!! I know this isn't fermichem related, but this is really important!!! var/list/possible_shapes = list(/mob/living/simple_animal/mouse,\ - /mob/living/simple_animal/pet/cat,\ + /mob/living/simple_animal/pet/cat,\ //TODO: Remember to remove this before making final commit and make a new request for this. But until then, I'm gonna be a catto wizard! /mob/living/simple_animal/pet/dog/corgi,\ /mob/living/simple_animal/hostile/carp/ranged/chaos,\ /mob/living/simple_animal/bot/ed209,\ diff --git a/icons/mob/pets.dmi b/icons/mob/pets.dmi index 45b0ab1f04..e1ebe86922 100644 Binary files a/icons/mob/pets.dmi and b/icons/mob/pets.dmi differ diff --git a/modular_citadel/code/datums/traits/negative.dm b/modular_citadel/code/datums/traits/negative.dm index 796c4529e2..9ecdc59a81 100644 --- a/modular_citadel/code/datums/traits/negative.dm +++ b/modular_citadel/code/datums/traits/negative.dm @@ -1,5 +1,6 @@ // Citadel-specific Negative Traits +//For reviewers: If you think it's a bad idea, feel free to remove it. I won't be upset :blobcat: /datum/quirk/Hypno name = "Hypnotherapy user" desc = "You had hypnotherapy right before your shift, you're not sure it had any effects, though." diff --git a/modular_citadel/code/datums/traits/neutral.dm b/modular_citadel/code/datums/traits/neutral.dm index fd713660c3..264dbfef0a 100644 --- a/modular_citadel/code/datums/traits/neutral.dm +++ b/modular_citadel/code/datums/traits/neutral.dm @@ -1,6 +1,5 @@ // Citadel-specific Neutral Traits -//For reviewers: If you think it's a bad idea, feel free to remove it. I won't be upset :blobcat: /datum/quirk/libido name = "Nymphomania" desc = "You're always feeling a bit in heat. Also, you get aroused faster than usual." diff --git a/modular_citadel/code/datums/traits/positive.dm b/modular_citadel/code/datums/traits/positive.dm index 59bb98d09c..34d4d95600 100644 --- a/modular_citadel/code/datums/traits/positive.dm +++ b/modular_citadel/code/datums/traits/positive.dm @@ -2,8 +2,8 @@ /datum/quirk/BloodPressure name = "Synthetic blood" - desc = "You've got a new form of synthetic blood that increases the total blood volume inside of you!" - value = 0 //I honeslty dunno if this is a good trait? I just means you use more of medbays blood and make janitors madder. + desc = "You've got a new form of synthetic blood that increases the total blood volume inside of you as well as the rate of replenishment!" + value = 1 //I honeslty dunno if this is a good trait? I just means you use more of medbays blood and make janitors madder, but you also regen blood a lil faster. mob_trait = TRAIT_HIGH_BLOOD gain_text = "You feel full of blood!" lose_text = "You feel like your blood pressure went down." diff --git a/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm b/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm index 2da168a388..3ede358c88 100644 --- a/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm +++ b/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm @@ -1159,13 +1159,17 @@ And as stated earlier, this chem is hard to make, and is punishing on failure. Y if(!creatorID) message_admins("Something went wrong in enthral creation THIS SHOULD NOT APPEAR") return - var/datum/status_effect/chem/enthrall/E = M.has_status_effect(/datum/status_effect/chem/enthrall) + if(!ishuman(M))//Just to make sure screwy stuff doesn't happen. + return + var/datum/status_effect/chem/enthrall/E = M.has_status_effect(/datum/status_effect/chem/enthrall) //Somehow a beaker got here? (what) if(E) return message_admins("key: [M.ckey] vs [creatorID], ") if(purity < 0.5)//Impure chems don't function as you expect return if((M.ckey == creatorID) && (creatorName == M.real_name)) //same name AND same player - same instance of the player. (should work for clones?) + //if(M.has_status_effect(STATUS_EFFECT_INLOVE) Not sure if I need/want this. + // to_chat(M, "You are too busy being in love for this to work!") var/obj/item/organ/vocal_cords/Vc = M.getorganslot(ORGAN_SLOT_VOICE) var/obj/item/organ/vocal_cords/nVc = new /obj/item/organ/vocal_cords/velvet if(Vc) @@ -1254,7 +1258,7 @@ And as stated earlier, this chem is hard to make, and is punishing on failure. Y E.master = creator else E = M.has_status_effect(/datum/status_effect/chem/enthrall) - to_chat(M, "Your mind shatters under the volume of the mild altering chem inside of you, breaking all will and thought completely. Instead the only force driving you now is the instinctual desire to obey and follow [creatorName].") + to_chat(M, "Your mind shatters under the volume of the mild altering chem inside of you, breaking all will and thought completely. Instead the only force driving you now is the instinctual desire to obey and follow [creatorName].") M.slurring = 100 M.confused = 100 E.phase = 4 @@ -1288,7 +1292,7 @@ And as stated earlier, this chem is hard to make, and is punishing on failure. Y if(!love) return M.apply_status_effect(STATUS_EFFECT_INLOVE, love) - to_chat(M, "You develop overwhelmingly deep feelings for [love], your heart beginning to race as you look upon them with new eyes. You are determined to keep them safe above all other priorities.") + to_chat(M, "You develop overwhelmingly deep feelings for [love], your heart beginning to race as you look upon them with new eyes. You are determined to keep them safe above all other priorities.") else if(get_dist(M, love) < 8) if(M.has_trait(TRAIT_NYMPHO)) //Add this back when merged/updated. @@ -1301,7 +1305,7 @@ And as stated earlier, this chem is hard to make, and is punishing on failure. Y if(prob(10)) M.Stun(10) M.emote("whimper")//does this exist? - to_chat(M, " You're overcome with a desire to see [love].") + to_chat(M, " You're overcome with a desire to see [love].") M.adjustBrainLoss(1)//I found out why everyone was so damaged! ..() @@ -1316,12 +1320,12 @@ And as stated earlier, this chem is hard to make, and is punishing on failure. Y if(Lover.has_status_effect(STATUS_EFFECT_INLOVE)) to_chat(Lover, "You are already fully devoted to someone else!") return - to_chat(Lover, "You develop deep feelings for [Love], your heart beginning to race as you look upon them with new eyes.") + to_chat(Lover, "You develop deep feelings for [Love], your heart beginning to race as you look upon them with new eyes.") if(Lover.mind) Lover.mind.store_memory("You are in love with [Love].") Lover.faction |= "[REF(Love)]" Lover.apply_status_effect(STATUS_EFFECT_INLOVE, Love) - forge_valentines_objective(Lover, Love) + forge_valentines_objective(Lover, Love, TRUE) return //Requires player to be within vicinity of creator @@ -1367,7 +1371,7 @@ And as stated earlier, this chem is hard to make, and is punishing on failure. Y /datum/reagent/fermi/hatmium/on_mob_life(mob/living/carbon/human/M) //hat.armor = list("melee" = (1+(current_cycle/20)), "bullet" = (1+(current_cycle/20)), "laser" = (1+(current_cycle/20)), "energy" = (1+(current_cycle/20)), "bomb" = (1+(current_cycle/20)), "bio" = (1+(current_cycle/20)), "rad" = (1+(current_cycle/20)), "fire" = (1+(current_cycle/20)), "acid" = (1+(current_cycle/20))) - var/hatArmor = (1+(current_cycle/100))*purity + var/hatArmor = (1+(current_cycle/30))*purity if(!overdosed) hat.armor = list("melee" = hatArmor, "bullet" = hatArmor, "laser" = hatArmor, "energy" = hatArmor, "bomb" = hatArmor, "bio" = hatArmor, "rad" = hatArmor, "fire" = hatArmor) else @@ -1393,6 +1397,7 @@ And as stated earlier, this chem is hard to make, and is punishing on failure. Y var/obj/item/organ/tongue/nT DoNotSplit = TRUE pH = 5 + var/obj/item/organ/tongue/T /datum/reagent/fermi/furranium/on_mob_life(mob/living/carbon/M) @@ -1415,7 +1420,7 @@ And as stated earlier, this chem is hard to make, and is punishing on failure. Y if(seen) to_chat(M, "You notice [pick(seen)]'s bulge [pick("OwO!", "uwu!")]") if(21) - var/obj/item/organ/tongue/T = M.getorganslot(ORGAN_SLOT_TONGUE) + T = M.getorganslot(ORGAN_SLOT_TONGUE) var/obj/item/organ/tongue/nT = new /obj/item/organ/tongue/OwO T.Remove(M) nT.Insert(M) @@ -1436,6 +1441,14 @@ And as stated earlier, this chem is hard to make, and is punishing on failure. Y to_chat(M, "You notice [pick(seen)]'s bulge [pick("OwO!", "uwu!")]") ..() +/datum/reagent/fermi/furranium/on_mob_delete(mob/living/carbon/M) + if(purity <= 0.9)//Only permanent if you're a good chemist. + nT = M.getorganslot(ORGAN_SLOT_TONGUE) + nT.Remove(M) + T.Insert(M) + to_chat(M, "You feel your tongue.... unfluffify...?" + M.say("Pleh!") + /////////////////////////////////////////////////////////////////////////////////////////////// //Nanite removal diff --git a/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm b/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm index f1c158d4cb..400df70760 100644 --- a/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm +++ b/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm @@ -26,18 +26,18 @@ var/datum/effect_system/smoke_spread/chem/s = new() if(pH < 4) //if acidic, make acid spray //s.set_up(/datum/reagent/fermi/fermiAcid, (volume/3), pH*10, T) - R.add_reagent("fermiAcid", ((volume/3)/pH)) - pHmod = 2 + my_atom.reagents.add_reagent("fermiAcid", ((volume/3)/pH)) + //pHmod = 2 for (var/datum/reagent/reagent in my_atom.reagents.reagent_list) //make gas for reagents /*if (istype(reagent, /datum/reagent/fermi)) continue //Don't allow fermichems into the mix (fermi explosions are handled elsewhere and it's a huge pain) */ - R.add_reagent(reagent, reagent.volume) + //R.add_reagent(reagent, reagent.volume) if (reagent.purity < 0.6) ImpureTot = (ImpureTot + (1-reagent.purity)) / 2 if(R.reagent_list) - s.set_up(R, (volume/10)*pHmod, 10, T) + s.set_up(my_atom.reagents, (volume/10), 10, T) s.start() if(temp>500)//if hot, start a fire @@ -59,7 +59,7 @@ var/datum/effect_system/reagents_explosion/e = new() e.set_up(round((volume/30)*(pH-9)), T, 0, 0) e.start() - pHmod = 1.5 + //pHmod = 1.5 if(!ImpureTot == 0) //If impure, v.small emp ImpureTot *= volume @@ -92,7 +92,7 @@ /datum/chemical_reaction/fermi/eigenstate/FermiFinish(datum/reagents/holder, var/atom/my_atom)//Strange how this doesn't work but the other does. - var/location = get_turf(my_atom) + var/turf/open/location = get_turf(my_atom) var/datum/reagent/fermi/eigenstate/E = locate(/datum/reagent/fermi/eigenstate) in my_atom.reagents.reagent_list E.location_created = location //add on_new() handling of vars @@ -253,11 +253,11 @@ message_admins("On finish for enthral proc'd") var/datum/reagent/blood/B = locate(/datum/reagent/blood) in my_atom.reagents.reagent_list var/datum/reagent/fermi/enthrall/E = locate(/datum/reagent/fermi/enthrall) in my_atom.reagents.reagent_list - if(!B) + if(!B.data) var/list/seen = viewers(5, get_turf(my_atom)) for(var/mob/M in seen) - to_chat(M, "The reaction splutters and fails to react.") - //E.purity = 0 + to_chat(M, "The reaction splutters and fails to react.") //if this appears, WHAT?! + E.purity = 0 if (B.data.["gender"] == "female") E.data.["creatorGender"] = "Mistress" E.creatorGender = "Mistress" @@ -278,7 +278,7 @@ s.set_up(R, volume, T) s.start() my_atom.reagents.clear_reagents() - ..(volume = 0, pH = 7, purity = 1) //Just a lil fire. + ..(volume = 0, pH = 7) //Just a lil fire. /datum/chemical_reaction/fermi/hatmium // done name = "Hat growth serum"