mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-24 21:48:39 +01:00
Adds pruno, aka prison wine, to the game. (#49615)
* adds pruno; adds garbage bags to all map permas for pruno; adds moldy bread for pruno * tells travis to eat shit * ups time to make pruno; tweaks recipe * changes moodlet, breaks mold into separate reagent, slightly tweaks recipe display * travis please eat every dick in existence except for one and then continuously clone-a-willy that dick so you can continue this task for all eternity * changes disgust, adjusts comments * does this fix the shit * does THIS work * spooky's edits
This commit is contained in:
@@ -537,3 +537,55 @@
|
||||
to_chat(user, "<span class='info'>You snuff out the flame on [src].</span>")
|
||||
cut_overlay(GLOB.fire_overlay)
|
||||
active = 0
|
||||
|
||||
/obj/item/reagent_containers/food/drinks/bottle/pruno
|
||||
name = "pruno mix"
|
||||
desc = "A trash bag filled with fruit, sugar, yeast, and water, pulped together into a pungent slurry to be fermented in an enclosed space, traditionally the toilet. Security would love to confiscate this, one of the many things wrong with them."
|
||||
icon = 'icons/obj/janitor.dmi'
|
||||
icon_state = "trashbag"
|
||||
list_reagents = list(/datum/reagent/consumable/prunomix = 50)
|
||||
var/fermentation_time = 30 SECONDS /// time it takes to ferment
|
||||
var/fermentation_time_remaining /// for partial fermentation
|
||||
var/fermentation_timer /// store the timer id of fermentation
|
||||
|
||||
/obj/item/reagent_containers/food/drinks/bottle/pruno/Initialize()
|
||||
. = ..()
|
||||
RegisterSignal(src, COMSIG_MOVABLE_MOVED, .proc/check_fermentation)
|
||||
|
||||
/obj/item/reagent_containers/food/drinks/bottle/pruno/Destroy()
|
||||
UnregisterSignal(src, COMSIG_MOVABLE_MOVED)
|
||||
return ..()
|
||||
|
||||
// Checks to see if the pruno can ferment, i.e. is it inside a structure (e.g. toilet), or a machine (e.g. washer)?
|
||||
// TODO: make it so the washer spills reagents if a reagent container is in there, for now, you can wash pruno
|
||||
|
||||
/obj/item/reagent_containers/food/drinks/bottle/pruno/proc/check_fermentation()
|
||||
if (!(istype(loc, /obj/machinery) || istype(loc, /obj/structure)))
|
||||
if(fermentation_timer)
|
||||
fermentation_time_remaining = timeleft(fermentation_timer)
|
||||
deltimer(fermentation_timer)
|
||||
fermentation_timer = null
|
||||
return
|
||||
if(fermentation_timer)
|
||||
return
|
||||
if(!fermentation_time_remaining)
|
||||
fermentation_time_remaining = fermentation_time
|
||||
fermentation_timer = addtimer(CALLBACK(src, .proc/do_fermentation), fermentation_time_remaining, TIMER_UNIQUE|TIMER_STOPPABLE)
|
||||
fermentation_time_remaining = null
|
||||
|
||||
// actually ferment
|
||||
|
||||
/obj/item/reagent_containers/food/drinks/bottle/pruno/proc/do_fermentation()
|
||||
fermentation_time_remaining = null
|
||||
fermentation_timer = null
|
||||
if(prob(10))
|
||||
reagents.add_reagent(/datum/reagent/toxin/bad_food, 15) // closest thing we have to botulism
|
||||
reagents.add_reagent(/datum/reagent/consumable/ethanol/pruno, 35)
|
||||
else
|
||||
reagents.add_reagent(/datum/reagent/consumable/ethanol/pruno, 50)
|
||||
name = "bag of pruno"
|
||||
desc = "Fermented prison wine made from fruit, sugar, and despair. You probably shouldn't drink this around Security."
|
||||
icon_state = "trashbag1" // pruno releases air as it ferments, we don't want to simulate this in atmos, but we can make it look like it did
|
||||
for (var/mob/living/M in view(2, get_turf(src))) // letting people and/or narcs know when the pruno is done
|
||||
to_chat(M, "<span class='info'>A pungent smell emanates from [src], like fruit puking out its guts.</span>")
|
||||
playsound(get_turf(src), 'sound/effects/bubbles2.ogg', 25, TRUE)
|
||||
|
||||
@@ -227,8 +227,6 @@
|
||||
icon_state = "mayonnaise"
|
||||
list_reagents = list(/datum/reagent/consumable/mayonnaise = 50)
|
||||
|
||||
|
||||
|
||||
//Food packs. To easily apply deadly toxi... delicious sauces to your food!
|
||||
|
||||
/obj/item/reagent_containers/food/condiment/pack
|
||||
|
||||
@@ -42,6 +42,15 @@
|
||||
customfoodfilling = 1
|
||||
foodtype = GRAIN
|
||||
|
||||
/obj/item/reagent_containers/food/snacks/breadslice/moldy
|
||||
name = "moldy bread slice"
|
||||
desc = "Entire stations have been ripped apart over arguing whether this is still good to eat."
|
||||
icon_state = "moldybreadslice"
|
||||
customfoodfilling = 0
|
||||
bonus_reagents = list(/datum/reagent/consumable/mold = 10)
|
||||
tastes = list("decaying fungus" = 1)
|
||||
foodtype = GROSS
|
||||
|
||||
/obj/item/reagent_containers/food/snacks/store/bread/meat
|
||||
name = "meatbread loaf"
|
||||
desc = "The culinary base of every self-respecting eloquen/tg/entleman."
|
||||
|
||||
@@ -102,3 +102,12 @@
|
||||
)
|
||||
result = /obj/item/reagent_containers/food/snacks/butterdog
|
||||
subcategory = CAT_BREAD
|
||||
|
||||
/datum/crafting_recipe/food/moldybread // why would you make this?
|
||||
name = "Moldy Bread"
|
||||
reqs = list(
|
||||
/obj/item/reagent_containers/food/snacks/breadslice/plain = 1,
|
||||
/obj/item/reagent_containers/food/snacks/grown/mushroom/amanita = 1
|
||||
)
|
||||
result = /obj/item/reagent_containers/food/snacks/breadslice/moldy
|
||||
subcategory = CAT_BREAD
|
||||
|
||||
@@ -133,3 +133,13 @@
|
||||
/obj/item/reagent_containers/food/drinks/bottle = 1)
|
||||
category = CAT_DRINK
|
||||
|
||||
/datum/crafting_recipe/pruno
|
||||
name = "pruno mix"
|
||||
result = /obj/item/reagent_containers/food/drinks/bottle/pruno
|
||||
time = 30
|
||||
reqs = list(/obj/item/storage/bag/trash = 1,
|
||||
/obj/item/reagent_containers/food/snacks/breadslice/moldy = 1,
|
||||
/obj/item/reagent_containers/food/snacks/grown = 4,
|
||||
/obj/item/reagent_containers/food/snacks/candy_corn = 2,
|
||||
/datum/reagent/water = 15)
|
||||
category = CAT_DRINK
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
// Base type. Subtypes are found in /grown dir. Lavaland-based subtypes can be found in mining/ash_flora.dm
|
||||
/obj/item/reagent_containers/food/snacks/grown
|
||||
icon = 'icons/obj/hydroponics/harvest.dmi'
|
||||
name = "fresh produce" // so recipe text doesn't say 'snack'
|
||||
var/obj/item/seeds/seed = null // type path, gets converted to item on New(). It's safe to assume it's always a seed item.
|
||||
var/plantname = ""
|
||||
var/bitesize_mod = 0
|
||||
|
||||
@@ -2216,3 +2216,18 @@ All effects don't start immediately, but rather get worse over time; the rate is
|
||||
glass_icon_state = "pina_colada"
|
||||
glass_name = "Pina Colada"
|
||||
glass_desc = "If you like pina coladas, and getting caught in the rain... well, you'll like this drink."
|
||||
|
||||
|
||||
/datum/reagent/consumable/ethanol/pruno // pruno mix is in drink_reagents
|
||||
name = "pruno"
|
||||
color = "#E78108"
|
||||
description = "Fermented prison wine made from fruit, sugar, and despair. Security loves to confiscate this, which is the only kind thing Security has ever done."
|
||||
boozepwr = 85
|
||||
taste_description = "your tastebuds being individually shanked"
|
||||
glass_icon_state = "glass_orange"
|
||||
glass_name = "glass of pruno"
|
||||
glass_desc = "Fermented prison wine made from fruit, sugar, and despair. Security loves to confiscate this, which is the only kind thing Security has ever done."
|
||||
|
||||
/datum/reagent/consumable/ethanol/pruno/on_mob_life(mob/living/carbon/M)
|
||||
M.adjust_disgust(5)
|
||||
..()
|
||||
|
||||
@@ -890,3 +890,12 @@
|
||||
glass_icon_state = "glass_yellow"
|
||||
glass_name = "glass of bungo juice"
|
||||
glass_desc = "Exotic! You feel like you are on vactation already."
|
||||
|
||||
/datum/reagent/consumable/prunomix
|
||||
name = "pruno mixture"
|
||||
color = "#E78108"
|
||||
description = "Fruit, sugar, yeast, and water pulped together into a pungent slurry."
|
||||
taste_description = "garbage"
|
||||
glass_icon_state = "glass_orange"
|
||||
glass_name = "glass of pruno mixture"
|
||||
glass_desc = "Fruit, sugar, yeast, and water pulped together into a pungent slurry."
|
||||
|
||||
@@ -562,6 +562,12 @@
|
||||
color = "#DFDFDF"
|
||||
taste_description = "mayonnaise"
|
||||
|
||||
/datum/reagent/consumable/mold // yeah, ok, togopal, I guess you could call that a condiment
|
||||
name = "Mold"
|
||||
description = "This condiment will make any food break the mold. Or your stomach."
|
||||
color ="#708a88"
|
||||
taste_description = "rancid fungus"
|
||||
|
||||
/datum/reagent/consumable/tearjuice
|
||||
name = "Tear Juice"
|
||||
description = "A blinding substance extracted from certain onions."
|
||||
|
||||
@@ -2,9 +2,10 @@
|
||||
name = "\improper Sustenance Vendor"
|
||||
desc = "A vending machine which vends food, as required by section 47-C of the NT's Prisoner Ethical Treatment Agreement."
|
||||
product_slogans = "Enjoy your meal.;Enough calories to support strenuous labor."
|
||||
product_ads = "Sufficiently healthy.;Efficiently produced tofu!;Mmm! So good!;Have a meal.;You need food to live!;Have some more candy corn!;Try our new ice cups!"
|
||||
product_ads = "Sufficiently healthy.;Efficiently produced tofu!;Mmm! So good!;Have a meal.;You need food to live!;Even prisoners deserve their daily bread!;Have some more candy corn!;Try our new ice cups!"
|
||||
icon_state = "sustenance"
|
||||
products = list(/obj/item/reagent_containers/food/snacks/tofu/prison = 24,
|
||||
/obj/item/reagent_containers/food/snacks/breadslice/moldy = 15,
|
||||
/obj/item/reagent_containers/food/drinks/ice/prison = 12,
|
||||
/obj/item/reagent_containers/food/snacks/candy_corn/prison = 6)
|
||||
contraband = list(/obj/item/kitchen/knife = 6,
|
||||
|
||||
Reference in New Issue
Block a user