[MDB IGNORE] Refactors drinks and fixes a lot of food problems (#69081)

* Makes condiments their own subtype, fixes geese, prepares for merging

* Fixes geese checking drink type instead of edible foodtype to eat gross food.
* Renames foodtype var on drinks to drink_types to prevent above from happening again because it KEEPS HAPPENING. DRINKS AREN'T FOOD!
* Makes Condiments their own subtype of reagent_containers because they don't make any use of being a subtype of food, at all.
* Starts moving things from food to /food/drink subtype in preparation for merging /food/drink with /drink

* fully removes Food subtype

* /reagent_containers/drinks are now /reagent_containers/cup - This is so it's no longer confused with eachother.
* /food/drinks is now /reagent_containers/cup/drinks, so we can keep their special abilities.
* Fixes a LOT of errors with food, which are STILL checking the reagent_containers, despite ACTUAL food being refactored away from it a long time ago.

This doesn't compile yet, but I do want to make sure my progress is well tracked.

* remove copypaste code, changes soda cans

* Removes most copy paste code between the two drinks, moving most stuff to parent whenever needed.
* Made soda cans their own subtype since they didn't share anything with glass bottles anyways.
* Fixes more problems with food/drinks, especially with geese. Geese really were just broken this whole time and no one said a word...
* Removes a snowflake signal, now that both drink types share a common one.
* Adds everything to the .dme

Currently my goal is to get this all compiling, then remove isGlass var by making glass be all glass ones only.

* Moves all icons into a single drinks dmi

I'm not that great at icon stuff, hopefully I didn't forget/break anything.

* Turns juices into their own subtype

This allows us to let them check for type in molotov, to both get rid of a use of isGlass, and so non-glass non-cartons don't show up as 'carton'.

* fixes compile issues, adds updatepaths

* a better updatepaths

* updates the damn maps now

* properly names the updatepath

* how did that get there

* i suck at handling merge conflicts

* how am i this bad

* code improvement and soda fix

* more fixes

* Don't be a timer

Ports from old food bottles to trans the reagents, rather than add a timer to.

* Merge conflicts and fixes bottle smashing

* Bottle smashing is now consistently functional regardless of how much liquid they have in them, when before it would spill first, then smash on the second hit.

* runs updatepaths again
This commit is contained in:
John Willard
2022-08-12 15:24:14 -04:00
committed by GitHub
parent 4c178553fc
commit 4a274a6e4b
274 changed files with 3360 additions and 3472 deletions
+5 -5
View File
@@ -131,11 +131,11 @@
var/loot = rand(1,100) //100 different crates with varying chances of spawning
switch(loot)
if(1 to 5) //5% chance
new /obj/item/reagent_containers/food/drinks/bottle/rum(src)
new /obj/item/reagent_containers/food/drinks/bottle/whiskey(src)
new /obj/item/reagent_containers/food/drinks/bottle/whiskey(src)
new /obj/item/reagent_containers/cup/glass/bottle/rum(src)
new /obj/item/reagent_containers/cup/glass/bottle/whiskey(src)
new /obj/item/reagent_containers/cup/glass/bottle/whiskey(src)
new /obj/item/lighter(src)
new /obj/item/reagent_containers/food/drinks/bottle/absinthe/premium(src)
new /obj/item/reagent_containers/cup/glass/bottle/absinthe/premium(src)
for(var/i in 1 to 3)
new /obj/item/clothing/mask/cigarette/rollie(src)
if(6 to 10)
@@ -205,7 +205,7 @@
if(87) //1% chance
new /obj/item/weed_extract(src)
if(88)
new /obj/item/reagent_containers/food/drinks/bottle/lizardwine(src)
new /obj/item/reagent_containers/cup/glass/bottle/lizardwine(src)
if(89)
new /obj/item/melee/energy/sword/bananium(src)
if(90)
+4 -4
View File
@@ -316,17 +316,17 @@
/datum/crafting_recipe/mushroom_bowl
name = "Mushroom Bowl"
result = /obj/item/reagent_containers/glass/bowl/mushroom_bowl
result = /obj/item/reagent_containers/cup/bowl/mushroom_bowl
reqs = list(/obj/item/food/grown/ash_flora/shavings = 5)
time = 30
category = CAT_PRIMAL
/obj/item/reagent_containers/glass/bowl/mushroom_bowl
/obj/item/reagent_containers/cup/bowl/mushroom_bowl
name = "mushroom bowl"
desc = "A bowl made out of mushrooms. Not food, though it might have contained some at some point."
icon = 'icons/obj/lavaland/ash_flora.dmi'
icon_state = "mushroom_bowl"
/obj/item/reagent_containers/glass/bowl/mushroom_bowl/update_overlays()
/obj/item/reagent_containers/cup/bowl/mushroom_bowl/update_overlays()
. = ..()
if(!reagents?.total_volume)
return
@@ -334,7 +334,7 @@
filling.color = mix_color_from_reagents(reagents.reagent_list)
. += filling
/obj/item/reagent_containers/glass/bowl/mushroom_bowl/update_icon_state()
/obj/item/reagent_containers/cup/bowl/mushroom_bowl/update_icon_state()
if(!reagents || !reagents.total_volume)
icon_state = "mushroom_bowl"
return ..()
@@ -28,7 +28,7 @@
if(4)
new /obj/item/clothing/glasses/godeye(src)
if(5)
new /obj/item/reagent_containers/glass/bottle/potion/flight(src)
new /obj/item/reagent_containers/cup/bottle/potion/flight(src)
if(6)
new /obj/item/clothing/gloves/gauntlets(src)
if(7)
+3 -3
View File
@@ -484,16 +484,16 @@
//Potion of Flight
/obj/item/reagent_containers/glass/bottle/potion
/obj/item/reagent_containers/cup/bottle/potion
icon = 'icons/obj/lavaland/artefacts.dmi'
icon_state = "potionflask"
/obj/item/reagent_containers/glass/bottle/potion/flight
/obj/item/reagent_containers/cup/bottle/potion/flight
name = "strange elixir"
desc = "A flask with an almost-holy aura emitting from it. The label on the bottle says: 'erqo'hyy tvi'rf lbh jv'atf'."
list_reagents = list(/datum/reagent/flightpotion = 5)
/obj/item/reagent_containers/glass/bottle/potion/update_icon_state()
/obj/item/reagent_containers/cup/bottle/potion/update_icon_state()
icon_state = "potionflask[reagents.total_volume ? null : "_empty"]"
return ..()
+2 -2
View File
@@ -14,8 +14,8 @@
new /datum/data/mining_equipment("10 Marker Beacons", /obj/item/stack/marker_beacon/ten, 100),
new /datum/data/mining_equipment("30 Marker Beacons", /obj/item/stack/marker_beacon/thirty, 300),
new /datum/data/mining_equipment("Skeleton Key", /obj/item/skeleton_key, 777),
new /datum/data/mining_equipment("Whiskey", /obj/item/reagent_containers/food/drinks/bottle/whiskey, 100),
new /datum/data/mining_equipment("Absinthe", /obj/item/reagent_containers/food/drinks/bottle/absinthe/premium, 100),
new /datum/data/mining_equipment("Whiskey", /obj/item/reagent_containers/cup/glass/bottle/whiskey, 100),
new /datum/data/mining_equipment("Absinthe", /obj/item/reagent_containers/cup/glass/bottle/absinthe/premium, 100),
new /datum/data/mining_equipment("Bubblegum Gum Packet", /obj/item/storage/box/gum/bubblegum, 100),
new /datum/data/mining_equipment("Cigar", /obj/item/clothing/mask/cigarette/cigar/havana, 150),
new /datum/data/mining_equipment("Soap", /obj/item/soap/nanotrasen, 200),