Collapsing fireplace logic into bonfire.

This commit is contained in:
MistakeNot4892
2024-01-18 22:38:31 +11:00
parent 00bed6e326
commit e272246877
40 changed files with 668 additions and 611 deletions
+8 -8
View File
@@ -49,21 +49,21 @@
var/new_color = null
switch(stance)
if(STANCE_SLEEP)
new_color = "#FFFFFF" // White
new_color = "#ffffff" // White
if(STANCE_IDLE)
new_color = "#00FF00" // Green
new_color = "#00ff00" // Green
if(STANCE_ALERT)
new_color = "#FFFF00" // Yellow
new_color = "#ffff00" // Yellow
if(STANCE_APPROACH)
new_color = "#FF9933" // Orange
new_color = "#ff9933" // Orange
if(STANCE_FIGHT)
new_color = "#FF0000" // Red
new_color = "#ff0000" // Red
if(STANCE_MOVE)
new_color = "#0000FF" // Blue
new_color = "#0000ff" // Blue
if(STANCE_REPOSITION)
new_color = "#FF00FF" // Purple
new_color = "#ff00ff" // Purple
if(STANCE_FOLLOW)
new_color = "#00FFFF" // Cyan
new_color = "#00ffff" // Cyan
if(STANCE_FLEE)
new_color = "#666666" // Grey
if(STANCE_DISABLED)
+6 -6
View File
@@ -90,11 +90,11 @@
/obj/effect/vfx/smoke/bad/burntfood
color = "#000000"
time_to_live = 600
/obj/effect/vfx/smoke/bad/burntfood/process()
for(var/mob/living/L in get_turf(src))
affect(L)
/obj/effect/vfx/smoke/bad/burntfood/affect(var/mob/living/L) // This stuff is extra-vile.
if (!..())
return 0
@@ -132,8 +132,8 @@
/obj/effect/vfx/smoke/elemental/fire
name = "burning cloud"
desc = "A cloud of something that is on fire."
color = "#FF9933"
light_color = "#FF0000"
color = COLOR_FIRE_ORANGE
light_color = "#ff0000"
light_range = 2
light_power = 5
@@ -215,7 +215,7 @@
/datum/effect_system/smoke_spread/bad
smoke_type = /obj/effect/vfx/smoke/bad
/datum/effect_system/smoke_spread/bad/burntfood
smoke_type = /obj/effect/vfx/smoke/bad/burntfood
@@ -232,4 +232,4 @@
smoke_type = /obj/effect/vfx/smoke/elemental/shock
/datum/effect_system/smoke_spread/mist
smoke_type = /obj/effect/vfx/smoke/elemental/mist
smoke_type = /obj/effect/vfx/smoke/elemental/mist
+10
View File
@@ -482,6 +482,16 @@
desc = "An artisanal sack of flour. Classy!"
icon_state = "flour_bag"
/obj/item/reagent_containers/food/condiment/carton/rice
name = "rice sack"
desc = "An artisanal sack of rice. Rustic!"
icon_state = "flour_bag"
/obj/item/reagent_containers/food/condiment/carton/rice/Initialize()
. = ..()
reagents.add_reagent("rice", 200)
randpixel_xy()
/obj/item/reagent_containers/food/condiment/carton/sugar
name = "sugar carton"
desc = "A big carton of sugar. Sweet!"
+5 -1
View File
@@ -3,6 +3,7 @@
icon = 'icons/obj/food_jerky.dmi'
bitesize = 2
w_class = ITEMSIZE_TINY
dry = TRUE
/obj/item/reagent_containers/food/snacks/jerky/fish
name = "dried fish"
@@ -44,7 +45,7 @@
/obj/item/reagent_containers/food/snacks/jerky/spider
name = "dried spider meat"
desc = "A piece of green, stringy dried meat, full of tubes. It smells faintly of acid."
icon_state = "spiderjerky"
icon_state = "spiderjerky_charred"
/obj/item/reagent_containers/food/snacks/jerky/spider/get_drying_state()
return "meat_dried"
@@ -53,6 +54,9 @@
. = ..()
reagents.add_reagent("protein", 5)
/obj/item/reagent_containers/food/snacks/jerky/spider/poison
icon_state = "spiderjerky"
/obj/item/reagent_containers/food/snacks/jerky/spider/poison/Initialize()
. = ..()
reagents.add_reagent("spidertoxin", 3)
+10
View File
@@ -47,6 +47,16 @@
/obj/item/reagent_containers/food/snacks/is_dryable()
return !dry
/obj/item/reagent_containers/food/snacks/get_dryness_text(var/obj/rack)
var/moistness = drying_wetness / initial(drying_wetness)
if(moistness > 0.65)
return "fresh"
if(moistness > 0.35)
return "somewhat dried"
if(moistness)
return "almost dried"
return "dehydrated"
/obj/item/reagent_containers/food/snacks/dry_out(var/obj/rack, var/drying_power = 1, var/fire_exposed = FALSE, var/silent = FALSE)
// If it's a direct fire, cook the food instead.
+2 -2
View File
@@ -101,7 +101,7 @@
type_to_spawn = /obj/item/stack/material/fuel/wood
/obj/fiftyspawner/sifwood
name = "stack of alien wood"
name = "stack of sifwood wood"
type_to_spawn = /obj/item/stack/material/fuel/wood/sif
/obj/fiftyspawner/log
@@ -109,7 +109,7 @@
type_to_spawn = /obj/item/stack/material/fuel/log
/obj/fiftyspawner/log/sif
name = "stack of alien logs"
name = "stack of sifwood logs"
type_to_spawn = /obj/item/stack/material/fuel/log/sif
/obj/fiftyspawner/cloth
@@ -72,10 +72,11 @@
sheet_plural_name = "pile"
pass_stack_colors = TRUE
supply_conversion_value = 1
var/bonfire_type = /obj/structure/wood_fire/bonfire/fuelled
/datum/material/wood/log/generate_recipes()
recipes = list(
new /datum/stack_recipe("bonfire", /obj/structure/bonfire, 5, time = 50, supplied_material = "[name]", pass_stack_color = TRUE, recycle_material = "[name]")
new /datum/stack_recipe("bonfire", bonfire_type, 5, time = 5 SECONDS)
)
/datum/material/wood/log/sif
@@ -83,3 +84,4 @@
icon_colour = "#0099cc" // Cyan-ish
stack_origin_tech = list(TECH_MATERIAL = 2, TECH_BIO = 2)
stack_type = /obj/item/stack/material/fuel/log/sif
bonfire_type = /obj/structure/wood_fire/bonfire/sifwood
@@ -36,15 +36,12 @@
if(drying_state)
add_overlay(drying_state)
/obj/structure/drying_rack/attackby(var/atom/A, var/mob/user)
if(istype(A, /obj/item/stack/wetleather))
if(!drying) // If not drying anything, start drying the thing
if(user.unEquip(A, target = src))
drying = A
else // Drying something, add if possible
var/obj/item/stack/wetleather/W = A
W.transfer_to(drying, W.amount, TRUE)
update_icon()
/obj/structure/drying_rack/attackby(var/obj/item/I, var/mob/user)
if(istype(I) && I.is_dryable() && !istype(I, /obj/item/stack/material/fuel))
if(user.unEquip(I))
I.forceMove(src)
drying = I
update_icon()
return TRUE
return ..()
@@ -1,6 +1,16 @@
/obj/item/stack/material/fuel // abstract type, do not use
var/bonfire_fuel_time = 1 MINUTE
/obj/item/stack/material/fuel/get_dryness_text(var/obj/rack)
var/moistness = drying_wetness / initial(drying_wetness)
if(moistness > 0.65)
return "fresh-cut"
if(moistness > 0.35)
return "somewhat dried"
if(moistness)
return "almost dried"
return "dried"
/obj/item/stack/material/fuel/wood
name = "wooden plank"
icon_state = "sheet-wood"
@@ -27,6 +37,10 @@
drying_wetness = null
bonfire_fuel_time = 6 MINUTES
/obj/item/stack/material/fuel/wood/dried/update_strings()
. = ..()
name = "dried [name]"
/obj/item/stack/material/fuel/wood/dried/sif
name = "dried sifwood plank"
color = "#0099cc"
@@ -62,6 +76,10 @@
plank_type = /obj/item/stack/material/fuel/wood/dried
bonfire_fuel_time = 8 MINUTES
/obj/item/stack/material/fuel/log/dried/update_strings()
. = ..()
name = "dried [name]"
/obj/item/stack/material/fuel/log/dried/sif
name = "dried sifwood log"
default_type = MAT_SIFLOG
+1 -1
View File
@@ -5,7 +5,7 @@
icon_state = "lantern"
desc = "A mining lantern."
brightness_on = 6 // luminosity when on
light_color = "FF9933" // A slight yellow/orange color.
light_color = COLOR_FIRE_ORANGE
/*****************************Pickaxe********************************/
+1 -1
View File
@@ -247,7 +247,7 @@
return TRUE
else if(on_fire)
set_light(min(round(fire_stacks), 3), round(fire_stacks), l_color = "#FF9933")
set_light(min(round(fire_stacks), 3), round(fire_stacks), l_color = COLOR_FIRE_ORANGE)
return TRUE
else if(glow_toggle)
+1 -1
View File
@@ -59,7 +59,7 @@ var/global/datum/planet/sif/planet_sif = null
low_color = "#CC3300"
high_brightness = 0.9
high_color = "#FF9933"
high_color = COLOR_FIRE_ORANGE
min = 0.50
if(0.70 to 1.00) // Noon