mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-10 09:42:29 +00:00
About The Pull Request
Adds a skillchip to the chef's vendor. This vendor allows the chef to kiss their food to deliver a chef's kiss.
Chef's kissing your food will add the "love" reagent to the food, which makes people much happier when they eat it. Be careful, overdosing on love can cause heart attacks.
Refactors microwaving.
Separates microwaving out of the edible component and makes it its own element, like grillable and bakeable.
Also removes some magic numbers from microwave code.
Code improvements all around baking and grilling code.
Refactors edible component inheritance.
Inheriting the edible component is now a viable way to cleanly add food types, flags, and callbacks. This makes it much much easier to change the values of an edible item without adding hacky signals / procs / getcomponent.
Why It's Good For The Game
Emergent chef gameplay.
Being able to further enhance your food with mood buffs.
Better code.
Changelog
cl Melbert
add: Chefs can now make food with love. They can purchase a skillchip from their vendor which enhances their kiss emote. Using your kiss on food you create will add a special reagent to it which makes it nicer.
refactor: Separated Microwavable from the Edible component, refactored microwave act to accompany this
refactor: Refactored how grilled items are generated
refactor: Refactored how silver slime food items are generated
refactor: Refactored how edible items inherit new edible statuses
code: Removed some magic numbers from microwaves
code: General code improvements for grillable / bakeable / etc
/cl
43 lines
1.2 KiB
Plaintext
43 lines
1.2 KiB
Plaintext
/// Exploration drone unlockables ///
|
|
|
|
/datum/supply_pack/exploration
|
|
special = TRUE
|
|
group = "Outsourced"
|
|
|
|
/datum/supply_pack/exploration/scrapyard
|
|
name = "Scrapyard Crate"
|
|
desc = "Outsourced crate containing various junk."
|
|
cost = CARGO_CRATE_VALUE * 5
|
|
contains = list(/obj/item/relic,
|
|
/obj/item/broken_bottle,
|
|
/obj/item/pickaxe/rusted)
|
|
crate_name = "scrapyard crate"
|
|
|
|
/datum/supply_pack/exploration/catering
|
|
name = "Catering Crate"
|
|
desc = "No cook? No problem! Food quality may vary depending on provider."
|
|
cost = CARGO_CRATE_VALUE * 5
|
|
contains = list(/obj/item/food/sandwich = 5)
|
|
crate_name = "outsourced food crate"
|
|
|
|
/datum/supply_pack/exploration/catering/fill(obj/structure/closet/crate/crate)
|
|
. = ..()
|
|
if(!prob(30))
|
|
return
|
|
|
|
for(var/obj/item/food/food_item in crate)
|
|
// makes all of our items GROSS
|
|
food_item.name = "spoiled [food_item.name]"
|
|
food_item.AddComponent(/datum/component/edible, foodtypes = GROSS)
|
|
|
|
/datum/supply_pack/exploration/shrubbery
|
|
name = "Shrubbery Crate"
|
|
desc = "Crate full of hedge shrubs."
|
|
cost = CARGO_CRATE_VALUE * 5
|
|
crate_name = "shrubbery crate"
|
|
var/shrub_amount = 8
|
|
|
|
/datum/supply_pack/exploration/shrubbery/fill(obj/structure/closet/crate/C)
|
|
for(var/i in 1 to shrub_amount)
|
|
new /obj/item/grown/shrub(C)
|