From 8533cb12ed8b57d2992a6113f6b09133ba72c5ae Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Thu, 8 Sep 2016 21:58:59 -0400 Subject: [PATCH 1/3] Adds Ash Plants --- code/modules/mining/lavaland/ash_flora.dm | 251 ++++++++++++++++++++++ icons/obj/lavaland/ash_flora.dmi | Bin 0 -> 17343 bytes tgstation.dme | 1 + 3 files changed, 252 insertions(+) create mode 100644 code/modules/mining/lavaland/ash_flora.dm create mode 100644 icons/obj/lavaland/ash_flora.dmi diff --git a/code/modules/mining/lavaland/ash_flora.dm b/code/modules/mining/lavaland/ash_flora.dm new file mode 100644 index 00000000000..4c2d8ea7f3a --- /dev/null +++ b/code/modules/mining/lavaland/ash_flora.dm @@ -0,0 +1,251 @@ +/obj/structure/flora/ash + gender = PLURAL + icon = 'icons/obj/lavaland/ash_flora.dmi' + icon_state = "l_mushroom" + name = "large mushrooms" + desc = "A number of large mushrooms, covered in a faint layer of ash and what can only be spores." + var/harvested_name = "shortened mushrooms" + var/harvested_desc = "Some quickly regrowing mushrooms, formerly known to be quite large." + var/needs_sharp_harvest = TRUE + var/harvest = /obj/item/ash_flora/shavings + var/harvest_amount_low = 1 + var/harvest_amount_high = 3 + var/harvest_time = 60 + var/harvest_message_low = "You pick a mushroom, but fail to collect many shavings from its cap." + var/harvest_message_med = "You pick a mushroom, carefully collecting the shavings from its cap." + var/harvest_message_high = "You harvest and collect shavings from several mushroom caps." + var/harvested = FALSE + var/base_icon + var/regrowth_time_low = 4800 + var/regrowth_time_high = 8400 + +/obj/structure/flora/ash/New() + ..() + base_icon = "[icon_state][rand(1, 4)]" + icon_state = base_icon + if(prob(15)) + harvest(null, TRUE) + +/obj/structure/flora/ash/proc/harvest(user, no_drop) + if(harvested) + return 0 + if(!no_drop) + var/rand_harvested = rand(harvest_amount_low, harvest_amount_high) + if(rand_harvested) + if(user) + var/msg = harvest_message_med + if(rand_harvested == harvest_amount_low) + msg = harvest_message_low + else if(rand_harvested == harvest_amount_high) + msg = harvest_message_high + user << "[msg]" + for(var/i in 1 to rand_harvested) + new harvest(get_turf(src)) + icon_state = "[base_icon]p" + name = harvested_name + desc = harvested_desc + harvested = TRUE + addtimer(src, "regrow", rand(regrowth_time_low, regrowth_time_high)) + return 1 + +/obj/structure/flora/ash/proc/regrow() + icon_state = base_icon + name = initial(name) + desc = initial(desc) + harvested = FALSE + +/obj/structure/flora/ash/attackby(obj/item/weapon/W, mob/user, params) + if(!harvested && needs_sharp_harvest && W.sharpness) + user.visible_message("[user] starts to harvest from [src] with [W].","You begin to harvest from [src] with [W].") + if(do_after(user, harvest_time, target = src)) + harvest(user) + else + ..() + +/obj/structure/flora/ash/attack_hand(mob/user) + if(!harvested && !needs_sharp_harvest) + user.visible_message("[user] starts to harvest from [src].","You begin to harvest from [src].") + if(do_after(user, harvest_time, target = src)) + harvest(user) + else + ..() + +/obj/structure/flora/ash/leaf_shroom + icon_state = "s_mushroom" + name = "leafy mushrooms" + desc = "A number of mushrooms, each of which surrounds a greenish sporangium with a number of leaf-like structures." + harvested_name = "leafless mushrooms" + harvested_desc = "A bunch of formerly-leafed mushrooms, with their sporangiums exposed. Scandalous?" + harvest = /obj/item/ash_flora/mushroom_leaf + needs_sharp_harvest = FALSE + harvest_amount_high = 4 + harvest_time = 20 + harvest_message_low = "You pluck a single, suitable leaf." + harvest_message_med = "You pluck a number of leaves, leaving a few unsuitable ones." + harvest_message_high = "You pluck quite a lot of suitable leaves." + regrowth_time_low = 2400 + regrowth_time_high = 6000 + +/obj/structure/flora/ash/cap_shroom + icon_state = "r_mushroom" + name = "tall mushrooms" + desc = "Several mushrooms, the larger of which have a ring of conks at the midpoint of their stems." + harvested_name = "small mushrooms" + harvested_desc = "Several small mushrooms near the stumps of what likely were larger mushrooms." + harvest = /obj/item/ash_flora/mushroom_cap + harvest_amount_high = 4 + harvest_time = 50 + harvest_message_low = "You slice the cap off of a mushroom." + harvest_message_med = "You slice off a few conks from the larger mushrooms." + harvest_message_high = "You slice off a number of caps and conks from these mushrooms." + regrowth_time_low = 3000 + regrowth_time_high = 5400 + +/obj/structure/flora/ash/stem_shroom + icon_state = "t_mushroom" + name = "numerous mushrooms" + desc = "A large number of mushrooms, some of which have long, fleshy stems." + harvested_name = "tiny mushrooms" + harvested_desc = "A few tiny mushrooms around larger stumps. You can already see them growing back." + harvest = /obj/item/ash_flora/mushroom_stem + harvest_amount_high = 4 + harvest_time = 40 + harvest_message_low = "You pick and slice the cap off of a mushroom, leaving the stem." + harvest_message_med = "You pick and decapitate several mushrooms for their stems." + harvest_message_high = "You acquire a number of stems from these mushrooms." + regrowth_time_low = 3000 + regrowth_time_high = 6000 + +/obj/structure/flora/ash/cacti + icon_state = "cactus" + name = "fruiting cacti" + desc = "Several prickly cacti, brimming with ripe fruit and covered in a thin layer of ash." + harvested_name = "cacti" + harvested_desc = "A bunch of prickly cacti. You can see fruits slowly growing beneath the covering of ash." + harvest = /obj/item/ash_flora/cactus_fruit + needs_sharp_harvest = FALSE + harvest_amount_high = 2 + harvest_time = 10 + harvest_message_low = "You pick a cactus fruit." + harvest_message_med = "You pick several cactus fruit." //shouldn't show up, because you can't get more than two + harvest_message_high = "You pick a pair of cactus fruit." + regrowth_time_low = 4800 + regrowth_time_high = 7200 + +/obj/structure/flora/ash/cacti/Crossed(mob/AM) + if(ishuman(AM) && has_gravity(loc) && prob(70)) + var/mob/living/carbon/human/H = AM + if(!H.shoes && !H.lying) //ouch, my feet. + var/picked_def_zone = pick("l_leg", "r_leg") + var/obj/item/bodypart/O = H.get_bodypart(picked_def_zone) + if(!istype(O) || (PIERCEIMMUNE in H.dna.species.specflags)) + return + H.apply_damage(rand(3, 6), BRUTE, picked_def_zone) + H.Weaken(2) + H.visible_message("[H] steps on a cactus!", \ + "You step on a cactus!") + +/obj/item/ash_flora + name = "mushroom shavings" + desc = "Some shavings from a tall mushroom. With enough, might serve as a bowl." + icon = 'icons/obj/lavaland/ash_flora.dmi' + icon_state = "mushroom_shavings" + w_class = 1 + burn_state = FLAMMABLE + burntime = 30 + var/prepared = FALSE + var/prepared_type = /obj/item/ash_flora/shavings + var/standard_prep = TRUE + +/obj/item/ash_flora/New() + ..() + pixel_x = rand(-4, 4) + pixel_y = rand(-4, 4) + +/obj/item/ash_flora/attackby(obj/item/weapon/W, mob/user, params) + if(!standard_prep || !W.sharpness || !prepare(user)) + ..() + +/obj/item/ash_flora/proc/prepare(mob/user) + if(!prepared) + prepared = TRUE + user << "You prepare [src]." + var/obj/item/ash_flora/A = new prepared_type(get_turf(src)) + if(src in get_both_hands(user)) + user.unEquip(src, TRUE) + user.put_in_hands(A) + qdel(src) + . = 1 + +/obj/item/ash_flora/shavings //for actual crafting + prepared = TRUE + +/obj/item/ash_flora/mushroom_leaf + name = "mushroom leaf" + desc = "A leaflike structure from a mushroom. You should probably wash the ash off." + icon_state = "mushroom_leaf" + standard_prep = FALSE + prepared_type = /obj/item/ash_flora/mushroom_leaf/prepared + +/obj/item/ash_flora/mushroom_leaf/afterattack(atom/target, mob/user, proximity_flag) + if(proximity_flag && (istype(target, /turf/open/floor/plating/ashplanet/wateryrock) || istype(target, /obj/structure/sink))) + prepare(user) + +/obj/item/ash_flora/mushroom_leaf/prepared + name = "washed mushroom leaf" + desc = "A greenish leaflike structure from a mushroom. Kind of like lettuce?" + icon_state = "mushroom_leaf_p" + prepared = TRUE + +/obj/item/ash_flora/mushroom_cap + name = "mushroom cap" + desc = "A mushroom cap. Possibly delicious, at least if you cut it up a bit first." + icon_state = "mushroom_cap" + prepared_type = /obj/item/ash_flora/mushroom_cap/prepared + +/obj/item/ash_flora/mushroom_cap/prepared + name = "sliced mushroom cap" + desc = "A sliced-up mushroom cap, revealing pale yellow innards. It smells faintly salty." + icon_state = "mushroom_cap_p" + prepared = TRUE + +/obj/item/ash_flora/mushroom_stem + name = "mushroom stem" + desc = "A mushroom stem. Slice it up, throw it in a stew." + icon_state = "mushroom_stem" + prepared_type = /obj/item/ash_flora/mushroom_stem/prepared + +/obj/item/ash_flora/mushroom_stem/prepared + name = "sliced mushroom stem" + desc = "A mushroom stem, cut in half to reveal orange flesh. Smells almost like potatos, but with a sour undertone." + icon_state = "mushroom_stem_p" + prepared = TRUE + +/obj/item/ash_flora/cactus_fruit + name = "cactus fruit" + desc = "A cactus fruit covered in a thick, reddish skin. And some ash." + icon_state = "cactus_fruit" + prepared_type = /obj/item/ash_flora/cactus_fruit/prepared + +/obj/item/ash_flora/cactus_fruit/prepared + name = "peeled cactus fruit" + desc = "A cactus fruit with the skin and ash carefully scraped off, revealing a faintly sweet-smelling yellow center." + icon_state = "cactus_fruit_p" + prepared = TRUE + +/obj/item/mushroom_bowl + name = "mushroom bowl" + desc = "A bowl made out of mushrooms. Not food, though it might have contained some at some point." + icon = 'icons/obj/lavaland/ash_flora.dmi' + icon_state = "mushroom_bowl" + w_class = 2 + burn_state = FLAMMABLE + burntime = 40 + +//what you can craft with these things +/datum/crafting_recipe/mushroom_bowl + name = "Mushroom Bowl" + result = /obj/item/mushroom_bowl + reqs = list(/obj/item/ash_flora/shavings = 5) + time = 30 + //category = CAT_PRIMAL //uncomment once ashplanet exists and this wouldn't just take up space fnr diff --git a/icons/obj/lavaland/ash_flora.dmi b/icons/obj/lavaland/ash_flora.dmi new file mode 100644 index 0000000000000000000000000000000000000000..d58541612d2b4a3f6cbba1a6fbcb087e99626657 GIT binary patch literal 17343 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 Date: Thu, 8 Sep 2016 22:03:26 -0400 Subject: [PATCH 2/3] no message --- code/modules/mining/lavaland/ash_flora.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/mining/lavaland/ash_flora.dm b/code/modules/mining/lavaland/ash_flora.dm index 4c2d8ea7f3a..d4b53802f4c 100644 --- a/code/modules/mining/lavaland/ash_flora.dm +++ b/code/modules/mining/lavaland/ash_flora.dm @@ -1,5 +1,6 @@ /obj/structure/flora/ash gender = PLURAL + layer = PROJECTILE_HIT_THRESHHOLD_LAYER //sporangiums up don't shoot icon = 'icons/obj/lavaland/ash_flora.dmi' icon_state = "l_mushroom" name = "large mushrooms" From e1c7d0d57443d26fc72d43513bab3bb40d6be304 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sat, 10 Sep 2016 09:29:14 -0400 Subject: [PATCH 3/3] you missssed oooone --- code/modules/mining/lavaland/ash_flora.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mining/lavaland/ash_flora.dm b/code/modules/mining/lavaland/ash_flora.dm index d4b53802f4c..2d831483647 100644 --- a/code/modules/mining/lavaland/ash_flora.dm +++ b/code/modules/mining/lavaland/ash_flora.dm @@ -61,7 +61,7 @@ if(do_after(user, harvest_time, target = src)) harvest(user) else - ..() + return ..() /obj/structure/flora/ash/attack_hand(mob/user) if(!harvested && !needs_sharp_harvest) @@ -165,7 +165,7 @@ /obj/item/ash_flora/attackby(obj/item/weapon/W, mob/user, params) if(!standard_prep || !W.sharpness || !prepare(user)) - ..() + return ..() /obj/item/ash_flora/proc/prepare(mob/user) if(!prepared)