mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 13:10:02 +01:00
whoops and shit
This commit is contained in:
@@ -178,7 +178,7 @@
|
||||
/datum/disease/transformation/slime
|
||||
name = "Advanced Mutation Transformation"
|
||||
cure_text = "frost oil"
|
||||
cures = list("cryostylane")
|
||||
cures = list("frostoil")
|
||||
cure_chance = 80
|
||||
agent = "Advanced Mutation Toxin"
|
||||
desc = "This highly concentrated extract converts anything into more of itself."
|
||||
|
||||
@@ -173,7 +173,6 @@ obj/effect/proc_holder/changeling/sting/cryo
|
||||
/obj/effect/proc_holder/changeling/sting/cryo/sting_action(var/mob/user, var/mob/target)
|
||||
add_logs(user, target, "stung", object="cryo sting")
|
||||
if(target.reagents)
|
||||
target.reagents.add_reagent("cryostylane", 30)
|
||||
target.reagents.add_reagent("oxygen", 30)
|
||||
target.reagents.add_reagent("frostoil", 30)
|
||||
feedback_add_details("changeling_powers","CS")
|
||||
return 1
|
||||
@@ -19,7 +19,7 @@
|
||||
"capsaicin" = list("hotsauce", "hotsauce bottle", "You can almost TASTE the stomach ulcers now!"),
|
||||
"enzyme" = list("enzyme", "universal enzyme bottle", "Used in cooking various dishes"),
|
||||
"soysauce" = list("soysauce", "soy sauce bottle", "A salty soy-based flavoring"),
|
||||
"cryostylane" = list("coldsauce", "coldsauce bottle", "Leaves the tongue numb in it's passage"),
|
||||
"frostoil" = list("coldsauce", "coldsauce bottle", "Leaves the tongue numb in it's passage"),
|
||||
"sodiumchloride" = list("saltshakersmall", "salt shaker", "Salt. From space oceans, presumably"),
|
||||
"blackpepper" = list("pepermillsmall", "pepper mill", "Often used to flavor food or make people sneeze"),
|
||||
"cornoil" = list("oliveoil", "corn oil bottle", "A delicious oil used in cooking. Made from corn"),
|
||||
@@ -183,7 +183,7 @@
|
||||
volume = 10
|
||||
amount_per_transfer_from_this = 10
|
||||
possible_transfer_amounts = list(10)
|
||||
possible_states = list("ketchup" = list("condi_ketchup", "Ketchup", "You feel more American already."), "capsaicin" = list("condi_hotsauce", "Hotsauce", "You can almost TASTE the stomach ulcers now!"), "soysauce" = list("condi_soysauce", "Soy Sauce", "A salty soy-based flavoring"), "cryostylane" = list("condi_cryostylane", "Coldsauce", "Leaves the tongue numb in it's passage"), "sodiumchloride" = list("condi_salt", "Salt Shaker", "Salt. From space oceans, presumably"), "blackpepper" = list("condi_pepper", "Pepper Mill", "Often used to flavor food or make people sneeze"), "cornoil" = list("condi_cornoil", "Corn Oil", "A delicious oil used in cooking. Made from corn"), "sugar" = list("condi_sugar", "Sugar", "Tasty spacey sugar!"))
|
||||
possible_states = list("ketchup" = list("condi_ketchup", "Ketchup", "You feel more American already."), "capsaicin" = list("condi_hotsauce", "Hotsauce", "You can almost TASTE the stomach ulcers now!"), "soysauce" = list("condi_soysauce", "Soy Sauce", "A salty soy-based flavoring"), "frostoil" = list("condi_frostoil", "Coldsauce", "Leaves the tongue numb in it's passage"), "sodiumchloride" = list("condi_salt", "Salt Shaker", "Salt. From space oceans, presumably"), "blackpepper" = list("condi_pepper", "Pepper Mill", "Often used to flavor food or make people sneeze"), "cornoil" = list("condi_cornoil", "Corn Oil", "A delicious oil used in cooking. Made from corn"), "sugar" = list("condi_sugar", "Sugar", "Tasty spacey sugar!"))
|
||||
var/originalname = "condiment" //Can't use initial(name) for this. This stores the name set by condimasters.
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/condiment/pack/attack(mob/M, mob/user, def_zone) //Can't feed these to people directly.
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/donut/chaos/New()
|
||||
..()
|
||||
extra_reagent = pick("nutriment", "capsaicin", "cryostylane", "krokodil", "plasma", "cocoa", "slimejelly", "banana", "berryjuice", "omnizine")
|
||||
extra_reagent = pick("nutriment", "capsaicin", "frostoil", "krokodil", "plasma", "cocoa", "slimejelly", "banana", "berryjuice", "omnizine")
|
||||
reagents.add_reagent("[extra_reagent]", 3)
|
||||
if(prob(30))
|
||||
icon_state = "donut2"
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
/obj/item/weapon/reagent_containers/food/snacks/soup/mystery/New()
|
||||
..()
|
||||
|
||||
extra_reagent = pick("capsaicin", "cryostylane", "omnizine", "banana", "blood", "slimejelly", "toxin", "banana", "carbon", "oculine")
|
||||
extra_reagent = pick("capsaicin", "frostoil", "omnizine", "banana", "blood", "slimejelly", "toxin", "banana", "carbon", "oculine")
|
||||
reagents.add_reagent("[extra_reagent]", 5)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/soup/hotchili
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
/datum/table_recipe/chaosdonut
|
||||
name = "Chaos donut"
|
||||
reqs = list(
|
||||
/datum/reagent/goonchem/cryostylane = 5,
|
||||
/datum/reagent/consumable/frostoil = 5,
|
||||
/datum/reagent/consumable/capsaicin = 5,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/pastrybase = 1
|
||||
)
|
||||
|
||||
@@ -650,7 +650,7 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/icepepper
|
||||
seed = /obj/item/seeds/icepepperseed
|
||||
name = "chilly pepper"
|
||||
name = "ice pepper"
|
||||
desc = "It's a mutant strain of chili"
|
||||
icon_state = "icepepper"
|
||||
filling_color = "#0000CD"
|
||||
@@ -659,14 +659,13 @@
|
||||
..()
|
||||
reagents.add_reagent("nutriment", 1 + round((potency / 50), 1))
|
||||
reagents.add_reagent("vitamin", 1 + round((potency / 50), 1))
|
||||
reagents.add_reagent("cryostylane", 3+round(potency / 5, 1))
|
||||
reagents.add_reagent("oxygen", 3+round(potency / 5, 1))
|
||||
reagents.add_reagent("frostoil", 3+round(potency / 5, 1))
|
||||
bitesize = 1 + round(reagents.total_volume / 2, 1)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/icepepper/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
|
||||
. = ..()
|
||||
if (istype(O, /obj/item/device/analyzer/plant_analyzer))
|
||||
user << "<span class='info'>- cryostylane: <i>[reagents.get_reagent_amount("cryostylane")]%</i></span>"
|
||||
user << "<span class='info'>- Frost Oil: <i>[reagents.get_reagent_amount("frostoil")]%</i></span>"
|
||||
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/ghost_chili
|
||||
|
||||
@@ -475,11 +475,11 @@
|
||||
growthstages = 4
|
||||
|
||||
/obj/item/seeds/icepepperseed
|
||||
name = "pack of chilly pepper seeds"
|
||||
desc = "These seeds grow into chilly pepper plants."
|
||||
name = "pack of ice pepper seeds"
|
||||
desc = "These seeds grow into ice pepper plants."
|
||||
icon_state = "seed-icepepper"
|
||||
species = "chiliice"
|
||||
plantname = "Chilly Pepper Plants"
|
||||
plantname = "Ice Pepper Plants"
|
||||
product = /obj/item/weapon/reagent_containers/food/snacks/grown/icepepper
|
||||
lifespan = 25
|
||||
endurance = 15
|
||||
|
||||
@@ -286,124 +286,6 @@
|
||||
|
||||
return //TODO: DEFERRED
|
||||
|
||||
/mob/living/carbon/human/handle_regular_status_updates()
|
||||
if(stat == DEAD) //DEAD. BROWN BREAD. SWIMMING WITH THE SPESS CARP
|
||||
silent = 0
|
||||
else //ALIVE. LIGHTS ARE ON
|
||||
updatehealth() //TODO
|
||||
if(health <= config.health_threshold_dead || !getorgan(/obj/item/organ/brain))
|
||||
death()
|
||||
silent = 0
|
||||
return 1
|
||||
//UNCONSCIOUS. NO-ONE IS HOME
|
||||
if( (getOxyLoss() > 50) || (config.health_threshold_crit >= health) )
|
||||
Paralyse(3)
|
||||
if(hallucination)
|
||||
spawn handle_hallucinations()
|
||||
|
||||
if(hallucination<=2)
|
||||
hallucination = 0
|
||||
else
|
||||
hallucination -= 2
|
||||
|
||||
else
|
||||
for(var/atom/a in hallucinations)
|
||||
qdel(a)
|
||||
if(paralysis)
|
||||
AdjustParalysis(-1)
|
||||
stat = UNCONSCIOUS
|
||||
else if(sleeping)
|
||||
handle_dreams()
|
||||
adjustStaminaLoss(-10)
|
||||
sleeping = max(sleeping-1, 0)
|
||||
stat = UNCONSCIOUS
|
||||
if( prob(10) && health && !hal_crit )
|
||||
spawn(0)
|
||||
emote("snore")
|
||||
else if (status_flags & FAKEDEATH)
|
||||
stat = UNCONSCIOUS
|
||||
//CONSCIOUS
|
||||
else
|
||||
stat = CONSCIOUS
|
||||
|
||||
//Eyes
|
||||
if(disabilities & BLIND || stat) //disabled-blind, doesn't get better on its own
|
||||
eye_blind = max(eye_blind, 1)
|
||||
else if(eye_blind) //blindness, heals slowly over time
|
||||
eye_blind = max(eye_blind-1,0)
|
||||
else if(tinttotal >= TINT_BLIND) //covering your eyes heals blurry eyes faster
|
||||
eye_blurry = max(eye_blurry-3, 0)
|
||||
else if(eye_blurry) //blurry eyes heal slowly
|
||||
eye_blurry = max(eye_blurry-1, 0)
|
||||
|
||||
//Ears
|
||||
if(disabilities & DEAF) //disabled-deaf, doesn't get better on its own
|
||||
setEarDamage(-1, max(ear_deaf, 1))
|
||||
else if (ear_damage < 100) // deafness heals slowly over time, unless ear_damage is over 100
|
||||
if(istype(ears, /obj/item/clothing/ears/earmuffs)) // earmuffs rest your ears, healing 3x faster, but keeping you deaf.
|
||||
setEarDamage(max(ear_damage-0.15, 0), max(ear_deaf - 1, 1))
|
||||
else
|
||||
adjustEarDamage(-0.05, -1)
|
||||
|
||||
//Dizziness
|
||||
if(dizziness)
|
||||
var/client/C = client
|
||||
var/pixel_x_diff = 0
|
||||
var/pixel_y_diff = 0
|
||||
var/temp
|
||||
var/saved_dizz = dizziness
|
||||
dizziness = max(dizziness-1, 0)
|
||||
if(C)
|
||||
var/oldsrc = src
|
||||
var/amplitude = dizziness*(sin(dizziness * 0.044 * world.time) + 1) / 70 // This shit is annoying at high strength
|
||||
src = null
|
||||
spawn(0)
|
||||
if(C)
|
||||
temp = amplitude * sin(0.008 * saved_dizz * world.time)
|
||||
pixel_x_diff += temp
|
||||
C.pixel_x += temp
|
||||
temp = amplitude * cos(0.008 * saved_dizz * world.time)
|
||||
pixel_y_diff += temp
|
||||
C.pixel_y += temp
|
||||
sleep(3)
|
||||
if(C)
|
||||
temp = amplitude * sin(0.008 * saved_dizz * world.time)
|
||||
pixel_x_diff += temp
|
||||
C.pixel_x += temp
|
||||
temp = amplitude * cos(0.008 * saved_dizz * world.time)
|
||||
pixel_y_diff += temp
|
||||
C.pixel_y += temp
|
||||
sleep(3)
|
||||
if(C)
|
||||
C.pixel_x -= pixel_x_diff
|
||||
C.pixel_y -= pixel_y_diff
|
||||
src = oldsrc
|
||||
|
||||
//Jitteryness
|
||||
if(jitteriness)
|
||||
do_jitter_animation(jitteriness)
|
||||
jitteriness = max(jitteriness-1, 0)
|
||||
|
||||
//Other
|
||||
if(stunned)
|
||||
AdjustStunned(-1)
|
||||
|
||||
if(weakened)
|
||||
weakened = max(weakened-1,0)
|
||||
|
||||
if(stuttering)
|
||||
stuttering = max(stuttering-1, 0)
|
||||
|
||||
if(slurring)
|
||||
slurring = max(slurring-1,0)
|
||||
|
||||
if(silent)
|
||||
silent = max(silent-1, 0)
|
||||
|
||||
if(druggy)
|
||||
druggy = max(druggy-1, 0)
|
||||
|
||||
CheckStamina()
|
||||
/mob/living/carbon/human/handle_vision()
|
||||
client.screen.Remove(global_hud.blurry, global_hud.druggy, global_hud.vimpaired, global_hud.darkMask)
|
||||
if(machine)
|
||||
|
||||
@@ -90,7 +90,7 @@
|
||||
if(reagents.has_reagent("morphine")) // morphine slows slimes down
|
||||
tally *= 2
|
||||
|
||||
if(reagents.has_reagent("cryostylane")) // cryostylane also makes them move VEEERRYYYYY slow
|
||||
if(reagents.has_reagent("frostoil")) // frostoil also makes them move VEEERRYYYYY slow
|
||||
tally *= 5
|
||||
|
||||
if(health <= 0) // if damaged, the slime moves twice as slow
|
||||
|
||||
@@ -136,13 +136,6 @@ proc/isorgan(A)
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/proc/is_incrit(A)
|
||||
if(istype(A, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = A
|
||||
if(config.health_threshold_crit >= H.health)
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/proc/check_zone(zone)
|
||||
if(!zone) return "chest"
|
||||
switch(zone)
|
||||
|
||||
@@ -17,7 +17,6 @@ datum/reagent/goonchem/silver_sulfadiazine/reaction_mob(var/mob/living/M as mob,
|
||||
M.adjustFireLoss(-volume)
|
||||
if(show_message)
|
||||
M << "<span class='notice'>You feel your burns healing!</span>"
|
||||
M.emote("scream")
|
||||
if(method == INGEST)
|
||||
M.adjustToxLoss(0.5*volume)
|
||||
if(show_message)
|
||||
@@ -101,7 +100,7 @@ datum/reagent/goonchem/charcoal
|
||||
datum/reagent/goonchem/charcoal/on_mob_life(var/mob/living/M as mob)
|
||||
if(!M) M = holder.my_atom
|
||||
M.adjustToxLoss(-3*REM)
|
||||
for(var/datum/reagent/goonchem/R in M.reagents.reagent_list)
|
||||
for(var/datum/reagent/R in M.reagents.reagent_list)
|
||||
if(R != src)
|
||||
M.reagents.remove_reagent(R.id,1)
|
||||
..()
|
||||
@@ -180,7 +179,7 @@ datum/reagent/goonchem/calomel
|
||||
|
||||
datum/reagent/goonchem/calomel/on_mob_life(var/mob/living/M as mob)
|
||||
if(!M) M = holder.my_atom
|
||||
for(var/datum/reagent/goonchem/R in M.reagents.reagent_list)
|
||||
for(var/datum/reagent/R in M.reagents.reagent_list)
|
||||
if(R != src)
|
||||
M.reagents.remove_reagent(R.id,5)
|
||||
if(M.health > 20)
|
||||
@@ -236,7 +235,7 @@ datum/reagent/goonchem/pen_acid/on_mob_life(var/mob/living/M as mob)
|
||||
M.adjustBruteLoss(1*REM)
|
||||
if(M.radiation < 0)
|
||||
M.radiation = 0
|
||||
for(var/datum/reagent/goonchem/R in M.reagents.reagent_list)
|
||||
for(var/datum/reagent/R in M.reagents.reagent_list)
|
||||
if(R != src)
|
||||
M.reagents.remove_reagent(R.id,4)
|
||||
..()
|
||||
|
||||
@@ -402,7 +402,7 @@ datum/reagents/proc/check_ignoreslow(var/mob/M)
|
||||
|
||||
datum/reagents/proc/check_gofast(var/mob/M)
|
||||
if(istype(M, /mob))
|
||||
if(M.reagents.has_reagent("unholywater")||M.reagents.has_reagent("nuka_cola")||M.reagents.has_reagent("cocaine"))
|
||||
if(M.reagents.has_reagent("unholywater")||M.reagents.has_reagent("nuka_cola"))
|
||||
return 1
|
||||
else
|
||||
M.status_flags &= ~GOTTAGOFAST
|
||||
|
||||
+2
-2
@@ -172,8 +172,8 @@ datum/reagent/consumable/coffee/on_mob_life(var/mob/living/M as mob)
|
||||
if (M.bodytemperature < 310)//310 is the normal bodytemp. 310.055
|
||||
M.bodytemperature = min(310, M.bodytemperature + (25 * TEMPERATURE_DAMAGE_COEFFICIENT))
|
||||
M.Jitter(5)
|
||||
if(holder.has_reagent("cryostylane"))
|
||||
holder.remove_reagent("cryostylane", 5)
|
||||
if(holder.has_reagent("frostoil"))
|
||||
holder.remove_reagent("frostoil", 5)
|
||||
..()
|
||||
return
|
||||
|
||||
|
||||
@@ -110,10 +110,43 @@ datum/reagent/consumable/capsaicin/on_mob_life(var/mob/living/M as mob)
|
||||
M.bodytemperature += 15 * TEMPERATURE_DAMAGE_COEFFICIENT
|
||||
if(istype(M, /mob/living/carbon/slime))
|
||||
M.bodytemperature += rand(15,20)
|
||||
current_cycle++
|
||||
..()
|
||||
return
|
||||
|
||||
datum/reagent/consumable/frostoil
|
||||
name = "Frost Oil"
|
||||
id = "frostoil"
|
||||
description = "A special oil that noticably chills the body. Extraced from Icepeppers."
|
||||
color = "#B31008" // rgb: 139, 166, 233
|
||||
|
||||
datum/reagent/consumable/frostoil/on_mob_life(var/mob/living/M as mob)
|
||||
switch(current_cycle)
|
||||
if(1 to 15)
|
||||
M.bodytemperature -= 10 * TEMPERATURE_DAMAGE_COEFFICIENT
|
||||
if(holder.has_reagent("capsaicin"))
|
||||
holder.remove_reagent("capsaicin", 5)
|
||||
if(istype(M, /mob/living/carbon/slime))
|
||||
M.bodytemperature -= rand(5,20)
|
||||
if(15 to 25)
|
||||
M.bodytemperature -= 15 * TEMPERATURE_DAMAGE_COEFFICIENT
|
||||
if(istype(M, /mob/living/carbon/slime))
|
||||
M.bodytemperature -= rand(10,20)
|
||||
if(25 to INFINITY)
|
||||
M.bodytemperature -= 20 * TEMPERATURE_DAMAGE_COEFFICIENT
|
||||
if(prob(1))
|
||||
M.emote("shiver")
|
||||
if(istype(M, /mob/living/carbon/slime))
|
||||
M.bodytemperature -= rand(15,20)
|
||||
..()
|
||||
return
|
||||
|
||||
datum/reagent/consumable/frostoil/reaction_turf(var/turf/simulated/T, var/volume)
|
||||
if(volume >= 5)
|
||||
for(var/mob/living/carbon/slime/M in T)
|
||||
M.adjustToxLoss(rand(15,30))
|
||||
//if(istype(T))
|
||||
// T.atmos_spawn_air(SPAWN_COLD)
|
||||
|
||||
datum/reagent/consumable/condensedcapsaicin
|
||||
name = "Condensed Capsaicin"
|
||||
id = "condensedcapsaicin"
|
||||
|
||||
@@ -238,7 +238,7 @@ silicate
|
||||
name = "Solid Plasma"
|
||||
id = "solidplasma"
|
||||
result = null
|
||||
required_reagents = list("iron" = 5, "cryostylane" = 5, "plasma" = 20)
|
||||
required_reagents = list("iron" = 5, "frostoil" = 5, "plasma" = 20)
|
||||
result_amount = 1
|
||||
mob_react = 1
|
||||
|
||||
@@ -609,8 +609,8 @@ datum/chemical_reaction/pestkiller
|
||||
//Blue
|
||||
/datum/chemical_reaction/slimefrost
|
||||
name = "Slime Frost Oil"
|
||||
id = "m_cryostylane"
|
||||
result = "cryostylane"
|
||||
id = "m_frostoil"
|
||||
result = "frostoil"
|
||||
required_reagents = list("plasma" = 1)
|
||||
result_amount = 10
|
||||
required_container = /obj/item/slime_extract/blue
|
||||
|
||||
@@ -99,11 +99,11 @@
|
||||
icon_state = "bottle3"
|
||||
list_reagents = list("capsaicin" = 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/cryostylane
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/frostoil
|
||||
name = "Frost Oil Bottle"
|
||||
desc = "A small bottle. Contains cold sauce."
|
||||
icon_state = "bottle17"
|
||||
list_reagents = list("cryostylane" = 30)
|
||||
list_reagents = list("frostoil" = 30)
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/bottle/traitor
|
||||
name = "syndicate bottle"
|
||||
|
||||
@@ -408,7 +408,7 @@
|
||||
visible_message("<span class='notice'>[src]'s emergency coolant system gives off a small ding!</span>")
|
||||
var/obj/machinery/vending/coffee/C = new /obj/machinery/vending/coffee(get_turf(pick(oview(1,src))))
|
||||
playsound(src.loc, 'sound/machines/ding.ogg', 50, 1) //Ding! Your death coffee is ready!
|
||||
chosenchem = pick("uranium","cryostylane","ephedrine")
|
||||
chosenchem = pick("uranium","frostoil","ephedrine")
|
||||
C.reagents.remove_any(25)
|
||||
C.reagents.add_reagent(chosenchem , 50)
|
||||
C.name = "Cup of Suspicious Liquid"
|
||||
@@ -418,8 +418,8 @@
|
||||
visible_message("<span class='notice'>[src] malfunctions, shattering [exp_on] and releasing a dangerous cloud of coolant!</span>")
|
||||
var/datum/reagents/R = new/datum/reagents(50)
|
||||
R.my_atom = src
|
||||
R.add_reagent("cryostylane" , 50)
|
||||
investigate_log("Experimentor has released cryostylane gas.", "experimentor")
|
||||
R.add_reagent("frostoil" , 50)
|
||||
investigate_log("Experimentor has released frostoil gas.", "experimentor")
|
||||
var/datum/effect/effect/system/chem_smoke_spread/smoke = new
|
||||
smoke.set_up(R, 1, 0, src, 0, silent = 1)
|
||||
playsound(src.loc, 'sound/effects/smoke.ogg', 50, 1, -3)
|
||||
|
||||
Reference in New Issue
Block a user