Merge pull request #706 from Fox-McCloud/Dropper

[Goonchem] Pipettes, Fixes, and Tweaks (again)
This commit is contained in:
ZomgPonies
2015-03-31 22:24:01 -04:00
14 changed files with 115 additions and 83 deletions
@@ -145,6 +145,7 @@
update_hair(0)
mutations.Add(SKELETON)
mutations.Add(NOCLONE)
status_flags |= DISFIGURED
update_body(0)
update_mutantrace()
@@ -282,7 +282,7 @@ var/global/chicken_count = 0
speak_chance = 1
turns_per_move = 5
see_in_dark = 6
meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat
meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/ham
meat_amount = 6
response_help = "pets the"
response_disarm = "gently pushes aside the"
@@ -351,4 +351,4 @@ var/global/chicken_count = 0
response_disarm = "gently pushes aside the"
response_harm = "kicks the"
attacktext = "kicks"
health = 50
health = 50
+8 -9
View File
@@ -643,7 +643,7 @@ datum
id = "fluorine"
description = "A highly-reactive chemical element."
reagent_state = GAS
color = "#808080" // rgb: 128, 128, 128
color = "#6A6054"
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
@@ -692,7 +692,6 @@ datum
overdose_threshold = 200 // Hyperglycaemic shock
on_mob_life(var/mob/living/M as mob)
M.nutrition += 1*REM
if(prob(4))
M.reagents.add_reagent("epinephrine", 1.2)
if(prob(50))
@@ -962,7 +961,7 @@ datum
silver
name = "Silver"
id = "silver"
description = "A soft, white, lustrous transition metal, it has the highest electrical conductivity of any element and the highest thermal conductivity of any metal."
description = "A lustrous metallic element regarded as one of the precious metals."
reagent_state = SOLID
color = "#D0D0D0" // rgb: 208, 208, 208
@@ -1005,7 +1004,7 @@ datum
id = "fuel"
description = "Required for welders. Flamable."
reagent_state = LIQUID
color = "#660000" // rgb: 102, 0, 0
color = "#060606"
reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with welding fuel to make them easy to ignite!
if(!istype(M, /mob/living))
@@ -1115,9 +1114,9 @@ datum
plasma
name = "Plasma"
id = "plasma"
description = "Plasma in its liquid form."
description = "The liquid phase of an unusual extraterrestrial compound."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
color = "#7A2B94"
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
@@ -1674,11 +1673,11 @@ datum
M.adjustToxLoss(rand(15,30))
sodiumchloride
name = "Table Salt"
name = "Salt"
id = "sodiumchloride"
description = "A salt made of sodium chloride. Commonly used to season food."
description = "Sodium chloride, common table salt."
reagent_state = SOLID
color = "#FFFFFF" // rgb: 255,255,255
color = "#B1B0B0"
blackpepper
name = "Black Pepper"
+17
View File
@@ -142,4 +142,21 @@ datum/reagent/mugwort/on_mob_life(var/mob/living/M as mob)
M.adjustBruteLoss(-1*REM)
M.adjustFireLoss(-1*REM)
..()
return
/datum/reagent/porktonium
name = "Porktonium"
id = "porktonium"
description = "A highly-radioactive pork byproduct first discovered in hotdogs."
reagent_state = LIQUID
color = "#AB5D5D"
metabolization_rate = 0.2
overdose_threshold = 125
datum/reagent/porktonium/overdose_process(var/mob/living/M as mob)
if(volume > 125)
if(prob(8))
M.reagents.add_reagent("cyanide", 10)
M.reagents.add_reagent("radium", 15)
..()
return
+8 -3
View File
@@ -148,6 +148,7 @@ datum/reagent/charcoal/on_mob_life(var/mob/living/M as mob)
result = "synthflesh"
required_reagents = list("blood" = 1, "carbon" = 1, "styptic_powder" = 1)
result_amount = 3
mix_message = "The mixture knits together into a fibrous, bloody mass."
/datum/chemical_reaction/styptic_powder
name = "Styptic Powder"
@@ -629,7 +630,7 @@ datum/reagent/strange_reagent/reaction_mob(var/mob/living/M as mob, var/method=T
if(method == TOUCH)
if(M.stat == DEAD)
M.health = M.maxHealth
M.visible_message("<span class='warning'>[M]'s seems to rise from the dead!</span>")
M.visible_message("<span class='warning'>[M] seems to rise from the dead!</span>")
if(istype(M, /mob/living/carbon))
if(method == INGEST)
if(M.stat == DEAD)
@@ -638,8 +639,12 @@ datum/reagent/strange_reagent/reaction_mob(var/mob/living/M as mob, var/method=T
M.gib()
return
var/mob/dead/observer/ghost = M.get_ghost()
if(ghost)
ghost << "<span class='ghostalert'>Your are attempting to be revived with Strange Reagent. Return to your body if you want to be revived!</span> (Verbs -> Ghost -> Re-enter corpse)"
ghost << sound('sound/effects/genetics.ogg')
M.visible_message("<span class='notice'>[M] doesn't appear to respond, perhaps try again later?</span>")
if(!M.suiciding && !ghost && !(NOCLONE in M.mutations))
M.visible_message("<span class='warning'>[M]'s seems to rise from the dead!</span>")
M.visible_message("<span class='warning'>[M] seems to rise from the dead!</span>")
M.stat = 1
M.setOxyLoss(0)
M.adjustBruteLoss(rand(0,15))
@@ -678,7 +683,7 @@ datum/reagent/life
/datum/chemical_reaction/life
name = "Life"
id = "life"
result = "life"
result = null
required_reagents = list("strange_reagent" = 1, "synthflesh" = 1, "blood" = 1)
result_amount = 3
required_temp = 374
+33 -34
View File
@@ -8,30 +8,23 @@ var/list/random_color_list = list("#00aedb","#a200ff","#f47835","#d41243","#d111
datum/reagent/oil
name = "Oil"
id = "oil"
description = "Burns in a small smoky fire, mostly used to get Ash."
description = "A decent lubricant for machines. High in benzene, naptha and other hydrocarbons."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#3C3C3C"
datum/reagent/iodine
name = "Iodine"
id = "iodine"
description = "A slippery solution."
reagent_state = LIQUID
color = "#C8A5DC"
datum/reagent/fluorine
name = "Fluorine"
id = "fluorine"
description = "A slippery solution."
reagent_state = LIQUID
color = "#C8A5DC"
description = "A purple gaseous element."
reagent_state = GAS
color = "#493062"
datum/reagent/carpet
name = "Carpet"
id = "carpet"
description = "A slippery solution."
description = "A covering of thick fabric used on floors. This type looks particularly gross."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#701345"
/datum/reagent/carpet/reaction_turf(var/turf/simulated/T, var/volume)
if(T.is_plating() || T.is_plasteel_floor())
@@ -43,30 +36,30 @@ datum/reagent/carpet
datum/reagent/bromine
name = "Bromine"
id = "bromine"
description = "A slippery solution."
description = "A red-brown liquid element."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#4E3A3A"
datum/reagent/phenol
name = "Phenol"
id = "phenol"
description = "Used for certain medical recipes."
description = "Also known as carbolic acid, this is a useful building block in organic chemistry."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#525050"
datum/reagent/ash
name = "Ash"
id = "ash"
description = "Basic ingredient in a couple of recipes."
description = "Ashes to ashes, dust to dust."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#191919"
datum/reagent/acetone
name = "Acetone"
id = "acetone"
description = "Common ingredient in other recipes."
description = "Pure 100% nail polish remover, also works as an industrial solvent."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#474747"
/datum/chemical_reaction/acetone
name = "acetone"
@@ -74,6 +67,7 @@ datum/reagent/acetone
result = "acetone"
required_reagents = list("oil" = 1, "fuel" = 1, "oxygen" = 1)
result_amount = 3
mix_message = "The smell of paint thinner assaults you as the solution bubbles."
/datum/chemical_reaction/carpet
name = "carpet"
@@ -81,6 +75,7 @@ datum/reagent/acetone
result = "carpet"
required_reagents = list("space_drugs" = 1, "blood" = 1)
result_amount = 2
mix_message = "The substance turns thick and stiff, yet soft."
/datum/chemical_reaction/oil
@@ -97,21 +92,22 @@ datum/reagent/acetone
result = "phenol"
required_reagents = list("water" = 1, "chlorine" = 1, "oil" = 1)
result_amount = 3
mix_message = "The mixture bubbles and gives off an unpleasant medicinal odor."
/datum/chemical_reaction/ash
name = "Ash"
id = "ash"
result = "ash"
required_reagents = list("oil" = 1)
result_amount = 1
result_amount = 0.5
required_temp = 480
datum/reagent/colorful_reagent
name = "Colorful Reagent"
id = "colorful_reagent"
description = "A solution."
description = "It's pure liquid colors. That's a thing now."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#FFFFFF"
/datum/chemical_reaction/colorful_reagent
name = "colorful_reagent"
@@ -119,6 +115,7 @@ datum/reagent/colorful_reagent
result = "colorful_reagent"
required_reagents = list("plasma" = 1, "radium" = 1, "space_drugs" = 1, "cryoxadone" = 1, "triple_citrus" = 1, "stabilizing_agent" = 1)
result_amount = 6
mix_message = "The substance flashes multiple colors and emits the smell of a pocket protector."
datum/reagent/colorful_reagent/reaction_obj(var/obj/O, var/volume)
if(O)
@@ -134,7 +131,7 @@ datum/reagent/colorful_reagent/reaction_turf(var/turf/T, var/volume)
/datum/chemical_reaction/corgium
name = "corgium"
id = "corgium"
result = "corgium"
result = null
required_reagents = list("nutriment" = 1, "colorful_reagent" = 1, "strange_reagent" = 1, "blood" = 1)
result_amount = 3
required_temp = 374
@@ -142,9 +139,9 @@ datum/reagent/colorful_reagent/reaction_turf(var/turf/T, var/volume)
datum/reagent/corgium
name = "Corgium"
id = "corgium"
description = "Creates a corgi at the reaction location."
description = "Corgi in liquid form. Don't ask."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#F9A635"
/datum/chemical_reaction/corgium/on_reaction(var/datum/reagents/holder, var/created_volume)
var/location = get_turf(holder.my_atom)
@@ -155,9 +152,9 @@ datum/reagent/corgium
datum/reagent/hair_dye
name = "Quantum Hair Dye"
id = "hair_dye"
description = "A solution."
description = "A rather tubular and gnarly way of coloring totally bodacious hair. Duuuudddeee."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#960096"
/datum/chemical_reaction/hair_dye
name = "hair_dye"
@@ -182,9 +179,9 @@ datum/reagent/hair_dye/reaction_mob(var/mob/living/M, var/volume)
datum/reagent/hairgrownium
name = "Hairgrownium"
id = "hairgrownium"
description = "A solution to hair loss across the world."
description = "A mysterious chemical purported to help grow hair. Often found on late-night TV infomercials."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#5DDA5D"
/datum/chemical_reaction/hairgrownium
name = "hairgrownium"
@@ -192,6 +189,7 @@ datum/reagent/hairgrownium
result = "hairgrownium"
required_reagents = list("carpet" = 1, "synthflesh" = 1, "ephedrine" = 1)
result_amount = 3
mix_message = "The liquid becomes slightly hairy."
datum/reagent/hairgrownium/reaction_mob(var/mob/living/M, var/volume)
if(M && ishuman(M))
@@ -205,9 +203,9 @@ datum/reagent/hairgrownium/reaction_mob(var/mob/living/M, var/volume)
datum/reagent/super_hairgrownium
name = "Super Hairgrownium"
id = "super_hairgrownium"
description = "A concentrated solution to hair loss across the world."
description = "A mysterious and powerful chemical purported to cause rapid hair growth."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#5DD95D"
/datum/chemical_reaction/super_hairgrownium
name = "Super Hairgrownium"
@@ -215,6 +213,7 @@ datum/reagent/super_hairgrownium
result = "super_hairgrownium"
required_reagents = list("iron" = 1, "methamphetamine" = 1, "hairgrownium" = 1)
result_amount = 3
mix_message = "The liquid becomes amazingly furry and smells peculiar."
datum/reagent/super_hairgrownium/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
@@ -5,7 +5,7 @@
name = "Dropper"
desc = "A dropper. Transfers 5 units."
icon = 'icons/obj/chemical.dmi'
icon_state = "dropper0"
icon_state = "dropper"
amount_per_transfer_from_this = 5
possible_transfer_amounts = list(1,2,3,4,5)
volume = 5
@@ -56,7 +56,7 @@
user << "\blue You transfer [trans] units of the solution."
if (src.reagents.total_volume<=0)
filled = 0
icon_state = "dropper[filled]"
icon_state = "[initial(icon_state)]"
return
@@ -95,7 +95,7 @@
user << "\blue You transfer [trans] units of the solution."
if (src.reagents.total_volume<=0)
filled = 0
icon_state = "dropper[filled]"
icon_state = "[initial(icon_state)]"
else
@@ -109,13 +109,22 @@
var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this)
user << "\blue You fill the dropper with [trans] units of the solution."
user << "\blue You fill the [src] with [trans] units of the solution."
filled = 1
icon_state = "dropper[filled]"
icon_state = "[initial(icon_state)][filled]"
return
////////////////////////////////////////////////////////////////////////////////
/// Droppers. END
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/obj/item/weapon/reagent_containers/dropper/precision
name = "Pipette"
desc = "A high precision pippette. Holds 1 unit."
icon = 'icons/obj/chemical.dmi'
icon_state = "pipette"
amount_per_transfer_from_this = 1
possible_transfer_amounts = list(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1)
volume = 1
@@ -1621,6 +1621,7 @@
New()
..()
reagents.add_reagent("nutriment", 4)
reagents.add_reagent("porktonium", 10)
baconbeacon = new /obj/item/device/radio/beacon/bacon(src)
On_Consume()
if(!reagents.total_volume)
@@ -38,4 +38,11 @@
/obj/item/weapon/reagent_containers/food/snacks/meat/pug
name = "Pug meat"
desc = "Tastes like... well you know..."
desc = "Tastes like... well you know..."
/obj/item/weapon/reagent_containers/food/snacks/meat/ham
name = "Ham"
desc = "Taste like bacon."
New()
..()
reagents.add_reagent("porktonium", 10)
@@ -172,7 +172,7 @@
D.create_reagents(amount_per_transfer_from_this)
src.reagents.trans_to(D, amount_per_transfer_from_this)
D.color = mix_color_from_reagents(D.reagents.reagent_list)
D.icon += mix_color_from_reagents(D.reagents.reagent_list)
Sprays[i] = D
-6
View File
@@ -881,12 +881,6 @@ var/list/compatible_mobs = list(/mob/living/carbon/human, /mob/living/carbon/mon
////////////////////////STAGE 1/////////////////////////////////
/datum/disease2/effect/citalopram
name = "Reality Check"
stage = 1
activate(var/mob/living/carbon/mob,var/multiplier)
if (mob.reagents.get_reagent_amount("citalopram") < 5)
mob.reagents.add_reagent("citalopram", 1)
/datum/disease2/effect/pain_minor
name = "Heightened Sensitivity"