From 01a0b1bac242548125289493676651bd4e0b645a Mon Sep 17 00:00:00 2001 From: Geeves Date: Sat, 16 Jan 2021 13:52:22 +0200 Subject: [PATCH] Garden Biogenerator (#10673) --- code/game/machinery/biogenerator.dm | 46 +++++++++++++++--- .../circuitboards/machinery/biogenerator.dm | 6 ++- html/changelogs/geeves-minified_generator.yml | 6 +++ icons/obj/biogenerator.dmi | Bin 1515 -> 2144 bytes maps/aurora/aurora-6_surface.dmm | 6 ++- 5 files changed, 56 insertions(+), 8 deletions(-) create mode 100644 html/changelogs/geeves-minified_generator.yml diff --git a/code/game/machinery/biogenerator.dm b/code/game/machinery/biogenerator.dm index 9540bd6ad69..3d4c5a435f6 100644 --- a/code/game/machinery/biogenerator.dm +++ b/code/game/machinery/biogenerator.dm @@ -2,7 +2,7 @@ name = "biogenerator" desc = "An advanced machine that can be used to convert grown plantlike biological material into various other bio-goods." icon = 'icons/obj/biogenerator.dmi' - icon_state = "biogen-stand" + icon_state = "biogen" density = 1 anchored = 1 use_power = 1 @@ -390,18 +390,18 @@ reagents = R R.my_atom = src beaker = new /obj/item/reagent_containers/glass/bottle(src) + update_icon() /obj/machinery/biogenerator/on_reagent_change() //When the reagents change, change the icon as well. update_icon() /obj/machinery/biogenerator/update_icon() if(!beaker) - icon_state = "biogen-empty" + icon_state = "[initial(icon_state)]-empty" else if(!processing) - icon_state = "biogen-stand" + icon_state = "[initial(icon_state)]-stand" else - icon_state = "biogen-work" - return + icon_state = "[initial(icon_state)]-work" /obj/machinery/biogenerator/attackby(var/obj/item/O as obj, var/mob/user as mob) if(default_deconstruction_screwdriver(user, O)) @@ -647,4 +647,38 @@ man_rating += P.rating build_eff = man_rating - eat_eff = bin_rating \ No newline at end of file + eat_eff = bin_rating + +/obj/machinery/biogenerator/small + icon_state = "biogen_small" + density = FALSE + capacity = 25 + + component_types = list( + /obj/item/circuitboard/biogenerator/small, + /obj/item/stock_parts/matter_bin, + /obj/item/stock_parts/manipulator + ) + +/obj/machinery/biogenerator/small/north + dir = NORTH + pixel_y = -13 + layer = MOB_LAYER + 0.1 + +/obj/machinery/biogenerator/small/south + dir = SOUTH + pixel_y = 20 + layer = OBJ_LAYER + 0.3 + +/obj/machinery/biogenerator/small/east + dir = EAST + pixel_x = -12 + +/obj/machinery/biogenerator/small/west + dir = WEST + pixel_x = 11 + +/obj/machinery/biogenerator/small/RefreshParts() + ..() + build_eff = max(build_eff - 1, 1) + eat_eff = max(eat_eff - 1, 1) \ No newline at end of file diff --git a/code/game/objects/items/weapons/circuitboards/machinery/biogenerator.dm b/code/game/objects/items/weapons/circuitboards/machinery/biogenerator.dm index 97380c20571..15f4c080b86 100644 --- a/code/game/objects/items/weapons/circuitboards/machinery/biogenerator.dm +++ b/code/game/objects/items/weapons/circuitboards/machinery/biogenerator.dm @@ -9,4 +9,8 @@ origin_tech = list(TECH_DATA = 2) req_components = list( "/obj/item/stock_parts/matter_bin" = 1, - "/obj/item/stock_parts/manipulator" = 1) \ No newline at end of file + "/obj/item/stock_parts/manipulator" = 1) + +/obj/item/circuitboard/biogenerator/small + name = T_BOARD("small biogenerator") + build_path = /obj/machinery/biogenerator/small \ No newline at end of file diff --git a/html/changelogs/geeves-minified_generator.yml b/html/changelogs/geeves-minified_generator.yml new file mode 100644 index 00000000000..414faa24d51 --- /dev/null +++ b/html/changelogs/geeves-minified_generator.yml @@ -0,0 +1,6 @@ +author: Geeves + +delete-after: True + +changes: + - rscadd: "Added a minified biogenerator to the surface garden. It is quite inefficient, but you can move into its tile." \ No newline at end of file diff --git a/icons/obj/biogenerator.dmi b/icons/obj/biogenerator.dmi index c65a9571b09735779bca888bec180c969d8d34c6..001a70bb14b486a93d5cb7f47abced084e9476d4 100644 GIT binary patch delta 1933 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