diff --git a/modular_ss220/food/code/drinks.dm b/modular_ss220/food/code/drinks.dm index 94c440c790e2..80eff331c1b0 100644 --- a/modular_ss220/food/code/drinks.dm +++ b/modular_ss220/food/code/drinks.dm @@ -4,13 +4,15 @@ icon = initial(icon) return var/datum/reagent/reagent = reagents.get_master_reagent() - if(!istype(reagent, /datum/reagent/consumable/ethanol)) + if(!istype(reagent, /datum/reagent/consumable)) icon = initial(icon) - return - var/datum/reagent/consumable/ethanol/booze = reagent - icon = booze.drinking_glass_icon + else + var/datum/reagent/consumable/drink = reagent + icon = drink.drinking_glass_icon + if(!reagent.drink_icon) + icon_state = "glass_empty" -/datum/reagent/consumable/ethanol +/datum/reagent/consumable var/drinking_glass_icon = 'icons/obj/drinks.dmi' /obj/machinery/chem_dispenser/beer/Initialize(mapload) @@ -584,3 +586,78 @@ required_reagents = list("trinary" = 1, "codelibre" = 1, "rewriter" = 1, "irishempbomb" = 1, "synthanol" = 1 ) result_amount = 5 mix_sound = 'sound/goonstation/misc/drinkfizz.ogg' + +/datum/reagent/consumable/ethanol/kvass + name = "Alcoholic Kvass" + id = "alco_kvass" + description = "Алкогольный напиток, полученный путём ферментации хлеба" + color = "#775a1c" + nutriment_factor = 1 * REAGENTS_METABOLISM + alcohol_perc = 0.2 + drink_icon = "alco_kvass" + drinking_glass_icon = 'modular_ss220/food/icons/drinks.dmi' + drink_name = "Стакан алкогольного кваса" + drink_desc = "Освежающий горьковато-сладкий напиток прямиком из СССП" + taste_description = "квас" + +/datum/reagent/consumable/drink/kvass + name = "Kvass" + id = "kvass" + description = "Квас без алкоголя. Что отличает его от обычной газировки?" + color = "#574113" + adj_sleepy = -4 SECONDS + drink_icon = "kvass" + drinking_glass_icon = 'modular_ss220/food/icons/drinks.dmi' + drink_name = "Стакан безалкогольного кваса" + drink_desc = "Квас без алкоголя. Освежает, но по вкусу как-то... блекло?" + harmless = FALSE + taste_description = "скучный квас" + +/datum/chemical_reaction/kvass + name = "Kvass" + id = "kvass" + result = "kvass" + required_reagents = list("alco_kvass" = 5, "antihol" = 1) + result_amount = 5 + mix_sound = 'sound/goonstation/misc/drinkfizz.ogg' + +// fermenting_barrel don't have behavior for non-plant food, so we need some proc for bread +/obj/structure/fermenting_barrel/proc/make_drink(obj/item/I, drink_id, amount) + reagents.add_reagent(drink_id, amount) + qdel(I) + playsound(src, 'sound/effects/bubbles.ogg', 50, TRUE) + +/obj/structure/fermenting_barrel/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/food/snacks/sliceable/bread)) + if(!user.drop_item()) + to_chat(user, "[I] is stuck to your hand!") + return FALSE + I.forceMove(src) + to_chat(user, "You place [I] into [src] to start the fermentation process.") + addtimer(CALLBACK(src, PROC_REF(make_drink), I, "alco_kvass", 35), rand(80, 120) * speed_multiplier) + return + return ..() + +/obj/item/reagent_containers/drinks/cans/kvass + name = "Квас" + desc = "Банка кваса. На этикетке написано \"Сделано в СССП\"" + icon_state = "kvass_can" + icon = 'modular_ss220/food/icons/drinks.dmi' + list_reagents = list("kvass" = 50) + +/obj/machinery/chem_dispenser/soda/Initialize(mapload) + dispensable_reagents += "kvass" + return ..() + +/obj/item/handheld_chem_dispenser/soda/Initialize(mapload) + dispensable_reagents += "kvass" + return ..() + +/obj/machinery/economy/vending/boozeomat/Initialize(mapload) + products += list(/obj/item/reagent_containers/drinks/cans/kvass = 8) + return ..() + +/obj/machinery/economy/vending/cola/Initialize(mapload) + products += list(/obj/item/reagent_containers/drinks/cans/kvass = 10) + prices += list(/obj/item/reagent_containers/drinks/cans/kvass = 50) + return ..() diff --git a/modular_ss220/food/icons/drinks.dmi b/modular_ss220/food/icons/drinks.dmi index b9a162df1e1b..5b0b7c51eabd 100644 Binary files a/modular_ss220/food/icons/drinks.dmi and b/modular_ss220/food/icons/drinks.dmi differ