mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 13:10:02 +01:00
Adds 7 New Ethereal Drinks, & Fixes w/ vamp drinks. (#5355)
## About The Pull Request Fresh imports from the Ethereal diasporas, the finest drinks Sprout can offer! Inspired by the people of the Soatii-governed nation, these flesh-friendly beverages are now in your NT-Approved _Mixologist's Guides To Serving Suckers (Like you!)_. Made with ingredients available outside of Sprouts supernatural atmosphere, ethereals can taste a little bit of home.  From humble work-a-day drinks like Karakrak, A sort of electric, alcohol-stripped wine served to the lowest castes of the ethereal masses, typically distributed by the ethereal clergy. Served on a rubber coaster to keep what very little charge exists from dissipating into the table.  To Szz Szz, A bootlegged version of the Divine Conduit's exclusive monastic wine. The flavour has been approximated by a thousand different tongues, who for at threat of persecution, have never actually tasted it.  Expat drinks like Blumpkin Compot; stewed blumpkin flesh with whole berries in it. Sugar helps to draws out the conductive elements inside, making for a politely energizing beverage that also doesn't taste like window cleaner.  Try artisanal crafts like the Storm-Over-Avon, a complicated cocktail preferred by devotees of the Everlasting Note. While its original ingredients are impossible to source off of Sprout, this drink-alike still resonates with the pretention that only a musical ecclesiarchy can hone. Known to rarely shock non-ethereals. (1/50 chance)  Or the Ira De Zeus, a radiant ethereal drink that warms the body and tickles the tongue. The original recipie, fabled to have originated from the tables of Sprout's upper-caste clergy, would imply heresy of the highest order. Good thing it's only a fable... May shock non-ethereals. (1/8 chance)  And of course, try the strange flavours of the diasporas like the Coilhouse Cocktail, an ethereal cocktail too bombastic to have been born inside Soatii space. Also known as a Shocktown Jitter to those not made of electricity, for reasons that will become quickly apparent. (1/6 chance to zap non-ethereals)  Or test your luck trying a real drink, like the Electric Avenue Named after a mythical location in the Sol System, this drink is meant to be sipped slowly through the narrow copper straw, representing the long but brisk taste of life. But to non-ethereals, it's a warp lane to the emergency room (1/3 chance to zap non-ethereals)  =-=-=-=-= Other edits: -Fixed the naming scheme for vamp drinks; drinks will no longer appear as 'A glass of XYZ', and instead just be 'XZY', matching the syntax for most other beverages. -Adjusted the in game sprite positions of prior vamp drinks to better sit on the table when poured. -Unified some naming conventions across the zubbers drink codebase. ## Why It's Good For The Game Ethereals are now more included at the tables with an expanded roster of drink. Sprites are fun, and interesting to look at and drink for ethereals and non ethereals alike. Flavour text inside the drinks compliment the in-game lore for ethereals, adding world depth. Furthermore, minor fixes in the code make it easier to add to in the future, hopefully, and adjusted sprites are a simple cosmetic change, that hopefully improve the presentation during the bartending experience. ## Proof Of Testing  ## Changelog 🆑 add: Adds 7 new ethereal drinks! Karakrak, Szz Szz, Blumpkin Compot, Storm-Over-Avon, Ira De Zeus, Coilhouse Cocktail, and the Electric Avenue. fix: Vampire drink names not matching other drinks. fix: Minor sprite adjustments to vamp drinks; should sit better on tables when poured. /🆑 --------- Co-authored-by: gavla <96078776+shayoki@users.noreply.github.com>
This commit is contained in:
@@ -1,12 +1,12 @@
|
||||
|
||||
//Hemophage / Vampire drinks
|
||||
|
||||
/datum/chemical_reaction/drink/venetianwaltz
|
||||
results = list(/datum/reagent/consumable/ethanol/venetianwaltz = 9)
|
||||
/datum/chemical_reaction/drink/venetian_waltz
|
||||
results = list(/datum/reagent/consumable/ethanol/venetian_waltz = 9)
|
||||
required_reagents = list(/datum/reagent/consumable/caramel = 1, /datum/reagent/consumable/ethanol/creme_de_cacao = 2, /datum/reagent/consumable/ethanol/amaretto = 3, /datum/reagent/blood = 3)
|
||||
|
||||
/datum/chemical_reaction/drink/cranberrycadillac
|
||||
results = list(/datum/reagent/consumable/ethanol/cranberrycadillac = 5)
|
||||
/datum/chemical_reaction/drink/cranberry_cadillac
|
||||
results = list(/datum/reagent/consumable/ethanol/cranberry_cadillac = 5)
|
||||
required_reagents = list(/datum/reagent/consumable/sugar = 1, /datum/reagent/consumable/ethanol/champagne = 2, /datum/reagent/consumable/ethanol/cognac = 1, /datum/reagent/blood = 1)
|
||||
required_temp = 373.15 //Roughly the temp to boil sugar to make sugar crystals
|
||||
mix_message = "The sugar melts then crystalizes around the blood, making candy rocks..."
|
||||
@@ -15,10 +15,36 @@
|
||||
results = list(/datum/reagent/consumable/ethanol/jubokko = 4)
|
||||
required_reagents = list(/datum/reagent/consumable/ethanol/sake = 1, /datum/reagent/consumable/ethanol/yuyake = 1, /datum/reagent/blood = 3)
|
||||
|
||||
/datum/chemical_reaction/drink/moroccocoffin
|
||||
results = list(/datum/reagent/consumable/ethanol/moroccocoffin = 4)
|
||||
/datum/chemical_reaction/drink/morocco_coffin
|
||||
results = list(/datum/reagent/consumable/ethanol/morocco_coffin = 4)
|
||||
required_reagents = list(/datum/reagent/consumable/icecoffee = 2, /datum/reagent/consumable/ethanol/rum = 1, /datum/reagent/blood = 1)
|
||||
|
||||
/datum/chemical_reaction/drink/batouttahell
|
||||
results = list(/datum/reagent/consumable/ethanol/batouttahell = 10)
|
||||
/datum/chemical_reaction/drink/bat_outta_hell
|
||||
results = list(/datum/reagent/consumable/ethanol/bat_outta_hell = 10)
|
||||
required_reagents = list(/datum/reagent/consumable/ethanol/absinthe = 1, /datum/reagent/consumable/ethanol/brave_bull = 6, /datum/reagent/blood = 3)
|
||||
|
||||
//Ethereal Drinks
|
||||
|
||||
/datum/chemical_reaction/drink/karakrak
|
||||
results = list(/datum/reagent/consumable/ethanol/karakrak = 4)
|
||||
required_reagents = list(/datum/reagent/consumable/sugar = 1 ,/datum/reagent/consumable/pwr_game = 2, /datum/reagent/consumable/ethanol/wine = 1)
|
||||
|
||||
/datum/chemical_reaction/drink/szzszz
|
||||
results = list(/datum/reagent/consumable/ethanol/szzszz = 5)
|
||||
required_reagents = list(/datum/reagent/consumable/ethanol/bitters = 1 ,/datum/reagent/consumable/pwr_game = 1, /datum/reagent/consumable/ethanol/trappist = 3)
|
||||
|
||||
/datum/chemical_reaction/drink/storm_over_avon
|
||||
results = list(/datum/reagent/consumable/ethanol/storm_over_avon = 10)
|
||||
required_reagents = list(/datum/reagent/consumable/space_up = 3, /datum/reagent/consumable/menthol = 1 , /datum/reagent/consumable/ethanol/thirteenloko = 2, /datum/reagent/consumable/ethanol/ginfizz = 4)
|
||||
|
||||
/datum/chemical_reaction/drink/coilhouse_cocktail
|
||||
results = list(/datum/reagent/consumable/ethanol/coilhouse_cocktail = 10)
|
||||
required_reagents = list(/datum/reagent/consumable/hakka_mate = 3, /datum/reagent/consumable/pwr_game = 1, /datum/reagent/consumable/lemonjuice = 1, /datum/reagent/consumable/ethanol/screwdrivercocktail = 5)
|
||||
|
||||
/datum/chemical_reaction/drink/electric_avenue
|
||||
results = list(/datum/reagent/consumable/ethanol/electric_avenue = 10)
|
||||
required_reagents = list(/datum/reagent/consumable/salt = 1, /datum/reagent/consumable/triple_citrus = 6, /datum/reagent/consumable/ethanol/goldschlager = 3)
|
||||
|
||||
/datum/chemical_reaction/drink/ira_de_zeus
|
||||
results = list(/datum/reagent/consumable/ethanol/ira_de_zeus = 5)
|
||||
required_reagents = list(/datum/reagent/consumable/ethanol/blue_blazer = 3,/datum/reagent/consumable/ethanol/wine_voltaic = 1, /datum/reagent/consumable/ethanol/curacao = 1)
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
//Hemophage drinks
|
||||
|
||||
/datum/chemical_reaction/drink/blood_tea
|
||||
results = list(/datum/reagent/consumable/icetea/blood_tea = 2) //Results in 2u instead of 3
|
||||
required_reagents = list(/datum/reagent/consumable/icetea = 1, /datum/reagent/blood = 2)
|
||||
@@ -10,3 +12,10 @@
|
||||
results = list(/datum/reagent/consumable/intraverde = 5)
|
||||
required_reagents = list(/datum/reagent/consumable/melon_soda = 1, /datum/reagent/consumable/cream = 1, /datum/reagent/consumable/ice = 1, /datum/reagent/blood = 2)
|
||||
|
||||
//Ethereal Drinks
|
||||
|
||||
/datum/chemical_reaction/drink/blumpkin_compot
|
||||
results = list(/datum/reagent/consumable/blumpkin_compot = 9)
|
||||
required_reagents = list(/datum/reagent/consumable/blumpkinjuice = 4, /datum/reagent/consumable/berryjuice = 2, /datum/reagent/consumable/hakka_mate = 2,/datum/reagent/consumable/sugar = 1)
|
||||
required_temp = 373.15 //Boil to make stew...
|
||||
mix_message = "The mixture reaches a boil, and begins to generate an electric charge..."
|
||||
|
||||
@@ -32,14 +32,14 @@
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
chemical_flags_skyrat = REAGENT_BLOOD_REGENERATING
|
||||
|
||||
/datum/reagent/consumable/icetea/blood_tea/expose_mob(mob/living/exposed_mob, methods, reac_volume)
|
||||
/datum/reagent/consumable/icetea/blood_tea/expose_mob(mob/living/affected_mob, methods, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & INGEST))
|
||||
return
|
||||
var/obj/item/organ/stomach/stomach = exposed_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(exposed_mob) || reac_volume <= 0)
|
||||
var/obj/item/organ/stomach/stomach = affected_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(affected_mob) || reac_volume <= 0)
|
||||
return
|
||||
exposed_mob.blood_volume = min(exposed_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
affected_mob.blood_volume = min(affected_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
|
||||
/datum/glass_style/drinking_glass/blood_tea
|
||||
required_drink_type = /datum/reagent/consumable/icetea/blood_tea
|
||||
@@ -58,14 +58,14 @@
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
chemical_flags_skyrat = REAGENT_BLOOD_REGENERATING
|
||||
|
||||
/datum/reagent/consumable/coffee/blood_coffee/expose_mob(mob/living/exposed_mob, methods, reac_volume)
|
||||
/datum/reagent/consumable/coffee/blood_coffee/expose_mob(mob/living/affected_mob, methods, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & INGEST))
|
||||
return
|
||||
var/obj/item/organ/stomach/stomach = exposed_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(exposed_mob) || reac_volume <= 0)
|
||||
var/obj/item/organ/stomach/stomach = affected_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(affected_mob) || reac_volume <= 0)
|
||||
return
|
||||
exposed_mob.blood_volume = min(exposed_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
affected_mob.blood_volume = min(affected_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
|
||||
/datum/glass_style/drinking_glass/blood_coffee
|
||||
required_drink_type = /datum/reagent/consumable/coffee/blood_coffee
|
||||
@@ -81,74 +81,77 @@
|
||||
color = "#40e729"
|
||||
quality = DRINK_GOOD
|
||||
taste_description = "tart sugar and a bit lip."
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
chemical_flags_skyrat = REAGENT_BLOOD_REGENERATING
|
||||
|
||||
/datum/reagent/consumable/intraverde/expose_mob(mob/living/exposed_mob, methods, reac_volume)
|
||||
/datum/reagent/consumable/intraverde/expose_mob(mob/living/affected_mob, methods, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & INGEST))
|
||||
return
|
||||
var/obj/item/organ/stomach/stomach = exposed_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(exposed_mob) || reac_volume <= 0)
|
||||
var/obj/item/organ/stomach/stomach = affected_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(affected_mob) || reac_volume <= 0)
|
||||
return
|
||||
exposed_mob.blood_volume = min(exposed_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
affected_mob.blood_volume = min(affected_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
|
||||
/datum/glass_style/drinking_glass/intraverde
|
||||
required_drink_type = /datum/reagent/consumable/intraverde
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "intraverde"
|
||||
name = "glass of intraverde"
|
||||
name = "Intraverde"
|
||||
desc = "A fang-rotting float, often requested by hemophage fledglings who have yet grown the taste for ichor. The whipped cream top is infused with blood."
|
||||
|
||||
|
||||
/datum/reagent/consumable/ethanol/venetianwaltz
|
||||
/datum/reagent/consumable/ethanol/venetian_waltz
|
||||
name = "Venetian Waltz"
|
||||
description = "A chocolate-caramel dessert cocktail, made for blood-drinkers."
|
||||
color = "#38210b"
|
||||
boozepwr = 15
|
||||
quality = DRINK_GOOD
|
||||
taste_description = "dark and bloody chocolate"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
chemical_flags_skyrat = REAGENT_BLOOD_REGENERATING
|
||||
|
||||
/datum/reagent/consumable/ethanol/venetianwaltz/expose_mob(mob/living/exposed_mob, methods, reac_volume)
|
||||
/datum/reagent/consumable/ethanol/venetian_waltz/expose_mob(mob/living/affected_mob, methods, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & INGEST))
|
||||
return
|
||||
var/obj/item/organ/stomach/stomach = exposed_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(exposed_mob) || reac_volume <= 0)
|
||||
var/obj/item/organ/stomach/stomach = affected_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(affected_mob) || reac_volume <= 0)
|
||||
return
|
||||
exposed_mob.blood_volume = min(exposed_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
affected_mob.blood_volume = min(affected_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
|
||||
/datum/glass_style/drinking_glass/venetianwaltz
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/venetianwaltz
|
||||
/datum/glass_style/drinking_glass/venetian_waltz
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/venetian_waltz
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "venetianwaltz"
|
||||
name = "glass of venetian waltz"
|
||||
icon_state = "venetian_waltz"
|
||||
name = "Venetian Waltz"
|
||||
desc = "Despite the presentation, its scoffed at by older generations for its dessert-like flavour, and is relegated to the tables of sororities and heemoboos as punishment."
|
||||
|
||||
|
||||
/datum/reagent/consumable/ethanol/cranberrycadillac
|
||||
/datum/reagent/consumable/ethanol/cranberry_cadillac
|
||||
name = "Cranberry Cadillac"
|
||||
description = "A bubbly, candy-rimmed cocktail."
|
||||
color = "#ac1e2a"
|
||||
boozepwr = 45
|
||||
quality = DRINK_GOOD
|
||||
taste_description = "a hit-and-run made of candy"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
chemical_flags_skyrat = REAGENT_BLOOD_REGENERATING
|
||||
|
||||
/datum/reagent/consumable/ethanol/cranberrycadillac/expose_mob(mob/living/exposed_mob, methods, reac_volume)
|
||||
/datum/reagent/consumable/ethanol/cranberry_cadillac/expose_mob(mob/living/affected_mob, methods, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & INGEST))
|
||||
return
|
||||
var/obj/item/organ/stomach/stomach = exposed_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(exposed_mob) || reac_volume <= 0)
|
||||
var/obj/item/organ/stomach/stomach = affected_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(affected_mob) || reac_volume <= 0)
|
||||
return
|
||||
exposed_mob.blood_volume = min(exposed_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
affected_mob.blood_volume = min(affected_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
|
||||
/datum/glass_style/drinking_glass/cranberrycadillac
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/cranberrycadillac
|
||||
/datum/glass_style/drinking_glass/cranberry_cadillac
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/cranberry_cadillac
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "cranberrycadillac"
|
||||
name = "coupe of cranberry cadillac"
|
||||
icon_state = "cranberry_cadillac"
|
||||
name = "Cranberry Cadillac"
|
||||
desc = "The sugar crystals that rim the glass are red with real blood, inviting the hungry to lick it clean. Served with half a lemon slice to counter the sweetness."
|
||||
|
||||
|
||||
@@ -159,26 +162,27 @@
|
||||
boozepwr = 30
|
||||
quality = DRINK_GOOD
|
||||
taste_description = "danger looming above you"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
chemical_flags_skyrat = REAGENT_BLOOD_REGENERATING
|
||||
|
||||
/datum/reagent/consumable/ethanol/jubokko/expose_mob(mob/living/exposed_mob, methods, reac_volume)
|
||||
/datum/reagent/consumable/ethanol/jubokko/expose_mob(mob/living/affected_mob, methods, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & INGEST))
|
||||
return
|
||||
var/obj/item/organ/stomach/stomach = exposed_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(exposed_mob) || reac_volume <= 0)
|
||||
var/obj/item/organ/stomach/stomach = affected_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(affected_mob) || reac_volume <= 0)
|
||||
return
|
||||
exposed_mob.blood_volume = min(exposed_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
affected_mob.blood_volume = min(affected_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
|
||||
/datum/glass_style/drinking_glass/jubokko
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/jubokko
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "jubokko"
|
||||
name = "serving of jubokko"
|
||||
name = "Jubokko"
|
||||
desc = "The martian, blood-drinking chaebol serve this to their guests. Tasteful as it appears, any good poet knows foreshadowing when it's put in front of them."
|
||||
|
||||
|
||||
/datum/reagent/consumable/ethanol/moroccocoffin
|
||||
/datum/reagent/consumable/ethanol/morocco_coffin
|
||||
name = "Morocco Coffin"
|
||||
description = "A cold pressed coffee with a tinge of iron."
|
||||
color = "#200608"
|
||||
@@ -186,38 +190,39 @@
|
||||
overdose_threshold = 75
|
||||
quality = DRINK_GOOD
|
||||
taste_description = "waking up at midnight"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
chemical_flags_skyrat = REAGENT_BLOOD_REGENERATING
|
||||
metabolized_traits = list(TRAIT_STIMULATED)
|
||||
|
||||
/datum/reagent/consumable/ethanol/moroccocoffin/overdose_process(mob/living/affected_mob, seconds_per_tick, times_fired)
|
||||
/datum/reagent/consumable/ethanol/morocco_coffin/overdose_process(mob/living/affected_mob, seconds_per_tick, times_fired)
|
||||
. = ..()
|
||||
affected_mob.set_jitter_if_lower(10 SECONDS * REM * seconds_per_tick)
|
||||
|
||||
/datum/reagent/consumable/ethanol/moroccocoffin/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
/datum/reagent/consumable/ethanol/morocco_coffin/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
. = ..()
|
||||
affected_mob.adjust_dizzy(-10 SECONDS * REM * seconds_per_tick)
|
||||
affected_mob.adjust_drowsiness(-6 SECONDS * REM * seconds_per_tick)
|
||||
affected_mob.AdjustSleeping(-4 SECONDS * REM * seconds_per_tick)
|
||||
affected_mob.adjust_bodytemperature(-5 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * seconds_per_tick, affected_mob.get_body_temp_normal())
|
||||
|
||||
/datum/reagent/consumable/ethanol/moroccocoffin/expose_mob(mob/living/exposed_mob, methods, reac_volume)
|
||||
/datum/reagent/consumable/ethanol/morocco_coffin/expose_mob(mob/living/affected_mob, methods, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & INGEST))
|
||||
return
|
||||
var/obj/item/organ/stomach/stomach = exposed_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(exposed_mob) || reac_volume <= 0)
|
||||
var/obj/item/organ/stomach/stomach = affected_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(affected_mob) || reac_volume <= 0)
|
||||
return
|
||||
exposed_mob.blood_volume = min(exposed_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
affected_mob.blood_volume = min(affected_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
|
||||
/datum/glass_style/drinking_glass/moroccocoffin
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/moroccocoffin
|
||||
/datum/glass_style/drinking_glass/morocco_coffin
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/morocco_coffin
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "moroccocoffin"
|
||||
name = "glass of morocco coffin"
|
||||
icon_state = "morocco_coffin"
|
||||
name = "Morocco Coffin"
|
||||
desc = "For waking up when the sun goes down. Cools you down and wakes you up."
|
||||
|
||||
|
||||
/datum/reagent/consumable/ethanol/batouttahell
|
||||
/datum/reagent/consumable/ethanol/bat_outta_hell
|
||||
name = "Bat Outta' Hell"
|
||||
description = "Brave bull mixed with blood, with an absinthe 'varnish' sitting on top."
|
||||
color = "#3d1013"
|
||||
@@ -225,38 +230,373 @@
|
||||
overdose_threshold = 47
|
||||
quality = DRINK_VERYGOOD
|
||||
taste_description = "the blinding thrill of a HOME RUN, BABY!!"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
chemical_flags_skyrat = REAGENT_BLOOD_REGENERATING
|
||||
metabolization_rate = 1.2 * REAGENTS_METABOLISM
|
||||
|
||||
/datum/reagent/consumable/ethanol/batouttahell/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
/datum/reagent/consumable/ethanol/bat_outta_hell/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
. = ..()
|
||||
affected_mob.remove_status_effect(/datum/status_effect/drowsiness)
|
||||
affected_mob.AdjustSleeping(-2 SECONDS * REM * seconds_per_tick)
|
||||
|
||||
/datum/reagent/consumable/ethanol/batouttahell/overdose_process(mob/living/affected_mob, seconds_per_tick, times_fired)
|
||||
/datum/reagent/consumable/ethanol/bat_outta_hell/overdose_process(mob/living/affected_mob, seconds_per_tick, times_fired)
|
||||
. = ..()
|
||||
affected_mob.add_traits(list(TRAIT_GOOD_HEARING, TRAIT_MINOR_NIGHT_VISION),"Overdose:/datum/reagent/consumable/ethanol/batouttahell")
|
||||
affected_mob.add_traits(list(TRAIT_GOOD_HEARING, TRAIT_MINOR_NIGHT_VISION),"Overdose:/datum/reagent/consumable/ethanol/bat_outta_hell")
|
||||
metabolization_rate = 4.5 * REAGENTS_METABOLISM
|
||||
affected_mob.set_jitter_if_lower(5 SECONDS * REM * seconds_per_tick)
|
||||
affected_mob.set_dizzy_if_lower(5 SECONDS * REM * seconds_per_tick)
|
||||
affected_mob.set_temp_blindness_if_lower(5 SECONDS * REM * seconds_per_tick)
|
||||
|
||||
/datum/reagent/consumable/ethanol/batouttahell/on_mob_end_metabolize(mob/living/affected_mob)
|
||||
/datum/reagent/consumable/ethanol/bat_outta_hell/on_mob_end_metabolize(mob/living/affected_mob)
|
||||
. = ..()
|
||||
affected_mob.remove_traits(list(TRAIT_GOOD_HEARING, TRAIT_MINOR_NIGHT_VISION),"Overdose:/datum/reagent/consumable/ethanol/batouttahell")
|
||||
affected_mob.remove_traits(list(TRAIT_GOOD_HEARING, TRAIT_MINOR_NIGHT_VISION),"Overdose:/datum/reagent/consumable/ethanol/bat_outta_hell")
|
||||
|
||||
/datum/reagent/consumable/ethanol/batouttahell/expose_mob(mob/living/exposed_mob, methods, reac_volume)
|
||||
/datum/reagent/consumable/ethanol/bat_outta_hell/expose_mob(mob/living/affected_mob, methods, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & INGEST))
|
||||
return
|
||||
var/obj/item/organ/stomach/stomach = exposed_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(exposed_mob) || reac_volume <= 0)
|
||||
var/obj/item/organ/stomach/stomach = affected_mob.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(!istype(stomach) || !ishemophage(affected_mob) || reac_volume <= 0)
|
||||
return
|
||||
exposed_mob.blood_volume = min(exposed_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
affected_mob.blood_volume = min(affected_mob.blood_volume + reac_volume, BLOOD_VOLUME_MAXIMUM)
|
||||
|
||||
/datum/glass_style/drinking_glass/batouttahell
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/batouttahell
|
||||
/datum/glass_style/drinking_glass/bat_outta_hell
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/bat_outta_hell
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "batouttahell"
|
||||
name = "glass of bat outta' hell"
|
||||
icon_state = "bat_outta_hell"
|
||||
name = "Bat Outta' Hell"
|
||||
desc = "Strong enough to send you flyin' out of the park! Or maybe stumbling..."
|
||||
|
||||
//Ethereal Drinks
|
||||
|
||||
/datum/reagent/consumable/ethanol/karakrak
|
||||
name = "Karakrak"
|
||||
description = "A lightly charged ration made with filtered wine"
|
||||
color = "#5c0b12"
|
||||
boozepwr = 0
|
||||
quality = DRINK_NICE
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
taste_description = "bitter, watered down energy"
|
||||
|
||||
/datum/reagent/consumable/ethanol/karakrak/expose_mob(mob/living/affected_mob, methods=TOUCH, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & (INGEST|INJECT|PATCH)) || !iscarbon(affected_mob))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/exposed_carbon = affected_mob
|
||||
var/obj/item/organ/stomach/ethereal/stomach = exposed_carbon.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(istype(stomach))
|
||||
stomach.adjust_charge(reac_volume * 3 * ETHEREAL_DISCHARGE_RATE)
|
||||
|
||||
/datum/glass_style/drinking_glass/karakrak
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/karakrak
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "karakrak"
|
||||
name = "Karakrak"
|
||||
desc = "A sort of electric, alcohol-stripped wine served to the lowest castes of the ethereal masses, typically distributed by the clergy. Served on a rubber coaster to keep what very little charge exists from dissipating into the table."
|
||||
|
||||
|
||||
/datum/reagent/consumable/ethanol/szzszz
|
||||
name = "Szz Szz"
|
||||
description = "A bootlegged version of ethereal monastic wine"
|
||||
color = "#5c0b12"
|
||||
boozepwr = 25
|
||||
quality = DRINK_GOOD
|
||||
taste_description = "bitter-sweet sin"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
metabolized_traits = list(TRAIT_STIMULATED)
|
||||
var/obj/effect/light_holder
|
||||
|
||||
/datum/reagent/consumable/ethanol/szzszz/expose_mob(mob/living/affected_mob, methods=TOUCH, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & (INGEST|INJECT|PATCH)) || !iscarbon(affected_mob))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/exposed_carbon = affected_mob
|
||||
var/obj/item/organ/stomach/ethereal/stomach = exposed_carbon.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(istype(stomach))
|
||||
stomach.adjust_charge(reac_volume * 4 * ETHEREAL_DISCHARGE_RATE)
|
||||
else //If you are NOT an ethereal, you jitter
|
||||
affected_mob.set_jitter_if_lower(10 SECONDS * REM * reac_volume)
|
||||
|
||||
/datum/reagent/consumable/ethanol/szzszz/on_mob_metabolize(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
. = ..() //Gives glow
|
||||
light_holder = new(affected_mob)
|
||||
light_holder.set_light(1.3, 1, COLOR_MAROON)
|
||||
|
||||
/datum/reagent/consumable/ethanol/szzszz/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
if(QDELETED(light_holder))
|
||||
holder.del_reagent(type) //If we lost our light object somehow, remove the reagent
|
||||
else if(light_holder.loc != affected_mob)
|
||||
light_holder.forceMove(affected_mob)
|
||||
return ..()
|
||||
|
||||
/datum/reagent/consumable/ethanol/szzszz/on_mob_end_metabolize(mob/living/affected_mob)
|
||||
. = ..()
|
||||
QDEL_NULL(light_holder)
|
||||
|
||||
/datum/glass_style/drinking_glass/szzszz
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/szzszz
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "szzszz"
|
||||
name = "Szz Szz"
|
||||
desc = "A bootlegged version of the Divine Conduit's exclusive monastic wine. The flavour has been approximated by a thousand different tongues, who for at threat of persecution, have never actually tasted it."
|
||||
|
||||
|
||||
/datum/reagent/consumable/blumpkin_compot
|
||||
name = "Blumpkin Compot"
|
||||
description = "Stewed fruit, sugar, and yerba leaf. An ethereal energy drink."
|
||||
color = "#3cc6e9"
|
||||
quality = DRINK_VERYGOOD
|
||||
taste_description = "clean, reliable energy"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
metabolized_traits = list(TRAIT_STIMULATED)
|
||||
|
||||
/datum/reagent/consumable/blumpkin_compot/expose_mob(mob/living/affected_mob, methods=TOUCH, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & (INGEST|INJECT|PATCH)) || !iscarbon(affected_mob))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/exposed_carbon = affected_mob
|
||||
var/obj/item/organ/stomach/ethereal/stomach = exposed_carbon.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(istype(stomach))
|
||||
stomach.adjust_charge(reac_volume * 7 * ETHEREAL_DISCHARGE_RATE)
|
||||
else
|
||||
affected_mob.set_jitter_if_lower(10 SECONDS * REM * reac_volume)
|
||||
|
||||
/datum/reagent/consumable/blumpkin_compot/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
. = ..()
|
||||
affected_mob.adjust_dizzy(-10 SECONDS * REM * seconds_per_tick)
|
||||
affected_mob.adjust_drowsiness(-6 SECONDS * REM * seconds_per_tick)
|
||||
|
||||
/datum/glass_style/drinking_glass/blumpkin_compot
|
||||
required_drink_type = /datum/reagent/consumable/blumpkin_compot
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "blumpkin_compot"
|
||||
name = "Blumpkin Compot"
|
||||
desc = "A drink created by ethereal expats made of stewed blumpkin flesh and whole berries. Sugar helps to draws out the conductive elements, making for a politely energizing beverage that's safe to drink, and also doesnt taste like window cleaner."
|
||||
|
||||
|
||||
/datum/reagent/consumable/ethanol/storm_over_avon
|
||||
name = "Storm-Over-Avon"
|
||||
description = "A ginny, minty cocktail for ethereal artisans."
|
||||
color = "#ffca37"
|
||||
boozepwr = 50
|
||||
quality = DRINK_VERYGOOD
|
||||
taste_description = "energetic snobbery"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
metabolized_traits = list(TRAIT_STIMULATED)
|
||||
var/obj/effect/light_holder
|
||||
var/shock_timer = 0
|
||||
var/unluckyshock = 0
|
||||
|
||||
/datum/reagent/consumable/ethanol/storm_over_avon/expose_mob(mob/living/affected_mob, methods=TOUCH, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & (INGEST|INJECT|PATCH)) || !iscarbon(affected_mob))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/exposed_carbon = affected_mob
|
||||
var/obj/item/organ/stomach/ethereal/stomach = exposed_carbon.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(istype(stomach))
|
||||
stomach.adjust_charge(reac_volume * 8 * ETHEREAL_DISCHARGE_RATE)
|
||||
else //If you are not etheral, jitter. Random chance to ZAP you, every sip. Roll a one; zap.
|
||||
affected_mob.set_jitter_if_lower(5 SECONDS * REM * reac_volume)
|
||||
unluckyshock = rand(1, 15)
|
||||
if(unluckyshock == 1)
|
||||
to_chat(affected_mob, span_userdanger("You feel a sharp jolt of energy spark off your tongue!"))
|
||||
affected_mob.electrocute_act(rand(1, 5), "Storm-Over-Avon shock", 1, SHOCK_NOGLOVES)
|
||||
playsound(affected_mob, 'sound/machines/defib/defib_zap.ogg', 30, TRUE, SHORT_RANGE_SOUND_EXTRARANGE)
|
||||
|
||||
/datum/reagent/consumable/ethanol/storm_over_avon/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
. = ..()
|
||||
affected_mob.adjust_dizzy(-10 SECONDS * REM * seconds_per_tick)
|
||||
affected_mob.adjust_drowsiness(-6 SECONDS * REM * seconds_per_tick)
|
||||
|
||||
/datum/reagent/consumable/ethanol/storm_over_avon/on_mob_metabolize(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
. = ..() //Gives glow
|
||||
light_holder = new(affected_mob)
|
||||
light_holder.set_light(1.3, 1.5, COLOR_BRIGHT_BLUE)
|
||||
|
||||
/datum/reagent/consumable/ethanol/storm_over_avon/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
if(QDELETED(light_holder))
|
||||
holder.del_reagent(type) //If we lost our light object somehow, remove the reagent
|
||||
else if(light_holder.loc != affected_mob)
|
||||
light_holder.forceMove(affected_mob)
|
||||
return ..()
|
||||
|
||||
/datum/reagent/consumable/ethanol/storm_over_avon/on_mob_end_metabolize(mob/living/affected_mob)
|
||||
. = ..()
|
||||
QDEL_NULL(light_holder)
|
||||
|
||||
/datum/glass_style/drinking_glass/storm_over_avon
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/storm_over_avon
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "storm_over_avon"
|
||||
name = "Storm-Over-Avon"
|
||||
desc = "A complicated cocktail preferred by devotees of the Everlasting Note. While its original ingredients are impossible to source off of Sprout, this drink-alike still resonates with the pretention that only a musical ecclesiarchy can hone. Known to rarely shock non-ethereals."
|
||||
|
||||
|
||||
/datum/reagent/consumable/ethanol/coilhouse_cocktail
|
||||
name = "Coilhouse Cocktail"
|
||||
description = "A citrusy, electrified drink with orange juice and lemon."
|
||||
color = "#d6ff21"
|
||||
boozepwr = 30
|
||||
quality = DRINK_VERYGOOD
|
||||
taste_description = "a disco ball in your mouth"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
metabolized_traits = list(TRAIT_STIMULATED)
|
||||
metabolization_rate = 1.1 * REAGENTS_METABOLISM
|
||||
var/obj/effect/light_holder
|
||||
var/shock_timer = 0
|
||||
var/unluckyshock = 0
|
||||
|
||||
/datum/reagent/consumable/ethanol/coilhouse_cocktail/expose_mob(mob/living/affected_mob, methods=TOUCH, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & (INGEST|INJECT|PATCH)) || !iscarbon(affected_mob))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/exposed_carbon = affected_mob
|
||||
var/obj/item/organ/stomach/ethereal/stomach = exposed_carbon.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(istype(stomach))
|
||||
stomach.adjust_charge(reac_volume * 6 * ETHEREAL_DISCHARGE_RATE)
|
||||
else
|
||||
affected_mob.set_jitter_if_lower(10 SECONDS * REM * reac_volume)
|
||||
unluckyshock = rand(1, 6)
|
||||
if(unluckyshock == 1)
|
||||
to_chat(affected_mob, span_userdanger("You feel a sharp jolt of energy spark off your tongue!"))
|
||||
affected_mob.electrocute_act(rand(2, 8), "Coilhouse Cocktail shock", 1, SHOCK_NOGLOVES)
|
||||
playsound(affected_mob, 'sound/machines/defib/defib_zap.ogg', 40, TRUE, SHORT_RANGE_SOUND_EXTRARANGE)
|
||||
|
||||
/datum/reagent/consumable/ethanol/coilhouse_cocktail/on_mob_metabolize(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
. = ..() //Gives glow
|
||||
light_holder = new(affected_mob)
|
||||
light_holder.set_light(1.3, 1.5, COLOR_YELLOW)
|
||||
|
||||
/datum/reagent/consumable/ethanol/coilhouse_cocktail/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
if(QDELETED(light_holder))
|
||||
holder.del_reagent(type) //If we lost our light object somehow, remove the reagent
|
||||
else if(light_holder.loc != affected_mob)
|
||||
light_holder.forceMove(affected_mob)
|
||||
return ..()
|
||||
|
||||
/datum/reagent/consumable/ethanol/coilhouse_cocktail/on_mob_end_metabolize(mob/living/affected_mob)
|
||||
. = ..()
|
||||
QDEL_NULL(light_holder)
|
||||
|
||||
/datum/glass_style/drinking_glass/coilhouse_cocktail
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/coilhouse_cocktail
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "coilhouse_cocktail"
|
||||
name = "Coilhouse Cocktail"
|
||||
desc = "An ethereal cocktail too bombastic to have been born inside Soatii space. Also known as a Shocktown Jitter to those not made of electricity, for reasons that will become quickly apparent."
|
||||
|
||||
|
||||
/datum/reagent/consumable/ethanol/electric_avenue
|
||||
name = "Electric Avenue"
|
||||
description = "A cocktail made of goldschlager and citrus, with salt."
|
||||
color = "#d37810"
|
||||
boozepwr = 25
|
||||
quality = DRINK_VERYGOOD
|
||||
taste_description = "a sour, electric chair"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
metabolized_traits = list(TRAIT_STIMULATED)
|
||||
metabolization_rate = 1.6 * REAGENTS_METABOLISM
|
||||
var/obj/effect/light_holder
|
||||
var/shock_timer = 0
|
||||
var/unluckyshock = 0
|
||||
|
||||
/datum/reagent/consumable/ethanol/electric_avenue/expose_mob(mob/living/affected_mob, methods=TOUCH, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & (INGEST|INJECT|PATCH)) || !iscarbon(affected_mob))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/exposed_carbon = affected_mob
|
||||
var/obj/item/organ/stomach/ethereal/stomach = exposed_carbon.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(istype(stomach))
|
||||
stomach.adjust_charge(reac_volume * 10 * ETHEREAL_DISCHARGE_RATE)
|
||||
else
|
||||
affected_mob.set_jitter_if_lower(10 SECONDS * REM * reac_volume)
|
||||
unluckyshock = rand(1, 3)
|
||||
if(unluckyshock == 1)
|
||||
to_chat(affected_mob, span_userdanger("You feel a violent jolt of energy spark off your tongue!"))
|
||||
affected_mob.electrocute_act(rand(15, 35), "Electric avenue shock", 1, SHOCK_NOGLOVES)
|
||||
playsound(affected_mob, 'sound/machines/defib/defib_zap.ogg', 55, TRUE, SHORT_RANGE_SOUND_EXTRARANGE)
|
||||
|
||||
/datum/reagent/consumable/ethanol/electric_avenue/on_mob_metabolize(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
. = ..() //Gives glow
|
||||
light_holder = new(affected_mob)
|
||||
light_holder.set_light(1.3, 1.5, COLOR_VERY_SOFT_YELLOW)
|
||||
|
||||
/datum/reagent/consumable/ethanol/electric_avenue/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
if(QDELETED(light_holder))
|
||||
holder.del_reagent(type) //If we lost our light object somehow, remove the reagent
|
||||
else if(light_holder.loc != affected_mob)
|
||||
light_holder.forceMove(affected_mob)
|
||||
return ..()
|
||||
|
||||
/datum/reagent/consumable/ethanol/electric_avenue/on_mob_end_metabolize(mob/living/affected_mob)
|
||||
. = ..()
|
||||
QDEL_NULL(light_holder)
|
||||
|
||||
/datum/glass_style/drinking_glass/electric_avenue
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/electric_avenue
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "electric_avenue"
|
||||
name = "Electric Avenue"
|
||||
desc = "Named after a mythical location in the Sol System, this drink is meant to be sipped slowly through the narrow copper straw, representing the long but brisk taste of life. But to non-ethereals, it's a warp lane to the emergency room."
|
||||
|
||||
|
||||
/datum/reagent/consumable/ethanol/ira_de_zeus
|
||||
name = "Ira de Zeus"
|
||||
description = "A deep blue cocktail made by harnessing electricity and fire."
|
||||
color = "#3e1ef1"
|
||||
boozepwr = 60
|
||||
quality = DRINK_VERYGOOD
|
||||
taste_description = "sharp, spiced hypocracy"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
|
||||
metabolized_traits = list(TRAIT_STIMULATED)
|
||||
metabolization_rate = 1.1 * REAGENTS_METABOLISM
|
||||
var/obj/effect/light_holder
|
||||
var/shock_timer = 0
|
||||
var/unluckyshock = 0
|
||||
|
||||
/datum/reagent/consumable/ethanol/ira_de_zeus/expose_mob(mob/living/affected_mob, methods=TOUCH, reac_volume)
|
||||
. = ..()
|
||||
if(!(methods & (INGEST|INJECT|PATCH)) || !iscarbon(affected_mob))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/exposed_carbon = affected_mob
|
||||
var/obj/item/organ/stomach/ethereal/stomach = exposed_carbon.get_organ_slot(ORGAN_SLOT_STOMACH)
|
||||
if(istype(stomach))
|
||||
stomach.adjust_charge(reac_volume * 5 * ETHEREAL_DISCHARGE_RATE)
|
||||
else
|
||||
affected_mob.set_jitter_if_lower(5 SECONDS * REM * reac_volume)
|
||||
unluckyshock = rand(1, 8)
|
||||
if(unluckyshock == 1)
|
||||
to_chat(affected_mob, span_userdanger("You feel a violent jolt of energy spark off your tongue!"))
|
||||
affected_mob.electrocute_act(rand(10, 25), "Ira de Zeus shock", 1, SHOCK_NOGLOVES)
|
||||
playsound(affected_mob, 'sound/machines/defib/defib_zap.ogg', 40, TRUE, SHORT_RANGE_SOUND_EXTRARANGE)
|
||||
|
||||
/datum/reagent/consumable/ethanol/ira_de_zeus/on_mob_metabolize(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
. = ..() //Gives glow
|
||||
light_holder = new(affected_mob)
|
||||
light_holder.set_light(1.2, 3.5, COLOR_BRIGHT_BLUE)
|
||||
|
||||
/datum/reagent/consumable/ethanol/ira_de_zeus/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
|
||||
affected_mob.adjust_bodytemperature(15 * REM * TEMPERATURE_DAMAGE_COEFFICIENT * seconds_per_tick, affected_mob.get_body_temp_normal()+ 20)
|
||||
if(QDELETED(light_holder))
|
||||
holder.del_reagent(type) //If we lost our light object somehow, remove the reagent
|
||||
else if(light_holder.loc != affected_mob)
|
||||
light_holder.forceMove(affected_mob)
|
||||
return ..()
|
||||
|
||||
/datum/reagent/consumable/ethanol/ira_de_zeus/on_mob_end_metabolize(mob/living/affected_mob)
|
||||
. = ..()
|
||||
QDEL_NULL(light_holder)
|
||||
|
||||
/datum/glass_style/drinking_glass/ira_de_zeus
|
||||
required_drink_type = /datum/reagent/consumable/ethanol/ira_de_zeus
|
||||
icon = 'modular_zubbers/icons/obj/drinks/mixed_drinks.dmi'
|
||||
icon_state = "ira_de_zeus"
|
||||
name = "Ira De Zeus"
|
||||
desc = "A radiant ethereal drink that warms the body and tickles the tongue. The original recipie, fabled to have originated from the tables of Sprout's upper-caste clergy, would imply heresy of the highest order. Good thing it's only a fable... May shock non-ethereals."
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 42 KiB |
Reference in New Issue
Block a user