mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-21 21:10:30 +01:00
ccccfa57d2
## About PR This PR adds four new Unathi related drinks and reflavours most of the existing ones to be less of weird wordplays and jokes. Requested by the Unathi team. The new drinks and bottle sprite can be seen below. Please enjoy: > <img width="547" height="102" alt="image" src="https://github.com/user-attachments/assets/c2122a83-eccd-4b46-b57a-089e6d81704c" /> Tested (hopefully) all changes. Works on my machine. 👍 ### Asset Licenses The following assets that **have not** been created by myself are included in this PR: | Path | Original Author | License | | --- | --- | --- | | icons/obj/drinks.dmi | Captain Gecko (AuroraStation) | CC0 | | icons/obj/reagent_containers/food/drinks/bottle..dmi | Captain Gecko (AuroraStation) | CC0 |
179 lines
6.8 KiB
Plaintext
179 lines
6.8 KiB
Plaintext
/datum/bounty/reagent
|
|
var/required_volume = 10
|
|
var/shipped_volume = 0
|
|
var/singleton/reagent/wanted_reagent
|
|
var/list/possible_descriptions = list("We're interested in testing the quality of our stations' bartenders!",
|
|
"We're holding an office party and need some drink variety.",
|
|
"We're holding a mixing competition, and you'll receive a bonus for competing.",
|
|
"One of our agents has had a hard day and needs to unwind so badly they're willing to put up for a bounty.",
|
|
"We need some drinks for a PR campaign setup.",
|
|
"One of our bartenders is having trouble getting inspired, and wants to see a different drink.")
|
|
|
|
/datum/bounty/reagent/completion_string()
|
|
return {"[round(shipped_volume)]/[required_volume] Units"}
|
|
|
|
/datum/bounty/reagent/can_claim()
|
|
return ..() && shipped_volume >= required_volume
|
|
|
|
/datum/bounty/reagent/applies_to(obj/O)
|
|
if(!istype(O, /obj/item/reagent_containers))
|
|
return FALSE
|
|
if(!O.reagents || !O.reagents.has_reagent(wanted_reagent.type))
|
|
return FALSE
|
|
return shipped_volume < required_volume
|
|
|
|
/datum/bounty/reagent/ship(obj/O)
|
|
if(!applies_to(O))
|
|
return
|
|
shipped_volume += REAGENT_VOLUME(O.reagents, wanted_reagent.type)
|
|
if(shipped_volume > required_volume)
|
|
shipped_volume = required_volume
|
|
|
|
/datum/bounty/reagent/compatible_with(other_bounty)
|
|
if(!istype(other_bounty, /datum/bounty/reagent))
|
|
return TRUE
|
|
var/datum/bounty/reagent/R = other_bounty
|
|
return wanted_reagent.type != R.wanted_reagent.type
|
|
|
|
/datum/bounty/reagent/simple_drink
|
|
name = "Simple Drink"
|
|
reward_low = 50
|
|
reward_high = 150
|
|
|
|
/datum/bounty/reagent/simple_drink/New()
|
|
..()
|
|
// Don't worry about making this comprehensive. It doesn't matter if some drinks are skipped.
|
|
var/list/possible_reagents = list(
|
|
/singleton/reagent/alcohol/antifreeze,
|
|
/singleton/reagent/alcohol/andalusia,
|
|
/singleton/reagent/alcohol/coffee/b52,
|
|
/singleton/reagent/alcohol/bananahonk,
|
|
/singleton/reagent/alcohol/bilk,
|
|
/singleton/reagent/alcohol/blackrussian,
|
|
/singleton/reagent/alcohol/bloodymary,
|
|
/singleton/reagent/alcohol/martini,
|
|
/singleton/reagent/alcohol/cubalibre,
|
|
/singleton/reagent/alcohol/erikasurprise,
|
|
/singleton/reagent/alcohol/ginfizz,
|
|
/singleton/reagent/alcohol/gintonic,
|
|
/singleton/reagent/alcohol/grog,
|
|
/singleton/reagent/alcohol/iced_beer,
|
|
/singleton/reagent/alcohol/irishcarbomb,
|
|
/singleton/reagent/alcohol/manhattan,
|
|
/singleton/reagent/alcohol/margarita,
|
|
/singleton/reagent/alcohol/gargleblaster,
|
|
/singleton/reagent/alcohol/screwdrivercocktail,
|
|
/singleton/reagent/alcohol/cobaltvelvet,
|
|
/singleton/reagent/alcohol/snowwhite,
|
|
/singleton/reagent/alcohol/sidewinderfang,
|
|
/singleton/reagent/alcohol/gibsonhooch,
|
|
/singleton/reagent/alcohol/manly_dorf,
|
|
/singleton/reagent/alcohol/thirteenloko,
|
|
/singleton/reagent/alcohol/vodkamartini,
|
|
/singleton/reagent/alcohol/whiskeysoda,
|
|
/singleton/reagent/alcohol/demonsblood,
|
|
/singleton/reagent/alcohol/cinnamonapplewhiskey,
|
|
/singleton/reagent/drink/coffee/soy_latte,
|
|
/singleton/reagent/drink/coffee/latte,
|
|
/singleton/reagent/drink/tea/coco_chaitea,
|
|
/singleton/reagent/drink/tea/chaitealatte,
|
|
/singleton/reagent/drink/tea/bureacratea,
|
|
/singleton/reagent/drink/tea/desert_tea,
|
|
/singleton/reagent/drink/tea/hakhma_tea,
|
|
/singleton/reagent/drink/tea/portsvilleminttea,
|
|
/singleton/reagent/drink/meatshake,
|
|
/singleton/reagent/alcohol/butanol/tasteofvictory,
|
|
/singleton/reagent/alcohol/butanol/cactuscola,
|
|
/singleton/reagent/alcohol/butanol/trizkizki_tea)
|
|
|
|
var/singleton/reagent/reagent_type = pick(possible_reagents)
|
|
wanted_reagent = new reagent_type
|
|
name = wanted_reagent.name
|
|
description = "[pick(possible_descriptions)] Send a shipment of [name]." //punctuation is already in pick()
|
|
required_volume = rand(2, 12) * 10
|
|
reward += required_volume * 20 //range from +40(20u) to +240(120u)
|
|
|
|
//Complex drinks. Requires coordination with other departments for ingredients
|
|
/datum/bounty/reagent/complex_drink
|
|
name = "Complex Drink"
|
|
reward_low = 150
|
|
reward_high = 250
|
|
|
|
/datum/bounty/reagent/complex_drink/New()
|
|
..()
|
|
// Don't worry about making this comprehensive. It doesn't matter if some drinks are skipped.
|
|
var/list/possible_reagents = list(
|
|
/singleton/reagent/alcohol/hooch,
|
|
/singleton/reagent/alcohol/atomicbomb,
|
|
/singleton/reagent/alcohol/beepsky_smash,
|
|
/singleton/reagent/alcohol/booger,
|
|
/singleton/reagent/alcohol/hippiesdelight,
|
|
/singleton/reagent/alcohol/goldschlager,
|
|
/singleton/reagent/alcohol/manhattan_proj,
|
|
/singleton/reagent/alcohol/neurotoxin,
|
|
/singleton/reagent/alcohol/singulo,
|
|
/singleton/reagent/alcohol/patron,
|
|
/singleton/reagent/alcohol/silencer,
|
|
/singleton/reagent/alcohol/cbsc,
|
|
/singleton/reagent/alcohol/rixulin_sundae,
|
|
/singleton/reagent/drink/xrim,
|
|
/singleton/reagent/drink/tea/securitea,
|
|
/singleton/reagent/drink/toothpaste/sedantian_firestorm,
|
|
/singleton/reagent/alcohol/butanol/janviriheat,
|
|
/singleton/reagent/alcohol/butanol/contactwine,
|
|
/singleton/reagent/alcohol/butanol/eszkazalsbite)
|
|
|
|
var/reagent_type = pick(possible_reagents)
|
|
wanted_reagent = new reagent_type
|
|
name = wanted_reagent.name
|
|
description = "[pick(possible_descriptions)] Send a shipment of [name]." //punctuation is already in pick()
|
|
required_volume = rand(2, 12) * 10
|
|
reward += required_volume * 30 //range from +60(20u) to +360(120u)
|
|
|
|
//Medicines, toxins, and drugs
|
|
/datum/bounty/reagent/chemical
|
|
name = "Chemical"
|
|
reward_low = 150
|
|
reward_high = 350
|
|
|
|
/datum/bounty/reagent/chemical/New()
|
|
..()
|
|
// Don't worry about making this comprehensive. It doesn't matter if some chems are skipped.
|
|
var/list/possible_reagents = list(
|
|
/singleton/reagent/leporazine,
|
|
/singleton/reagent/clonexadone,
|
|
/singleton/reagent/drugs/mms,
|
|
/singleton/reagent/thermite,
|
|
/singleton/reagent/cetahydramine,
|
|
/singleton/reagent/sterilizine,
|
|
/singleton/reagent/mental/emoxanyl,
|
|
/singleton/reagent/mental/minaphobin,
|
|
/singleton/reagent/mental/neurapan,
|
|
/singleton/reagent/rmt,
|
|
/singleton/reagent/mortaphenyl,
|
|
/singleton/reagent/oxycomorphine,
|
|
/singleton/reagent/oculine,
|
|
/singleton/reagent/peridaxon,
|
|
/singleton/reagent/cataleptinol,
|
|
/singleton/reagent/verunol,
|
|
/singleton/reagent/hyperzine,
|
|
/singleton/reagent/fluvectionem,
|
|
/singleton/reagent/pacifier,
|
|
/singleton/reagent/dexalin/plus,
|
|
/singleton/reagent/ryetalyn,
|
|
/singleton/reagent/pneumalin,
|
|
/singleton/reagent/acid/polyacid,
|
|
/singleton/reagent/mutagen,
|
|
/singleton/reagent/drugs/impedrezene,
|
|
/singleton/reagent/drugs/night_juice,
|
|
/singleton/reagent/toxin/cardox,
|
|
/singleton/reagent/toxin/stimm,
|
|
/singleton/reagent/drugs/ambrosia_extract)
|
|
|
|
var/reagent_type = pick(possible_reagents)
|
|
wanted_reagent = new reagent_type
|
|
name = wanted_reagent.name
|
|
description = "One of our labs is in desperate need of [name]. Ship a container of it to be rewarded."
|
|
required_volume = rand(2, 12) * 10
|
|
reward += required_volume * 40 //range from +80(20u) to +480(120u)
|