From afeb1d8870a4a4ca59742c75eda197d871af5375 Mon Sep 17 00:00:00 2001 From: Fermi Date: Tue, 18 Jun 2019 12:49:22 +0100 Subject: [PATCH] Preholo --- .../chemistry/reagents/eigentstasium.dm | 17 ++++++++++++++--- .../chemistry/reagents/fermi_reagents.dm | 8 ++++---- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/modular_citadel/code/modules/reagents/chemistry/reagents/eigentstasium.dm b/modular_citadel/code/modules/reagents/chemistry/reagents/eigentstasium.dm index be82130c7c..46ff0bf0bb 100644 --- a/modular_citadel/code/modules/reagents/chemistry/reagents/eigentstasium.dm +++ b/modular_citadel/code/modules/reagents/chemistry/reagents/eigentstasium.dm @@ -25,7 +25,7 @@ var/turf/location_created var/turf/open/location_return = null var/addictCyc3 = 0 - var/mob/living/fermi_Tclone = null + var/mob/living/carbon/fermi_Tclone = null var/teleBool = FALSE pH = 3.7 @@ -34,8 +34,15 @@ //Main functions /datum/reagent/fermi/eigenstate/on_mob_life(mob/living/M) //Teleports to chemistry! - log_game("FERMICHEM: [M] ckey: [M.key] took eigenstasium") if(current_cycle == 0) + log_game("FERMICHEM: [M] ckey: [M.key] took eigenstasium") + var/typepath = M.type + fermi_Tclone = new typepath(M.loc) + //var/mob/living/carbon/C = fermi_Tclone + fermi_Tclone.appearance = M.appearance + fermi_Tclone.name = "[M.name]'s eigenstate" + fermi_Tclone.alpha = 150 + fermi_Tclone.color = "#0000bb" location_return = get_turf(M) //sets up return point to_chat(M, "You feel your wavefunction split!") if(purity > 0.9) //Teleports you home if it's pure enough @@ -45,6 +52,8 @@ do_sparks(5,FALSE,M) do_teleport(M, location_created, 0, asoundin = 'sound/effects/phasein.ogg') do_sparks(5,FALSE,M) + + if(prob(20)) do_sparks(5,FALSE,M) ..() @@ -54,6 +63,8 @@ to_chat(M, "You feel your wavefunction collapse!") do_teleport(M, location_return, 0, asoundin = 'sound/effects/phasein.ogg') //Teleports home do_sparks(5,FALSE,M) + qdel(fermi_Tclone) + fermi_Tclone = null ..() /datum/reagent/fermi/eigenstate/overdose_start(mob/living/M) //Overdose, makes you teleport randomly @@ -97,7 +108,7 @@ /datum/reagent/fermi/eigenstate/addiction_act_stage3(mob/living/M)//Pulls multiple copies of the character from alternative realities while teleporting them around! //Clone function - spawns a clone then deletes it - simulates multiple copies of the player teleporting in - switch(addictCyc3) //Loops 0 -> 1 -> 2 -> 0 ...ect. + switch(addictCyc3) //Loops 0 -> 1 -> 2 -> 1 -> 2 -> 1 ...ect. if(0) M.Jitter(100) to_chat(M, "Your eigenstate starts to rip apart, causing a localised collapsed field as you're ripped from alternative universes, trapped around the densisty of the event horizon.") 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 921e27eda3..64d44f0973 100644 --- a/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm +++ b/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm @@ -327,7 +327,7 @@ ..() /datum/reagent/fermi/fermiABuffer - name = "Acidic buffer"//defined on setup + name = "Acidic buffer" id = "fermiABuffer" description = "This reagent will consume itself and move the pH of a beaker towards 3 when added to another." taste_description = "an acidy sort of taste, blech." @@ -339,7 +339,7 @@ data = datapH if(LAZYLEN(holder.reagent_list) == 1) return - holder.pH = ((holder.pH * holder.total_volume)+(pH * (volume*3)))/(holder.total_volume + (volume*3)) //Shouldn't be required + holder.pH = ((holder.pH * holder.total_volume)+(pH * (volume*3)))/(holder.total_volume + (volume*3)) var/list/seen = viewers(5, get_turf(holder)) for(var/mob/M in seen) to_chat(M, "The beaker fizzes as the pH changes!") @@ -348,7 +348,7 @@ ..() /datum/reagent/fermi/fermiBBuffer - name = "Basic buffer"//defined on setup + name = "Basic buffer" id = "fermiBBuffer" description = "This reagent will consume itself and move the pH of a beaker towards 11 when added to another." taste_description = "an soapy sort of taste, blech." @@ -359,7 +359,7 @@ data = datapH if(LAZYLEN(holder.reagent_list) == 1) return - holder.pH = ((holder.pH * holder.total_volume)+(pH * (volume*3)))/(holder.total_volume + (volume*3)) //Shouldn't be required Might be..? + holder.pH = ((holder.pH * holder.total_volume)+(pH * (volume*3)))/(holder.total_volume + (volume*3)) var/list/seen = viewers(5, get_turf(holder)) for(var/mob/M in seen) to_chat(M, "The beaker froths as the pH changes!")