diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index 95595ef713..3a8b58d146 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -336,7 +336,7 @@ /datum/quirk/hypno/add() //You caught me, it's not actually based off a trigger, stop spoiling the effect! Code diving ruins the magic! - addtimer(CALLBACK(src, /datum/quirk/Hypno.proc/triggered, quirk_holder), rand(12000, 36000))//increase by 100, it's lower so I can test it. + addtimer(CALLBACK(src, /datum/quirk/hypno.proc/triggered, quirk_holder), rand(12000, 36000))//increase by 100, it's lower so I can test it. //DOES NOT give any indication when someone is triggered - this is intentional so people don't abuse it, you're supposed to get a random thing said to you as a mini objective. /datum/quirk/hypno/proc/triggered(quirk_holder)//I figured I might as well make a trait of code I added. diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 867c3787bc..36b17dc84c 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -358,7 +358,7 @@ required_reagents[pick(additions)] = rand(1, 5)//weird /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 Fermis!!") + SSblackbox.record_feedback("catgirlium", "catgirlium made!")//log //ReagentVars //Turns you into a cute catto while it's in your system. @@ -400,7 +400,8 @@ catto.name = H.name catto.desc = "A cute catto! They remind you of [H] somehow." catto.color = "#[H.dna.features["mcolor"]]" - H.forceMove(locate(10,6,1))//To the zelda room. + //H.forceMove(locate(10,6,1))//To the zelda room. + H.moveToNullspace() /datum/reagent/fermi/secretcatchem/on_mob_life(mob/living/carbon/H) if(prob(5)) @@ -410,7 +411,7 @@ /datum/reagent/fermi/secretcatchem/on_mob_delete(mob/living/carbon/H) var/words = "Your body shifts back to normal." - do_teleport(H, catto.loc) + H.forceMove(catto) catto.mind.transfer_to(H) if(catshift == TRUE) words += " ...But wait, are those ears and a tail?" diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index 0ed03c0c45..2b282cd8d6 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -840,7 +840,9 @@ //cacluate reagent based pH shift. pH = ((cached_pH * cached_total)+(D.pH * amount))/(cached_total + amount)//should be right - holder.pH_check()//checks beaker resilience + if(istype(my_atom, /obj/item/reagent_containers/)) + var/obj/item/reagent_containers/RC = my_atom + RC.pH_check()//checks beaker resilience //add the reagent to the existing if it exists for(var/A in cached_reagents) @@ -924,7 +926,9 @@ pH = 7 else pH = ((pH * total_volume)-(R.pH * amount))/(total_volume - amount) - holder.pH_check() + if(istype(my_atom, /obj/item/reagent_containers/)) + var/obj/item/reagent_containers/RC = my_atom + RC.pH_check()//checks beaker resilience) amount = CLAMP(amount, 0, R.volume) R.volume -= amount update_total() diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm index 85304519c1..5a5a728a47 100644 --- a/code/modules/reagents/reagent_containers.dm +++ b/code/modules/reagents/reagent_containers.dm @@ -131,10 +131,10 @@ return var/list/seen = viewers(5, get_turf(src)) var/iconhtml = icon2html(src, seen) - for(var/mob/M in seen) - to_chat(M, "[iconhtml] \The [src]'s melts from the temperature!") + for(var/mob/H in seen) + to_chat(H, "[iconhtml] \The [src]'s melts from the temperature!") playsound(get_turf(src), 'sound/FermiChem/heatmelt.ogg', 80, 1) - qdel(A) + qdel(src) ..() //melts plastic beakers @@ -148,16 +148,16 @@ for(var/mob/M in seen) to_chat(M, "[iconhtml] \The [src]'s melts from the temperature!") playsound(get_turf(src), 'sound/FermiChem/heatmelt.ogg', 80, 1) - qdel(A) + qdel(src) //melts glass beakers /obj/item/reagent_containers/proc/pH_check() if(pH_immunne == TRUE) return - else if((pH < 0.5) || (pH > 13.5)) + else if((reagents.pH < 0.5) || (reagents.pH > 13.5)) var/list/seen = viewers(5, get_turf(src)) - var/iconhtml = icon2html(A, seen) + var/iconhtml = icon2html(src, seen) for(var/mob/M in seen) - to_chat(M, "[iconhtml] \The [my_atom]'s melts from the extreme pH!") + to_chat(M, "[iconhtml] \The [src]'s melts from the extreme pH!") playsound(get_turf(src), 'sound/FermiChem/acidmelt.ogg', 80, 1) - qdel(A) + qdel(src) diff --git a/code/modules/reagents/reagent_containers/bottle.dm b/code/modules/reagents/reagent_containers/bottle.dm index 66befb1bb6..b0c759e005 100644 --- a/code/modules/reagents/reagent_containers/bottle.dm +++ b/code/modules/reagents/reagent_containers/bottle.dm @@ -7,6 +7,8 @@ item_state = "atoxinbottle" possible_transfer_amounts = list(5,10,15,25,30) volume = 30 + temp_immune = TRUE //required so that things don't melt when you dispence them in the chem_master. + pH_immunne = TRUE /obj/item/reagent_containers/glass/bottle/Initialize() @@ -240,7 +242,7 @@ name = "Rhinovirus culture bottle" desc = "A small bottle. Contains XY-rhinovirus culture in synthblood medium." spawned_disease = /datum/disease/advance/cold - + /obj/item/reagent_containers/glass/bottle/flu_virion name = "Flu virion culture bottle" desc = "A small bottle. Contains H13N1 flu virion culture in synthblood medium." diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index b52d74bfd0..2cb90e6cde 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -176,6 +176,7 @@ amount_per_transfer_from_this = 10 possible_transfer_amounts = list(5,10,15,20,25,30,50,100,150) temp_immune = FALSE + pH_immunne = TRUE /obj/item/reagent_containers/glass/beaker/plastic/update_icon() icon_state = "beakerlarge" // hack to lets us reuse the large beaker reagent fill states @@ -190,6 +191,8 @@ volume = 200 amount_per_transfer_from_this = 10 possible_transfer_amounts = list(5,10,15,20,25,30,50,100,200) + temp_immune = TRUE + pH_immunne = TRUE /obj/item/reagent_containers/glass/beaker/noreact name = "cryostasis beaker" @@ -199,6 +202,8 @@ materials = list(MAT_METAL=3000) volume = 50 amount_per_transfer_from_this = 10 + temp_immune = TRUE + pH_immunne = TRUE /obj/item/reagent_containers/glass/beaker/noreact/Initialize() . = ..() diff --git a/icons/obj/assemblies/new_assemblies.dmi b/icons/obj/assemblies/new_assemblies.dmi index df9517aeaa..fa0c138d21 100644 Binary files a/icons/obj/assemblies/new_assemblies.dmi and b/icons/obj/assemblies/new_assemblies.dmi differ