Merge pull request #9422 from VOREStation/upstream-merge-7762

[MIRROR] Plainleather & Tobacco
This commit is contained in:
Novacat
2020-12-07 22:37:38 -05:00
committed by Chompstation Bot
parent 9dd98526f6
commit cd1ad32cb2
10 changed files with 111 additions and 27 deletions

View File

@@ -83,6 +83,30 @@
icon = 'icons/mob/alien.dmi'
icon_state = "weed_extract"
//Step one - dehairing.
/obj/item/stack/animalhide/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(has_edge(W) || is_sharp(W))
//visible message on mobs is defined as visible_message(var/message, var/self_message, var/blind_message)
user.visible_message("<span class='notice'>\The [user] starts cutting hair off \the [src]</span>", "<span class='notice'>You start cutting the hair off \the [src]</span>", "You hear the sound of a knife rubbing against flesh")
if(do_after(user,50))
to_chat(user, "<span class='notice'>You cut the hair from this [src.singular_name]</span>")
//Try locating an exisitng stack on the tile and add to there if possible
for(var/obj/item/stack/hairlesshide/HS in user.loc)
if(HS.amount < 50 && istype(HS, process_type))
HS.amount++
src.use(1)
return
//If it gets to here it means it did not find a suitable stack on the tile.
var/obj/item/stack/HS = new process_type(usr.loc)
if(istype(HS))
HS.amount = 1
src.use(1)
else
..()
//Step two - washing..... it's actually in washing machine code, and ere.
/obj/item/stack/hairlesshide
name = "hairless hide"
desc = "This hide was stripped of it's hair, but still needs tanning."
@@ -106,6 +130,19 @@
return
/obj/item/stack/hairlesshide/proc/rapidcure(var/stacknum = 1)
stacknum = min(stacknum, amount)
while(stacknum)
var/obj/item/stack/wetleather/I = new wet_type(get_turf(src))
if(istype(I))
I.dry()
use(1)
stacknum -= 1
//Step three - drying
/obj/item/stack/wetleather
name = "wet leather"
desc = "This leather has been cleaned but still needs to be dried."
@@ -119,31 +156,6 @@
var/dry_type = /obj/item/stack/material/leather
//Step one - dehairing.
/obj/item/stack/animalhide/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(has_edge(W) || is_sharp(W))
//visible message on mobs is defined as visible_message(var/message, var/self_message, var/blind_message)
usr.visible_message("<span class='notice'>\The [usr] starts cutting hair off \the [src]</span>", "<span class='notice'>You start cutting the hair off \the [src]</span>", "You hear the sound of a knife rubbing against flesh")
if(do_after(user,50))
to_chat(usr, "<span class='notice'>You cut the hair from this [src.singular_name]</span>")
//Try locating an exisitng stack on the tile and add to there if possible
for(var/obj/item/stack/hairlesshide/HS in usr.loc)
if(HS.amount < 50 && istype(HS, process_type))
HS.amount++
src.use(1)
return
//If it gets to here it means it did not find a suitable stack on the tile.
var/obj/item/stack/HS = new process_type(usr.loc)
if(istype(HS))
HS.amount = 1
src.use(1)
else
..()
//Step two - washing..... it's actually in washing machine code.
//Step three - drying
/obj/item/stack/wetleather/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume)
..()
if(exposed_temperature >= drying_threshold_temperature)

View File

@@ -451,6 +451,7 @@
busy = 0
O.clean_blood()
O.water_act(rand(1,10))
user.visible_message( \
"<span class='notice'>[user] washes \a [I] using \the [src].</span>", \
"<span class='notice'>You wash \a [I] using \the [src].</span>")

View File

@@ -176,6 +176,9 @@ GLOBAL_LIST_BOILERPLATE(all_seed_packs, /obj/item/seeds)
/obj/item/seeds/towermycelium
seed_type = "towercap"
/obj/item/seeds/redtowermycelium
seed_type = "redcap"
/obj/item/seeds/glowshroom
seed_type = "glowshroom"

View File

@@ -28,4 +28,4 @@
kitchen_tag = "egg-plant"
mutants = null
chems = list("nutriment" = list(1,5), "egg" = list(3,12))
has_item_product = /obj/item/weapon/reagent_containers/food/snacks/egg/purple
has_item_product = /obj/item/weapon/reagent_containers/food/snacks/egg/purple

View File

@@ -131,7 +131,7 @@
seed_name = "tower cap"
display_name = "tower caps"
chems = list("woodpulp" = list(10,1))
mutants = null
mutants = list("redcap")
has_item_product = /obj/item/stack/material/log
/datum/seed/mushroom/towercap/New()
@@ -142,6 +142,18 @@
set_trait(TRAIT_PLANT_COLOUR,"#857F41")
set_trait(TRAIT_PLANT_ICON,"mushroom8")
/datum/seed/mushroom/towercap/red
name = "redcap"
seed_name = "red cap"
display_name = "red caps"
chems = list("woodpulp" = list(10,1), "tannin" = list(1,10))
mutants = null
has_item_product = null
/datum/seed/mushroom/towercap/red/New()
..()
set_trait(TRAIT_PRODUCT_COLOUR,"#b81414")
/datum/seed/mushroom/glowshroom
name = "glowshroom"
seed_name = "glowshroom"

View File

@@ -0,0 +1,38 @@
//Tobacco/varieties.
/datum/seed/tobacco
name = "tobacco"
seed_name = "tobacco"
display_name = "tobacco"
kitchen_tag = "tobacco"
mutants = list("stimbush")
chems = list("nutriment" = list(1,15), "nicotine" = list(1,20))
/datum/seed/tobacco/New()
..()
set_trait(TRAIT_HARVEST_REPEAT,1)
set_trait(TRAIT_MATURATION,6)
set_trait(TRAIT_PRODUCTION,6)
set_trait(TRAIT_YIELD,6)
set_trait(TRAIT_POTENCY,5)
set_trait(TRAIT_PRODUCT_ICON,"leafy")
set_trait(TRAIT_PRODUCT_COLOUR,"#6f5648")
set_trait(TRAIT_PLANT_ICON,"ambrosia")
set_trait(TRAIT_IDEAL_LIGHT, 8)
/datum/seed/tobacco/stimbush
name = "stimbush"
seed_name = "stim-bush"
display_name = "stim-bush"
chems = list("nutriment" = list(1,10), "hyperzine" = list(1,10), "synaptizine" = list(1,5))
/datum/seed/tobacco/stimbush/New()
..()
set_trait(TRAIT_HARVEST_REPEAT,1)
set_trait(TRAIT_MATURATION,6)
set_trait(TRAIT_PRODUCTION,6)
set_trait(TRAIT_YIELD,6)
set_trait(TRAIT_POTENCY,5)
set_trait(TRAIT_PRODUCT_ICON,"leafy")
set_trait(TRAIT_PRODUCT_COLOUR,"#e08a1e")
set_trait(TRAIT_PLANT_ICON,"ambrosia")
set_trait(TRAIT_IDEAL_LIGHT, 10)

View File

@@ -1051,6 +1051,7 @@ var/list/name_to_material
//TODO PLACEHOLDERS:
/datum/material/leather
name = MAT_LEATHER
display_name = "plainleather"
icon_colour = "#5C4831"
stack_type = /obj/item/stack/material/leather
stack_origin_tech = list(TECH_MATERIAL = 2, TECH_BIO = 2)

View File

@@ -376,6 +376,22 @@
name = "Robust Harvest"
id = "robustharvest"
/datum/reagent/toxin/fertilizer/tannin
name = "tannin"
id = "tannin"
description = "A chemical found in some plants as a natural pesticide. It may also aid in regulating growth."
taste_description = "puckering"
taste_mult = 1.2
reagent_state = LIQUID
strength = 1.5
color = "#e67819"
/datum/reagent/toxin/fertilizer/tannin/touch_obj(var/obj/O, var/volume)
if(istype(O, /obj/item/stack/hairlesshide))
var/obj/item/stack/hairlesshide/HH = O
HH.rapidcure(round(volume))
..()
/datum/reagent/toxin/plantbgone
name = "Plant-B-Gone"
id = "plantbgone"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.9 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View File

@@ -2409,6 +2409,7 @@
#include "code\modules\hydroponics\seedtypes\surik.dm"
#include "code\modules\hydroponics\seedtypes\telriis.dm"
#include "code\modules\hydroponics\seedtypes\thaadra.dm"
#include "code\modules\hydroponics\seedtypes\tobacco.dm"
#include "code\modules\hydroponics\seedtypes\tomatoes.dm"
#include "code\modules\hydroponics\seedtypes\vale.dm"
#include "code\modules\hydroponics\seedtypes\vanilla.dm"