Botany+Medical bounties, tweaks (#39658)

* Botany+Medical bounties, tweaks

* Adds foodtype var for flavor text, removes duplicate bounty
This commit is contained in:
81Denton
2018-08-13 23:07:37 +02:00
committed by yogstation13-bot
parent 5a844d86d0
commit c1251df803
8 changed files with 282 additions and 56 deletions

View File

@@ -95,7 +95,7 @@
description = "Central Command will be holding a business convention this year. Ship a few briefcases in support."
reward = 2500
required_count = 5
wanted_types = list(/obj/item/storage/briefcase)
wanted_types = list(/obj/item/storage/briefcase, /obj/item/storage/secure/briefcase)
/datum/bounty/item/assistant/sunglasses
name = "Sunglasses"
@@ -104,55 +104,12 @@
required_count = 2
wanted_types = list(/obj/item/clothing/glasses/sunglasses)
/datum/bounty/item/assistant/gondola_hide
name = "Gondola Hide"
description = "Central Command has recently learned of strange creatures called Gondolas. If you catch one, ship its hide back to CentCom."
reward = 5000
wanted_types = list(/obj/item/stack/sheet/animalhide/gondola)
/datum/bounty/item/assistant/monkey_hide
name = "Monkey Hide"
description = "One of the scientists at CentCom is interested in testing products on monkey skin. Your mission is to acquire monkey's hide and ship it."
reward = 1500
wanted_types = list(/obj/item/stack/sheet/animalhide/monkey)
/datum/bounty/item/assistant/heart
name = "Heart"
description = "Commander Johnson is in critical condition after suffering a heart attack. Doctors say he needs a new heart fast. Ship one, pronto!"
reward = 3000
wanted_types = list(/obj/item/organ/heart)
/datum/bounty/item/assistant/lung
name = "Lungs"
description = "A recent explosion at Central Command has left multiple staff with punctured lungs. Ship spare lungs to be rewarded."
reward = 3000
required_count = 1
wanted_types = list(/obj/item/organ/lungs)
/datum/bounty/item/assistant/appendix
name = "Appendix"
description = "Chef Gibb of Central Command wants to prepare a meal using a very special delicacy: an appendix. If you ship one, he'll pay."
reward = 3000
wanted_types = list(/obj/item/organ/appendix)
/datum/bounty/item/assistant/lizard_tail
name = "Lizard Tail"
description = "The Wizard Federation has made off with Nanotrasen's supply of lizard tails. While CentCom is dealing with the wizards, can the station spare a tail of their own?"
reward = 3000
wanted_types = list(/obj/item/organ/tail/lizard)
/datum/bounty/item/assistant/cat_tail
name = "Cat Tail"
description = "Central Command has run out of heavy duty pipe cleaners. Can you ship over a cat tail to help us out?"
reward = 3000
wanted_types = list(/obj/item/organ/tail/cat)
/datum/bounty/item/assistant/tail_whip
name = "Nine Tails whip"
description = "Commander Jackson is looking for a fine addition to her exotic weapons collection. She will reward you handsomely for either a Cat or Liz o' Nine Tails."
reward = 4000
wanted_types = list(/obj/item/melee/chainofcommand/tailwhip)
/datum/bounty/item/assistant/shard
name = "Shards"
description = "A killer clown has been stalking CentCom, and staff have been unable to catch her because she's not wearing shoes. Please ship some shards so that a booby trap can be constructed."
@@ -246,10 +203,15 @@
reward = 3000
wanted_types = list(/obj/item/reagent_containers/food/snacks/meat/slab/corgi)
/datum/bounty/item/chef/action_figures
/datum/bounty/item/assistant/action_figures
name = "Action Figures"
description = "The vice president's son saw an ad for action figures on the telescreen and now he won't shut up about them. Ship some to ease his complaints."
reward = 4000
required_count = 5
wanted_types = list(/obj/item/toy/figure)
/datum/bounty/item/assistant/tail_whip
name = "Nine Tails whip"
description = "Commander Jackson is looking for a fine addition to her exotic weapons collection. She will reward you handsomely for either a Cat or Liz o' Nine Tails."
reward = 4000
wanted_types = list(/obj/item/melee/chainofcommand/tailwhip)

View File

@@ -0,0 +1,194 @@
/datum/bounty/item/botany
reward = 5000
var/datum/bounty/item/botany/multiplier = 0 //adds bonus reward money; increased for higher tier or rare mutations
var/datum/bounty/item/botany/bonus_desc //for adding extra flavor text to bounty descriptions
var/datum/bounty/item/botany/foodtype = "meal" //same here
/datum/bounty/item/botany/New()
..()
description = "Central Command's head chef is looking to prepare a fine [foodtype] with [name]. [bonus_desc]"
reward += multiplier * 1000
required_count = rand(5, 10)
/datum/bounty/item/botany/ambrosia_vulgaris
name = "Ambrosia Vulgaris Leaves"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/ambrosia/vulgaris)
foodtype = "stew"
/datum/bounty/item/botany/ambrosia_gaia
name = "Ambrosia Gaia Leaves"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/ambrosia/gaia)
multiplier = 4
foodtype = "stew"
/datum/bounty/item/botany/apple_golden
name = "Golden Apples"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/apple/gold)
multiplier = 4
foodtype = "dessert"
/datum/bounty/item/botany/banana
name = "Bananas"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/banana)
exclude_types = list(/obj/item/reagent_containers/food/snacks/grown/banana/bluespace)
foodtype = "banana split"
/datum/bounty/item/botany/banana_bluespace
name = "Bluespace Bananas"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/banana/bluespace)
multiplier = 2
foodtype = "banana split"
/datum/bounty/item/botany/beans_koi
name = "Koi Beans"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/koibeans)
multiplier = 2
/datum/bounty/item/botany/berries_death
name = "Death Berries"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/berries/death)
multiplier = 2
bonus_desc = "He insists that \"he knows what he's doing\"."
foodtype = "sorbet"
/datum/bounty/item/botany/berries_glow
name = "Glow-Berries"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/berries/glow)
multiplier = 2
foodtype = "sorbet"
/datum/bounty/item/botany/cannabis
name = "Cannabis Leaves"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/cannabis)
exclude_types = list(/obj/item/reagent_containers/food/snacks/grown/cannabis/white, /obj/item/reagent_containers/food/snacks/grown/cannabis/death, /obj/item/reagent_containers/food/snacks/grown/cannabis/ultimate)
multiplier = 4 //hush money
bonus_desc = "Do not mention this shipment to security."
foodtype = "\"meal\""
/datum/bounty/item/botany/cannabis_white
name = "Lifeweed Leaves"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/cannabis/white)
multiplier = 6
bonus_desc = "Do not mention this shipment to security."
foodtype = "\"meal\""
/datum/bounty/item/botany/cannabis_death
name = "Deathweed Leaves"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/cannabis/death)
multiplier = 6
bonus_desc = "Do not mention this shipment to security."
foodtype = "\"meal\""
/datum/bounty/item/botany/cannabis_ultimate
name = "Omega Weed Leaves"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/cannabis/ultimate)
multiplier = 6
bonus_desc = "Under no circumstances mention this shipment to security."
foodtype = "\"meal\""
/datum/bounty/item/botany/wheat
name = "Wheat Grains"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/wheat)
/datum/bounty/item/botany/rice
name = "Rice Grains"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/rice)
/datum/bounty/item/botany/chili
name = "Chili Peppers"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/chili)
/datum/bounty/item/botany/chili
name = "Ice Chili Peppers"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/icepepper)
multiplier = 2
/datum/bounty/item/botany/chili
name = "Ghost Chili Peppers"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/ghost_chili)
multiplier = 2
/datum/bounty/item/botany/citrus_lime
name = "Limes"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/citrus/lime)
foodtype = "sorbet"
/datum/bounty/item/botany/citrus_lemon
name = "Lemons"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/citrus/lemon)
foodtype = "sorbet"
/datum/bounty/item/botany/citrus_oranges
name = "Oranges"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/citrus/orange)
bonus_desc = "Do not ship lemons or limes." //I vanted orahnge!
foodtype = "sorbet"
/datum/bounty/item/botany/eggplant
name = "Eggplants"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/eggplant)
bonus_desc = "Not to be confused with egg-plants."
/datum/bounty/item/botany/eggplant_eggy
name = "Egg-plants"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/shell/eggy)
bonus_desc = "Not to be confused with eggplants."
multiplier = 2
/datum/bounty/item/botany/kudzu
name = "Kudzu Pods"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/kudzupod)
bonus_desc = "Store in a dry, dark place."
multiplier = 4
/datum/bounty/item/botany/watermelon
name = "Watermelons"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/watermelon)
foodtype = "dessert"
/datum/bounty/item/botany/watermelon_holy
name = "Holy Melons"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/holymelon)
multiplier = 2
foodtype = "dessert"
/datum/bounty/item/botany/glowshroom
name = "Glowshrooms"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/mushroom/glowshroom)
exclude_types = list(/obj/item/reagent_containers/food/snacks/grown/mushroom/glowshroom/glowcap, /obj/item/reagent_containers/food/snacks/grown/mushroom/glowshroom/shadowshroom)
foodtype = "omelet"
/datum/bounty/item/botany/glowshroom_cap
name = "Glowcaps"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/mushroom/glowshroom/glowcap)
multiplier = 2
foodtype = "omelet"
/datum/bounty/item/botany/glowshroom_shadow
name = "Shadowshrooms"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/mushroom/glowshroom/shadowshroom)
multiplier = 2
foodtype = "omelet"
/datum/bounty/item/botany/nettles_death
name = "Death Nettles"
wanted_types = list(/obj/item/grown/nettle/death)
multiplier = 2
bonus_desc = "Wear protection when handling them."
foodtype = "cheese"
/datum/bounty/item/botany/pineapples
name = "Pineapples"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/pineapple)
bonus_desc = "Not for human consumption."
foodtype = "ashtray"
/datum/bounty/item/botany/tomato
name = "Tomatoes"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/tomato)
exclude_types = list(/obj/item/reagent_containers/food/snacks/grown/tomato/blue)
/datum/bounty/item/botany/tomato_bluespace
name = "Bluespace Tomatoes"
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/tomato/blue/bluespace)
multiplier = 4

View File

@@ -82,13 +82,6 @@
reward = 8000
wanted_types = list(/obj/item/reagent_containers/food/snacks/hotdog)
/datum/bounty/item/chef/lemon
name = "Lemons"
description = "A commander claims he can turn lemons into money. Ship him a few and he'll deposit the money into the station's account."
reward = 4444
required_count = 10
wanted_types = list(/obj/item/reagent_containers/food/snacks/grown/citrus/lemon)
/datum/bounty/item/chef/eggplantparm
name = "Eggplant Parmigianas"
description = "A famous singer will be arriving at CentCom, and their contract demands that they only be served Eggplant Parmigiana. Ship some, please!"

View File

@@ -0,0 +1,59 @@
/datum/bounty/item/medical/heart
name = "Heart"
description = "Commander Johnson is in critical condition after suffering yet another heart attack. Doctors say he needs a new heart fast. Ship one, pronto!"
reward = 3000
wanted_types = list(/obj/item/organ/heart)
/datum/bounty/item/medical/lung
name = "Lungs"
description = "A recent explosion at Central Command has left multiple staff with punctured lungs. Ship spare lungs to be rewarded."
reward = 10000
required_count = 3
wanted_types = list(/obj/item/organ/lungs)
/datum/bounty/item/medical/appendix
name = "Appendix"
description = "Chef Gibb of Central Command wants to prepare a meal using a very special delicacy: an appendix. If you ship one, he'll pay."
reward = 5000 //there are no synthetic appendixes
wanted_types = list(/obj/item/organ/appendix)
/datum/bounty/item/medical/ears
name = "Ears"
description = "Multiple staff at Station 12 have been left deaf due to unauthorized clowning. Ship them new ears."
reward = 10000
required_count = 3
wanted_types = list(/obj/item/organ/ears)
/datum/bounty/item/medical/liver
name = "Livers"
description = "Multiple high-ranking CentCom diplomats have been hospitalized with liver failure after a recent meeting with Third Soviet Union ambassadors. Help us out, will you?"
reward = 10000
required_count = 3
wanted_types = list(/obj/item/organ/liver)
/datum/bounty/item/medical/eye
name = "Organic Eyes"
description = "Station 5's Research Director Willem is requesting a few pairs of non-robotic eyes. Don't ask questions, just ship them."
reward = 10000
required_count = 3
wanted_types = list(/obj/item/organ/eyes)
exclude_types = list(/obj/item/organ/eyes/robotic)
/datum/bounty/item/medical/tongue
name = "Tongues"
description = "A recent attack by Mime extremists has left staff at Station 23 speechless. Ship some spare tongues."
reward = 10000
required_count = 3
wanted_types = list(/obj/item/organ/tongue)
/datum/bounty/item/medical/lizard_tail
name = "Lizard Tail"
description = "The Wizard Federation has made off with Nanotrasen's supply of lizard tails. While CentCom is dealing with the wizards, can the station spare a tail of their own?"
reward = 3000
wanted_types = list(/obj/item/organ/tail/lizard)
/datum/bounty/item/medical/cat_tail
name = "Cat Tail"
description = "Central Command has run out of heavy duty pipe cleaners. Can you ship over a cat tail to help us out?"
reward = 3000
wanted_types = list(/obj/item/organ/tail/cat)

View File

@@ -8,7 +8,7 @@
/datum/bounty/item/syndicate_documents
name = "Syndicate Documents"
description = "Intel regarding the syndicate is highly prized at CentCom. If you find syndicate documents, ship them. You could save lives."
reward = 10000
reward = 15000
wanted_types = list(/obj/item/documents/syndicate, /obj/item/documents/photocopy)
/datum/bounty/item/syndicate_documents/applies_to(obj/O)
@@ -19,6 +19,13 @@
return (Copy.copy_type && ispath(Copy.copy_type, /obj/item/documents/syndicate))
return TRUE
/datum/bounty/item/adamantine
name = "Adamantine"
description = "Nanotrasen's anomalous materials division is in desparate need for Adamantine. Send them a large shipment and we'll make it worth your while."
reward = 35000
required_count = 10
wanted_types = list(/obj/item/stack/sheet/mineral/adamantine)
/datum/bounty/more_bounties
name = "More Bounties"
description = "Complete enough bounties and CentCom will issue new ones!"

View File

@@ -75,7 +75,7 @@ GLOBAL_LIST_EMPTY(bounties_list)
// Returns a new bounty of random type, but does not add it to GLOB.bounties_list.
/proc/random_bounty()
switch(rand(1, 11))
switch(rand(1, 13))
if(1)
var/subtype = pick(subtypesof(/datum/bounty/item/assistant))
return new subtype
@@ -109,6 +109,12 @@ GLOBAL_LIST_EMPTY(bounties_list)
if(11)
var/subtype = pick(subtypesof(/datum/bounty/item/mining))
return new subtype
if(12)
var/subtype = pick(subtypesof(/datum/bounty/item/medical))
return new subtype
if(13)
var/subtype = pick(subtypesof(/datum/bounty/item/botany))
return new subtype
// Called lazily at startup to populate GLOB.bounties_list with random bounties.
/proc/setup_bounties()
@@ -122,7 +128,9 @@ GLOBAL_LIST_EMPTY(bounties_list)
/datum/bounty/item/security = 1,
/datum/bounty/virus = 1,
/datum/bounty/item/engineering = 1,
/datum/bounty/item/mining = 2)
/datum/bounty/item/mining = 2,
/datum/bounty/item/medical = 2,
/datum/bounty/item/botany = 2)
for(var/the_type in easy_add_list_subtypes)
for(var/i in 1 to easy_add_list_subtypes[the_type])
@@ -154,6 +162,7 @@ GLOBAL_LIST_EMPTY(bounties_list)
/********************************Low Priority Gens********************************/
var/list/low_priority_strict_type_list = list( /datum/bounty/item/alien_organs,
/datum/bounty/item/syndicate_documents,
/datum/bounty/item/adamantine,
/datum/bounty/more_bounties)
for(var/low_priority_bounty in low_priority_strict_type_list)

View File

@@ -44,7 +44,7 @@
export_types = list(/obj/item/stack/sheet/animalhide/lizard)
/datum/export/stack/skin/gondola
cost = 500
cost = 5000
unit_name = "gondola hide"
export_types = list(/obj/item/stack/sheet/animalhide/gondola)

View File

@@ -1364,10 +1364,12 @@
#include "code\modules\cargo\packs.dm"
#include "code\modules\cargo\supplypod_beacon.dm"
#include "code\modules\cargo\bounties\assistant.dm"
#include "code\modules\cargo\bounties\botany.dm"
#include "code\modules\cargo\bounties\chef.dm"
#include "code\modules\cargo\bounties\engineering.dm"
#include "code\modules\cargo\bounties\item.dm"
#include "code\modules\cargo\bounties\mech.dm"
#include "code\modules\cargo\bounties\medical.dm"
#include "code\modules\cargo\bounties\mining.dm"
#include "code\modules\cargo\bounties\reagent.dm"
#include "code\modules\cargo\bounties\science.dm"