Watering cans for botany (#67712)

* Watering cans for botany

* Clean up weird bugs by just coding the feature out

* 70u for the old can and /// like it should be

* Updated can icons courtesy of Wallem

* Swaps botany buckets for watering can on maps

* A line
This commit is contained in:
GuillaumePrata
2022-06-28 10:26:00 -04:00
committed by GitHub
parent afc099ab73
commit f4512c98f5
16 changed files with 112 additions and 34 deletions
@@ -11419,7 +11419,7 @@
pixel_y = 30
},
/obj/structure/reagent_dispensers/watertank,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/cobweb,
/obj/structure/cable,
@@ -49658,7 +49658,7 @@
/obj/structure/rack,
/obj/item/storage/bag/plants/portaseeder,
/obj/item/cultivator,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/item/plant_analyzer,
/obj/structure/sign/poster/contraband/kudzu{
pixel_y = -32
@@ -54382,7 +54382,7 @@
/obj/effect/turf_decal/delivery/white{
color = "#52B4E9"
},
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/turf/open/floor/iron/dark/textured,
/area/station/service/hydroponics)
"oJx" = (
@@ -62062,7 +62062,7 @@
/obj/effect/turf_decal/delivery/white{
color = "#52B4E9"
},
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/turf/open/floor/iron/dark/textured,
/area/station/service/hydroponics)
"qOk" = (
@@ -64667,7 +64667,7 @@
req_access = list("kitchen")
},
/obj/item/storage/bag/plants,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/turf/open/floor/iron,
/area/station/service/kitchen)
"rES" = (
@@ -71736,7 +71736,7 @@
/obj/item/wirecutters,
/obj/effect/turf_decal/box,
/obj/machinery/firealarm/directional/north,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/turf/open/floor/iron,
/area/station/service/hydroponics)
"tsU" = (
@@ -73569,7 +73569,7 @@
/area/station/science/genetics)
"tPD" = (
/obj/machinery/biogenerator,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/turf/open/floor/iron/dark,
/area/station/service/hydroponics/garden)
"tPE" = (
@@ -86451,7 +86451,7 @@
/obj/effect/turf_decal/trimline/green/end{
dir = 1
},
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/effect/turf_decal/trimline/green/mid_joiner{
dir = 8
},
@@ -10530,7 +10530,7 @@
/obj/item/hatchet,
/obj/item/cultivator,
/obj/item/crowbar,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/item/plant_analyzer,
/obj/machinery/firealarm/directional/west,
/obj/effect/turf_decal/tile/green,
@@ -21004,7 +21004,7 @@
},
/obj/structure/reagent_dispensers/watertank/high,
/obj/effect/turf_decal/stripes/line,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/turf/open/floor/iron/half{
dir = 1
},
@@ -34733,7 +34733,7 @@
/obj/structure/closet/crate/hydroponics,
/obj/item/shovel/spade,
/obj/item/wrench,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/item/wirecutters,
/obj/effect/turf_decal/stripes/line{
dir = 6
@@ -58447,7 +58447,7 @@
/obj/item/hatchet,
/obj/item/crowbar,
/obj/item/plant_analyzer,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/effect/turf_decal/tile/green,
/obj/effect/turf_decal/tile/green{
dir = 4
+5 -5
View File
@@ -5528,7 +5528,7 @@
dir = 8;
pixel_x = 11
},
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/structure/cable,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
@@ -9877,7 +9877,7 @@
"cXg" = (
/obj/structure/reagent_dispensers/watertank/high,
/obj/structure/railing,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/effect/turf_decal/bot,
/turf/open/floor/iron,
/area/station/service/hydroponics)
@@ -28457,7 +28457,7 @@
/obj/effect/turf_decal/siding/green{
dir = 4
},
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/turf/open/floor/iron/dark,
/area/station/service/hydroponics/garden)
"ibm" = (
@@ -29503,7 +29503,7 @@
"ipL" = (
/obj/structure/closet/crate/hydroponics,
/obj/item/crowbar/red,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/item/circuitboard/machine/biogenerator,
/obj/item/wirecutters,
/obj/item/wrench,
@@ -62053,7 +62053,7 @@
/area/station/tcommsat/computer)
"rLs" = (
/obj/structure/reagent_dispensers/watertank/high,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/effect/turf_decal/tile/green{
dir = 1
},
+9 -9
View File
@@ -13266,7 +13266,7 @@
"eUi" = (
/obj/structure/table,
/obj/item/storage/bag/plants,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/machinery/light/directional/north,
/obj/effect/turf_decal/trimline/brown/warning{
dir = 10
@@ -16378,7 +16378,7 @@
/obj/structure/closet/crate/hydroponics,
/obj/item/shovel/spade,
/obj/item/wrench,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/item/cultivator,
/obj/item/wirecutters,
/obj/machinery/airalarm/directional/south,
@@ -16425,7 +16425,7 @@
/obj/item/hatchet,
/obj/item/cultivator,
/obj/item/crowbar,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/item/plant_analyzer,
/obj/effect/turf_decal/stripes/line{
dir = 1
@@ -21276,7 +21276,7 @@
dir = 4
},
/obj/structure/reagent_dispensers/watertank/high,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/effect/turf_decal/stripes/line,
/turf/open/floor/iron,
/area/station/service/hydroponics)
@@ -29603,7 +29603,7 @@
/obj/item/cultivator,
/obj/item/crowbar,
/obj/item/plant_analyzer,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/structure/table/glass,
/obj/effect/turf_decal/trimline/green/filled/line{
dir = 10
@@ -31077,7 +31077,7 @@
/obj/item/storage/bag/plants/portaseeder,
/obj/item/plant_analyzer,
/obj/item/cultivator,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/structure/rack,
/obj/item/vending_refill/hydroseeds,
/turf/open/floor/plating,
@@ -32331,7 +32331,7 @@
/area/station/medical/break_room)
"lxJ" = (
/obj/structure/reagent_dispensers/watertank/high,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/effect/turf_decal/stripes/line,
/obj/machinery/light/directional/north,
/turf/open/floor/iron,
@@ -53502,7 +53502,7 @@
dir = 8;
pixel_x = 11
},
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/effect/turf_decal/trimline/green/filled/line{
dir = 4
},
@@ -57557,7 +57557,7 @@
/obj/item/crowbar,
/obj/machinery/light/directional/north,
/obj/item/plant_analyzer,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/effect/turf_decal/stripes/line,
/turf/open/floor/iron,
/area/station/service/hydroponics/garden)
+5 -5
View File
@@ -4346,7 +4346,7 @@
dir = 4;
pixel_x = -12
},
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/turf/open/floor/iron,
/area/station/security/prison/garden)
"bHP" = (
@@ -4489,7 +4489,7 @@
dir = 1
},
/obj/structure/reagent_dispensers/watertank/high,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/turf/open/floor/iron/dark,
/area/station/service/hydroponics)
"bJp" = (
@@ -7744,7 +7744,7 @@
"cIG" = (
/obj/structure/window/reinforced/spawner/north,
/obj/structure/reagent_dispensers/watertank/high,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/effect/turf_decal/trimline/green/filled/line{
dir = 9
},
@@ -47373,7 +47373,7 @@
/obj/item/hatchet,
/obj/item/plant_analyzer,
/obj/item/cultivator,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/machinery/light/directional/north,
/obj/effect/turf_decal/trimline/neutral/filled/line{
dir = 1
@@ -50899,7 +50899,7 @@
},
/obj/machinery/light/directional/north,
/obj/structure/reagent_dispensers/watertank/high,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/turf/open/floor/iron/dark,
/area/station/service/hydroponics)
"rdO" = (
+1 -1
View File
@@ -1485,7 +1485,7 @@
/obj/item/shovel/spade,
/obj/item/cultivator,
/obj/item/plant_analyzer,
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/obj/effect/decal/cleanable/dirt/dust,
/obj/effect/turf_decal/tile/green{
dir = 1
+1 -1
View File
@@ -128,7 +128,7 @@
/turf/open/floor/holofloor,
/area/template_noop)
"X" = (
/obj/item/reagent_containers/glass/bucket,
/obj/item/reagent_containers/glass/watering_can,
/turf/open/floor/holofloor/grass,
/area/template_noop)
"Z" = (
+6 -1
View File
@@ -20,13 +20,18 @@
/datum/job_department/service,
)
family_heirlooms = list(/obj/item/cultivator, /obj/item/reagent_containers/glass/bucket, /obj/item/toy/plush/beeplushie)
family_heirlooms = list(
/obj/item/cultivator,
/obj/item/reagent_containers/glass/watering_can/wood,
/obj/item/toy/plush/beeplushie,
)
mail_goodies = list(
/obj/item/reagent_containers/glass/bottle/mutagen = 20,
/obj/item/reagent_containers/glass/bottle/saltpetre = 20,
/obj/item/reagent_containers/glass/bottle/diethylamine = 20,
/obj/item/gun/energy/floragun = 10,
/obj/item/reagent_containers/glass/watering_can/advanced = 10,
/obj/effect/spawner/random/food_or_drink/seed_rare = 5,// These are strong, rare seeds, so use sparingly.
/obj/item/food/monkeycube/bee = 2
)
@@ -0,0 +1,47 @@
/obj/item/reagent_containers/glass/watering_can
name = "watering can"
desc = "It's a watering can. It is scientifically proved that using a watering can to simulate rain increases plant happiness!"
icon = 'icons/obj/hydroponics/equipment.dmi'
icon_state = "watering_can"
inhand_icon_state = "watering_can"
lefthand_file = 'icons/mob/inhands/equipment/hydroponics_lefthand.dmi'
righthand_file = 'icons/mob/inhands/equipment/hydroponics_righthand.dmi'
custom_materials = list(/datum/material/iron = 200)
w_class = WEIGHT_CLASS_NORMAL
volume = 100
amount_per_transfer_from_this = 20
possible_transfer_amounts = list(20,100)
/obj/item/reagent_containers/glass/watering_can/wood
name = "wood watering can"
desc = "An old metal-made watering can but shoddily painted to look like it was made of wood for some dubious reason..."
icon_state = "watering_can_wood"
inhand_icon_state = "watering_can_wood"
volume = 70
possible_transfer_amounts = list(20,70)
/obj/item/reagent_containers/glass/watering_can/advanced
desc = "Everything a botanist would want in a watering can. This marvel of technology generates its own water!"
name = "advanced watering can"
icon_state = "adv_watering_can"
inhand_icon_state = "adv_watering_can"
custom_materials = list(/datum/material/iron = 2500, /datum/material/glass = 200)
list_reagents = list(/datum/reagent/water = 100)
///Refill rate for the watering can
var/refill_rate = 5
///Determins what reagent to use for refilling
var/datum/reagent/refill_reagent = /datum/reagent/water
/obj/item/reagent_containers/glass/watering_can/advanced/Initialize(mapload)
. = ..()
START_PROCESSING(SSobj, src)
/obj/item/reagent_containers/glass/watering_can/advanced/process(delta_time)
///How much to refill
var/refill_add = min(volume - reagents.total_volume, refill_rate * delta_time)
if(refill_add > 0)
reagents.add_reagent(refill_reagent, refill_add)
/obj/item/reagent_containers/glass/watering_can/advanced/Destroy()
STOP_PROCESSING(SSobj, src)
return ..()
@@ -11,6 +11,15 @@
category = list("initial","Tools","Tool Designs")
departmental_flags = DEPARTMENT_BITFLAG_SERVICE
/datum/design/watering_can
name = "Watering Can"
id = "watering_can"
build_type = AUTOLATHE | PROTOLATHE | AWAY_LATHE
materials = list(/datum/material/iron = 200)
build_path = /obj/item/reagent_containers/glass/watering_can
category = list("initial","Tools","Tool Designs")
departmental_flags = DEPARTMENT_BITFLAG_SERVICE
/datum/design/mop
name = "Mop"
id = "mop"
@@ -439,6 +439,20 @@
category = list("Equipment")
departmental_flags = DEPARTMENT_BITFLAG_SERVICE
/////////////////////////////////////////
/////////////Hydroponics/////////////////
/////////////////////////////////////////
/datum/design/adv_watering_can
name = "Advanced Watering Can"
id = "adv_watering_can"
build_type = PROTOLATHE | AWAY_LATHE
materials = list(/datum/material/iron = 2500, /datum/material/glass = 200)
build_path = /obj/item/reagent_containers/glass/watering_can/advanced
category = list("initial","Tools","Tool Designs")
departmental_flags = DEPARTMENT_BITFLAG_SERVICE
/////////////////////////////////////////
/////////////Holobarriers////////////////
/////////////////////////////////////////
@@ -64,6 +64,7 @@
"turbine_part_compressor",
"turbine_part_rotor",
"turbine_part_stator",
"watering_can",
)
/datum/techweb_node/mmi
@@ -1328,6 +1329,7 @@
"hydro_tray",
"portaseeder",
"seed_extractor",
"adv_watering_can",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 4000)
required_experiments = list(/datum/experiment/scanning/random/plants/wild)
Binary file not shown.

Before

Width:  |  Height:  |  Size: 804 B

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 782 B

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 32 KiB

+1
View File
@@ -4031,6 +4031,7 @@
#include "code\modules\reagents\reagent_containers\pill.dm"
#include "code\modules\reagents\reagent_containers\spray.dm"
#include "code\modules\reagents\reagent_containers\syringes.dm"
#include "code\modules\reagents\reagent_containers\watering_can.dm"
#include "code\modules\reagents\withdrawal\_addiction.dm"
#include "code\modules\reagents\withdrawal\generic_addictions.dm"
#include "code\modules\recycling\conveyor.dm"