mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 03:27:05 +01:00
Tones down the demand for Ash (#22923)
* Make oil fireflash depend on remaining empty space * Split feedback message * Update oil fireflash size scaling * Slightly buff oil -> ash production * Clarify feedback messages * Make violent oil fireflashes not produce ash * Make charcoal recipe require less ash * Violence begone
This commit is contained in:
@@ -178,23 +178,25 @@
|
||||
if(exposed_temperature <= T0C + 600)
|
||||
return
|
||||
|
||||
var/violent = volume > 30
|
||||
var/message_type = violent ? "class='boldwarning'" : "class='warning'"
|
||||
holder.my_atom.visible_message("<span [message_type]>The oil [violent ? "boils and burns violently" : "burns"]!</span>")
|
||||
// Let's say burning boiling oil doubles in volume, can our max volume contain that?
|
||||
var/boil_overflow = (holder.total_volume + volume) - holder.maximum_volume
|
||||
|
||||
var/datum/reagents/old_holder = holder
|
||||
var/turf/T = get_turf(holder.my_atom)
|
||||
var/smoke_type = /datum/effect_system/smoke_spread
|
||||
|
||||
if(violent)
|
||||
// Log -> remove reagent -> fireflash. Else the log fails or fireflash triggers a reaction again
|
||||
if(boil_overflow > 0)
|
||||
holder.my_atom.visible_message("<span class='boldwarning'>The oil boils out and burns violently!</span>")
|
||||
// Log -> remove reagent -> fireflash, else the log fails or fireflash triggers a reaction again
|
||||
fire_flash_log(holder, id)
|
||||
holder.del_reagent(id)
|
||||
fireflash(T, clamp(volume / 40, 0, 8))
|
||||
fireflash(T, clamp(boil_overflow / 40, 0, 8))
|
||||
|
||||
smoke_type = /datum/effect_system/smoke_spread/bad
|
||||
else
|
||||
holder.my_atom.visible_message("<span class='notice'>The oil sizzles and burns down into residue.</span>")
|
||||
var/datum/reagents/old_holder = holder // We might not have space if we add first, so cache this and add after deleting
|
||||
holder.del_reagent(id)
|
||||
old_holder.add_reagent(reagent_after_burning, volume * 0.6)
|
||||
|
||||
// Flavor reaction effects
|
||||
playsound(T, 'sound/goonstation/misc/drinkfizz.ogg', 80, TRUE)
|
||||
@@ -202,9 +204,6 @@
|
||||
BS.set_up(1, FALSE, T)
|
||||
BS.start()
|
||||
|
||||
if(!QDELETED(old_holder) && reagent_after_burning)
|
||||
old_holder.add_reagent(reagent_after_burning, round(volume * 0.5))
|
||||
|
||||
/datum/reagent/oil/reaction_turf(turf/T, volume)
|
||||
if(volume >= 3 && !isspaceturf(T) && !(locate(/obj/effect/decal/cleanable/blood/oil) in T))
|
||||
new /obj/effect/decal/cleanable/blood/oil(T)
|
||||
@@ -225,7 +224,6 @@
|
||||
name = "Burned Cooking Oil"
|
||||
description = "It's full of char and mixed with so much crud it's probably useless."
|
||||
id = "cooking_oil_inert"
|
||||
reagent_after_burning = null
|
||||
|
||||
/datum/reagent/oil/cooking/inert/reaction_temperature(exposed_temperature, exposed_volume)
|
||||
// don't do anything
|
||||
|
||||
@@ -47,8 +47,8 @@
|
||||
name = "Charcoal"
|
||||
id = "charcoal"
|
||||
result = "charcoal"
|
||||
required_reagents = list("ash" = 1, "sodiumchloride" = 1)
|
||||
result_amount = 2
|
||||
required_reagents = list("ash" = 1, "sodiumchloride" = 5)
|
||||
result_amount = 6
|
||||
mix_message = "The mixture yields a fine black powder."
|
||||
min_temp = T0C + 100
|
||||
mix_sound = 'sound/goonstation/misc/fuse.ogg'
|
||||
|
||||
Reference in New Issue
Block a user