diff --git a/code/game/objects/items/weapons/grenades/chem_grenade.dm b/code/game/objects/items/weapons/grenades/chem_grenade.dm index 463e260c395..a8267acdd80 100644 --- a/code/game/objects/items/weapons/grenades/chem_grenade.dm +++ b/code/game/objects/items/weapons/grenades/chem_grenade.dm @@ -370,6 +370,24 @@ beakers += B1 beakers += B2 +/obj/item/weapon/grenade/chem_grenade/colorful + name = "colorful grenade" + desc = "Used for wide scale painting projects." + stage = READY + +/obj/item/weapon/grenade/chem_grenade/colorful/New() + ..() + var/obj/item/weapon/reagent_containers/glass/beaker/B1 = new(src) + var/obj/item/weapon/reagent_containers/glass/beaker/B2 = new(src) + + B1.reagents.add_reagent("colorful_reagent", 25) + B1.reagents.add_reagent("potassium", 25) + B2.reagents.add_reagent("phosphorus", 25) + B2.reagents.add_reagent("sugar", 25) + + beakers += B1 + beakers += B2 + #undef EMPTY #undef WIRED #undef READY diff --git a/code/modules/reagents/Chemistry-Goon-Medicine.dm b/code/modules/reagents/Chemistry-Goon-Medicine.dm index 21c4d5ac061..9ccbf1fd622 100644 --- a/code/modules/reagents/Chemistry-Goon-Medicine.dm +++ b/code/modules/reagents/Chemistry-Goon-Medicine.dm @@ -599,25 +599,15 @@ datum/reagent/epinephrine/overdose_process(var/mob/living/M as mob) datum/reagent/strange_reagent name = "Strange Reagent" id = "strange_reagent" - description = "A chemical used in creation of other chemicals." + description = "A miracle medical chem, this little beauty can bring the dead back to life!" reagent_state = LIQUID color = "#C8A5DC" // rgb: 200, 165, 220 -/* - ---Commented out for now due to balance issues, defibs were kind of worthless. 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() >= 80 || M.getFireLoss() >= 80) - if(ishuman(M) || ismonkey(M)) - var/mob/living/carbon/C_target = M - var/obj/item/organ/brain/B = C_target.getorgan(/obj/item/organ/brain) - if(B) - B.loc = get_turf(C_target) - B.transfer_identity(C_target) - C_target.internal_organs -= B - M.gib(M) - return + if(M.getBruteLoss() >= 100 || M.getFireLoss() >= 100) + M.visible_message("[M]'s body convulses a bit, and then falls still once more.") + return var/mob/dead/observer/ghost = M.get_ghost() M.visible_message("[M]'s body convulses a bit.") if(!M.suiciding && !ghost && !(NOCLONE in M.mutations)) @@ -631,7 +621,6 @@ datum/reagent/strange_reagent/reaction_mob(var/mob/living/carbon/human/M as mob, hardset_dna(M, null, null, null, null, /datum/species/zombie) ..() 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))) diff --git a/code/modules/reagents/Chemistry-Goon-Other.dm b/code/modules/reagents/Chemistry-Goon-Other.dm index 0b5c4820a8e..fffe6a82063 100644 --- a/code/modules/reagents/Chemistry-Goon-Other.dm +++ b/code/modules/reagents/Chemistry-Goon-Other.dm @@ -1,9 +1,10 @@ #define SOLID 1 #define LIQUID 2 #define GAS 3 - #define REM REAGENTS_EFFECT_MULTIPLIER +var/list/random_color_list = list("#00aedb","#a200ff","#f47835","#d41243","#d11141","#00b159","#00aedb","#f37735","#ffc425","#008744","#0057e7","#d62d20","#ffa700") + datum/reagent/oil name = "Oil" id = "oil" @@ -40,7 +41,9 @@ datum/reagent/carpet color = "#C8A5DC" // rgb: 200, 165, 220 /datum/reagent/carpet/reaction_turf(var/turf/simulated/T, var/volume) - if(istype(T, /turf/simulated/floor/) && !istype(T, /turf/simulated/floor/fancy/carpet)) + if(istype(T, /turf/simulated/floor/fancy/carpet)) + return + if(istype(T, /turf/simulated/floor/plating) || istype(T, /turf/simulated/floor/plasteel)) var/turf/simulated/floor/F = T F.visible_message("[T] gets a layer of carpeting applied!") F.ChangeTurf(/turf/simulated/floor/fancy/carpet) @@ -118,7 +121,6 @@ datum/reagent/colorful_reagent description = "A solution." reagent_state = LIQUID color = "#C8A5DC" // rgb: 200, 165, 220 - var/list/potential_colors = list("#00aedb","#a200ff","#f47835","#d41243","#d11141","#00b159","#00aedb","#f37735","#ffc425","#008744","#0057e7","#d62d20","#ffa700") /datum/chemical_reaction/colorful_reagent name = "colorful_reagent" @@ -129,23 +131,23 @@ datum/reagent/colorful_reagent datum/reagent/colorful_reagent/on_mob_life(var/mob/living/M as mob) if(M && isliving(M)) - M.color = pick(potential_colors) + M.color = pick(random_color_list) ..() return datum/reagent/colorful_reagent/reaction_mob(var/mob/living/M, var/volume) if(M && isliving(M)) - M.color = pick(potential_colors) + M.color = pick(random_color_list) ..() return datum/reagent/colorful_reagent/reaction_obj(var/obj/O, var/volume) if(O) - O.color = pick(potential_colors) + O.color = pick(random_color_list) ..() return datum/reagent/colorful_reagent/reaction_turf(var/turf/T, var/volume) if(T) - T.color = pick(potential_colors) + T.color = pick(random_color_list) ..() return @@ -229,15 +231,6 @@ datum/reagent/hair_dye required_reagents = list("colorful_reagent" = 1, "radium" = 1, "space_drugs" = 1) result_amount = 5 -datum/reagent/hair_dye/on_mob_life(var/mob/living/M as mob) - if(M && ishuman(M)) - var/mob/living/carbon/human/H = M - H.hair_color = pick(potential_colors) - H.facial_hair_color = pick(potential_colors) - H.update_hair() - ..() - return - datum/reagent/hair_dye/reaction_mob(var/mob/living/M, var/volume) if(M && ishuman(M)) var/mob/living/carbon/human/H = M diff --git a/code/modules/reagents/Chemistry-Goon-Pyrotechnics.dm b/code/modules/reagents/Chemistry-Goon-Pyrotechnics.dm index 8998cf6bd24..e5f9186b144 100644 --- a/code/modules/reagents/Chemistry-Goon-Pyrotechnics.dm +++ b/code/modules/reagents/Chemistry-Goon-Pyrotechnics.dm @@ -22,7 +22,7 @@ /datum/reagent/clf3/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - M.adjust_fire_stacks(20) + M.adjust_fire_stacks(5) M.IgniteMob() M.adjustFireLoss(5*REM) ..() @@ -54,7 +54,7 @@ /datum/reagent/clf3/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) if(method == TOUCH && ishuman(M)) - M.adjust_fire_stacks(20) + M.adjust_fire_stacks(5) M.IgniteMob() new /obj/effect/hotspot(M.loc) return