Jfc that's a lot of work!
This commit is contained in:
@@ -179,7 +179,7 @@
|
||||
|
||||
/datum/status_effect/chem/astral_insurance/tick(mob/living/carbon/M)
|
||||
. = ..()
|
||||
if(owner.reagents.has_reagent("astral"))
|
||||
if(owner.reagents.has_reagent(/datum/reagent/fermi/astral))
|
||||
return
|
||||
if(owner.mind == originalmind) //If they're home, let the chem deal with deletion.
|
||||
return
|
||||
@@ -281,15 +281,15 @@
|
||||
var/mob/living/carbon/M = owner
|
||||
|
||||
//chem calculations
|
||||
if(!owner.reagents.has_reagent("enthrall") && !owner.reagents.has_reagent("enthrallTest"))
|
||||
if(!owner.reagents.has_reagent(/datum/chemical_reaction/fermi/enthrall) && !owner.reagents.has_reagent(/datum/reagent/fermi/enthrall/test))
|
||||
if (phase < 3 && phase != 0)
|
||||
deltaResist += 3//If you've no chem, then you break out quickly
|
||||
if(prob(5))
|
||||
to_chat(owner, "<span class='notice'><i>Your mind starts to restore some of it's clarity as you feel the effects of the drug wain.</i></span>")
|
||||
if (mental_capacity <= 500 || phase == 4)
|
||||
if (owner.reagents.has_reagent("mannitol"))
|
||||
if (owner.reagents.has_reagent(/datum/reagent/medicine/mannitol))
|
||||
mental_capacity += 5
|
||||
if (owner.reagents.has_reagent("neurine"))
|
||||
if (owner.reagents.has_reagent(/datum/reagent/medicine/neurine))
|
||||
mental_capacity += 10
|
||||
|
||||
//mindshield check
|
||||
@@ -368,7 +368,7 @@
|
||||
if(owner.client?.prefs.lewdchem && !customEcho)
|
||||
to_chat(owner, "<span class='love'><i>[pick("I belong to [enthrallGender].", "[enthrallGender] knows whats best for me.", "Obedence is pleasure.", "I exist to serve [enthrallGender].", "[enthrallGender] is so dominant, it feels right to obey them.")].</i></span>")
|
||||
if (4) //mindbroken
|
||||
if (mental_capacity >= 499 && (owner.getOrganLoss(ORGAN_SLOT_BRAIN) <=0 || HAS_TRAIT(M, TRAIT_MINDSHIELD)) && !owner.reagents.has_reagent("MKUltra"))
|
||||
if (mental_capacity >= 499 && (owner.getOrganLoss(ORGAN_SLOT_BRAIN) <=0 || HAS_TRAIT(M, TRAIT_MINDSHIELD)) && !owner.reagents.has_reagent(/datum/reagent/fermi/enthrall))
|
||||
phase = 2
|
||||
mental_capacity = 500
|
||||
customTriggers = list()
|
||||
@@ -738,18 +738,18 @@
|
||||
deltaResist*= 0.5-(((2/200)*M.arousalloss)/1)//more aroused you are, the weaker resistance you can give, the less you are, the more you gain. (+/- 0.5)
|
||||
|
||||
//chemical resistance, brain and annaphros are the key to undoing, but the subject has to to be willing to resist.
|
||||
if (owner.reagents.has_reagent("mannitol"))
|
||||
if (owner.reagents.has_reagent(/datum/reagent/medicine/mannitol))
|
||||
deltaResist *= 1.25
|
||||
if (owner.reagents.has_reagent("neurine"))
|
||||
if (owner.reagents.has_reagent(/datum/reagent/medicine/neurine))
|
||||
deltaResist *= 1.5
|
||||
if (!HAS_TRAIT(owner, TRAIT_CROCRIN_IMMUNE) && M.canbearoused && owner.client?.prefs.lewdchem)
|
||||
if (owner.reagents.has_reagent("anaphro"))
|
||||
if (owner.reagents.has_reagent(/datum/reagent/drug/anaphrodisiac))
|
||||
deltaResist *= 1.5
|
||||
if (owner.reagents.has_reagent("anaphro+"))
|
||||
if (owner.reagents.has_reagent(/datum/reagent/drug/anaphrodisiacplus))
|
||||
deltaResist *= 2
|
||||
if (owner.reagents.has_reagent("aphro"))
|
||||
if (owner.reagents.has_reagent(/datum/reagent/drug/aphrodisiac))
|
||||
deltaResist *= 0.75
|
||||
if (owner.reagents.has_reagent("aphro+"))
|
||||
if (owner.reagents.has_reagent(/datum/reagent/drug/aphrodisiacplus))
|
||||
deltaResist *= 0.5
|
||||
//Antag resistance
|
||||
//cultists are already brainwashed by their god
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
var/orgasm_verb = "cumming" //present continous
|
||||
var/fluid_transfer_factor = 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/datum/reagent/fluid_id = null
|
||||
var/fluid_max_volume = 50
|
||||
var/fluid_efficiency = 1
|
||||
var/fluid_rate = CUM_RATE
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
zone = BODY_ZONE_CHEST
|
||||
slot = ORGAN_SLOT_BREASTS
|
||||
size = "c" //refer to the breast_values static list below for the cups associated number values
|
||||
fluid_id = "milk"
|
||||
fluid_id = /datum/reagent/consumable/milk
|
||||
fluid_rate = MILK_RATE
|
||||
shape = "pair"
|
||||
genital_flags = CAN_MASTURBATE_WITH|CAN_CLIMAX_WITH|GENITAL_FUID_PRODUCTION
|
||||
@@ -44,7 +44,7 @@
|
||||
desc += " You estimate that they're [uppertext(size)]-cups."
|
||||
|
||||
if(CHECK_BITFIELD(genital_flags, GENITAL_FUID_PRODUCTION) && aroused_state)
|
||||
desc += " They're leaking [fluid_id]."
|
||||
desc += " They're leaking [initial(fluid_id.name)]."
|
||||
var/string
|
||||
if(owner)
|
||||
if(owner.dna.species.use_skintones && owner.dna.features["genitals_use_skintone"])
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
var/size_name = "average"
|
||||
shape = "Single"
|
||||
var/sack_size = BALLS_SACK_SIZE_DEF
|
||||
fluid_id = "semen"
|
||||
fluid_id = /datum/reagent/consumable/semen
|
||||
masturbation_verb = "massage"
|
||||
layer_index = TESTICLES_LAYER_INDEX
|
||||
|
||||
|
||||
@@ -6,5 +6,5 @@
|
||||
zone = BODY_ZONE_PRECISE_GROIN
|
||||
slot = ORGAN_SLOT_WOMB
|
||||
genital_flags = GENITAL_INTERNAL|GENITAL_FUID_PRODUCTION
|
||||
fluid_id = "femcum"
|
||||
fluid_id = /datum/reagent/consumable/femcum
|
||||
linked_organ_slot = ORGAN_SLOT_VAGINA
|
||||
|
||||
@@ -218,7 +218,7 @@ Creating a chem with a low purity will make you permanently fall in love with so
|
||||
|
||||
if(LAZYLEN(seen))
|
||||
return
|
||||
M.reagents.remove_reagent(id, volume)
|
||||
M.reagents.del_reagent(type)
|
||||
FallInLove(M, pick(seen))
|
||||
return
|
||||
|
||||
|
||||
@@ -49,9 +49,9 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
var/list/candies = list()
|
||||
var/pollStarted = FALSE
|
||||
var/startHunger
|
||||
impure_chem = "SDGFtox"
|
||||
impure_chem = /datum/reagent/impure/SDGFtox
|
||||
inverse_chem_val = 0.5
|
||||
inverse_chem = "SDZF"
|
||||
inverse_chem = /datum/reagent/impure/SDZF
|
||||
can_synth = TRUE
|
||||
|
||||
|
||||
@@ -122,7 +122,7 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
SM.nutrition = startHunger/2
|
||||
|
||||
//Transfer remaining reagent to clone. I think around 30u will make a healthy clone, otherwise they'll have clone damage, blood loss, brain damage and hunger.
|
||||
SM.reagents.add_reagent("SDGFheal", volume)
|
||||
SM.reagents.add_reagent(/datum/reagent/fermi/SDGFheal, volume)
|
||||
M.reagents.remove_reagent(id, volume)
|
||||
log_game("FERMICHEM: [volume]u of SDGFheal has been transferred to the clone")
|
||||
SSblackbox.record_feedback("tally", "fermi_chem", 1, "Sentient clones made")
|
||||
@@ -265,7 +265,7 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
SM.set_species(mutation)
|
||||
|
||||
//Transfer remaining reagent to clone. I think around 30u will make a healthy clone, otherwise they'll have clone damage, blood loss, brain damage and hunger.
|
||||
SM.reagents.add_reagent("SDGFheal", volume)
|
||||
SM.reagents.add_reagent(/datum/reagent/fermi/SDGFheal, volume)
|
||||
M.reagents.remove_reagent(id, volume)
|
||||
|
||||
SM.updatehealth()
|
||||
@@ -338,7 +338,7 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
M.adjustToxLoss(1, 0)// the warning!
|
||||
|
||||
if(86)//mean clone time!
|
||||
if (!M.reagents.has_reagent("pen_acid"))//Counterplay is pent.)
|
||||
if (!M.reagents.has_reagent(/datum/reagent/medicine/pen_acid))//Counterplay is pent.)
|
||||
message_admins("(non-infectious) SDZF: Zombie spawned at [M] [COORD(M)]!")
|
||||
M.nutrition = startHunger - 500//YOU BEST BE RUNNING AWAY AFTER THIS YOU BADDIE
|
||||
M.next_move_modifier = 1
|
||||
|
||||
@@ -41,7 +41,7 @@ I'd like to point out from my calculations it'll take about 60-80 minutes to die
|
||||
if(origin.mind && origin.mind != originalmind)
|
||||
to_chat(originalmind.current, "<span class='warning'><b><i>There's a foreign presence in your body blocking your return!</b></i></span>")
|
||||
return ..()
|
||||
if(origin.reagents.has_reagent("astral") )
|
||||
if(origin.reagents.has_reagent(/datum/reagent/fermi/astral) )
|
||||
var/datum/reagent/fermi/astral/As = locate(/datum/reagent/fermi/astral) in origin.reagents.reagent_list
|
||||
if(As.current_cycle < 10)
|
||||
to_chat(originalmind.current, "<span class='warning'><b><i>The intensity of the astrogen in your body is too much allow you to return to yourself yet!</b></i></span>")
|
||||
@@ -90,7 +90,7 @@ I'd like to point out from my calculations it'll take about 60-80 minutes to die
|
||||
if(prob(50))
|
||||
to_chat(G, "<span class='warning'>The high conentration of Astrogen in your blood causes you to lapse your concentration for a moment, bringing your projection back to yourself!</b></span>")
|
||||
do_teleport(G, M.loc)
|
||||
M.reagents.remove_reagent(id, current_cycle/10, FALSE)//exponent
|
||||
metabolization_rate = current_cycle/10 //exponential
|
||||
sleepytime+=5
|
||||
if(G)//This is a mess because of how slow qdel is, so this is all to stop runtimes.
|
||||
if(G.mind)
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
/datum/reagent/fermi/eigenstate/on_mob_delete(mob/living/M) //returns back to original location
|
||||
do_sparks(5,FALSE,M)
|
||||
to_chat(M, "<span class='userdanger'>You feel your wavefunction collapse!</span>")
|
||||
if(!M.reagents.has_reagent("stabilizing_agent"))
|
||||
if(!M.reagents.has_reagent(/datum/reagent/stabilizing_agent))
|
||||
do_teleport(M, location_return, 0, asoundin = 'sound/effects/phasein.ogg') //Teleports home
|
||||
do_sparks(5,FALSE,M)
|
||||
qdel(Eigenstate)
|
||||
|
||||
@@ -26,9 +26,9 @@
|
||||
taste_description = "a milky ice cream like flavour."
|
||||
overdose_threshold = 17
|
||||
metabolization_rate = 0.25
|
||||
impure_chem = "BEsmaller" //If you make an inpure chem, it stalls growth
|
||||
impure_chem = /datum/reagent/fermi/BEsmaller //If you make an inpure chem, it stalls growth
|
||||
inverse_chem_val = 0.35
|
||||
inverse_chem = "BEsmaller" //At really impure vols, it just becomes 100% inverse
|
||||
inverse_chem = /datum/reagent/fermi/BEsmaller //At really impure vols, it just becomes 100% inverse
|
||||
can_synth = FALSE
|
||||
var/message_spam = FALSE
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
M.Knockdown(50)
|
||||
M.Stun(50)
|
||||
B.throw_at(T2, 8, 1)
|
||||
M.reagents.remove_reagent(id, volume)
|
||||
M.reagents.del_reagent(type)
|
||||
return
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(!H.getorganslot(ORGAN_SLOT_BREASTS) && H.emergent_genital_call())
|
||||
@@ -78,7 +78,7 @@
|
||||
B.cached_size = 0
|
||||
B.prev_size = 0
|
||||
to_chat(H, "<span class='warning'>Your chest feels warm, tingling with newfound sensitivity.</b></span>")
|
||||
H.reagents.remove_reagent(id, 5)
|
||||
H.reagents.remove_reagent(type, 5)
|
||||
B.Insert(H)
|
||||
|
||||
//If they have them, increase size. If size is comically big, limit movement and rip clothes.
|
||||
@@ -192,9 +192,9 @@
|
||||
taste_description = "chinese dragon powder"
|
||||
overdose_threshold = 17 //ODing makes you male and removes female genitals
|
||||
metabolization_rate = 0.5
|
||||
impure_chem = "PEsmaller" //If you make an inpure chem, it stalls growth
|
||||
impure_chem = /datum/reagent/fermi/PEsmaller //If you make an inpure chem, it stalls growth
|
||||
inverse_chem_val = 0.35
|
||||
inverse_chem = "PEsmaller" //At really impure vols, it just becomes 100% inverse and shrinks instead.
|
||||
inverse_chem = /datum/reagent/fermi/PEsmaller //At really impure vols, it just becomes 100% inverse and shrinks instead.
|
||||
can_synth = FALSE
|
||||
var/message_spam = FALSE
|
||||
|
||||
@@ -210,7 +210,7 @@
|
||||
M.Knockdown(50)
|
||||
M.Stun(50)
|
||||
P.throw_at(T2, 8, 1)
|
||||
M.reagents.remove_reagent(id, volume)
|
||||
M.reagents.del_reagent(id)
|
||||
return
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(!H.getorganslot(ORGAN_SLOT_PENIS) && H.emergent_genital_call())
|
||||
@@ -236,7 +236,7 @@
|
||||
P.length = 1
|
||||
to_chat(H, "<span class='warning'>Your groin feels warm, as you feel a newly forming bulge down below.</b></span>")
|
||||
P.prev_length = 1
|
||||
H.reagents.remove_reagent(id, 5)
|
||||
H.reagents.remove_reagent(type, 5)
|
||||
P.Insert(H)
|
||||
|
||||
P.modify_size(0.1)
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
taste_description = "affection and love!"
|
||||
can_synth = FALSE
|
||||
value = 20
|
||||
impure_chem = "fermiTox"// What chemical is metabolised with an inpure reaction
|
||||
impure_chem = /datum/reagent/impure/fermiTox // What chemical is metabolised with an inpure reaction
|
||||
inverse_chem_val = 0.25 // If the impurity is below 0.5, replace ALL of the chem with inverse_chemupon metabolising
|
||||
inverse_chem = "fermiTox"
|
||||
inverse_chem = /datum/reagent/impure/fermiTox
|
||||
|
||||
|
||||
//This should process fermichems to find out how pure they are and what effect to do.
|
||||
@@ -174,9 +174,9 @@
|
||||
description = "A stablised EMP that is highly volatile, shocking small nano machines that will kill them off at a rapid rate in a patient's system."
|
||||
color = "#708f8f"
|
||||
overdose_threshold = 15
|
||||
impure_chem = "nanite_b_goneTox" //If you make an inpure chem, it stalls growth
|
||||
impure_chem = /datum/reagent/fermi/nanite_b_goneTox //If you make an inpure chem, it stalls growth
|
||||
inverse_chem_val = 0.25
|
||||
inverse_chem = "nanite_b_goneTox" //At really impure vols, it just becomes 100% inverse
|
||||
inverse_chem = /datum/reagent/fermi/nanite_b_goneTox //At really impure vols, it just becomes 100% inverse
|
||||
taste_description = "what can only be described as licking a battery."
|
||||
pH = 9
|
||||
value = 90
|
||||
@@ -290,7 +290,7 @@ datum/reagent/fermi/nanite_b_gone/reaction_obj(obj/O, reac_volume)
|
||||
if(LAZYLEN(holder.reagent_list) == 1)
|
||||
return
|
||||
else
|
||||
holder.remove_reagent("fermiTest", volume)//Avoiding recurrsion
|
||||
holder.del_reagent(type)//Avoiding recurrsion
|
||||
var/location = get_turf(holder.my_atom)
|
||||
if(cached_purity < 0.34 || cached_purity == 1)
|
||||
var/datum/effect_system/foam_spread/s = new()
|
||||
@@ -323,7 +323,7 @@ datum/reagent/fermi/nanite_b_gone/reaction_obj(obj/O, reac_volume)
|
||||
|
||||
//Consumes self on addition and shifts pH
|
||||
/datum/reagent/fermi/acidic_buffer/on_new(datapH)
|
||||
if(holder.has_reagent("stabilizing_agent"))
|
||||
if(holder.has_reagent(/datum/reagent/stabilizing_agent))
|
||||
return ..()
|
||||
data = datapH
|
||||
if(LAZYLEN(holder.reagent_list) == 1)
|
||||
@@ -333,7 +333,7 @@ datum/reagent/fermi/nanite_b_gone/reaction_obj(obj/O, reac_volume)
|
||||
for(var/mob/M in seen)
|
||||
to_chat(M, "<span class='warning'>The beaker fizzes as the pH changes!</b></span>")
|
||||
playsound(get_turf(holder.my_atom), 'sound/FermiChem/bufferadd.ogg', 50, 1)
|
||||
holder.remove_reagent(id, volume, ignore_pH = TRUE)
|
||||
holder.remove_reagent(type, volume, ignore_pH = TRUE)
|
||||
..()
|
||||
|
||||
/datum/reagent/fermi/basic_buffer
|
||||
@@ -345,7 +345,7 @@ datum/reagent/fermi/nanite_b_gone/reaction_obj(obj/O, reac_volume)
|
||||
can_synth = TRUE
|
||||
|
||||
/datum/reagent/fermi/basic_buffer/on_new(datapH)
|
||||
if(holder.has_reagent("stabilizing_agent"))
|
||||
if(holder.has_reagent(/datum/reagent/stabilizing_agent))
|
||||
return ..()
|
||||
data = datapH
|
||||
if(LAZYLEN(holder.reagent_list) == 1)
|
||||
@@ -355,7 +355,7 @@ datum/reagent/fermi/nanite_b_gone/reaction_obj(obj/O, reac_volume)
|
||||
for(var/mob/M in seen)
|
||||
to_chat(M, "<span class='warning'>The beaker froths as the pH changes!</b></span>")
|
||||
playsound(get_turf(holder.my_atom), 'sound/FermiChem/bufferadd.ogg', 50, 1)
|
||||
holder.remove_reagent(id, volume, ignore_pH = TRUE)
|
||||
holder.remove_reagent(type, volume, ignore_pH = TRUE)
|
||||
..()
|
||||
|
||||
//Turns you into a cute catto while it's in your system.
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
color = "#68e83a"
|
||||
pH = 8.6
|
||||
overdose_threshold = 35
|
||||
impure_chem = "yamerol_tox"
|
||||
impure_chem = /datum/reagent/impure/yamerol_tox
|
||||
inverse_chem_val = 0.4
|
||||
inverse_chem = "yamerol_tox"
|
||||
inverse_chem = /datum/reagent/impure/yamerol_tox
|
||||
can_synth = TRUE
|
||||
|
||||
/datum/reagent/fermi/yamerol/on_mob_life(mob/living/carbon/C)
|
||||
@@ -34,7 +34,7 @@
|
||||
qdel(T)
|
||||
nT.Insert(C)
|
||||
to_chat(C, "<span class='notice'>You feel your tongue.... unfluffify...?</span>")
|
||||
holder.remove_reagent(src.id, "10")
|
||||
holder.remove_reagent(type, 10)
|
||||
..()
|
||||
|
||||
/datum/reagent/fermi/yamerol/overdose_process(mob/living/carbon/C)
|
||||
@@ -50,7 +50,7 @@
|
||||
T = new()
|
||||
T.Insert(C)
|
||||
to_chat(C, "<span class='notice'>You feel your tongue reform in your mouth.</span>")
|
||||
holder.remove_reagent(src.id, "10")
|
||||
holder.remove_reagent(type, 10)
|
||||
else
|
||||
if((oT.name == "fluffy tongue") && (purity == 1))
|
||||
var/obj/item/organ/tongue/T
|
||||
@@ -62,13 +62,13 @@
|
||||
qdel(oT)
|
||||
T.Insert(C)
|
||||
to_chat(C, "<span class='notice'>You feel your tongue.... unfluffify...?</span>")
|
||||
holder.remove_reagent(src.id, "10")
|
||||
holder.remove_reagent(type, 10)
|
||||
|
||||
if(!C.getorganslot(ORGAN_SLOT_LUNGS))
|
||||
var/obj/item/organ/lungs/yamerol/L = new()
|
||||
L.Insert(C)
|
||||
to_chat(C, "<span class='notice'>You feel the yamerol merge in your chest.</span>")
|
||||
holder.remove_reagent(src.id, "10")
|
||||
holder.remove_reagent(type, 10)
|
||||
C.adjustOxyLoss(-3)
|
||||
..()
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
if(data["grown_volume"] > 175) //I don't think this is even possible, but damn to I want to see if someone can (bare in mind it takes 2s to grow 0.05u)
|
||||
if(volume >= 14)
|
||||
if(C.regenerate_organs(only_one = TRUE))
|
||||
C.reagents.remove_reagent(id, 15)
|
||||
C.reagents.remove_reagent(type, 15)
|
||||
to_chat(C, "<span class='notice'>You feel something reform inside of you!</span>")
|
||||
|
||||
data["injected_vol"] -= metabolization_rate
|
||||
|
||||
@@ -9,19 +9,19 @@
|
||||
/datum/chemical_reaction/proc/FermiFinish(datum/reagents/holder, var/atom/my_atom, reactVol)
|
||||
if(clear_conversion == REACTION_CLEAR_IMPURE | REACTION_CLEAR_INVERSE)
|
||||
for(var/id in results)
|
||||
var/datum/reagent/R = my_atom.reagents.has_reagent("[id]")
|
||||
var/datum/reagent/R = my_atom.reagents.has_reagent(id)
|
||||
if(R.purity == 1)
|
||||
continue
|
||||
|
||||
var/cached_volume = R.volume
|
||||
if(clear_conversion == REACTION_CLEAR_INVERSE && R.inverse_chem)
|
||||
if(R.inverse_chem_val > R.purity)
|
||||
my_atom.reagents.remove_reagent(R.id, cached_volume, FALSE)
|
||||
my_atom.reagents.remove_reagent(R.type, cached_volume, FALSE)
|
||||
my_atom.reagents.add_reagent(R.inverse_chem, cached_volume, FALSE, other_purity = 1)
|
||||
|
||||
else if (clear_conversion == REACTION_CLEAR_IMPURE && R.impure_chem)
|
||||
var/impureVol = cached_volume * (1 - R.purity)
|
||||
my_atom.reagents.remove_reagent(R.id, (impureVol), FALSE)
|
||||
my_atom.reagents.remove_reagent(R.type, (impureVol), FALSE)
|
||||
my_atom.reagents.add_reagent(R.impure_chem, impureVol, FALSE, other_purity = 1)
|
||||
R.cached_purity = R.purity
|
||||
R.purity = 1
|
||||
@@ -76,14 +76,15 @@
|
||||
var/datum/effect_system/smoke_spread/chem/s = new()
|
||||
R.my_atom = my_atom //Give the gas a fingerprint
|
||||
|
||||
for (var/datum/reagent/reagent in R0.reagent_list) //make gas for reagents, has to be done this way, otherwise it never stops Exploding
|
||||
R.add_reagent(reagent.id, reagent.volume/3) //Seems fine? I think I fixed the infinite explosion bug.
|
||||
for (var/A in R0.reagent_list) //make gas for reagents, has to be done this way, otherwise it never stops Exploding
|
||||
var/datum/reagent/R2 = A
|
||||
R.add_reagent(R2.type, R2.volume/3) //Seems fine? I think I fixed the infinite explosion bug.
|
||||
|
||||
if (reagent.purity < 0.6)
|
||||
ImpureTot = (ImpureTot + (1-reagent.purity)) / 2
|
||||
if (R2.purity < 0.6)
|
||||
ImpureTot = (ImpureTot + (1-R2.purity)) / 2
|
||||
|
||||
if(pH < 4) //if acidic, make acid spray
|
||||
R.add_reagent("fermiAcid", (volume/3))
|
||||
R.add_reagent(/datum/reagent/impure/fermiTox, (volume/3))
|
||||
if(R.reagent_list)
|
||||
s.set_up(R, (volume/5), my_atom)
|
||||
s.start()
|
||||
@@ -203,8 +204,8 @@
|
||||
var/datum/reagent/fermi/breast_enlarger/BE = locate(/datum/reagent/fermi/breast_enlarger) in my_atom.reagents.reagent_list
|
||||
var/cached_volume = BE.volume
|
||||
if(BE.purity < 0.35)
|
||||
holder.remove_reagent(src.id, cached_volume)
|
||||
holder.add_reagent("BEsmaller", cached_volume)
|
||||
holder.remove_reagent(type, cached_volume)
|
||||
holder.add_reagent(/datum/reagent/fermi/BEsmaller, cached_volume)
|
||||
|
||||
|
||||
/datum/chemical_reaction/fermi/breast_enlarger/FermiExplode(datum/reagents, var/atom/my_atom, volume, temp, pH)
|
||||
@@ -252,8 +253,8 @@
|
||||
var/datum/reagent/fermi/penis_enlarger/PE = locate(/datum/reagent/fermi/penis_enlarger) in my_atom.reagents.reagent_list
|
||||
var/cached_volume = PE.volume
|
||||
if(PE.purity < 0.35)
|
||||
holder.remove_reagent(src.id, cached_volume)
|
||||
holder.add_reagent("PEsmaller", cached_volume)
|
||||
holder.remove_reagent(type, cached_volume)
|
||||
holder.add_reagent(/datum/reagent/fermi/PEsmaller, cached_volume)
|
||||
|
||||
/datum/chemical_reaction/fermi/astral
|
||||
name = "Astrogen"
|
||||
@@ -350,7 +351,7 @@
|
||||
var/turf/T = get_turf(my_atom)
|
||||
var/datum/reagents/R = new/datum/reagents(1000)
|
||||
var/datum/effect_system/smoke_spread/chem/s = new()
|
||||
R.add_reagent("enthrallExplo", volume)
|
||||
R.add_reagent(/datum/reagent/fermi/enthrallExplo, volume)
|
||||
s.set_up(R, volume/2, T)
|
||||
s.start()
|
||||
my_atom.reagents.clear_reagents()
|
||||
|
||||
Reference in New Issue
Block a user