Adds soil clumps and a compost bin. (#22585)

* Adds soil clumps, which are used to make soil(alternative to sandstone).

* Adds soil clump recipe to the biogenerator

* Adds the compost bin to the game. Which converts biomass to compost and makes soil from it.

* Adds sprites for the compost bin

* Adds a recipe for the compost bin(10 planks)

* Added interface for the compost bin.

* Applying suggested changes to compost bin(redundant condition removal, spell check, auto doc)

* Applying suggested changes to soil sheets(initialize, remove empty line)

* Changed min and max to clamp where able, removed redundant return, compost recursion stays in convert_biomass().

* Call parent on init

* Identation and style changes

* Rephrase description

* Unauto docing unnecessary bits, clicking with screwdriver no longer an attack, removed redundancies, reordred ui procs and changed ui data list to new format.

* Converting plant to biomass is now its own function

* removed SOIL define. using path as is instead

* Moved the compost_bin-3 sprite up a pixel so it aligns with the rest

* Added spaces for readability

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>

* Moved plant deletion to make_biomass()

* Rebuilt tgui

* Filled gaps in sprite with mostly transparent pixels to make it easier to click

* Rebuild tgui

* rebuild tgui

* Adds the soil clump sprites back after update

* Added Trailing newline to compost_bin.dm

check said it's missing

* Adds a check for presence of biomass when initializing to prevent unneeded proc call

Checks whether a compost bin has any biomass before attempting to compost it.

* Adding back compost bin icons

* rebuild tgui

* Made interface window slightly shorter.

from 300 to 200 pixels tall.

* Replaced the enough_compost() proc with an if statement in the only place it was used

* Replaced the compost() proc and calls to it with process().

* Rebuild TGUI

* Removed an unused var, idented a comment, and returned the onhit proc to it's original form

* Ran prettier on the compost bin interface file

* Wake Up Icon Diffbot

* Aw shit, here we go again.

* Empty-Commit

* Wake up icondiffbot

* Last attempt for today

* Removed redundant new line from sheet_types.dm

* removed redundant new lines and moved the ui procs together.

* Changed compost label to Compost

* Recompile tgui

* Rebuild Tgui

* Rebuild TGUI

* Rebuild TGUI

* Capitaliize the word soil in the biogenerator listing for it

* following some suggestions

Replaced compost capacity defines with "magic numbers", removed redundant init proc, added spaces around a '-' sign.

* Removing a redundant check in the insertion proc.

moved the check for the compost bin being full to the end of the loop since I already make one before the loop starts.

* Rebuild TGUI

* Rebuild Tgui

* Update code/game/objects/items/stacks/sheets/sheet_types.dm

Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com>

* Rebuild TGUI

* ReRebuild TGUI

---------

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com>
This commit is contained in:
Migratingcocofruit
2023-11-04 22:42:07 +02:00
committed by GitHub
parent e6addfc6ac
commit 23e2c250ec
8 changed files with 291 additions and 3 deletions
@@ -6,6 +6,7 @@
* Cloth
* Durathread
* Cardboard
* Soil
* Runed Metal (cult)
* Brass (clockwork cult)
* Bones
@@ -240,7 +241,8 @@ GLOBAL_LIST_INIT(wood_recipes, list(
new /datum/stack_recipe("honey frame", /obj/item/honey_frame, 5, time = 1 SECONDS),
new /datum/stack_recipe("ore box", /obj/structure/ore_box, 4, time = 5 SECONDS, one_per_turf = TRUE, on_floor = TRUE),
new /datum/stack_recipe("loom", /obj/structure/loom, 10, time = 1.5 SECONDS, one_per_turf = TRUE, on_floor = TRUE),
new /datum/stack_recipe("fermenting barrel", /obj/structure/fermenting_barrel, 30, time = 5 SECONDS)
new /datum/stack_recipe("fermenting barrel", /obj/structure/fermenting_barrel, 30, time = 5 SECONDS),
new /datum/stack_recipe("compost bin", /obj/machinery/compost_bin, 10, time = 1.5 SECONDS, one_per_turf = TRUE, on_floor = TRUE)
))
/obj/item/stack/sheet/wood
@@ -434,6 +436,28 @@ GLOBAL_LIST_INIT(cardboard_recipes, list (
recipes = GLOB.cardboard_recipes
return ..()
/*
* soil
*/
GLOBAL_LIST_INIT(soil_recipes, list (
new /datum/stack_recipe("pile of dirt", /obj/machinery/hydroponics/soil, 3, time = 1 SECONDS, one_per_turf = TRUE, on_floor = TRUE)
))
/obj/item/stack/sheet/soil
name = "soil"
desc = "A clump of fertile soil which can be used to make a plot."
singular_name = "soil clump"
icon = 'icons/obj/stacks/organic.dmi'
icon_state = "sheet-soil"
item_state = "sheet-soil"
origin_tech = "materials=1"
resistance_flags = FIRE_PROOF
merge_type = /obj/item/stack/sheet/soil
/obj/item/stack/sheet/soil/Initialize(loc, amt)
recipes = GLOB.soil_recipes
return ..()
/*
* Runed Metal
*/