From bcf6de320bb2d20c42b6d3c6b9795eb74cb746c3 Mon Sep 17 00:00:00 2001 From: Ren Erthilo Date: Mon, 23 Apr 2012 22:31:33 +0100 Subject: [PATCH] TG: Cleanbots now patrol by default on creation, and will now clean up dirt. Silicate was removed, as it didn't work properly and wasn't even useful to begin with. Smoke will now create vastly less glows and shit, hopefully reducing server crashing capability. The above is all credited to Sieve! Foam was nerfed. I actually forgot to improve the janitor's cleaning grenades, so that's coming in a moment. Revision: r3153 Author: petethegoat --- code/game/machinery/bots/cleanbot.dm | 1 + code/game/objects/effect_system.dm | 12 ++++++++---- code/modules/chemical/Chemistry-Reagents.dm | 6 +++--- code/modules/chemical/Chemistry-Recipes.dm | 10 +++++----- 4 files changed, 17 insertions(+), 12 deletions(-) diff --git a/code/game/machinery/bots/cleanbot.dm b/code/game/machinery/bots/cleanbot.dm index d559dc6ea47..7484273b4de 100644 --- a/code/game/machinery/bots/cleanbot.dm +++ b/code/game/machinery/bots/cleanbot.dm @@ -319,6 +319,7 @@ text("[src.oddbutton ? "Yes" : "No" target_types += /obj/effect/decal/cleanable/xenoblood/xgibs target_types += /obj/effect/decal/cleanable/blood/ target_types += /obj/effect/decal/cleanable/blood/gibs/ + target_types += /obj/effect/decal/cleanable/dirt /obj/machinery/bot/cleanbot/proc/clean(var/obj/effect/decal/cleanable/target) src.anchored = 1 diff --git a/code/game/objects/effect_system.dm b/code/game/objects/effect_system.dm index a5e1f95527f..ee5bee86a77 100644 --- a/code/game/objects/effect_system.dm +++ b/code/game/objects/effect_system.dm @@ -413,9 +413,13 @@ steam.start() -- spawns the effect R.reagents.my_atom = R reagents.trans_to(R, reagents.total_volume/divisor) for(var/atom/A in view(1, src)) - R.reagents.reaction(A) - del(R) - + if(reagents.has_reagent("radium")||reagents.has_reagent("uranium")||reagents.has_reagent("carbon")||reagents.has_reagent("thermite"))//Prevents unholy radium spam by reducing the number of 'greenglows' down to something reasonable -Sieve + if(prob(5)) + R.reagents.reaction(A) + del(R) + else + R.reagents.reaction(A) + del(R) return /obj/effect/effect/chem_smoke/HasEntered(mob/living/carbon/M as mob ) @@ -910,7 +914,7 @@ steam.start() -- spawns the effect set_up(amt=5, loca, var/datum/reagents/carry = null, var/metalfoam = 0) - amount = round(amt/5, 1) + amount = round(sqrt(amt / 3), 1) if(istype(loca, /turf/)) location = loca else diff --git a/code/modules/chemical/Chemistry-Reagents.dm b/code/modules/chemical/Chemistry-Reagents.dm index 00116a25876..d225110e04d 100644 --- a/code/modules/chemical/Chemistry-Reagents.dm +++ b/code/modules/chemical/Chemistry-Reagents.dm @@ -500,7 +500,7 @@ datum holder.remove_reagent(src.id, 0.1) return - silicate +/* silicate name = "Silicate" id = "silicate" description = "A compound that can be used to reinforce glass." @@ -534,7 +534,7 @@ datum O.icon = I O:silicateIcon = I - return + return*/ oxygen name = "Oxygen" @@ -861,11 +861,11 @@ datum ..() return - reaction_turf(var/turf/T, var/volume) src = null if(!istype(T, /turf/space)) new /obj/effect/decal/cleanable/greenglow(T) + return ryetalyn diff --git a/code/modules/chemical/Chemistry-Recipes.dm b/code/modules/chemical/Chemistry-Recipes.dm index d340576c8ea..b78486260f6 100644 --- a/code/modules/chemical/Chemistry-Recipes.dm +++ b/code/modules/chemical/Chemistry-Recipes.dm @@ -34,14 +34,14 @@ datum holder.clear_reagents() return - +/* silicate name = "Silicate" id = "silicate" result = "silicate" required_reagents = list("aluminum" = 1, "silicon" = 1, "oxygen" = 1) result_amount = 3 - +*/ stoxin name = "Sleep Toxin" id = "stoxin" @@ -430,6 +430,7 @@ datum result = "LSD" required_reagents = list("silicon" = 1, "hydrogen" = 1, "anti_toxin" = 1) result_amount = 5 + /////////////////////////////////////////////////////////////////////////////////// // foam and foam precursor @@ -471,7 +472,6 @@ datum holder.clear_reagents() return - metalfoam name = "Metal Foam" id = "metalfoam" @@ -488,7 +488,7 @@ datum M << "\red The solution spews out a metalic foam!" var/datum/effect/effect/system/foam_spread/s = new() - s.set_up(created_volume/2, location, holder, 1) + s.set_up(created_volume, location, holder, 1) s.start() return @@ -508,7 +508,7 @@ datum M << "\red The solution spews out a metalic foam!" var/datum/effect/effect/system/foam_spread/s = new() - s.set_up(created_volume/2, location, holder, 2) + s.set_up(created_volume, location, holder, 2) s.start() return