diff --git a/code/modules/reagents/chemistry/reagents/toxins.dm b/code/modules/reagents/chemistry/reagents/toxins.dm index 5c9a1de0470..b0234114fb6 100644 --- a/code/modules/reagents/chemistry/reagents/toxins.dm +++ b/code/modules/reagents/chemistry/reagents/toxins.dm @@ -454,6 +454,42 @@ else H.adjustBruteLoss(min(5, volume * 0.25)) +/datum/reagent/phosacid + name = "Phosphoric acid" + id = "phosacid" + description = "A clear and odourless moderately strong acid. It's a pretty good rust remover." + color = "#0080ff" + taste_description = "sour" + goal_department = "Science" + goal_difficulty = REAGENT_GOAL_EASY + +/datum/reagent/phosacid/reaction_mob(mob/living/carbon/human/H, method = REAGENT_TOUCH, volume) + if(method != REAGENT_TOUCH) + to_chat(H, SPAN_WARNING("The transparent acidic substance stings[volume < 15 ? " you, but isn't concentrated enough to harm you" : null]!")) + if(volume >= 15) + H.adjustBruteLoss(2) + H.emote("scream") + return + + if(H.wear_mask || H.head) + return + + if(volume >= 25 && prob(75)) + var/obj/item/organ/external/affecting = H.get_organ("head") + if(istype(affecting)) + affecting.disfigure() + H.adjustBruteLoss(5) + H.adjustFireLoss(15) + H.emote("scream") + else + H.adjustBruteLoss(min(5, volume * 0.25)) + +/datum/reagent/phosacid/reaction_turf(turf/T) + if(!HAS_TRAIT(T, TRAIT_RUSTY)) + return + T.RemoveElement(/datum/element/rust) + T.RemoveElement(/datum/element/rust/heretic) + /datum/reagent/carpotoxin name = "Carpotoxin" id = "carpotoxin" diff --git a/code/modules/reagents/chemistry/recipes/toxins_reactions.dm b/code/modules/reagents/chemistry/recipes/toxins_reactions.dm index 0d3a83a635f..d333e6aa7dd 100644 --- a/code/modules/reagents/chemistry/recipes/toxins_reactions.dm +++ b/code/modules/reagents/chemistry/recipes/toxins_reactions.dm @@ -60,6 +60,13 @@ min_temp = T0C + 100 mix_message = "The mixture deepens to a dark blue, and slowly begins to corrode its container." +/datum/chemical_reaction/phosacid + name = "Phosphoric acid" + result = "phosacid" + required_reagents = list("sacid" = 2, "phosphorus" = 1) + result_amount = 3 + mix_message = "The mixture goes clear." + /datum/chemical_reaction/initropidril name = "Initropidril" id = "initropidril"