diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index 0228bb36903..33c252088fd 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -419,7 +419,7 @@ datum id = "space_drugs" description = "An illegal chemical compound used as drug." reagent_state = LIQUID - color = "#60A584" // rgb: 96, 165, 132 + color = "#9087A2" metabolization_rate = 0.2 on_mob_life(var/mob/living/M as mob) @@ -810,7 +810,7 @@ datum description = "Radium is an alkaline earth metal. It is extremely radioactive." reagent_state = SOLID color = "#C7C7C7" // rgb: 199,199,199 - metabolization_rate = 0.3 + metabolization_rate = 0.4 on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom @@ -863,7 +863,7 @@ datum id = "mutagen" description = "Might cause unpredictable mutations. Keep away from children." reagent_state = LIQUID - color = "#00FF00" + color = "#04DF27" metabolization_rate = 0.3 reaction_mob(var/mob/M, var/method=TOUCH, var/volume) @@ -1064,7 +1064,7 @@ datum id = "cleaner" description = "A compound used to clean things. Now with 50% more sodium hypochlorite!" reagent_state = LIQUID - color = "#A5F0EE" // rgb: 165, 240, 238 + color = "#61C2C2" reaction_obj(var/obj/O, var/volume) if(istype(O,/obj/effect/decal/cleanable)) @@ -1250,7 +1250,7 @@ datum mitocholide name = "Mitocholide" id = "mitocholide" - description = "A specialized drugs that stimulates the mitochondria of cells to encourage healing of internal organs." + description = "A specialized drug that stimulates the mitochondria of cells to encourage healing of internal organs." reagent_state = LIQUID color = "#C8A5DC" // rgb: 200, 165, 220 diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm index f01b9b5566c..8e22df9a014 100644 --- a/code/modules/reagents/Chemistry-Recipes.dm +++ b/code/modules/reagents/Chemistry-Recipes.dm @@ -117,6 +117,7 @@ datum result = "holywater" required_reagents = list("water" = 1, "mercury" = 1, "wine" = 1) result_amount = 3 + mix_message = "The water somehow seems purified. Or maybe defiled." cryptobiolin name = "Cryptobiolin" diff --git a/code/modules/reagents/newchem/drugs.dm b/code/modules/reagents/newchem/drugs.dm index 6b3e34759db..882adf98fac 100644 --- a/code/modules/reagents/newchem/drugs.dm +++ b/code/modules/reagents/newchem/drugs.dm @@ -247,11 +247,12 @@ datum/reagent/crank/addiction_act_stage4(var/mob/living/M as mob) /datum/reagent/bath_salts name = "Bath Salts" id = "bath_salts" - description = "Makes you nearly impervious to stuns and grants a stamina regeneration buff, but you will be a nearly uncontrollable tramp-bearded raving lunatic." + description = "Sometimes packaged as a refreshing bathwater additive, these crystals are definitely not for human consumption." reagent_state = LIQUID color = "#60A584" // rgb: 96, 165, 132 overdose_threshold = 20 addiction_threshold = 10 + metabolization_rate = 0.6 /datum/reagent/bath_salts/on_mob_life(var/mob/living/M as mob) @@ -276,9 +277,10 @@ datum/reagent/crank/addiction_act_stage4(var/mob/living/M as mob) name = "bath_salts" id = "bath_salts" result = "bath_salts" - required_reagents = list("????" = 1, "saltpetre" = 1, "nutriment" = 1, "cleaner" = 1, "enzyme" = 1, "tea" = 1, "mercury" = 1) - result_amount = 7 + required_reagents = list("????" = 1, "saltpetre" = 1, "nutriment" = 1, "cleaner" = 1, "enzyme" = 1, "mugwort" = 1, "mercury" = 1) + result_amount = 6 required_temp = 374 + mix_message = "Tiny cubic crystals precipitate out of the mixture. Huh." /datum/reagent/bath_salts/overdose_process(var/mob/living/M as mob) M.hallucination += 10 diff --git a/code/modules/reagents/newchem/food.dm b/code/modules/reagents/newchem/food.dm index 60f985be272..a612febf27e 100644 --- a/code/modules/reagents/newchem/food.dm +++ b/code/modules/reagents/newchem/food.dm @@ -125,3 +125,21 @@ datum/reagent/honey/reaction_turf(var/turf/T, var/volume) if(volume >= 5) new /obj/item/weapon/reagent_containers/food/snacks/honeycomb(T) return */ + +/datum/reagent/mugwort + name = "Mugwort" + id = "mugwort" + description = "A rather bitter herb once thought to hold magical protective properties." + reagent_state = LIQUID + color = "#21170E" + +datum/reagent/mugwort/on_mob_life(var/mob/living/M as mob) + if(!M) M = holder.my_atom + if(istype(M, /mob/living/carbon/human) && M.mind) + if(M.mind.special_role == "Wizard") + M.adjustToxLoss(-1*REM) + M.adjustOxyLoss(-1*REM) + M.adjustBruteLoss(-1*REM) + M.adjustFireLoss(-1*REM) + ..() + return \ No newline at end of file diff --git a/code/modules/reagents/newchem/medicine.dm b/code/modules/reagents/newchem/medicine.dm index 5d8a6770613..515a6cc4977 100644 --- a/code/modules/reagents/newchem/medicine.dm +++ b/code/modules/reagents/newchem/medicine.dm @@ -94,6 +94,14 @@ datum/reagent/synthflesh/reaction_mob(var/mob/living/M, var/method=TOUCH, var/vo ..() return +/* //again, not until smoke rewrite--so many gibs,aghh! +datum/reagent/synthflesh/reaction_turf(var/turf/T, var/volume) //let's make a mess! + src = null + if(volume >= 5) + new /obj/effect/decal/cleanable/blood/gibs(T) + playsound(T, 'sound/effects/splat.ogg', 50, 1, -3) + return */ + datum/reagent/charcoal name = "Charcoal" id = "charcoal" @@ -180,7 +188,8 @@ datum/reagent/calomel id = "calomel" description = "This potent purgative rids the body of impurities. It is highly toxic however and close supervision is required." reagent_state = LIQUID - color = "#1EA532" + color = "#22AB35" + metabolization_rate = 0.8 datum/reagent/calomel/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom @@ -201,6 +210,7 @@ datum/reagent/calomel/on_mob_life(var/mob/living/M as mob) required_reagents = list("mercury" = 1, "chlorine" = 1) result_amount = 2 required_temp = 374 + mix_message = "Stinging vapors rise from the solution." datum/reagent/potass_iodide name = "Potassium Iodide" @@ -263,7 +273,7 @@ datum/reagent/sal_acid id = "sal_acid" description = "This is a is a standard salicylate pain reliever and fever reducer." reagent_state = LIQUID - color = "#C8A5DC" + color = "#B3B3B3" shock_reduction = 40 overdose_threshold = 25 @@ -295,7 +305,7 @@ datum/reagent/salbutamol id = "salbutamol" description = "Salbutamol is a common bronchodilation medication for asthmatics. It may help with other breathing problems as well." reagent_state = LIQUID - color = "#A5F0EE" + color = "#00FFFF" metabolization_rate = 0.2 datum/reagent/salbutamol/on_mob_life(var/mob/living/M as mob) @@ -405,7 +415,7 @@ datum/reagent/diphenhydramine id = "diphenhydramine" description = "Anti-allergy medication. May cause drowsiness, do not operate heavy machinery while using this." reagent_state = LIQUID - color = "#A5F0EE" + color = "#5BCBE1" datum/reagent/diphenhydramine/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom M.drowsyness += 1 @@ -573,7 +583,7 @@ datum/reagent/epinephrine id = "epinephrine" description = "Epinephrine is a potent neurotransmitter, used in medical emergencies to halt anaphylactic shock and prevent cardiac arrest." reagent_state = LIQUID - color = "#C8A5DC" + color = "#96B1AE" metabolization_rate = 0.2 overdose_threshold = 30 @@ -611,31 +621,41 @@ datum/reagent/strange_reagent id = "strange_reagent" description = "A glowing green fluid highly reminiscent of nuclear waste." reagent_state = LIQUID - color = "#60A584" + color = "#A0E85E" + metabolization_rate = 0.2 -datum/reagent/strange_reagent/reaction_mob(var/mob/living/carbon/human/M as mob, var/method=TOUCH, var/volume) - if(M.stat == DEAD) - if(M.getBruteLoss() >= 100 || M.getFireLoss() >= 100) - M.visible_message("[M]'s body starts convulsing!") - M.gib() - return - var/mob/dead/observer/ghost = M.get_ghost() - if(!M.suiciding && !ghost && !(NOCLONE in M.mutations)) - M.visible_message("[M]'s appears to rise from the dead!") - M.stat = 1 - M.adjustOxyLoss(-20) - M.adjustToxLoss(-20) - dead_mob_list -= M - living_mob_list |= list(M) - M.emote("gasp") - add_logs(M, M, "revived", object="strange reagent") +datum/reagent/strange_reagent/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) + if(istype(M, /mob/living/simple_animal)) + if(method == TOUCH) + if(M.stat == DEAD) + M.health = M.maxHealth + M.visible_message("[M]'s seems to rise from the dead!") + if(istype(M, /mob/living/carbon)) + if(method == INGEST) + if(M.stat == DEAD) + if(M.getBruteLoss()+M.getFireLoss() >= 150) + M.visible_message("[M]'s body starts convulsing!") + M.gib() + return + var/mob/dead/observer/ghost = M.get_ghost() + if(!M.suiciding && !ghost && !(NOCLONE in M.mutations)) + M.visible_message("[M]'s seems to rise from the dead!") + M.stat = 1 + M.setOxyLoss(0) + M.adjustBruteLoss(rand(0,15)) + M.adjustToxLoss(rand(0,15)) + M.adjustFireLoss(rand(0,15)) + dead_mob_list -= M + living_mob_list |= list(M) + add_logs(M, M, "revived", object="strange reagent") ..() return + datum/reagent/strange_reagent/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - if(prob(rand(1,100))) + if(prob(10)) M.adjustBruteLoss(2*REM) - M.adjustFireLoss(2*REM) + M.adjustToxLoss(2*REM) ..() return @@ -645,6 +665,7 @@ datum/reagent/strange_reagent/on_mob_life(var/mob/living/M as mob) result = "strange_reagent" required_reagents = list("omnizine" = 1, "holywater" = 1, "mutagen" = 1) result_amount = 3 + mix_message = "The substance begins moving on its own somehow." datum/reagent/life name = "Life" @@ -733,7 +754,7 @@ proc/chemical_mob_spawn(var/datum/reagents/holder, var/amount_to_spawn, var/reac name = "Mannitol" id = "mannitol" description = "Mannitol is a sugar alcohol that can help alleviate cranial swelling." - color = "#C8A5DC" + color = "#D1D1F1" /datum/reagent/mutadone/on_mob_life(var/mob/living/carbon/human/M as mob) M.jitteriness = 0 @@ -823,6 +844,7 @@ datum/reagent/insulin description = "A hormone generated by the pancreas responsible for metabolizing carbohydrates and fat in the bloodstream." reagent_state = LIQUID color = "#C8A5DC" + datum/reagent/insulin/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom M.reagents.remove_reagent("sugar", 5) diff --git a/code/modules/reagents/newchem/toxins.dm b/code/modules/reagents/newchem/toxins.dm index 7eb33842213..e427bb6e0d7 100644 --- a/code/modules/reagents/newchem/toxins.dm +++ b/code/modules/reagents/newchem/toxins.dm @@ -301,9 +301,9 @@ datum/reagent/facid/reaction_obj(var/obj/O, var/volume) datum/reagent/initropidril name = "Initropidril" id = "initropidril" - description = "33% chance to hit with a random amount of toxin damage, 5-10% chances to cause stunning, suffocation, or immediate heart failure." + description = "A highly potent cardiac poison - can kill within minutes." reagent_state = LIQUID - color = "#CF3600" + color = "#7F10C0" metabolization_rate = 0.4 datum/reagent/initropidril/on_mob_life(var/mob/living/M as mob) @@ -324,7 +324,7 @@ datum/reagent/initropidril/on_mob_life(var/mob/living/M as mob) if(3) var/mob/living/carbon/human/H = M if(!H.heart_attack) - H.visible_message("[H] clutches at their chest !") + H.visible_message("[H] clutches at their chest!") H.heart_attack = 1 // rip in pepperoni ..() return diff --git a/code/modules/reagents/reagent_containers/borghydro.dm b/code/modules/reagents/reagent_containers/borghydro.dm index 83f0cf6bf8b..513d8c9920c 100644 --- a/code/modules/reagents/reagent_containers/borghydro.dm +++ b/code/modules/reagents/reagent_containers/borghydro.dm @@ -14,7 +14,7 @@ var/recharge_time = 5 //Time it takes for shots to recharge (in seconds) var/list/datum/reagents/reagent_list = list() - var/list/reagent_ids = list("salglu_solution", "epinephrine", "spaceacillin") + var/list/reagent_ids = list("salglu_solution", "epinephrine", "spaceacillin", "charcoal") //var/list/reagent_ids = list("salbutamol", "silver_sulfadiazine", "styptic_powder", "charcoal", "epinephrine", "spaceacillin") /obj/item/weapon/reagent_containers/borghypo/surgeon diff --git a/code/modules/reagents/reagent_containers/food/drinks.dm b/code/modules/reagents/reagent_containers/food/drinks.dm index 2024b18c95f..48361063466 100644 --- a/code/modules/reagents/reagent_containers/food/drinks.dm +++ b/code/modules/reagents/reagent_containers/food/drinks.dm @@ -226,6 +226,19 @@ New() ..() reagents.add_reagent("tea", 30) + if(prob(10)) + reagents.add_reagent("mugwort", 3) + src.pixel_x = rand(-10.0, 10) + src.pixel_y = rand(-10.0, 10) + +/obj/item/weapon/reagent_containers/food/drinks/mugwort + name = "Mugwort Tea" + desc = "A bitter herbal tea." + icon_state = "manlydorfglass" + item_state = "coffee" + New() + ..() + reagents.add_reagent("mugwort", 30) src.pixel_x = rand(-10.0, 10) src.pixel_y = rand(-10.0, 10) diff --git a/maps/cyberiad.dmm b/maps/cyberiad.dmm index 93686b6f3ca..f7073a0bbb1 100644 --- a/maps/cyberiad.dmm +++ b/maps/cyberiad.dmm @@ -8000,7 +8000,7 @@ "cXR" = (/turf/space/transit/north/shuttlespace_ns10,/area/syndicate_station/transit) "cXS" = (/turf/space/transit/north/shuttlespace_ns1,/area/syndicate_station/transit) "cXT" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/turf/space/transit/north/shuttlespace_ns5,/area) -"cXU" = (/obj/structure/table/woodentable,/obj/item/trash/cheesie,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"cXU" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/mugwort,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) "cXV" = (/obj/structure/table/woodentable,/obj/item/weapon/spacecash,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) "cXW" = (/obj/structure/rack,/obj/item/clothing/suit/wizrobe/red,/obj/item/clothing/shoes/sandal,/obj/item/clothing/head/wizard/red,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) "cXX" = (/obj/structure/rack,/obj/item/clothing/suit/wizrobe/magusred,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station)