Revert "PLASE"

This reverts commit 8af225e6e3.
This commit is contained in:
Fermi
2019-11-24 03:06:08 +00:00
parent aeb8606ce0
commit ba4fa1ef67
2145 changed files with 1387321 additions and 5257 deletions
+165
View File
@@ -0,0 +1,165 @@
// Banana
/obj/item/seeds/banana
name = "pack of banana seeds"
desc = "They're seeds that grow into banana trees. When grown, keep away from clown."
icon_state = "seed-banana"
species = "banana"
plantname = "Banana Tree"
product = /obj/item/reagent_containers/food/snacks/grown/banana
lifespan = 50
endurance = 30
growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi'
icon_dead = "banana-dead"
genes = list(/datum/plant_gene/trait/slip, /datum/plant_gene/trait/repeated_harvest)
mutatelist = list(/obj/item/seeds/banana/mime, /obj/item/seeds/banana/bluespace, /obj/item/seeds/banana/exotic_banana)
reagents_add = list("banana" = 0.1, "potassium" = 0.1, "vitamin" = 0.04, "nutriment" = 0.02)
/obj/item/reagent_containers/food/snacks/grown/banana
seed = /obj/item/seeds/banana
name = "banana"
desc = "It's an excellent prop for a clown."
icon_state = "banana"
item_state = "banana"
trash = /obj/item/grown/bananapeel
filling_color = "#FFFF00"
bitesize = 5
foodtype = FRUIT
juice_results = list("banana" = 0)
distill_reagent = "bananahonk"
/obj/item/reagent_containers/food/snacks/grown/banana/suicide_act(mob/user)
user.visible_message("<span class='suicide'>[user] is aiming [src] at [user.p_them()]self! It looks like [user.p_theyre()] trying to commit suicide!</span>")
playsound(loc, 'sound/items/bikehorn.ogg', 50, 1, -1)
sleep(25)
if(!user)
return (OXYLOSS)
user.say("BANG!", forced = "banana")
sleep(25)
if(!user)
return (OXYLOSS)
user.visible_message("<B>[user]</B> laughs so hard they begin to suffocate!")
return (OXYLOSS)
//Banana Peel
/obj/item/grown/bananapeel
seed = /obj/item/seeds/banana
name = "banana peel"
desc = "A peel from a banana."
lefthand_file = 'icons/mob/inhands/misc/food_lefthand.dmi'
righthand_file = 'icons/mob/inhands/misc/food_righthand.dmi'
icon_state = "banana_peel"
item_state = "banana_peel"
w_class = WEIGHT_CLASS_TINY
throwforce = 0
throw_speed = 3
throw_range = 7
/obj/item/grown/bananapeel/suicide_act(mob/user)
user.visible_message("<span class='suicide'>[user] is deliberately slipping on [src]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
playsound(loc, 'sound/misc/slip.ogg', 50, 1, -1)
return (BRUTELOSS)
// Mimana - invisible sprites are totally a feature!
/obj/item/seeds/banana/mime
name = "pack of mimana seeds"
desc = "They're seeds that grow into mimana trees. When grown, keep away from mime."
icon_state = "seed-mimana"
species = "mimana"
plantname = "Mimana Tree"
product = /obj/item/reagent_containers/food/snacks/grown/banana/mime
growthstages = 4
mutatelist = list()
reagents_add = list("nothing" = 0.1, "mutetoxin" = 0.1, "nutriment" = 0.02)
rarity = 15
/obj/item/reagent_containers/food/snacks/grown/banana/mime
seed = /obj/item/seeds/banana/mime
name = "mimana"
desc = "It's an excellent prop for a mime."
icon_state = "mimana"
trash = /obj/item/grown/bananapeel/mimanapeel
filling_color = "#FFFFEE"
distill_reagent = "silencer"
/obj/item/grown/bananapeel/mimanapeel
seed = /obj/item/seeds/banana/mime
name = "mimana peel"
desc = "A mimana peel."
icon_state = "mimana_peel"
item_state = "mimana_peel"
// Bluespace Banana
/obj/item/seeds/banana/bluespace
name = "pack of bluespace banana seeds"
desc = "They're seeds that grow into bluespace banana trees. When grown, keep away from bluespace clown."
icon_state = "seed-banana-blue"
species = "bluespacebanana"
icon_grow = "banana-grow"
plantname = "Bluespace Banana Tree"
product = /obj/item/reagent_containers/food/snacks/grown/banana/bluespace
mutatelist = list()
genes = list(/datum/plant_gene/trait/slip, /datum/plant_gene/trait/teleport, /datum/plant_gene/trait/repeated_harvest)
reagents_add = list("bluespace" = 0.2, "banana" = 0.1, "vitamin" = 0.04, "nutriment" = 0.02)
rarity = 30
/obj/item/reagent_containers/food/snacks/grown/banana/bluespace
seed = /obj/item/seeds/banana/bluespace
name = "bluespace banana"
icon_state = "banana_blue"
item_state = "bluespace_peel"
trash = /obj/item/grown/bananapeel/bluespace
filling_color = "#0000FF"
tastes = list("banana" = 1)
wine_power = 60
wine_flavor = "slippery hypercubes"
/obj/item/grown/bananapeel/bluespace
seed = /obj/item/seeds/banana/bluespace
name = "bluespace banana peel"
desc = "A peel from a bluespace banana."
icon_state = "banana_peel_blue"
//Banana Spider.
/obj/item/seeds/banana/exotic_banana
name = "pack of exotic banana seeds"
desc = "They're seeds that grow into banana trees. However, those bananas might be alive."
icon_state = "seed_exoticbanana"
species = "exoticbanana"
icon_grow = "banana-grow"
plantname = "Exotic Banana Tree"
product = /obj/item/reagent_containers/food/snacks/grown/banana/banana_spider_spawnable
mutatelist = list()
genes = list(/datum/plant_gene/trait/slip)
/obj/item/reagent_containers/food/snacks/grown/banana/banana_spider_spawnable
seed = /obj/item/seeds/banana/exotic_banana
name = "banana spider"
desc = "You do not know what it is, but you can bet the clown would love it."
icon_state = "exoticbanana"
list_reagents = list("nutriment" = 3, "vitamin" = 2)
foodtype = GROSS | MEAT | RAW | FRUIT
grind_results = list("blood" = 20, "liquidgibs" = 5)
var/awakening = 0
/obj/item/reagent_containers/food/snacks/grown/banana/banana_spider_spawnable/attack_self(mob/user)
if(awakening || isspaceturf(user.loc))
return
to_chat(user, "<span class='notice'>You decide to wake up the banana spider...</span>")
awakening = 1
spawn(30)
if(!QDELETED(src))
var/mob/living/simple_animal/banana_spider/S = new /mob/living/simple_animal/banana_spider(get_turf(src.loc))
S.speed += round(10 / seed.potency)
S.visible_message("<span class='notice'>The banana spider chitters as it stretches its legs.</span>")
qdel(src)
// Other
/obj/item/grown/bananapeel/specialpeel //used by /obj/item/clothing/shoes/clown_shoes/banana_shoes
name = "synthesized banana peel"
desc = "A synthetic banana peel."
/obj/item/grown/bananapeel/specialpeel/Initialize(AM)
. = ..()
AddComponent(/datum/component/slippery, 40)
+86
View File
@@ -0,0 +1,86 @@
// Corn
/obj/item/seeds/corn
name = "pack of corn seeds"
desc = "I don't mean to sound corny..."
icon_state = "seed-corn"
species = "corn"
plantname = "Corn Stalks"
product = /obj/item/reagent_containers/food/snacks/grown/corn
maturation = 8
potency = 20
growthstages = 3
growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi'
icon_grow = "corn-grow" // Uses one growth icons set for all the subtypes
icon_dead = "corn-dead" // Same for the dead icon
mutatelist = list(/obj/item/seeds/corn/snapcorn)
reagents_add = list("cornoil" = 0.2, "vitamin" = 0.04, "nutriment" = 0.1)
/obj/item/reagent_containers/food/snacks/grown/corn
seed = /obj/item/seeds/corn
name = "ear of corn"
desc = "Needs some butter!"
icon_state = "corn"
cooked_type = /obj/item/reagent_containers/food/snacks/popcorn
filling_color = "#FFFF00"
trash = /obj/item/grown/corncob
bitesize_mod = 2
foodtype = VEGETABLES
juice_results = list("corn_starch" = 0)
tastes = list("corn" = 1)
distill_reagent = "whiskey"
/obj/item/grown/corncob
name = "corn cob"
desc = "A reminder of meals gone by."
icon_state = "corncob"
item_state = "corncob"
w_class = WEIGHT_CLASS_TINY
throwforce = 0
throw_speed = 3
throw_range = 7
/obj/item/grown/corncob/attackby(obj/item/grown/W, mob/user, params)
if(W.get_sharpness())
to_chat(user, "<span class='notice'>You use [W] to fashion a pipe out of the corn cob!</span>")
new /obj/item/clothing/mask/cigarette/pipe/cobpipe (user.loc)
qdel(src)
else
return ..()
// Snapcorn
/obj/item/seeds/corn/snapcorn
name = "pack of snapcorn seeds"
desc = "Oh snap!"
icon_state = "seed-snapcorn"
species = "snapcorn"
plantname = "Snapcorn Stalks"
product = /obj/item/grown/snapcorn
mutatelist = list()
rarity = 10
/obj/item/grown/snapcorn
seed = /obj/item/seeds/corn/snapcorn
name = "snap corn"
desc = "A cob with snap pops."
icon_state = "snapcorn"
item_state = "corncob"
w_class = WEIGHT_CLASS_TINY
throwforce = 0
throw_speed = 3
throw_range = 7
var/snap_pops = 1
/obj/item/grown/snapcorn/add_juice()
..()
snap_pops = max(round(seed.potency/8), 1)
/obj/item/grown/snapcorn/attack_self(mob/user)
..()
to_chat(user, "<span class='notice'>You pick a snap pop from the cob.</span>")
var/obj/item/toy/snappop/S = new /obj/item/toy/snappop(user.loc)
if(ishuman(user))
user.put_in_hands(S)
snap_pops -= 1
if(!snap_pops)
new /obj/item/grown/corncob(user.loc)
qdel(src)
+1 -1
View File
@@ -76,4 +76,4 @@
throw_range = 3
attack_verb = list("bashed", "battered", "bludgeoned", "whacked")
cotton_type = /obj/item/stack/sheet/cotton/durathread
cotton_name = "raw durathread"
cotton_name = "raw durathread"
+77
View File
@@ -0,0 +1,77 @@
// Watermelon
/obj/item/seeds/watermelon
name = "pack of watermelon seeds"
desc = "These seeds grow into watermelon plants."
icon_state = "seed-watermelon"
species = "watermelon"
plantname = "Watermelon Vines"
product = /obj/item/reagent_containers/food/snacks/grown/watermelon
lifespan = 50
endurance = 40
growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi'
icon_dead = "watermelon-dead"
genes = list(/datum/plant_gene/trait/repeated_harvest)
mutatelist = list(/obj/item/seeds/watermelon/holy)
reagents_add = list("water" = 0.2, "vitamin" = 0.04, "nutriment" = 0.2)
/obj/item/seeds/watermelon/suicide_act(mob/user)
user.visible_message("<span class='suicide'>[user] is swallowing [src]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
user.gib()
new product(drop_location())
qdel(src)
return MANUAL_SUICIDE
/obj/item/reagent_containers/food/snacks/grown/watermelon
seed = /obj/item/seeds/watermelon
name = "watermelon"
desc = "It's full of watery goodness."
icon_state = "watermelon"
slice_path = /obj/item/reagent_containers/food/snacks/watermelonslice
slices_num = 5
dried_type = null
w_class = WEIGHT_CLASS_NORMAL
filling_color = "#008000"
bitesize_mod = 3
foodtype = FRUIT
juice_results = list("watermelonjuice" = 0)
wine_power = 40
// Holymelon
/obj/item/seeds/watermelon/holy
name = "pack of holymelon seeds"
desc = "These seeds grow into holymelon plants."
icon_state = "seed-holymelon"
species = "holymelon"
plantname = "Holy Melon Vines"
product = /obj/item/reagent_containers/food/snacks/grown/holymelon
mutatelist = list()
reagents_add = list("holywater" = 0.2, "vitamin" = 0.04, "nutriment" = 0.1)
rarity = 20
/obj/item/reagent_containers/food/snacks/grown/holymelon
seed = /obj/item/seeds/watermelon/holy
name = "holymelon"
desc = "The water within this melon has been blessed by some deity that's particularly fond of watermelon."
icon_state = "holymelon"
filling_color = "#FFD700"
dried_type = null
wine_power = 70 //Water to wine, baby.
wine_flavor = "divinity"
/*
/obj/item/reagent_containers/food/snacks/grown/holymelon/Initialize()
. = ..()
var/uses = 1
if(seed)
uses = round(seed.potency / 20)
AddComponent(/datum/component/anti_magic, TRUE, TRUE, FALSE, ITEM_SLOT_HANDS, uses, TRUE, CALLBACK(src, .proc/block_magic), CALLBACK(src, .proc/expire)) //deliver us from evil o melon god
/obj/item/reagent_containers/food/snacks/grown/holymelon/proc/block_magic(mob/user, major)
if(major)
to_chat(user, "<span class='warning'>[src] hums slightly, and seems to decay a bit.</span>")
/obj/item/reagent_containers/food/snacks/grown/holymelon/proc/expire(mob/user)
to_chat(user, "<span class='warning'>[src] rapidly turns into ash!</span>")
qdel(src)
new /obj/effect/decal/cleanable/ash(drop_location())
*/
+67
View File
@@ -0,0 +1,67 @@
// Potato
/obj/item/seeds/potato
name = "pack of potato seeds"
desc = "Boil 'em! Mash 'em! Stick 'em in a stew!"
icon_state = "seed-potato"
species = "potato"
plantname = "Potato Plants"
product = /obj/item/reagent_containers/food/snacks/grown/potato
lifespan = 30
maturation = 10
production = 1
yield = 4
growthstages = 4
growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi'
icon_grow = "potato-grow"
icon_dead = "potato-dead"
genes = list(/datum/plant_gene/trait/battery)
mutatelist = list(/obj/item/seeds/potato/sweet)
reagents_add = list("vitamin" = 0.04, "nutriment" = 0.1)
/obj/item/reagent_containers/food/snacks/grown/potato
seed = /obj/item/seeds/potato
name = "potato"
desc = "Boil 'em! Mash 'em! Stick 'em in a stew!"
icon_state = "potato"
filling_color = "#E9967A"
bitesize = 100
foodtype = VEGETABLES
juice_results = list("potato" = 0)
distill_reagent = "vodka"
/obj/item/reagent_containers/food/snacks/grown/potato/wedges
name = "potato wedges"
desc = "Slices of neatly cut potato."
icon_state = "potato_wedges"
filling_color = "#E9967A"
bitesize = 100
/obj/item/reagent_containers/food/snacks/grown/potato/attackby(obj/item/W, mob/user, params)
if(W.get_sharpness())
to_chat(user, "<span class='notice'>You cut the potato into wedges with [W].</span>")
var/obj/item/reagent_containers/food/snacks/grown/potato/wedges/Wedges = new /obj/item/reagent_containers/food/snacks/grown/potato/wedges
remove_item_from_storage(user)
qdel(src)
user.put_in_hands(Wedges)
else
return ..()
// Sweet Potato
/obj/item/seeds/potato/sweet
name = "pack of sweet potato seeds"
desc = "These seeds grow into sweet potato plants."
icon_state = "seed-sweetpotato"
species = "sweetpotato"
plantname = "Sweet Potato Plants"
product = /obj/item/reagent_containers/food/snacks/grown/potato/sweet
mutatelist = list()
reagents_add = list("vitamin" = 0.1, "sugar" = 0.1, "nutriment" = 0.1)
/obj/item/reagent_containers/food/snacks/grown/potato/sweet
seed = /obj/item/seeds/potato/sweet
name = "sweet potato"
desc = "It's sweet."
icon_state = "sweetpotato"
distill_reagent = "sbiten"
+60
View File
@@ -0,0 +1,60 @@
// Pumpkin
/obj/item/seeds/pumpkin
name = "pack of pumpkin seeds"
desc = "These seeds grow into pumpkin vines."
icon_state = "seed-pumpkin"
species = "pumpkin"
plantname = "Pumpkin Vines"
product = /obj/item/reagent_containers/food/snacks/grown/pumpkin
lifespan = 50
endurance = 40
growthstages = 3
growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi'
icon_grow = "pumpkin-grow"
icon_dead = "pumpkin-dead"
genes = list(/datum/plant_gene/trait/repeated_harvest)
mutatelist = list(/obj/item/seeds/pumpkin/blumpkin)
reagents_add = list("vitamin" = 0.04, "nutriment" = 0.2)
/obj/item/reagent_containers/food/snacks/grown/pumpkin
seed = /obj/item/seeds/pumpkin
name = "pumpkin"
desc = "It's large and scary."
icon_state = "pumpkin"
filling_color = "#FFA500"
bitesize_mod = 2
foodtype = FRUIT
juice_results = list("pumpkinjuice" = 0)
wine_power = 20
/obj/item/reagent_containers/food/snacks/grown/pumpkin/attackby(obj/item/W as obj, mob/user as mob, params)
if(W.get_sharpness())
user.show_message("<span class='notice'>You carve a face into [src]!</span>", 1)
new /obj/item/clothing/head/hardhat/pumpkinhead(user.loc)
qdel(src)
return
else
return ..()
// Blumpkin
/obj/item/seeds/pumpkin/blumpkin
name = "pack of blumpkin seeds"
desc = "These seeds grow into blumpkin vines."
icon_state = "seed-blumpkin"
species = "blumpkin"
plantname = "Blumpkin Vines"
product = /obj/item/reagent_containers/food/snacks/grown/blumpkin
mutatelist = list()
reagents_add = list("ammonia" = 0.2, "chlorine" = 0.1, "nutriment" = 0.2)
rarity = 20
/obj/item/reagent_containers/food/snacks/grown/blumpkin
seed = /obj/item/seeds/pumpkin/blumpkin
name = "blumpkin"
desc = "The pumpkin's toxic sibling."
icon_state = "blumpkin"
filling_color = "#87CEFA"
bitesize_mod = 2
foodtype = FRUIT
juice_results = list("blumpkinjuice" = 0)
wine_power = 50
+110
View File
@@ -0,0 +1,110 @@
// Carrot
/obj/item/seeds/carrot
name = "pack of carrot seeds"
desc = "These seeds grow into carrots."
icon_state = "seed-carrot"
species = "carrot"
plantname = "Carrots"
product = /obj/item/reagent_containers/food/snacks/grown/carrot
maturation = 10
production = 1
yield = 5
growthstages = 3
growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi'
mutatelist = list(/obj/item/seeds/carrot/parsnip)
reagents_add = list("oculine" = 0.25, "vitamin" = 0.04, "nutriment" = 0.05)
/obj/item/reagent_containers/food/snacks/grown/carrot
seed = /obj/item/seeds/carrot
name = "carrot"
desc = "It's good for the eyes!"
icon_state = "carrot"
filling_color = "#FFA500"
bitesize_mod = 2
foodtype = VEGETABLES
juice_results = list("carrotjuice" = 0)
wine_power = 30
/obj/item/reagent_containers/food/snacks/grown/carrot/attackby(obj/item/I, mob/user, params)
if(I.get_sharpness())
to_chat(user, "<span class='notice'>You sharpen the carrot into a shiv with [I].</span>")
var/obj/item/kitchen/knife/carrotshiv/Shiv = new /obj/item/kitchen/knife/carrotshiv
remove_item_from_storage(user)
qdel(src)
user.put_in_hands(Shiv)
else
return ..()
// Parsnip
/obj/item/seeds/carrot/parsnip
name = "pack of parsnip seeds"
desc = "These seeds grow into parsnips."
icon_state = "seed-parsnip"
species = "parsnip"
plantname = "Parsnip"
product = /obj/item/reagent_containers/food/snacks/grown/parsnip
icon_dead = "carrot-dead"
mutatelist = list()
reagents_add = list("vitamin" = 0.05, "nutriment" = 0.05)
/obj/item/reagent_containers/food/snacks/grown/parsnip
seed = /obj/item/seeds/carrot/parsnip
name = "parsnip"
desc = "Closely related to carrots."
icon_state = "parsnip"
bitesize_mod = 2
foodtype = VEGETABLES
juice_results = list("parsnipjuice" = 0)
wine_power = 35
// White-Beet
/obj/item/seeds/whitebeet
name = "pack of white-beet seeds"
desc = "These seeds grow into sugary beet producing plants."
icon_state = "seed-whitebeet"
species = "whitebeet"
plantname = "White-Beet Plants"
product = /obj/item/reagent_containers/food/snacks/grown/whitebeet
lifespan = 60
endurance = 50
yield = 6
growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi'
icon_dead = "whitebeet-dead"
mutatelist = list(/obj/item/seeds/redbeet)
reagents_add = list("vitamin" = 0.04, "sugar" = 0.2, "nutriment" = 0.05)
/obj/item/reagent_containers/food/snacks/grown/whitebeet
seed = /obj/item/seeds/whitebeet
name = "white-beet"
desc = "You can't beat white-beet."
icon_state = "whitebeet"
filling_color = "#F4A460"
bitesize_mod = 2
foodtype = VEGETABLES
wine_power = 40
// Red Beet
/obj/item/seeds/redbeet
name = "pack of redbeet seeds"
desc = "These seeds grow into red beet producing plants."
icon_state = "seed-redbeet"
species = "redbeet"
plantname = "Red-Beet Plants"
product = /obj/item/reagent_containers/food/snacks/grown/redbeet
lifespan = 60
endurance = 50
yield = 6
growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi'
icon_dead = "whitebeet-dead"
genes = list(/datum/plant_gene/trait/maxchem)
reagents_add = list("vitamin" = 0.05, "nutriment" = 0.05)
/obj/item/reagent_containers/food/snacks/grown/redbeet
seed = /obj/item/seeds/redbeet
name = "red beet"
desc = "You can't beat red beet."
icon_state = "redbeet"
bitesize_mod = 2
foodtype = VEGETABLES
wine_power = 60
@@ -0,0 +1,112 @@
// Tea
/obj/item/seeds/tea
name = "pack of tea aspera seeds"
desc = "These seeds grow into tea plants."
icon_state = "seed-teaaspera"
species = "teaaspera"
plantname = "Tea Aspera Plant"
product = /obj/item/reagent_containers/food/snacks/grown/tea
lifespan = 20
maturation = 5
production = 5
yield = 5
growthstages = 5
icon_dead = "tea-dead"
genes = list(/datum/plant_gene/trait/repeated_harvest)
mutatelist = list(/obj/item/seeds/tea/astra)
reagents_add = list("teapowder" = 0.1)
/obj/item/reagent_containers/food/snacks/grown/tea
seed = /obj/item/seeds/tea
name = "Tea Aspera tips"
desc = "These aromatic tips of the tea plant can be dried to make tea."
icon_state = "tea_aspera_leaves"
filling_color = "#008000"
grind_results = list("teapowder" = 0)
dry_grind = TRUE
can_distill = FALSE
// Tea Astra
/obj/item/seeds/tea/astra
name = "pack of tea astra seeds"
icon_state = "seed-teaastra"
species = "teaastra"
plantname = "Tea Astra Plant"
product = /obj/item/reagent_containers/food/snacks/grown/tea/astra
mutatelist = list(/obj/item/seeds/tea/catnip)
reagents_add = list("synaptizine" = 0.1, "vitamin" = 0.04, "teapowder" = 0.1)
rarity = 20
/obj/item/reagent_containers/food/snacks/grown/tea/astra
seed = /obj/item/seeds/tea/astra
name = "Tea Astra tips"
icon_state = "tea_astra_leaves"
filling_color = "#4582B4"
grind_results = list("teapowder" = 0, "salglu_solution" = 0)
// Kitty drugs
/obj/item/seeds/tea/catnip
name = "pack of catnip seeds"
icon_state = "seed-catnip"
desc = "Long stocks with flowering tips that has a chemical to make feline attracted to it."
species = "catnip"
plantname = "Catnip Plant"
product = /obj/item/reagent_containers/food/snacks/grown/tea/catnip
reagents_add = list("catnip" = 0.1, "vitamin" = 0.06, "teapowder" = 0.3)
rarity = 50
/obj/item/reagent_containers/food/snacks/grown/tea/catnip
seed = /obj/item/seeds/tea/catnip
name = "Catnip buds"
icon_state = "catnip"
filling_color = "#4582B4"
grind_results = list("catnp" = 2, "water" = 1)
// Coffee
/obj/item/seeds/coffee
name = "pack of coffee arabica seeds"
desc = "These seeds grow into coffee arabica bushes."
icon_state = "seed-coffeea"
species = "coffeea"
plantname = "Coffee Arabica Bush"
product = /obj/item/reagent_containers/food/snacks/grown/coffee
lifespan = 30
endurance = 20
maturation = 5
production = 5
yield = 5
growthstages = 5
icon_dead = "coffee-dead"
genes = list(/datum/plant_gene/trait/repeated_harvest)
mutatelist = list(/obj/item/seeds/coffee/robusta)
reagents_add = list("vitamin" = 0.04, "coffeepowder" = 0.1)
/obj/item/reagent_containers/food/snacks/grown/coffee
seed = /obj/item/seeds/coffee
name = "coffee arabica beans"
desc = "Dry them out to make coffee."
icon_state = "coffee_arabica"
filling_color = "#DC143C"
bitesize_mod = 2
dry_grind = TRUE
grind_results = list("coffeepowder" = 0)
distill_reagent = "kahlua"
// Coffee Robusta
/obj/item/seeds/coffee/robusta
name = "pack of coffee robusta seeds"
desc = "These seeds grow into coffee robusta bushes."
icon_state = "seed-coffeer"
species = "coffeer"
plantname = "Coffee Robusta Bush"
product = /obj/item/reagent_containers/food/snacks/grown/coffee/robusta
mutatelist = list()
reagents_add = list("ephedrine" = 0.1, "vitamin" = 0.04, "coffeepowder" = 0.1)
rarity = 20
/obj/item/reagent_containers/food/snacks/grown/coffee/robusta
seed = /obj/item/seeds/coffee/robusta
name = "coffee robusta beans"
desc = "Increases robustness by 37 percent!"
icon_state = "coffee_robusta"
grind_results = list("coffeepowder" = 0, "morphine" = 0)
+258
View File
@@ -0,0 +1,258 @@
/obj/item/seeds/tower
name = "pack of tower-cap mycelium"
desc = "This mycelium grows into tower-cap mushrooms."
icon_state = "mycelium-tower"
species = "towercap"
plantname = "Tower Caps"
product = /obj/item/grown/log
lifespan = 80
endurance = 50
maturation = 15
production = 1
yield = 5
potency = 50
growthstages = 3
growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi'
icon_dead = "towercap-dead"
genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism)
mutatelist = list(/obj/item/seeds/tower/steel)
/obj/item/seeds/tower/steel
name = "pack of steel-cap mycelium"
desc = "This mycelium grows into steel logs."
icon_state = "mycelium-steelcap"
species = "steelcap"
plantname = "Steel Caps"
product = /obj/item/grown/log/steel
mutatelist = list()
rarity = 20
/obj/item/grown/log
seed = /obj/item/seeds/tower
name = "tower-cap log"
desc = "It's better than bad, it's good!"
icon_state = "logs"
force = 5
throwforce = 5
w_class = WEIGHT_CLASS_NORMAL
throw_speed = 2
throw_range = 3
attack_verb = list("bashed", "battered", "bludgeoned", "whacked")
var/plank_type = /obj/item/stack/sheet/mineral/wood
var/plank_name = "wooden planks"
var/static/list/accepted = typecacheof(list(/obj/item/reagent_containers/food/snacks/grown/tobacco,
/obj/item/reagent_containers/food/snacks/grown/tea,
/obj/item/reagent_containers/food/snacks/grown/ambrosia/vulgaris,
/obj/item/reagent_containers/food/snacks/grown/ambrosia/deus,
/obj/item/reagent_containers/food/snacks/grown/wheat))
/obj/item/grown/log/attackby(obj/item/W, mob/user, params)
if(W.sharpness)
user.show_message("<span class='notice'>You make [plank_name] out of \the [src]!</span>", 1)
var/seed_modifier = 0
if(seed)
seed_modifier = round(seed.potency / 25)
var/obj/item/stack/plank = new plank_type(user.loc, 1 + seed_modifier)
var/old_plank_amount = plank.amount
for(var/obj/item/stack/ST in user.loc)
if(ST != plank && istype(ST, plank_type) && ST.amount < ST.max_amount)
ST.attackby(plank, user) //we try to transfer all old unfinished stacks to the new stack we created.
if(plank.amount > old_plank_amount)
to_chat(user, "<span class='notice'>You add the newly-formed [plank_name] to the stack. It now contains [plank.amount] [plank_name].</span>")
qdel(src)
if(CheckAccepted(W))
var/obj/item/reagent_containers/food/snacks/grown/leaf = W
if(leaf.dry)
user.show_message("<span class='notice'>You wrap \the [W] around the log, turning it into a torch!</span>")
var/obj/item/flashlight/flare/torch/T = new /obj/item/flashlight/flare/torch(user.loc)
usr.dropItemToGround(W)
usr.put_in_active_hand(T)
qdel(leaf)
qdel(src)
return
else
to_chat(usr, "<span class ='warning'>You must dry this first!</span>")
else
return ..()
/obj/item/grown/log/proc/CheckAccepted(obj/item/I)
return is_type_in_typecache(I, accepted)
/obj/item/grown/log/tree
seed = null
name = "wood log"
desc = "TIMMMMM-BERRRRRRRRRRR!"
/obj/item/grown/log/steel
seed = /obj/item/seeds/tower/steel
name = "steel-cap log"
desc = "It's made of metal."
icon_state = "steellogs"
plank_type = /obj/item/stack/rods
plank_name = "rods"
/obj/item/grown/log/steel/CheckAccepted(obj/item/I)
return FALSE
/////////BONFIRES//////////
/obj/structure/bonfire
name = "bonfire"
desc = "For grilling, broiling, charring, smoking, heating, roasting, toasting, simmering, searing, melting, and occasionally burning things."
icon = 'icons/obj/hydroponics/equipment.dmi'
icon_state = "bonfire"
light_color = LIGHT_COLOR_FIRE
density = FALSE
anchored = TRUE
buckle_lying = 0
var/burning = 0
var/burn_icon = "bonfire_on_fire" //for a softer more burning embers icon, use "bonfire_warm"
var/grill = FALSE
var/fire_stack_strength = 5
/obj/structure/bonfire/dense
density = TRUE
/obj/structure/bonfire/prelit/Initialize()
. = ..()
StartBurning()
/obj/structure/bonfire/CanPass(atom/movable/mover, turf/target)
if(istype(mover) && (mover.pass_flags & PASSTABLE))
return TRUE
if(mover.throwing)
return TRUE
return ..()
/obj/structure/bonfire/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/stack/rods) && !can_buckle && !grill)
var/obj/item/stack/rods/R = W
var/choice = input(user, "What would you like to construct?", "Bonfire") as null|anything in list("Stake","Grill")
switch(choice)
if("Stake")
R.use(1)
can_buckle = TRUE
buckle_requires_restraints = TRUE
to_chat(user, "<span class='italics'>You add a rod to \the [src].")
var/mutable_appearance/rod_underlay = mutable_appearance('icons/obj/hydroponics/equipment.dmi', "bonfire_rod")
rod_underlay.pixel_y = 16
underlays += rod_underlay
if("Grill")
R.use(1)
grill = TRUE
to_chat(user, "<span class='italics'>You add a grill to \the [src].")
add_overlay("bonfire_grill")
else
return ..()
if(W.get_temperature())
StartBurning()
if(grill)
if(user.a_intent != INTENT_HARM && !(W.item_flags & ABSTRACT))
if(user.temporarilyRemoveItemFromInventory(W))
W.forceMove(get_turf(src))
var/list/click_params = params2list(params)
//Center the icon where the user clicked.
if(!click_params || !click_params["icon-x"] || !click_params["icon-y"])
return
//Clamp it so that the icon never moves more than 16 pixels in either direction (thus leaving the table turf)
W.pixel_x = CLAMP(text2num(click_params["icon-x"]) - 16, -(world.icon_size/2), world.icon_size/2)
W.pixel_y = CLAMP(text2num(click_params["icon-y"]) - 16, -(world.icon_size/2), world.icon_size/2)
else
return ..()
/obj/structure/bonfire/attack_hand(mob/user)
. = ..()
if(.)
return
if(burning)
to_chat(user, "<span class='warning'>You need to extinguish [src] before removing the logs!</span>")
return
if(!has_buckled_mobs() && do_after(user, 50, target = src))
for(var/I in 1 to 5)
var/obj/item/grown/log/L = new /obj/item/grown/log(src.loc)
L.pixel_x += rand(1,4)
L.pixel_y += rand(1,4)
if(can_buckle || grill)
new /obj/item/stack/rods(loc, 1)
qdel(src)
return
/obj/structure/bonfire/proc/CheckOxygen()
if(isopenturf(loc))
var/turf/open/O = loc
if(O.air)
var/loc_gases = O.air.gases
if(loc_gases[/datum/gas/oxygen] > 13)
return TRUE
return FALSE
/obj/structure/bonfire/proc/StartBurning()
if(!burning && CheckOxygen())
icon_state = burn_icon
burning = TRUE
set_light(6)
Burn()
START_PROCESSING(SSobj, src)
/obj/structure/bonfire/fire_act(exposed_temperature, exposed_volume)
StartBurning()
/obj/structure/bonfire/Crossed(atom/movable/AM)
if(burning & !grill)
Burn()
/obj/structure/bonfire/proc/Burn()
var/turf/current_location = get_turf(src)
current_location.hotspot_expose(1000,100,1)
for(var/A in current_location)
if(A == src)
continue
if(isobj(A))
var/obj/O = A
O.fire_act(1000, 500)
else if(isliving(A))
var/mob/living/L = A
L.adjust_fire_stacks(fire_stack_strength)
L.IgniteMob()
/obj/structure/bonfire/proc/Cook()
var/turf/current_location = get_turf(src)
for(var/A in current_location)
if(A == src)
continue
else if(isliving(A)) //It's still a fire, idiot.
var/mob/living/L = A
L.adjust_fire_stacks(fire_stack_strength)
L.IgniteMob()
else if(istype(A, /obj/item) && prob(20))
var/obj/item/O = A
O.microwave_act()
/obj/structure/bonfire/process()
if(!CheckOxygen())
extinguish()
return
if(!grill)
Burn()
else
Cook()
/obj/structure/bonfire/extinguish()
if(burning)
icon_state = "bonfire"
burning = 0
set_light(0)
STOP_PROCESSING(SSobj, src)
/obj/structure/bonfire/buckle_mob(mob/living/M, force = FALSE, check_loc = TRUE)
if(..())
M.pixel_y += 13
/obj/structure/bonfire/unbuckle_mob(mob/living/buckled_mob, force=FALSE)
if(..())
buckled_mob.pixel_y -= 13