diff --git a/code/game/objects/effects/decals/Cleanable/humans.dm b/code/game/objects/effects/decals/Cleanable/humans.dm index 57e62aa0881..0026f4e8f5d 100644 --- a/code/game/objects/effects/decals/Cleanable/humans.dm +++ b/code/game/objects/effects/decals/Cleanable/humans.dm @@ -66,6 +66,10 @@ icon_state = "gibbl5" random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6") +/obj/effect/decal/cleanable/blood/gibs/New() + ..() + reagents.add_reagent("liquidgibs", 5) + /obj/effect/decal/cleanable/blood/gibs/ex_act(severity, target) return diff --git a/code/game/objects/items/weapons/clown_items.dm b/code/game/objects/items/weapons/clown_items.dm index 9c04ed01f11..02aa4feb3e6 100644 --- a/code/game/objects/items/weapons/clown_items.dm +++ b/code/game/objects/items/weapons/clown_items.dm @@ -25,6 +25,11 @@ desc = "A Nanotrasen brand bar of soap. Smells of plasma." icon_state = "soapnt" +/obj/item/weapon/soap/homemade + desc = "A homemade bar of soap. Smells of... well...." + icon_state = "soapgibs" + cleanspeed = 45 // a little faster to reward chemists for going to the effort + /obj/item/weapon/soap/deluxe desc = "A deluxe Waffle Co. brand bar of soap. Smells of high-class luxury." icon_state = "soapdeluxe" diff --git a/code/modules/reagents/Chemistry-Reagents/Other-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Other-Reagents.dm index c12c6be1f6d..89fd4c1a679 100644 --- a/code/modules/reagents/Chemistry-Reagents/Other-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents/Other-Reagents.dm @@ -84,6 +84,12 @@ newVirus.holder = blood_prop return +/datum/reagent/liquidgibs + name = "Liquid gibs" + id = "liquidgibs" + color = "#FF9966" + description = "You don't even want to think about what's in here." + /datum/reagent/vaccine //data must contain virus type name = "Vaccine" @@ -1014,6 +1020,13 @@ reagent_state = LIQUID color = "#60A584" // rgb: 96, 165, 132 +/datum/reagent/lye + name = "Lye" + id = "lye" + description = "Also known as sodium hydroxide." + reagent_state = LIQUID + color = "#FFFFD6" // very very light yellow + /datum/reagent/drying_agent name = "Drying agent" id = "drying_agent" diff --git a/code/modules/reagents/Chemistry-Recipes/Others.dm b/code/modules/reagents/Chemistry-Recipes/Others.dm index c3614639f7b..a1ac14a18e8 100644 --- a/code/modules/reagents/Chemistry-Recipes/Others.dm +++ b/code/modules/reagents/Chemistry-Recipes/Others.dm @@ -75,6 +75,19 @@ required_reagents = list("capsaicin" = 1, "ethanol" = 5) result_amount = 5 +/datum/chemical_reaction/soapification + name = "Soapification" + id = "soapification" + result = null + required_reagents = list("liquidgibs" = 10, "lye" = 10) // requires two scooped gib tiles + required_temp = 374 + result_amount = 1 + mob_react = 1 + +/datum/chemical_reaction/soapification/on_reaction(datum/reagents/holder, created_volume) + var/location = get_turf(holder.my_atom) + new /obj/item/weapon/soap/homemade(location) + return ////////////////////////////////// VIROLOGY ////////////////////////////////////////// @@ -357,4 +370,11 @@ id = "saltpetre" result = "saltpetre" required_reagents = list("potassium" = 1, "nitrogen" = 1, "oxygen" = 3) - result_amount = 3 \ No newline at end of file + result_amount = 3 + +/datum/chemical_reaction/lye + name = "lye" + id = "lye" + result = "lye" + required_reagents = list("sodium" = 1, "hydrogen" = 1) + result_amount = 2 \ No newline at end of file diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi index c621ffbe654..2922a5b706d 100644 Binary files a/icons/obj/items.dmi and b/icons/obj/items.dmi differ