From 4764147e1ca34465c8d4449b55a8a121e342e61d Mon Sep 17 00:00:00 2001 From: Motschen Date: Sun, 20 Sep 2020 12:42:45 +0200 Subject: [PATCH] Update 2.0.0 - Pretty Sweet Update --- .gitignore | 6 +- build.gradle | 19 +- build/loom-cache/maybe-data-1.0.0-1.16.2.jar | Bin 0 -> 9939 bytes build/loom-cache/midnight-hats-1.0.2.jar | Bin 0 -> 40008 bytes gradle.properties | 14 +- logs/latest.log | 0 .../eu/midnightdust/motschen/dishes/Crop.java | 13 - .../motschen/dishes/DishesClient.java | 10 +- .../motschen/dishes/DishesMain.java | 149 +++++--- .../motschen/dishes/LootModifier.java | 31 -- .../motschen/dishes/block/Cake.java | 62 ++++ .../motschen/dishes/{ => block}/Dish.java | 62 ++-- .../motschen/dishes/block/Lettuce.java | 23 ++ .../motschen/dishes/{ => block}/Pizza.java | 64 ++-- .../motschen/dishes/{ => block}/Plate.java | 2 +- .../motschen/dishes/block/Tomato.java | 23 ++ .../blockentity/BirthdayCakeBlockEntity.java | 52 +++ .../dishes/blockstates/DishBites.java | 10 + .../dishes/compat/CookingGuideItem.java | 28 ++ .../motschen/dishes/{ => compat}/Flags.java | 2 +- .../motschen/dishes/config/DishesConfig.java | 21 ++ .../dishes/config/IceCreamTraderConfig.java | 14 + .../motschen/dishes/config/MainConfig.java | 13 + .../dishes/config/ModMenuIntegration.java | 16 + .../dishes/config/WorldGenConfig.java | 14 + .../dishes/entities/IceCreamTraderEntity.java | 29 ++ .../dishes/entities/IceCreamTraderSpawn.java | 84 +++++ .../entities/IceCreamTraderTradeOffers.java | 65 ++++ .../client/IceCreamTraderRenderer.java | 22 ++ .../motschen/dishes/init/BlockEntityInit.java | 16 + .../motschen/dishes/init/CropInit.java | 35 ++ .../dishes/init/IceCreamTraderInit.java | 26 ++ .../motschen/dishes/init/WorldGenInit.java | 32 ++ .../mixin/DefaultBiomeFeaturesMixin.java | 18 - .../GenerationSettingsAccessorMixin.java | 19 + .../motschen/dishes/world/LootModifier.java | 63 ++++ .../dishes/world/OreFeatureInjector.java | 44 +++ .../dishes/{ => world}/OreFeatures.java | 3 +- .../dishes/blockstates/birthday_cake.json | 11 + .../dishes/blockstates/cheeseburger.json | 10 +- .../dishes/blockstates/chickenburger.json | 10 +- .../dishes/blockstates/fishandchips.json | 10 +- .../assets/dishes/blockstates/hamburger.json | 10 +- .../assets/dishes/blockstates/pizzabacon.json | 10 +- .../assets/dishes/blockstates/pizzaham.json | 10 +- .../dishes/blockstates/pizzasalami.json | 10 +- .../assets/dishes/blockstates/pizzatuna.json | 10 +- .../blockstates/potatoeswithcurdcheese.json | 10 +- .../assets/dishes/blockstates/schnitzel.json | 10 +- .../dishes/blockstates/spaceburger.json | 24 ++ .../blockstates/spaghetti_bolognese.json | 10 +- .../assets/dishes/blockstates/steak.json | 10 +- .../tinypotatoeswithcurdcheese.json | 10 +- src/main/resources/assets/dishes/icon.png | Bin 173386 -> 10504 bytes .../resources/assets/dishes/lang/de_de.json | 37 +- .../resources/assets/dishes/lang/en_us.json | 50 ++- .../resources/assets/dishes/lang/zh_cn.json | 37 +- .../dishes/models/block/birthday_cake.json | 339 ++++++++++++++++++ .../models/block/birthday_cake_slice1.json | 301 ++++++++++++++++ .../models/block/birthday_cake_slice2.json | 225 ++++++++++++ .../models/block/birthday_cake_slice3.json | 225 ++++++++++++ .../models/block/birthday_cake_slice4.json | 149 ++++++++ .../models/block/birthday_cake_slice5.json | 149 ++++++++ .../models/block/birthday_cake_slice6.json | 73 ++++ .../dishes/models/block/spaceburger.json | 12 + .../dishes/models/block/spaceburger1.json | 12 + .../dishes/models/block/spaceburger2.json | 12 + .../dishes/models/block/spaceburger3.json | 12 + .../dishes/models/block/spaceburger4.json | 12 + .../dishes/models/item/birthday_cake.json | 3 + .../dishes/models/item/cooking_guide.json | 6 + .../dishes/models/item/ice_cream_banana.json | 7 + .../models/item/ice_cream_blueberry.json | 7 + .../models/item/ice_cream_bubblegum.json | 7 + .../models/item/ice_cream_chocolate.json | 7 + .../dishes/models/item/ice_cream_pear.json | 7 + .../models/item/ice_cream_strawberry.json | 7 + .../models/item/ice_cream_sweetberry.json | 7 + .../item/ice_cream_trader_spawn_egg.json | 3 + .../dishes/models/item/ice_cream_vanilla.json | 281 +++++++++++++++ .../item/ice_cream_white_chocolate.json | 7 + .../dishes/models/item/spaceburger.json | 3 + .../assets/dishes/textures/block/flame.png | Bin 0 -> 207 bytes .../textures/entity/ice_cream_seller.pdn | Bin 0 -> 7398 bytes .../textures/entity/ice_cream_seller.png | Bin 0 -> 2091 bytes .../dishes/textures/item/ice_cream_banana.png | Bin 0 -> 265 bytes .../textures/item/ice_cream_blueberry.png | Bin 0 -> 265 bytes .../textures/item/ice_cream_bubblegum.png | Bin 0 -> 265 bytes .../textures/item/ice_cream_chocolate.png | Bin 0 -> 265 bytes .../dishes/textures/item/ice_cream_pear.png | Bin 0 -> 265 bytes .../textures/item/ice_cream_strawberry.png | Bin 0 -> 265 bytes .../textures/item/ice_cream_sweetberry.png | Bin 0 -> 265 bytes .../textures/item/ice_cream_vanilla.png | Bin 0 -> 265 bytes .../dishes/textures/item/ice_cream_waffle.png | Bin 0 -> 326 bytes .../item/ice_cream_white_chocolate.png | Bin 0 -> 265 bytes .../dishes/textures/item/space_beef.png | Bin 0 -> 413 bytes .../dishes/textures/item/space_bread.png | Bin 0 -> 365 bytes .../dishes/mayberecipes/cheeseburger.json | 34 ++ .../dishes/mayberecipes/chickenburger.json | 31 ++ .../data/dishes/mayberecipes/hamburger.json | 31 ++ .../dishes/mayberecipes/patchouli_book.json | 20 ++ .../data/dishes/mayberecipes/pizzabacon.json | 33 ++ .../data/dishes/mayberecipes/pizzaham.json | 33 ++ .../data/dishes/mayberecipes/pizzasalami.json | 33 ++ .../data/dishes/mayberecipes/pizzatuna.json | 33 ++ .../mayberecipes/spaghetti_bolognese.json | 28 ++ .../tinypotatoeswithcurdcheese_lil-tater.json | 26 ++ .../tinypotatoeswithcurdcheese_liltater.json | 26 ++ .../tinypotatoeswithcurdcheese_ltr.json | 26 ++ .../patchouli_books/cooking_guide/book.json | 2 +- .../de_de/categories/sweets.json | 5 + .../entries/cooking_guide/birthday_cake.json | 18 + .../cooking_guide/ice_cream_banana.json | 14 + .../cooking_guide/ice_cream_blueberry.json | 14 + .../cooking_guide/ice_cream_bubblegum.json | 14 + .../cooking_guide/ice_cream_chocolate.json | 14 + .../entries/cooking_guide/ice_cream_pear.json | 14 + .../cooking_guide/ice_cream_strawberry.json | 14 + .../cooking_guide/ice_cream_sweetberry.json | 14 + .../cooking_guide/ice_cream_vanilla.json | 14 + .../ice_cream_white_chocolate.json | 14 + .../tinypotatoeswithcurdcheese.json | 26 -- .../en_us/categories/sweets.json | 5 + .../entries/cooking_guide/birthday_cake.json | 18 + .../cooking_guide/ice_cream_banana.json | 14 + .../cooking_guide/ice_cream_blueberry.json | 14 + .../cooking_guide/ice_cream_bubblegum.json | 14 + .../cooking_guide/ice_cream_chocolate.json | 14 + .../entries/cooking_guide/ice_cream_pear.json | 14 + .../cooking_guide/ice_cream_strawberry.json | 14 + .../cooking_guide/ice_cream_sweetberry.json | 14 + .../cooking_guide/ice_cream_vanilla.json | 14 + .../ice_cream_white_chocolate.json | 14 + .../tinypotatoeswithcurdcheese.json | 26 -- .../data/dishes/recipes/birthday_cake.json | 15 + .../recipes/tinypotatoeswithcurdcheese.json | 21 -- .../recipes/tinypotatoeswithcurdcheese.json | 21 -- .../recipes/tinypotatoeswithcurdcheese.json | 21 -- .../chests/village/village_butcher.json | 111 ------ .../chests/village/village_fisher.json | 123 ------- .../chests/village/village_plains_house.json | 138 ------- .../chests/village/village_taiga_house.json | 169 --------- src/main/resources/dishes.mixins.json | 2 +- src/main/resources/fabric.mod.json | 7 +- 144 files changed, 3579 insertions(+), 1021 deletions(-) create mode 100644 build/loom-cache/maybe-data-1.0.0-1.16.2.jar create mode 100644 build/loom-cache/midnight-hats-1.0.2.jar create mode 100644 logs/latest.log delete mode 100644 src/main/java/eu/midnightdust/motschen/dishes/Crop.java delete mode 100644 src/main/java/eu/midnightdust/motschen/dishes/LootModifier.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/block/Cake.java rename src/main/java/eu/midnightdust/motschen/dishes/{ => block}/Dish.java (55%) create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/block/Lettuce.java rename src/main/java/eu/midnightdust/motschen/dishes/{ => block}/Pizza.java (52%) rename src/main/java/eu/midnightdust/motschen/dishes/{ => block}/Plate.java (98%) create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/block/Tomato.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/block/blockentity/BirthdayCakeBlockEntity.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/blockstates/DishBites.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/compat/CookingGuideItem.java rename src/main/java/eu/midnightdust/motschen/dishes/{ => compat}/Flags.java (94%) create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/config/DishesConfig.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/config/IceCreamTraderConfig.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/config/MainConfig.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/config/ModMenuIntegration.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/config/WorldGenConfig.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderEntity.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderSpawn.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderTradeOffers.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/entities/client/IceCreamTraderRenderer.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/init/BlockEntityInit.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/init/CropInit.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/init/IceCreamTraderInit.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/init/WorldGenInit.java delete mode 100644 src/main/java/eu/midnightdust/motschen/dishes/mixin/DefaultBiomeFeaturesMixin.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/mixin/GenerationSettingsAccessorMixin.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/world/LootModifier.java create mode 100644 src/main/java/eu/midnightdust/motschen/dishes/world/OreFeatureInjector.java rename src/main/java/eu/midnightdust/motschen/dishes/{ => world}/OreFeatures.java (88%) create mode 100644 src/main/resources/assets/dishes/blockstates/birthday_cake.json create mode 100644 src/main/resources/assets/dishes/blockstates/spaceburger.json create mode 100644 src/main/resources/assets/dishes/models/block/birthday_cake.json create mode 100644 src/main/resources/assets/dishes/models/block/birthday_cake_slice1.json create mode 100644 src/main/resources/assets/dishes/models/block/birthday_cake_slice2.json create mode 100644 src/main/resources/assets/dishes/models/block/birthday_cake_slice3.json create mode 100644 src/main/resources/assets/dishes/models/block/birthday_cake_slice4.json create mode 100644 src/main/resources/assets/dishes/models/block/birthday_cake_slice5.json create mode 100644 src/main/resources/assets/dishes/models/block/birthday_cake_slice6.json create mode 100644 src/main/resources/assets/dishes/models/block/spaceburger.json create mode 100644 src/main/resources/assets/dishes/models/block/spaceburger1.json create mode 100644 src/main/resources/assets/dishes/models/block/spaceburger2.json create mode 100644 src/main/resources/assets/dishes/models/block/spaceburger3.json create mode 100644 src/main/resources/assets/dishes/models/block/spaceburger4.json create mode 100644 src/main/resources/assets/dishes/models/item/birthday_cake.json create mode 100644 src/main/resources/assets/dishes/models/item/cooking_guide.json create mode 100644 src/main/resources/assets/dishes/models/item/ice_cream_banana.json create mode 100644 src/main/resources/assets/dishes/models/item/ice_cream_blueberry.json create mode 100644 src/main/resources/assets/dishes/models/item/ice_cream_bubblegum.json create mode 100644 src/main/resources/assets/dishes/models/item/ice_cream_chocolate.json create mode 100644 src/main/resources/assets/dishes/models/item/ice_cream_pear.json create mode 100644 src/main/resources/assets/dishes/models/item/ice_cream_strawberry.json create mode 100644 src/main/resources/assets/dishes/models/item/ice_cream_sweetberry.json create mode 100644 src/main/resources/assets/dishes/models/item/ice_cream_trader_spawn_egg.json create mode 100644 src/main/resources/assets/dishes/models/item/ice_cream_vanilla.json create mode 100644 src/main/resources/assets/dishes/models/item/ice_cream_white_chocolate.json create mode 100644 src/main/resources/assets/dishes/models/item/spaceburger.json create mode 100644 src/main/resources/assets/dishes/textures/block/flame.png create mode 100644 src/main/resources/assets/dishes/textures/entity/ice_cream_seller.pdn create mode 100644 src/main/resources/assets/dishes/textures/entity/ice_cream_seller.png create mode 100644 src/main/resources/assets/dishes/textures/item/ice_cream_banana.png create mode 100644 src/main/resources/assets/dishes/textures/item/ice_cream_blueberry.png create mode 100644 src/main/resources/assets/dishes/textures/item/ice_cream_bubblegum.png create mode 100644 src/main/resources/assets/dishes/textures/item/ice_cream_chocolate.png create mode 100644 src/main/resources/assets/dishes/textures/item/ice_cream_pear.png create mode 100644 src/main/resources/assets/dishes/textures/item/ice_cream_strawberry.png create mode 100644 src/main/resources/assets/dishes/textures/item/ice_cream_sweetberry.png create mode 100644 src/main/resources/assets/dishes/textures/item/ice_cream_vanilla.png create mode 100644 src/main/resources/assets/dishes/textures/item/ice_cream_waffle.png create mode 100644 src/main/resources/assets/dishes/textures/item/ice_cream_white_chocolate.png create mode 100644 src/main/resources/assets/dishes/textures/item/space_beef.png create mode 100644 src/main/resources/assets/dishes/textures/item/space_bread.png create mode 100644 src/main/resources/data/dishes/mayberecipes/cheeseburger.json create mode 100644 src/main/resources/data/dishes/mayberecipes/chickenburger.json create mode 100644 src/main/resources/data/dishes/mayberecipes/hamburger.json create mode 100644 src/main/resources/data/dishes/mayberecipes/patchouli_book.json create mode 100644 src/main/resources/data/dishes/mayberecipes/pizzabacon.json create mode 100644 src/main/resources/data/dishes/mayberecipes/pizzaham.json create mode 100644 src/main/resources/data/dishes/mayberecipes/pizzasalami.json create mode 100644 src/main/resources/data/dishes/mayberecipes/pizzatuna.json create mode 100644 src/main/resources/data/dishes/mayberecipes/spaghetti_bolognese.json create mode 100644 src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_lil-tater.json create mode 100644 src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_liltater.json create mode 100644 src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_ltr.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/categories/sweets.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/birthday_cake.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_banana.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_blueberry.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_bubblegum.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_chocolate.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_pear.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_strawberry.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_sweetberry.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_vanilla.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_white_chocolate.json delete mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/tinypotatoeswithcurdcheese.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/categories/sweets.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/birthday_cake.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_banana.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_blueberry.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_bubblegum.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_chocolate.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_pear.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_strawberry.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_sweetberry.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_vanilla.json create mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_white_chocolate.json delete mode 100644 src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/tinypotatoeswithcurdcheese.json create mode 100644 src/main/resources/data/dishes/recipes/birthday_cake.json delete mode 100644 src/main/resources/data/lil-tater/recipes/tinypotatoeswithcurdcheese.json delete mode 100644 src/main/resources/data/liltater/recipes/tinypotatoeswithcurdcheese.json delete mode 100644 src/main/resources/data/ltr/recipes/tinypotatoeswithcurdcheese.json delete mode 100644 src/main/resources/data/minecraft/loot_tables/chests/village/village_butcher.json delete mode 100644 src/main/resources/data/minecraft/loot_tables/chests/village/village_fisher.json delete mode 100644 src/main/resources/data/minecraft/loot_tables/chests/village/village_plains_house.json delete mode 100644 src/main/resources/data/minecraft/loot_tables/chests/village/village_taiga_house.json diff --git a/.gitignore b/.gitignore index 9563893..e5d8d28 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,11 @@ # gradle .gradle/ -build/ +build/classes/ +build/generated/ +build/libs/ +build/resources/ +build/tmp/ out/ classes/ diff --git a/build.gradle b/build.gradle index 94e1d5e..00773e8 100644 --- a/build.gradle +++ b/build.gradle @@ -15,6 +15,8 @@ minecraft { repositories { maven { url "https://jitpack.io" } + maven { url "http://server.bbkr.space/artifactory/libs-release" } + maven { url 'https://maven.blamejared.com' } } dependencies { @@ -23,11 +25,20 @@ dependencies { mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2" modCompile "net.fabricmc:fabric-loader:${project.loader_version}" - // Fabric API. This is technically optional, but you probably want it anyway. modCompile "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}" - - // PSA: Some older mods, compiled on Loom 0.2.1, might have outdated Maven POMs. - // You may need to force-disable transitiveness on them. + + modImplementation "vazkii.patchouli:Patchouli:${patchouli_version}" + + modImplementation "com.github.Draylar:maybe-data:${maybedata_version}" + include "com.github.Draylar:maybe-data:${maybedata_version}" + modImplementation "eu.midnightdust:midnight-hats:${midnighthats_version}" + include "eu.midnightdust:midnight-hats:${midnighthats_version}" + + modImplementation ("me.sargunvohra.mcmods:autoconfig1u:${project.auto_config_version}") + include ("me.sargunvohra.mcmods:autoconfig1u:${project.auto_config_version}") + modImplementation ("me.shedaniel.cloth:config-2:${project.cloth_config_version}") + include ("me.shedaniel.cloth:config-2:${project.cloth_config_version}") + modImplementation ("io.github.prospector:modmenu:${project.mod_menu_version}") } processResources { diff --git a/build/loom-cache/maybe-data-1.0.0-1.16.2.jar b/build/loom-cache/maybe-data-1.0.0-1.16.2.jar new file mode 100644 index 0000000000000000000000000000000000000000..bda0f294e3768e6d439879d98b8e5665495cbb28 GIT binary patch literal 9939 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%0AwE5Q| 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 eaQa)%UNi=LefodELA8|t literal 0 HcmV?d00001 diff --git a/gradle.properties b/gradle.properties index 1aa3c01..4445aeb 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,10 +8,20 @@ org.gradle.jvmargs=-Xmx1G loader_version=0.9.1+build.205 # Mod Properties - mod_version = 1.0.4 + mod_version = 2.0.0 maven_group = eu.midnightdust.motschen archives_base_name = dishes # Dependencies # currently not on the main fabric site, check on the maven: https://maven.fabricmc.net/net/fabricmc/fabric-api/fabric-api - fabric_version=0.17.2+build.396-1.16 \ No newline at end of file + fabric_version=0.17.2+build.396-1.16 + patchouli_version=1.16-40-FABRIC + maybedata_version=1.0.0-1.16.2 + + # Config stuff + auto_config_version = 3.2.0-unstable + cloth_config_version = 4.7.0-unstable + mod_menu_version = 1.14.6+build.31 + + # MidnightHats + midnighthats_version=1.0.2 \ No newline at end of file diff --git a/logs/latest.log b/logs/latest.log new file mode 100644 index 0000000..e69de29 diff --git a/src/main/java/eu/midnightdust/motschen/dishes/Crop.java b/src/main/java/eu/midnightdust/motschen/dishes/Crop.java deleted file mode 100644 index 80932f5..0000000 --- a/src/main/java/eu/midnightdust/motschen/dishes/Crop.java +++ /dev/null @@ -1,13 +0,0 @@ -package eu.midnightdust.motschen.dishes; - -import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; -import net.minecraft.block.Blocks; -import net.minecraft.block.CropBlock; - -public class Crop extends CropBlock { - - public Crop() { - super(FabricBlockSettings.copy(Blocks.CARROTS)); - } -} - diff --git a/src/main/java/eu/midnightdust/motschen/dishes/DishesClient.java b/src/main/java/eu/midnightdust/motschen/dishes/DishesClient.java index eff2b66..9a79018 100644 --- a/src/main/java/eu/midnightdust/motschen/dishes/DishesClient.java +++ b/src/main/java/eu/midnightdust/motschen/dishes/DishesClient.java @@ -1,14 +1,20 @@ package eu.midnightdust.motschen.dishes; +import eu.midnightdust.motschen.dishes.entities.client.IceCreamTraderRenderer; +import eu.midnightdust.motschen.dishes.init.CropInit; +import eu.midnightdust.motschen.dishes.init.IceCreamTraderInit; import net.fabricmc.api.ClientModInitializer; import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap; +import net.fabricmc.fabric.api.client.rendereregistry.v1.EntityRendererRegistry; import net.minecraft.client.render.RenderLayer; public class DishesClient implements ClientModInitializer { @Override public void onInitializeClient() { - BlockRenderLayerMap.INSTANCE.putBlocks(RenderLayer.getCutout(),DishesMain.TomatoBush); - BlockRenderLayerMap.INSTANCE.putBlocks(RenderLayer.getCutout(),DishesMain.LettuceBush); + EntityRendererRegistry.INSTANCE.register(IceCreamTraderInit.ICE_CREAM_TRADER, (dispatcher, context) -> new IceCreamTraderRenderer(dispatcher)); + BlockRenderLayerMap.INSTANCE.putBlocks(RenderLayer.getCutout(),CropInit.TomatoBush); + BlockRenderLayerMap.INSTANCE.putBlocks(RenderLayer.getCutout(),CropInit.LettuceBush); + BlockRenderLayerMap.INSTANCE.putBlocks(RenderLayer.getCutout(),DishesMain.BirthdayCake); } } diff --git a/src/main/java/eu/midnightdust/motschen/dishes/DishesMain.java b/src/main/java/eu/midnightdust/motschen/dishes/DishesMain.java index ed6cdb6..31d7293 100644 --- a/src/main/java/eu/midnightdust/motschen/dishes/DishesMain.java +++ b/src/main/java/eu/midnightdust/motschen/dishes/DishesMain.java @@ -1,8 +1,19 @@ package eu.midnightdust.motschen.dishes; +import eu.midnightdust.motschen.dishes.block.*; +import eu.midnightdust.motschen.dishes.blockstates.DishBites; +import eu.midnightdust.motschen.dishes.compat.CookingGuideItem; +import eu.midnightdust.motschen.dishes.compat.Flags; +import eu.midnightdust.motschen.dishes.config.DishesConfig; +import eu.midnightdust.motschen.dishes.init.BlockEntityInit; +import eu.midnightdust.motschen.dishes.init.CropInit; +import eu.midnightdust.motschen.dishes.init.WorldGenInit; +import me.sargunvohra.mcmods.autoconfig1u.AutoConfig; +import me.sargunvohra.mcmods.autoconfig1u.serializer.JanksonConfigSerializer; import net.fabricmc.api.ModInitializer; import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; +import net.fabricmc.loader.api.FabricLoader; import net.minecraft.block.Block; import net.minecraft.block.Blocks; import net.minecraft.item.*; @@ -11,8 +22,14 @@ import net.minecraft.util.registry.Registry; public class DishesMain implements ModInitializer { public static final String MOD_ID = "dishes"; + public static DishesConfig DD_CONFIG; - public static final ItemGroup DishesGroup = FabricItemGroupBuilder.build(new Identifier(MOD_ID, "dishes"), () -> new ItemStack(DishesMain.PizzaSalami)); + + public static final ItemGroup MainGroup = FabricItemGroupBuilder.build(new Identifier(MOD_ID, "main"), () -> new ItemStack(DishesMain.CheeseRoll)); + public static final ItemGroup DishesGroup = FabricItemGroupBuilder.build(new Identifier(MOD_ID, "dishes"), () -> new ItemStack(DishesMain.FishAndChips)); + public static final ItemGroup PizzaGroup = FabricItemGroupBuilder.build(new Identifier(MOD_ID, "pizza"), () -> new ItemStack(DishesMain.PizzaSalami)); + public static final ItemGroup SweetsGroup = FabricItemGroupBuilder.build(new Identifier(MOD_ID, "sweets"), () -> new ItemStack(DishesMain.IceCreamVanilla)); + public static final Item CookingGuide = new CookingGuideItem(new Item.Settings().maxCount(1)); public static final Block Plate = new Plate(); public static final Block PizzaBox = new Plate(); public static final Block PotatoesWithCurdCheese = new Dish(); @@ -27,29 +44,44 @@ public class DishesMain implements ModInitializer { public static final Block Hamburger = new Dish(); public static final Block Chickenburger = new Dish(); public static final Block Cheeseburger = new Dish(); + public static final Block Spaceburger = new Dish(); public static final Block FishAndChips = new Dish(); - public static final Item Knife = new Item(new Item.Settings().group(DishesMain.DishesGroup).recipeRemainder(DishesMain.Knife).maxCount(1)); - public static final Item PotatoSlice = new Item(new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(1).saturationModifier(0.5f).build())); - public static final Item RawFries = new Item(new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(1).saturationModifier(1f).build())); - public static final Item Fries = new Item(new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(4).saturationModifier(4f).build())); + public static final Item Knife = new Item(new Item.Settings().group(DishesMain.MainGroup).recipeRemainder(DishesMain.Knife).maxCount(1)); + public static final Item PotatoSlice = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(1).saturationModifier(0.5f).snack().build())); + public static final Item RawFries = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(2).saturationModifier(0.75f).snack().build())); + public static final Item Fries = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(4).saturationModifier(1f).snack().build())); public static final Block SaltOre = new Block(FabricBlockSettings.copyOf(Blocks.COAL_ORE)); - public static final Item Salt = new Item(new Item.Settings().group(DishesMain.DishesGroup)); - public static final Item Flour = new Item(new Item.Settings().group(DishesMain.DishesGroup)); - public static final Item RawSpaghetti = new Item(new Item.Settings().group(DishesMain.DishesGroup)); - public static final Item Spaghetti = new Item(new Item.Settings().group(DishesMain.DishesGroup)); - public static final Item Salami = new Item(new Item.Settings().group(DishesMain.DishesGroup)); - public static final Item Tomato = new Item(new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(3).saturationModifier(2f).build())); - public static final Block TomatoBush = new Crop(); - public static final Item Lettuce = new Item(new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(3).saturationModifier(2f).build())); - public static final Block LettuceBush = new Crop(); - public static final Item RawBacon = new Item(new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(3).saturationModifier(2f).build())); - public static final Item Bacon = new Item(new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(3).saturationModifier(2f).build())); - public static final Item CheeseRoll = new Item(new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(3).saturationModifier(2f).build())); - public static final Item CheeseSlice = new Item(new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(3).saturationModifier(2f).build())); + public static final Item Salt = new Item(new Item.Settings().group(DishesMain.MainGroup)); + public static final Item Flour = new Item(new Item.Settings().group(DishesMain.MainGroup)); + public static final Item RawSpaghetti = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(1).saturationModifier(0.5f).build())); + public static final Item Spaghetti = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(2).saturationModifier(0.75f).snack().build())); + public static final Item Salami = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(3).saturationModifier(1f).snack().build())); + public static final Item RawBacon = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(1).saturationModifier(0.5f).build())); + public static final Item Bacon = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(2).saturationModifier(0.75f).build())); + public static final Item CheeseRoll = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(4).saturationModifier(1f).build())); + public static final Item CheeseSlice = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(2).saturationModifier(0.5f).snack().build())); + + public static final Item IceCreamVanilla = new Item(new Item.Settings().group(DishesMain.SweetsGroup).food(new FoodComponent.Builder().hunger(6).saturationModifier(1f).build())); + public static final Item IceCreamChocolate = new Item(new Item.Settings().group(DishesMain.SweetsGroup).food(new FoodComponent.Builder().hunger(6).saturationModifier(1f).build())); + public static final Item IceCreamWhiteChocolate = new Item(new Item.Settings().group(DishesMain.SweetsGroup).food(new FoodComponent.Builder().hunger(6).saturationModifier(1f).build())); + public static final Item IceCreamStrawberry = new Item(new Item.Settings().group(DishesMain.SweetsGroup).food(new FoodComponent.Builder().hunger(6).saturationModifier(1f).build())); + public static final Item IceCreamBanana = new Item(new Item.Settings().group(DishesMain.SweetsGroup).food(new FoodComponent.Builder().hunger(6).saturationModifier(1f).build())); + public static final Item IceCreamPear = new Item(new Item.Settings().group(DishesMain.SweetsGroup).food(new FoodComponent.Builder().hunger(6).saturationModifier(1f).build())); + public static final Item IceCreamSweetberry = new Item(new Item.Settings().group(DishesMain.SweetsGroup).food(new FoodComponent.Builder().hunger(6).saturationModifier(1f).build())); + public static final Item IceCreamBlueberry = new Item(new Item.Settings().group(DishesMain.SweetsGroup).food(new FoodComponent.Builder().hunger(6).saturationModifier(1f).build())); + public static final Item IceCreamBubblegum = new Item(new Item.Settings().group(DishesMain.SweetsGroup).food(new FoodComponent.Builder().hunger(6).saturationModifier(1f).build())); + public static final Block BirthdayCake = new Cake(); @Override public void onInitialize() { - Registry.register(Registry.ITEM, new Identifier("dishes","salt_ore"), new BlockItem(SaltOre, new Item.Settings().group(DishesMain.DishesGroup))); + AutoConfig.register(DishesConfig.class, JanksonConfigSerializer::new); + DD_CONFIG = AutoConfig.getConfigHolder(DishesConfig.class).getConfig(); + + new DishBites(); + BlockEntityInit.init(); + + // General // + Registry.register(Registry.ITEM, new Identifier("dishes","salt_ore"), new BlockItem(SaltOre, new Item.Settings().group(DishesMain.MainGroup))); Registry.register(Registry.BLOCK, new Identifier("dishes","salt_ore"), SaltOre); Registry.register(Registry.ITEM, new Identifier("dishes","salt"), Salt); Registry.register(Registry.ITEM, new Identifier("dishes","flour"), Flour); @@ -64,45 +96,74 @@ public class DishesMain implements ModInitializer { Registry.register(Registry.ITEM, new Identifier("dishes","bacon"), Bacon); Registry.register(Registry.ITEM, new Identifier("dishes","cheese_roll"), CheeseRoll); Registry.register(Registry.ITEM, new Identifier("dishes","cheese_slice"), CheeseSlice); - Registry.register(Registry.ITEM, new Identifier("dishes","tomatoseed"), new AliasedBlockItem(TomatoBush, new Item.Settings().group(DishesMain.DishesGroup))); - Registry.register(Registry.ITEM, new Identifier("dishes","tomato"), Tomato); - Registry.register(Registry.ITEM, new Identifier("dishes","lettuceseed"), new AliasedBlockItem(LettuceBush, new Item.Settings().group(DishesMain.DishesGroup))); - Registry.register(Registry.ITEM, new Identifier("dishes","lettuce"), Lettuce); - Registry.register(Registry.BLOCK, new Identifier("dishes","tomatobush"), TomatoBush); - Registry.register(Registry.BLOCK, new Identifier("dishes","lettucebush"), LettuceBush); - Registry.register(Registry.ITEM, new Identifier("dishes","plate"), new AliasedBlockItem(Plate, new Item.Settings().group(DishesMain.DishesGroup))); + CropInit.init(); + + // Dishes // + Registry.register(Registry.ITEM, new Identifier("dishes","plate"), new BlockItem(Plate, new Item.Settings().group(DishesMain.DishesGroup))); Registry.register(Registry.BLOCK, new Identifier("dishes","plate"), Plate); - Registry.register(Registry.ITEM, new Identifier("dishes","potatoeswithcurdcheese"), new AliasedBlockItem(PotatoesWithCurdCheese, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + Registry.register(Registry.ITEM, new Identifier("dishes","potatoeswithcurdcheese"), new BlockItem(PotatoesWithCurdCheese, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","potatoeswithcurdcheese"), PotatoesWithCurdCheese); - Registry.register(Registry.ITEM, new Identifier("dishes","tinypotatoeswithcurdcheese"), new AliasedBlockItem(TinyPotatoesWithCurdCheese, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); - Registry.register(Registry.BLOCK, new Identifier("dishes","tinypotatoeswithcurdcheese"), TinyPotatoesWithCurdCheese); - Registry.register(Registry.ITEM, new Identifier("dishes","schnitzel"), new AliasedBlockItem(Schnitzel, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + + if (FabricLoader.getInstance().isModLoaded("lil_tater") | FabricLoader.getInstance().isModLoaded("liltater") | FabricLoader.getInstance().isModLoaded("ltr")) { + Registry.register(Registry.ITEM, new Identifier("dishes","tinypotatoeswithcurdcheese"), new BlockItem(TinyPotatoesWithCurdCheese, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); + Registry.register(Registry.BLOCK, new Identifier("dishes","tinypotatoeswithcurdcheese"), TinyPotatoesWithCurdCheese); + } + + Registry.register(Registry.ITEM, new Identifier("dishes","schnitzel"), new BlockItem(Schnitzel, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","schnitzel"), Schnitzel); - Registry.register(Registry.ITEM, new Identifier("dishes","spaghetti_bolognese"), new AliasedBlockItem(SpaghettiBolognese, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + Registry.register(Registry.ITEM, new Identifier("dishes","spaghetti_bolognese"), new BlockItem(SpaghettiBolognese, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","spaghetti_bolognese"), SpaghettiBolognese); - Registry.register(Registry.ITEM, new Identifier("dishes","steak"), new AliasedBlockItem(Steak, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + Registry.register(Registry.ITEM, new Identifier("dishes","steak"), new BlockItem(Steak, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","steak"), Steak); - Registry.register(Registry.ITEM, new Identifier("dishes","hamburger"), new AliasedBlockItem(Hamburger, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + Registry.register(Registry.ITEM, new Identifier("dishes","hamburger"), new BlockItem(Hamburger, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","hamburger"), Hamburger); - Registry.register(Registry.ITEM, new Identifier("dishes","chickenburger"), new AliasedBlockItem(Chickenburger, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + Registry.register(Registry.ITEM, new Identifier("dishes","chickenburger"), new BlockItem(Chickenburger, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","chickenburger"), Chickenburger); - Registry.register(Registry.ITEM, new Identifier("dishes","cheeseburger"), new AliasedBlockItem(Cheeseburger, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + Registry.register(Registry.ITEM, new Identifier("dishes","cheeseburger"), new BlockItem(Cheeseburger, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","cheeseburger"), Cheeseburger); - Registry.register(Registry.ITEM, new Identifier("dishes","fishandchips"), new AliasedBlockItem(FishAndChips, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + + if (FabricLoader.getInstance().isModLoaded("galacticraft-rewoven") | FabricLoader.getInstance().isModLoaded("astromine")) { + Registry.register(Registry.ITEM, new Identifier("dishes", "spaceburger"), new BlockItem(Spaceburger, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); + Registry.register(Registry.BLOCK, new Identifier("dishes", "spaceburger"), Spaceburger); + } + + Registry.register(Registry.ITEM, new Identifier("dishes","fishandchips"), new BlockItem(FishAndChips, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","fishandchips"), FishAndChips); - Registry.register(Registry.ITEM, new Identifier("dishes","pizzabox"), new AliasedBlockItem(PizzaBox, new Item.Settings().group(DishesMain.DishesGroup))); + + // Pizza // + Registry.register(Registry.ITEM, new Identifier("dishes","pizzabox"), new BlockItem(PizzaBox, new Item.Settings().group(DishesMain.PizzaGroup))); Registry.register(Registry.BLOCK, new Identifier("dishes","pizzabox"), PizzaBox); - Registry.register(Registry.ITEM, new Identifier("dishes","pizzasalami"), new AliasedBlockItem(PizzaSalami, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + Registry.register(Registry.ITEM, new Identifier("dishes","pizzasalami"), new BlockItem(PizzaSalami, new Item.Settings().group(DishesMain.PizzaGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","pizzasalami"), PizzaSalami); - Registry.register(Registry.ITEM, new Identifier("dishes","pizzaham"), new AliasedBlockItem(PizzaHam, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + Registry.register(Registry.ITEM, new Identifier("dishes","pizzaham"), new BlockItem(PizzaHam, new Item.Settings().group(DishesMain.PizzaGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","pizzaham"), PizzaHam); - Registry.register(Registry.ITEM, new Identifier("dishes","pizzatuna"), new AliasedBlockItem(PizzaTuna, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + Registry.register(Registry.ITEM, new Identifier("dishes","pizzatuna"), new BlockItem(PizzaTuna, new Item.Settings().group(DishesMain.PizzaGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","pizzatuna"), PizzaTuna); - Registry.register(Registry.ITEM, new Identifier("dishes","pizzabacon"), new AliasedBlockItem(PizzaBacon, new Item.Settings().group(DishesMain.DishesGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(20f).build()))); + Registry.register(Registry.ITEM, new Identifier("dishes","pizzabacon"), new BlockItem(PizzaBacon, new Item.Settings().group(DishesMain.PizzaGroup).food(new FoodComponent.Builder().hunger(10).saturationModifier(1f).build()))); Registry.register(Registry.BLOCK, new Identifier("dishes","pizzabacon"), PizzaBacon); - LootModifier.init(); - Flags.init(); - OreFeatures.init(); + // Ice Cream // + Registry.register(Registry.ITEM, new Identifier("dishes","ice_cream_vanilla"), IceCreamVanilla); + Registry.register(Registry.ITEM, new Identifier("dishes","ice_cream_chocolate"), IceCreamChocolate); + Registry.register(Registry.ITEM, new Identifier("dishes","ice_cream_white_chocolate"), IceCreamWhiteChocolate); + Registry.register(Registry.ITEM, new Identifier("dishes","ice_cream_strawberry"), IceCreamStrawberry); + Registry.register(Registry.ITEM, new Identifier("dishes","ice_cream_banana"), IceCreamBanana); + Registry.register(Registry.ITEM, new Identifier("dishes","ice_cream_pear"), IceCreamPear); + Registry.register(Registry.ITEM, new Identifier("dishes","ice_cream_sweetberry"), IceCreamSweetberry); + Registry.register(Registry.ITEM, new Identifier("dishes","ice_cream_blueberry"), IceCreamBlueberry); + Registry.register(Registry.ITEM, new Identifier("dishes","ice_cream_bubblegum"), IceCreamBubblegum); + + // Cake // + Registry.register(Registry.ITEM, new Identifier("dishes","birthday_cake"), new BlockItem(BirthdayCake, new Item.Settings().group(DishesMain.SweetsGroup))); + Registry.register(Registry.BLOCK, new Identifier("dishes","birthday_cake"), BirthdayCake); + + // Compat // + if (FabricLoader.getInstance().isModLoaded("patchouli")) { + Registry.register(Registry.ITEM, new Identifier("dishes","cooking_guide"), CookingGuide); + } + if (FabricLoader.getInstance().isModLoaded("patchouli")) { + Flags.init(); + } + WorldGenInit.init(); } } diff --git a/src/main/java/eu/midnightdust/motschen/dishes/LootModifier.java b/src/main/java/eu/midnightdust/motschen/dishes/LootModifier.java deleted file mode 100644 index 367c194..0000000 --- a/src/main/java/eu/midnightdust/motschen/dishes/LootModifier.java +++ /dev/null @@ -1,31 +0,0 @@ -package eu.midnightdust.motschen.dishes; - -import net.fabricmc.fabric.api.loot.v1.FabricLootPoolBuilder; -import net.fabricmc.fabric.api.loot.v1.event.LootTableLoadingCallback; -import net.minecraft.loot.UniformLootTableRange; -import net.minecraft.loot.condition.RandomChanceLootCondition; -import net.minecraft.loot.entry.ItemEntry; - -public class LootModifier { - - public static void init() { - LootTableLoadingCallback.EVENT.register((resourceManager, lootManager, id, supplier, setter) -> { - if (id.getPath().contains("chests") && id.getPath().contains("village")) { - FabricLootPoolBuilder tomato = FabricLootPoolBuilder.builder() - .rolls(UniformLootTableRange.between(0, 5)) - .withCondition(RandomChanceLootCondition.builder(1.0f).build()) - .with(ItemEntry.builder(DishesMain.Tomato)); - supplier.pool(tomato); - } - }); - LootTableLoadingCallback.EVENT.register((resourceManager, lootManager, id, supplier, setter) -> { - if (id.getPath().contains("chests") && id.getPath().contains("village")) { - FabricLootPoolBuilder lettuce = FabricLootPoolBuilder.builder() - .rolls(UniformLootTableRange.between(0, 5)) - .withCondition(RandomChanceLootCondition.builder(1.0f).build()) - .with(ItemEntry.builder(DishesMain.Lettuce)); - supplier.pool(lettuce); - } - }); - } -} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/block/Cake.java b/src/main/java/eu/midnightdust/motschen/dishes/block/Cake.java new file mode 100644 index 0000000..e9746e5 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/block/Cake.java @@ -0,0 +1,62 @@ +package eu.midnightdust.motschen.dishes.block; + +import eu.midnightdust.motschen.dishes.block.blockentity.BirthdayCakeBlockEntity; +import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; +import net.minecraft.block.*; +import net.minecraft.block.entity.BlockEntity; +import net.minecraft.item.ItemPlacementContext; +import net.minecraft.state.StateManager; +import net.minecraft.state.property.Properties; +import net.minecraft.world.BlockView; + +import java.util.function.ToIntFunction; + +public class Cake extends CakeBlock implements BlockEntityProvider { + + public Cake() { + super(FabricBlockSettings.copy(Blocks.CAKE).lightLevel(createLightLevelFromBlockState(15))); + this.setDefaultState(this.stateManager.getDefaultState().with(BITES, 0)); + } + + @Override + public BlockState getPlacementState(ItemPlacementContext itemPlacementContext) { + return super.getPlacementState(itemPlacementContext) + .with(BITES, 0); + } + + @Override + protected void appendProperties(StateManager.Builder builder) { + builder.add(BITES); + } + + @Override + public BlockEntity createBlockEntity(BlockView world) { + return new BirthdayCakeBlockEntity(); + } + + private static ToIntFunction createLightLevelFromBlockState(int litLevel) { + return (blockState) -> { + if (blockState.get(Properties.BITES) == 0) { + return 15; + } + if (blockState.get(Properties.BITES) == 1) { + return 14; + } + else if (blockState.get(Properties.BITES) == 2) { + return 13; + } + else if (blockState.get(Properties.BITES) == 3) { + return 13; + } + else if (blockState.get(Properties.BITES) == 4) { + return 12; + } + else if (blockState.get(Properties.BITES) == 5) { + return 12; + } + else { + return 11; + } + }; + } +} \ No newline at end of file diff --git a/src/main/java/eu/midnightdust/motschen/dishes/Dish.java b/src/main/java/eu/midnightdust/motschen/dishes/block/Dish.java similarity index 55% rename from src/main/java/eu/midnightdust/motschen/dishes/Dish.java rename to src/main/java/eu/midnightdust/motschen/dishes/block/Dish.java index 8cffe4a..75cfadd 100644 --- a/src/main/java/eu/midnightdust/motschen/dishes/Dish.java +++ b/src/main/java/eu/midnightdust/motschen/dishes/block/Dish.java @@ -1,54 +1,55 @@ -package eu.midnightdust.motschen.dishes; +package eu.midnightdust.motschen.dishes.block; +import eu.midnightdust.motschen.dishes.DishesMain; +import eu.midnightdust.motschen.dishes.blockstates.DishBites; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.*; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.ItemPlacementContext; import net.minecraft.sound.BlockSoundGroup; import net.minecraft.state.StateManager; +import net.minecraft.state.property.IntProperty; import net.minecraft.util.ActionResult; import net.minecraft.util.Hand; import net.minecraft.util.hit.BlockHitResult; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; import net.minecraft.util.shape.VoxelShape; -import net.minecraft.util.shape.VoxelShapes; import net.minecraft.world.BlockView; import net.minecraft.world.World; import net.minecraft.world.WorldView; -import static net.minecraft.state.property.Properties.BITES; - public class Dish extends HorizontalFacingBlock { + public static final IntProperty DISH_BITES = DishBites.DISH_BITES; private static final VoxelShape NORTH_SHAPE; private static final VoxelShape EAST_SHAPE; private static final VoxelShape SOUTH_SHAPE; private static final VoxelShape WEST_SHAPE; public Dish() { - super(FabricBlockSettings.copy(Blocks.CAKE).nonOpaque().sounds(BlockSoundGroup.STONE)); - this.setDefaultState(this.stateManager.getDefaultState().with(FACING, Direction.NORTH).with(BITES, 0)); + super(FabricBlockSettings.copy(Blocks.STONE).nonOpaque().sounds(BlockSoundGroup.STONE)); + this.setDefaultState(this.stateManager.getDefaultState().with(FACING, Direction.NORTH).with(DISH_BITES, 0)); } public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockHitResult hit) { if (player.getHungerManager().isNotFull()) { - switch (state.get(BITES)) { - case 0: world.setBlockState(pos, state.with(BITES, 1)); - player.getHungerManager().add(2, 4); - return ActionResult.SUCCESS; - case 1: world.setBlockState(pos, state.with(BITES, 2)); - player.getHungerManager().add(2, 4); - return ActionResult.SUCCESS; - case 2: world.setBlockState(pos, state.with(BITES, 3)); - player.getHungerManager().add(2, 4); - return ActionResult.SUCCESS; - case 3: world.setBlockState(pos, state.with(BITES, 4)); - player.getHungerManager().add(2, 4); - return ActionResult.SUCCESS; - case 4: world.setBlockState(pos,DishesMain.Plate.getDefaultState()); - player.getHungerManager().add(2, 1); - return ActionResult.SUCCESS; + switch (state.get(DISH_BITES)) { + case 0: world.setBlockState(pos, state.with(DISH_BITES, 1)); + player.getHungerManager().add(2, 4); + return ActionResult.SUCCESS; + case 1: world.setBlockState(pos, state.with(DISH_BITES, 2)); + player.getHungerManager().add(2, 4); + return ActionResult.SUCCESS; + case 2: world.setBlockState(pos, state.with(DISH_BITES, 3)); + player.getHungerManager().add(2, 4); + return ActionResult.SUCCESS; + case 3: world.setBlockState(pos, state.with(DISH_BITES, 4)); + player.getHungerManager().add(2, 4); + return ActionResult.SUCCESS; + case 4: world.setBlockState(pos, DishesMain.Plate.getDefaultState()); + player.getHungerManager().add(2, 1); + return ActionResult.SUCCESS; } return ActionResult.SUCCESS; } @@ -61,13 +62,12 @@ public class Dish extends HorizontalFacingBlock { public BlockState getPlacementState(ItemPlacementContext itemPlacementContext) { return super.getPlacementState(itemPlacementContext) .with(FACING, itemPlacementContext.getPlayerFacing().getOpposite()) - .with(BITES, 0); + .with(DISH_BITES, 0); } @Override protected void appendProperties(StateManager.Builder builder) { - builder.add(FACING); - builder.add(BITES); + builder.add(FACING, DISH_BITES); } @Override public VoxelShape getOutlineShape(BlockState state, BlockView view, BlockPos pos, ShapeContext context) { @@ -87,18 +87,6 @@ public class Dish extends HorizontalFacingBlock { SOUTH_SHAPE = shape; WEST_SHAPE = shape; } - private static VoxelShape rotate(Direction from, Direction to, VoxelShape shape) { - VoxelShape[] buffer = new VoxelShape[]{ shape, VoxelShapes.empty() }; - - int times = (to.getHorizontal() - from.getHorizontal() + 4) % 4; - for (int i = 0; i < times; i++) { - buffer[0].forEachBox((minX, minY, minZ, maxX, maxY, maxZ) -> buffer[1] = VoxelShapes.union(buffer[1], VoxelShapes.cuboid(1-maxZ, minY, minX, 1-minZ, maxY, maxX))); - buffer[0] = buffer[1]; - buffer[1] = VoxelShapes.empty(); - } - - return buffer[0]; - } public boolean canPlaceAt(BlockState state, WorldView worldView, BlockPos pos) { return !worldView.isAir(pos.down()); } diff --git a/src/main/java/eu/midnightdust/motschen/dishes/block/Lettuce.java b/src/main/java/eu/midnightdust/motschen/dishes/block/Lettuce.java new file mode 100644 index 0000000..42ae0bc --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/block/Lettuce.java @@ -0,0 +1,23 @@ +package eu.midnightdust.motschen.dishes.block; + +import eu.midnightdust.motschen.dishes.init.CropInit; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; +import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; +import net.minecraft.block.Blocks; +import net.minecraft.block.CropBlock; +import net.minecraft.item.ItemConvertible; + +public class Lettuce extends CropBlock { + + public Lettuce() { + super(FabricBlockSettings.copy(Blocks.CARROTS)); + } + + @Override + @Environment(EnvType.CLIENT) + protected ItemConvertible getSeedsItem() { + return CropInit.LettuceBush; + } +} + diff --git a/src/main/java/eu/midnightdust/motschen/dishes/Pizza.java b/src/main/java/eu/midnightdust/motschen/dishes/block/Pizza.java similarity index 52% rename from src/main/java/eu/midnightdust/motschen/dishes/Pizza.java rename to src/main/java/eu/midnightdust/motschen/dishes/block/Pizza.java index 924bd2d..a19ad3e 100644 --- a/src/main/java/eu/midnightdust/motschen/dishes/Pizza.java +++ b/src/main/java/eu/midnightdust/motschen/dishes/block/Pizza.java @@ -1,58 +1,58 @@ -package eu.midnightdust.motschen.dishes; +package eu.midnightdust.motschen.dishes.block; +import eu.midnightdust.motschen.dishes.DishesMain; +import eu.midnightdust.motschen.dishes.blockstates.DishBites; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.*; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.ItemPlacementContext; import net.minecraft.sound.BlockSoundGroup; import net.minecraft.state.StateManager; -import net.minecraft.state.property.Properties; +import net.minecraft.state.property.IntProperty; import net.minecraft.util.ActionResult; import net.minecraft.util.Hand; import net.minecraft.util.hit.BlockHitResult; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; import net.minecraft.util.shape.VoxelShape; -import net.minecraft.util.shape.VoxelShapes; import net.minecraft.world.BlockView; import net.minecraft.world.World; import net.minecraft.world.WorldView; -import static net.minecraft.state.property.Properties.BITES; - public class Pizza extends HorizontalFacingBlock { + public static final IntProperty DISH_BITES = DishBites.DISH_BITES; private static final VoxelShape NORTH_SHAPE; private static final VoxelShape EAST_SHAPE; private static final VoxelShape SOUTH_SHAPE; private static final VoxelShape WEST_SHAPE; public Pizza() { - super(FabricBlockSettings.copy(Blocks.CAKE).nonOpaque().sounds(BlockSoundGroup.STONE)); - this.setDefaultState(this.stateManager.getDefaultState().with(FACING, Direction.NORTH).with(BITES, 0)); + super(FabricBlockSettings.copy(Blocks.STONE).nonOpaque().sounds(BlockSoundGroup.STONE)); + this.setDefaultState(this.stateManager.getDefaultState().with(FACING, Direction.NORTH).with(DISH_BITES, 0)); } public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockHitResult hit) { if (player.getHungerManager().isNotFull()) { - switch (state.get(BITES)) { - case 0: world.setBlockState(pos, state.with(BITES, 1)); - player.getHungerManager().add(2, 4); - return ActionResult.SUCCESS; - case 1: world.setBlockState(pos, state.with(BITES, 2)); - player.getHungerManager().add(2, 4); - return ActionResult.SUCCESS; - case 2: world.setBlockState(pos, state.with(BITES, 3)); - player.getHungerManager().add(2, 4); - return ActionResult.SUCCESS; - case 3: world.setBlockState(pos, state.with(BITES, 4)); - player.getHungerManager().add(2, 4); - return ActionResult.SUCCESS; + switch (state.get(DISH_BITES)) { + case 0: world.setBlockState(pos, state.with(DISH_BITES, 1)); + player.getHungerManager().add(2, 4); + return ActionResult.SUCCESS; + case 1: world.setBlockState(pos, state.with(DISH_BITES, 2)); + player.getHungerManager().add(2, 4); + return ActionResult.SUCCESS; + case 2: world.setBlockState(pos, state.with(DISH_BITES, 3)); + player.getHungerManager().add(2, 4); + return ActionResult.SUCCESS; + case 3: world.setBlockState(pos, state.with(DISH_BITES, 4)); + player.getHungerManager().add(2, 4); + return ActionResult.SUCCESS; case 4: switch (state.get(FACING)) { - case NORTH: world.setBlockState(pos,DishesMain.PizzaBox.getDefaultState().with(FACING, Direction.NORTH)); return ActionResult.SUCCESS; - case EAST: world.setBlockState(pos,DishesMain.PizzaBox.getDefaultState().with(FACING, Direction.EAST)); return ActionResult.SUCCESS; - case WEST: world.setBlockState(pos,DishesMain.PizzaBox.getDefaultState().with(FACING, Direction.WEST)); return ActionResult.SUCCESS; - case SOUTH: world.setBlockState(pos,DishesMain.PizzaBox.getDefaultState().with(FACING, Direction.SOUTH)); return ActionResult.SUCCESS; + case NORTH: world.setBlockState(pos, DishesMain.PizzaBox.getDefaultState().with(FACING, Direction.NORTH)); return ActionResult.SUCCESS; + case EAST: world.setBlockState(pos, DishesMain.PizzaBox.getDefaultState().with(FACING, Direction.EAST)); return ActionResult.SUCCESS; + case WEST: world.setBlockState(pos, DishesMain.PizzaBox.getDefaultState().with(FACING, Direction.WEST)); return ActionResult.SUCCESS; + case SOUTH: world.setBlockState(pos, DishesMain.PizzaBox.getDefaultState().with(FACING, Direction.SOUTH)); return ActionResult.SUCCESS; } player.getHungerManager().add(2, 1); return ActionResult.SUCCESS; @@ -68,13 +68,13 @@ public class Pizza extends HorizontalFacingBlock { public BlockState getPlacementState(ItemPlacementContext itemPlacementContext) { return super.getPlacementState(itemPlacementContext) .with(FACING, itemPlacementContext.getPlayerFacing().getOpposite()) - .with(BITES, 0); + .with(DISH_BITES, 0); } @Override protected void appendProperties(StateManager.Builder builder) { builder.add(FACING); - builder.add(BITES); + builder.add(DISH_BITES); } @Override public VoxelShape getOutlineShape(BlockState state, BlockView view, BlockPos pos, ShapeContext context) { @@ -94,18 +94,6 @@ public class Pizza extends HorizontalFacingBlock { SOUTH_SHAPE = shape; WEST_SHAPE = shape; } - private static VoxelShape rotate(Direction from, Direction to, VoxelShape shape) { - VoxelShape[] buffer = new VoxelShape[]{ shape, VoxelShapes.empty() }; - - int times = (to.getHorizontal() - from.getHorizontal() + 4) % 4; - for (int i = 0; i < times; i++) { - buffer[0].forEachBox((minX, minY, minZ, maxX, maxY, maxZ) -> buffer[1] = VoxelShapes.union(buffer[1], VoxelShapes.cuboid(1-maxZ, minY, minX, 1-minZ, maxY, maxX))); - buffer[0] = buffer[1]; - buffer[1] = VoxelShapes.empty(); - } - - return buffer[0]; - } public boolean canPlaceAt(BlockState state, WorldView worldView, BlockPos pos) { return !worldView.isAir(pos.down()); } diff --git a/src/main/java/eu/midnightdust/motschen/dishes/Plate.java b/src/main/java/eu/midnightdust/motschen/dishes/block/Plate.java similarity index 98% rename from src/main/java/eu/midnightdust/motschen/dishes/Plate.java rename to src/main/java/eu/midnightdust/motschen/dishes/block/Plate.java index 54e6bfd..f7f9ea5 100644 --- a/src/main/java/eu/midnightdust/motschen/dishes/Plate.java +++ b/src/main/java/eu/midnightdust/motschen/dishes/block/Plate.java @@ -1,4 +1,4 @@ -package eu.midnightdust.motschen.dishes; +package eu.midnightdust.motschen.dishes.block; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.*; diff --git a/src/main/java/eu/midnightdust/motschen/dishes/block/Tomato.java b/src/main/java/eu/midnightdust/motschen/dishes/block/Tomato.java new file mode 100644 index 0000000..bd2b1d4 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/block/Tomato.java @@ -0,0 +1,23 @@ +package eu.midnightdust.motschen.dishes.block; + +import eu.midnightdust.motschen.dishes.init.CropInit; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; +import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; +import net.minecraft.block.Blocks; +import net.minecraft.block.CropBlock; +import net.minecraft.item.ItemConvertible; + +public class Tomato extends CropBlock { + + public Tomato() { + super(FabricBlockSettings.copy(Blocks.CARROTS)); + } + + @Override + @Environment(EnvType.CLIENT) + protected ItemConvertible getSeedsItem() { + return CropInit.TomatoBush; + } +} + diff --git a/src/main/java/eu/midnightdust/motschen/dishes/block/blockentity/BirthdayCakeBlockEntity.java b/src/main/java/eu/midnightdust/motschen/dishes/block/blockentity/BirthdayCakeBlockEntity.java new file mode 100644 index 0000000..9a9b626 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/block/blockentity/BirthdayCakeBlockEntity.java @@ -0,0 +1,52 @@ +package eu.midnightdust.motschen.dishes.block.blockentity; + +import eu.midnightdust.motschen.dishes.init.BlockEntityInit; +import net.minecraft.block.BlockState; +import net.minecraft.block.entity.BlockEntity; +import net.minecraft.particle.ParticleTypes; +import net.minecraft.state.property.Properties; +import net.minecraft.util.Tickable; +import net.minecraft.util.math.BlockPos; + +public class BirthdayCakeBlockEntity extends BlockEntity implements Tickable { + private float flame; + + public BirthdayCakeBlockEntity() { + super(BlockEntityInit.BirthdayCakeBlockEntity); + } + + @Override + public void tick() { + BlockPos pos = this.pos; + BlockState state = this.world.getBlockState(pos); + flame = flame + 0.5f; + if (flame == 9) { + flame = 1; + } + + if (flame == 5 && state.get(Properties.BITES) < 4) { + world.addParticle(ParticleTypes.FLAME, pos.getX() + 0.5, pos.getY() + 0.8, pos.getZ() + 0.15, 0, 0, 0); + } + if (flame == 1 && state.get(Properties.BITES) < 2) { + world.addParticle(ParticleTypes.FLAME, pos.getX() + 0.25, pos.getY() + 0.8, pos.getZ() + 0.25, 0, 0, 0); + } + if (flame == 7 && state.get(Properties.BITES) < 1) { + world.addParticle(ParticleTypes.FLAME, pos.getX() + 0.15, pos.getY() + 0.8, pos.getZ() + 0.5, 0, 0, 0); + } + if (flame == 3 && state.get(Properties.BITES) < 2) { + world.addParticle(ParticleTypes.FLAME, pos.getX() + 0.25, pos.getY() + 0.8, pos.getZ() + 0.75, 0, 0, 0); + } + if (flame == 4 && state.get(Properties.BITES) < 4) { + world.addParticle(ParticleTypes.FLAME, pos.getX() + 0.5, pos.getY() + 0.8, pos.getZ() + 0.85, 0, 0, 0); + } + if (flame == 8 && state.get(Properties.BITES) < 6) { + world.addParticle(ParticleTypes.FLAME, pos.getX() + 0.75, pos.getY() + 0.8, pos.getZ() + 0.75, 0, 0, 0); + } + if (flame == 2) { + world.addParticle(ParticleTypes.FLAME, pos.getX() + 0.85, pos.getY() + 0.8, pos.getZ() + 0.5, 0, 0, 0); + } + if (flame == 6 && state.get(Properties.BITES) < 6) { + world.addParticle(ParticleTypes.FLAME, pos.getX() + 0.75, pos.getY() + 0.8, pos.getZ() + 0.25, 0, 0, 0); + } + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/blockstates/DishBites.java b/src/main/java/eu/midnightdust/motschen/dishes/blockstates/DishBites.java new file mode 100644 index 0000000..e28667c --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/blockstates/DishBites.java @@ -0,0 +1,10 @@ +package eu.midnightdust.motschen.dishes.blockstates; + +import net.minecraft.state.property.IntProperty; + +public class DishBites { + public static final IntProperty DISH_BITES; + static { + DISH_BITES = IntProperty.of("bites", 0, 4); + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/compat/CookingGuideItem.java b/src/main/java/eu/midnightdust/motschen/dishes/compat/CookingGuideItem.java new file mode 100644 index 0000000..343e98e --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/compat/CookingGuideItem.java @@ -0,0 +1,28 @@ +package eu.midnightdust.motschen.dishes.compat; + +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.Hand; +import net.minecraft.util.Identifier; +import net.minecraft.util.TypedActionResult; +import net.minecraft.util.registry.Registry; +import net.minecraft.world.World; + +import java.util.Optional; + +public class CookingGuideItem extends Item { + public CookingGuideItem(Item.Settings settings) { + super(settings); + } + public TypedActionResult use(World world, PlayerEntity user, Hand hand) { + ItemStack itemStack = user.getStackInHand(hand); + + Optional item = Registry.ITEM.getOrEmpty(new Identifier("patchouli", "guide_book")); + ItemStack stack = new ItemStack(item.get()); + stack.getOrCreateTag().putString("patchouli:book", "dishes:cooking_guide"); + + user.setStackInHand(hand, stack); + return TypedActionResult.pass(itemStack); + } +} \ No newline at end of file diff --git a/src/main/java/eu/midnightdust/motschen/dishes/Flags.java b/src/main/java/eu/midnightdust/motschen/dishes/compat/Flags.java similarity index 94% rename from src/main/java/eu/midnightdust/motschen/dishes/Flags.java rename to src/main/java/eu/midnightdust/motschen/dishes/compat/Flags.java index f360e05..c3435ab 100644 --- a/src/main/java/eu/midnightdust/motschen/dishes/Flags.java +++ b/src/main/java/eu/midnightdust/motschen/dishes/compat/Flags.java @@ -1,4 +1,4 @@ -package eu.midnightdust.motschen.dishes; +package eu.midnightdust.motschen.dishes.compat; import net.minecraft.item.Item; import net.minecraft.util.Identifier; diff --git a/src/main/java/eu/midnightdust/motschen/dishes/config/DishesConfig.java b/src/main/java/eu/midnightdust/motschen/dishes/config/DishesConfig.java new file mode 100644 index 0000000..7f68d34 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/config/DishesConfig.java @@ -0,0 +1,21 @@ +package eu.midnightdust.motschen.dishes.config; + +import me.sargunvohra.mcmods.autoconfig1u.ConfigData; +import me.sargunvohra.mcmods.autoconfig1u.annotation.Config; +import me.sargunvohra.mcmods.autoconfig1u.annotation.ConfigEntry; + +@Config(name = "dishes") +public class DishesConfig implements ConfigData { + + @ConfigEntry.Category("main") + @ConfigEntry.Gui.TransitiveObject + public MainConfig main = new MainConfig(); + + @ConfigEntry.Category("worldgen") + @ConfigEntry.Gui.TransitiveObject + public WorldGenConfig worldgen = new WorldGenConfig(); + + @ConfigEntry.Category("trader") + @ConfigEntry.Gui.TransitiveObject + public IceCreamTraderConfig trader = new IceCreamTraderConfig(); +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/config/IceCreamTraderConfig.java b/src/main/java/eu/midnightdust/motschen/dishes/config/IceCreamTraderConfig.java new file mode 100644 index 0000000..3f1ed7c --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/config/IceCreamTraderConfig.java @@ -0,0 +1,14 @@ +package eu.midnightdust.motschen.dishes.config; + +import me.sargunvohra.mcmods.autoconfig1u.shadowed.blue.endless.jankson.Comment; +import me.sargunvohra.mcmods.autoconfig1u.annotation.Config; + +@Config(name = "trader") +public class IceCreamTraderConfig { + + @Comment(value = "\nEnable Ice Cream Trader\nDefault: true") + public boolean enabled = true; + + @Comment(value = "\nEnable Ice Cream Trader Spawning\nDefault: true") + public boolean spawntrader = true; +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/config/MainConfig.java b/src/main/java/eu/midnightdust/motschen/dishes/config/MainConfig.java new file mode 100644 index 0000000..187559b --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/config/MainConfig.java @@ -0,0 +1,13 @@ +package eu.midnightdust.motschen.dishes.config; + +import me.sargunvohra.mcmods.autoconfig1u.shadowed.blue.endless.jankson.Comment; +import me.sargunvohra.mcmods.autoconfig1u.annotation.Config; + +@Config(name = "main") +public class MainConfig { + + @Comment(value = "\nEnable Tomatoes\nDefault: true") + public boolean tomatoes = true; + @Comment(value = "\nEnable Lettuce\nDefault: true") + public boolean lettuce = true; +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/config/ModMenuIntegration.java b/src/main/java/eu/midnightdust/motschen/dishes/config/ModMenuIntegration.java new file mode 100644 index 0000000..7597c65 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/config/ModMenuIntegration.java @@ -0,0 +1,16 @@ +package eu.midnightdust.motschen.dishes.config; + +import io.github.prospector.modmenu.api.ConfigScreenFactory; +import io.github.prospector.modmenu.api.ModMenuApi; +import me.sargunvohra.mcmods.autoconfig1u.AutoConfig; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; + +@Environment(EnvType.CLIENT) +public class ModMenuIntegration implements ModMenuApi { + + @Override + public ConfigScreenFactory getModConfigScreenFactory() { + return parent -> AutoConfig.getConfigScreen(DishesConfig.class, parent).get(); + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/config/WorldGenConfig.java b/src/main/java/eu/midnightdust/motschen/dishes/config/WorldGenConfig.java new file mode 100644 index 0000000..3e8509c --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/config/WorldGenConfig.java @@ -0,0 +1,14 @@ +package eu.midnightdust.motschen.dishes.config; + +import me.sargunvohra.mcmods.autoconfig1u.shadowed.blue.endless.jankson.Comment; +import me.sargunvohra.mcmods.autoconfig1u.annotation.Config; + +@Config(name = "trader") +public class WorldGenConfig { + + @Comment(value = "\nEnable Salt Ore\nDefault: true") + public boolean salt_ore = true; + + @Comment(value = "\nEnable Custom Loot\nDefault: true") + public boolean loot = true; +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderEntity.java b/src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderEntity.java new file mode 100644 index 0000000..1d85211 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderEntity.java @@ -0,0 +1,29 @@ +package eu.midnightdust.motschen.dishes.entities; + +import net.minecraft.entity.EntityType; +import net.minecraft.entity.passive.WanderingTraderEntity; +import net.minecraft.village.TradeOffer; +import net.minecraft.village.TradeOffers; +import net.minecraft.village.TraderOfferList; +import net.minecraft.world.World; + +public class IceCreamTraderEntity extends WanderingTraderEntity { + public IceCreamTraderEntity(EntityType entityType, World world) { + super(entityType, world); + } + + @Override + protected void fillRecipes() { + TradeOffers.Factory[] factorys = IceCreamTraderTradeOffers.ICE_CREAM_TRADER_TRADES.get(1); + if (factorys != null) { + TraderOfferList traderOfferList = this.getOffers(); + this.fillRecipesFromPool(traderOfferList, factorys, 9); + int i = this.random.nextInt(factorys.length); + TradeOffers.Factory factory = factorys[i]; + TradeOffer tradeOffer = factory.create(this, null); + if (tradeOffer != null) { + traderOfferList.add(tradeOffer); + } + } + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderSpawn.java b/src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderSpawn.java new file mode 100644 index 0000000..d44519a --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderSpawn.java @@ -0,0 +1,84 @@ +package eu.midnightdust.motschen.dishes.entities; + +import eu.midnightdust.motschen.dishes.init.IceCreamTraderInit; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.SpawnReason; +import net.minecraft.entity.SpawnRestriction; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.world.ServerWorld; +import net.minecraft.text.Text; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.*; +import net.minecraft.world.level.ServerWorldProperties; +import net.minecraft.world.poi.PointOfInterestStorage; +import net.minecraft.world.poi.PointOfInterestType; + +import java.util.Iterator; +import java.util.Optional; +import java.util.Random; + +public class IceCreamTraderSpawn { + public static void tick(ServerWorld serverWorld) { + + if (serverWorld.getGameRules().getBoolean(GameRules.DO_TRADER_SPAWNING)) { + if (serverWorld.getTimeOfDay() % (24000 * 3) == 1500) { + if (serverWorld.getRandom().nextInt(100) < 10) { + spawnTrader(serverWorld); + } + } + } + } + + private static void spawnTrader(ServerWorld serverWorld) { + PlayerEntity playerentity = serverWorld.getRandomAlivePlayer(); + ServerWorldProperties serverWorldProperties = serverWorld.getServer().getSaveProperties().getMainWorldProperties(); + if (playerentity != null) { + BlockPos blockPos = playerentity.getBlockPos(); + PointOfInterestStorage pointOfInterestStorage = serverWorld.getPointOfInterestStorage(); + Optional optional = pointOfInterestStorage.getPosition(PointOfInterestType.MEETING.getCompletionCondition(), (blockPosX) -> true, blockPos, 48, PointOfInterestStorage.OccupationStatus.ANY); + BlockPos blockPos2 = optional.orElse(blockPos); + BlockPos blockPos3 = getLlamaSpawnPosition(serverWorld, blockPos2, 48); + if (blockPos3 != null && wontSuffocateAt(serverWorld, blockPos3)) { + IceCreamTraderEntity traderEntity = IceCreamTraderInit.ICE_CREAM_TRADER.spawn(serverWorld, (CompoundTag) null, (Text) null, (PlayerEntity) null, blockPos3, SpawnReason.EVENT, false, false); + if (traderEntity != null) { + serverWorldProperties.setWanderingTraderId(traderEntity.getUuid()); + traderEntity.setDespawnDelay(32000); + traderEntity.setWanderTarget(blockPos2); + traderEntity.setPositionTarget(blockPos2, 16); + } + } + } + } + + private static BlockPos getLlamaSpawnPosition(WorldView worldView, BlockPos blockPos, int i) { + Random random = new Random(); + BlockPos blockPos2 = null; + for (int j = 0; j < 10; ++j) { + int k = blockPos.getX() + random.nextInt(i * 2) - i; + int l = blockPos.getZ() + random.nextInt(i * 2) - i; + int m = worldView.getTopY(Heightmap.Type.WORLD_SURFACE, k, l); + BlockPos blockPos3 = new BlockPos(k, m, l); + if (SpawnHelper.canSpawn(SpawnRestriction.Location.ON_GROUND, worldView, blockPos3, EntityType.WANDERING_TRADER)) { + blockPos2 = blockPos3; + break; + } + } + return blockPos2; + } + + + private static boolean wontSuffocateAt(BlockView blockView, BlockPos blockPos) { + Iterator var3 = BlockPos.iterate(blockPos, blockPos.add(1, 2, 1)).iterator(); + BlockPos blockPos2; + do { + if (!var3.hasNext()) { + return true; + } + blockPos2 = (BlockPos) var3.next(); + } while (blockView.getBlockState(blockPos2).getCollisionShape(blockView, blockPos2).isEmpty()); + return false; + } + + +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderTradeOffers.java b/src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderTradeOffers.java new file mode 100644 index 0000000..704d656 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/entities/IceCreamTraderTradeOffers.java @@ -0,0 +1,65 @@ +package eu.midnightdust.motschen.dishes.entities; + +import com.google.common.collect.ImmutableMap; +import eu.midnightdust.motschen.dishes.DishesMain; +import it.unimi.dsi.fastutil.ints.Int2ObjectMap; +import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; +import net.minecraft.entity.Entity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.village.TradeOffer; +import net.minecraft.village.TradeOffers; + +import java.util.Random; + +public class IceCreamTraderTradeOffers { + public static final Int2ObjectMap ICE_CREAM_TRADER_TRADES; + + private static Int2ObjectMap copyToFastUtilMap(ImmutableMap map) { + return new Int2ObjectOpenHashMap(map); + } + + static { + ICE_CREAM_TRADER_TRADES = copyToFastUtilMap(ImmutableMap.of(1, new TradeOffers.Factory[] + {new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamVanilla, 1, 1, 10, 3), + new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamChocolate, 1, 1, 10, 3), + new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamWhiteChocolate, 1, 1, 10, 3), + new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamStrawberry, 1, 1, 10, 3), + new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamBanana, 1, 1, 10, 3), + new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamPear, 1, 1, 10, 3), + new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamSweetberry, 1, 1, 10, 3), + new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamBlueberry, 1, 1, 10, 3), + new IceCreamTraderTradeOffers.SellItemFactory(DishesMain.IceCreamBubblegum, 1, 1, 10, 3)})); + } + + static class SellItemFactory implements TradeOffers.Factory { + private final ItemStack sell; + private final int price; + private final int count; + private final int maxUses; + private final int experience; + private final float multiplier; + + public SellItemFactory(Item item, int price, int count, int maxUses, int experience) { + this(new ItemStack(item), price, count, maxUses, experience); + } + + public SellItemFactory(ItemStack stack, int price, int count, int maxUses, int experience) { + this(stack, price, count, maxUses, experience, 0.05F); + } + + public SellItemFactory(ItemStack stack, int price, int count, int maxUses, int experience, float multiplier) { + this.sell = stack; + this.price = price; + this.count = count; + this.maxUses = maxUses; + this.experience = experience; + this.multiplier = multiplier; + } + + public TradeOffer create(Entity entity, Random random) { + return new TradeOffer(new ItemStack(Items.EMERALD, this.price), new ItemStack(this.sell.getItem(), this.count), this.maxUses, this.experience, this.multiplier); + } + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/entities/client/IceCreamTraderRenderer.java b/src/main/java/eu/midnightdust/motschen/dishes/entities/client/IceCreamTraderRenderer.java new file mode 100644 index 0000000..b93359d --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/entities/client/IceCreamTraderRenderer.java @@ -0,0 +1,22 @@ +package eu.midnightdust.motschen.dishes.entities.client; + +import eu.midnightdust.motschen.dishes.entities.IceCreamTraderEntity; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; +import net.minecraft.client.render.entity.EntityRenderDispatcher; +import net.minecraft.client.render.entity.MobEntityRenderer; +import net.minecraft.client.render.entity.model.VillagerResemblingModel; +import net.minecraft.util.Identifier; + +@Environment(EnvType.CLIENT) +public class IceCreamTraderRenderer extends MobEntityRenderer> { + + public IceCreamTraderRenderer(EntityRenderDispatcher dispatcher) { + super(dispatcher, new VillagerResemblingModel<>(0.0f), 0.5F); + } + + @Override + public Identifier getTexture(IceCreamTraderEntity entity) { + return new Identifier("dishes", "textures/entity/ice_cream_seller.png"); + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/init/BlockEntityInit.java b/src/main/java/eu/midnightdust/motschen/dishes/init/BlockEntityInit.java new file mode 100644 index 0000000..d827dc5 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/init/BlockEntityInit.java @@ -0,0 +1,16 @@ +package eu.midnightdust.motschen.dishes.init; + +import eu.midnightdust.motschen.dishes.DishesMain; +import eu.midnightdust.motschen.dishes.block.blockentity.BirthdayCakeBlockEntity; +import net.minecraft.block.entity.BlockEntityType; +import net.minecraft.util.Identifier; +import net.minecraft.util.registry.Registry; + +public class BlockEntityInit { + + public static BlockEntityType BirthdayCakeBlockEntity; + + public static void init() { + BirthdayCakeBlockEntity = Registry.register(Registry.BLOCK_ENTITY_TYPE, new Identifier(DishesMain.MOD_ID,"birthday_cake_blockentity"), BlockEntityType.Builder.create(BirthdayCakeBlockEntity::new, DishesMain.BirthdayCake).build(null)); + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/init/CropInit.java b/src/main/java/eu/midnightdust/motschen/dishes/init/CropInit.java new file mode 100644 index 0000000..1a81246 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/init/CropInit.java @@ -0,0 +1,35 @@ +package eu.midnightdust.motschen.dishes.init; + +import eu.midnightdust.motschen.dishes.DishesMain; +import eu.midnightdust.motschen.dishes.block.Lettuce; +import eu.midnightdust.motschen.dishes.block.Tomato; +import eu.midnightdust.motschen.dishes.config.DishesConfig; +import me.sargunvohra.mcmods.autoconfig1u.AutoConfig; +import net.minecraft.block.Block; +import net.minecraft.item.AliasedBlockItem; +import net.minecraft.item.FoodComponent; +import net.minecraft.item.Item; +import net.minecraft.util.Identifier; +import net.minecraft.util.registry.Registry; + +public class CropInit { + private static final DishesConfig config = AutoConfig.getConfigHolder(DishesConfig.class).getConfig(); + + public static final Item Tomato = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(2).saturationModifier(1f).snack().build())); + public static final Block TomatoBush = new Tomato(); + public static final Item Lettuce = new Item(new Item.Settings().group(DishesMain.MainGroup).food(new FoodComponent.Builder().hunger(1).saturationModifier(0.75f).snack().build())); + public static final Block LettuceBush = new Lettuce(); + + public static void init() { + if (config.main.tomatoes == true) { + Registry.register(Registry.ITEM, new Identifier("dishes","tomatoseed"), new AliasedBlockItem(TomatoBush, new Item.Settings().group(DishesMain.MainGroup))); + Registry.register(Registry.ITEM, new Identifier("dishes","tomato"), Tomato); + Registry.register(Registry.BLOCK, new Identifier("dishes","tomatobush"), TomatoBush); + } + if (config.main.lettuce == true) { + Registry.register(Registry.ITEM, new Identifier("dishes","lettuceseed"), new AliasedBlockItem(LettuceBush, new Item.Settings().group(DishesMain.MainGroup))); + Registry.register(Registry.ITEM, new Identifier("dishes","lettuce"), Lettuce); + Registry.register(Registry.BLOCK, new Identifier("dishes","lettucebush"), LettuceBush); + } + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/init/IceCreamTraderInit.java b/src/main/java/eu/midnightdust/motschen/dishes/init/IceCreamTraderInit.java new file mode 100644 index 0000000..d9821c9 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/init/IceCreamTraderInit.java @@ -0,0 +1,26 @@ +package eu.midnightdust.motschen.dishes.init; + +import eu.midnightdust.motschen.dishes.DishesMain; +import eu.midnightdust.motschen.dishes.entities.IceCreamTraderEntity; +import net.fabricmc.fabric.api.object.builder.v1.entity.FabricDefaultAttributeRegistry; +import net.fabricmc.fabric.api.object.builder.v1.entity.FabricEntityTypeBuilder; +import net.minecraft.entity.EntityDimensions; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.SpawnGroup; +import net.minecraft.entity.attribute.EntityAttributes; +import net.minecraft.entity.mob.MobEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemGroup; +import net.minecraft.item.SpawnEggItem; +import net.minecraft.util.Identifier; +import net.minecraft.util.registry.Registry; + +public class IceCreamTraderInit { + public static final EntityType ICE_CREAM_TRADER = + Registry.register(Registry.ENTITY_TYPE,new Identifier(DishesMain.MOD_ID,"ice_cream_trader"), FabricEntityTypeBuilder.create(SpawnGroup.CREATURE,IceCreamTraderEntity::new).dimensions(EntityDimensions.fixed(1f,2f)).trackable(100,4).build()); + + public static void init() { + Registry.register(Registry.ITEM, new Identifier(DishesMain.MOD_ID,"ice_cream_trader_spawn_egg"), new SpawnEggItem(ICE_CREAM_TRADER,5349438,15377456, new Item.Settings().group(ItemGroup.MISC))); + FabricDefaultAttributeRegistry.register(ICE_CREAM_TRADER, MobEntity.createMobAttributes().add(EntityAttributes.GENERIC_MAX_HEALTH, 20.0D)); + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/init/WorldGenInit.java b/src/main/java/eu/midnightdust/motschen/dishes/init/WorldGenInit.java new file mode 100644 index 0000000..0a6e8d7 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/init/WorldGenInit.java @@ -0,0 +1,32 @@ +package eu.midnightdust.motschen.dishes.init; + +import eu.midnightdust.motschen.dishes.config.DishesConfig; +import eu.midnightdust.motschen.dishes.entities.IceCreamTraderSpawn; +import eu.midnightdust.motschen.dishes.world.LootModifier; +import eu.midnightdust.motschen.dishes.world.OreFeatureInjector; +import eu.midnightdust.motschen.dishes.world.OreFeatures; +import me.sargunvohra.mcmods.autoconfig1u.AutoConfig; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.minecraft.server.world.ServerWorld; + +public class WorldGenInit { + private static final DishesConfig config = AutoConfig.getConfigHolder(DishesConfig.class).getConfig(); + + public static void init() { + if (config.trader.enabled == true) { + IceCreamTraderInit.init(); + } + if (config.worldgen.loot == true) { LootModifier.init(); } + if (config.worldgen.salt_ore == true) { + OreFeatures.init(); + OreFeatureInjector.init(); + } + + if (config.trader.enabled == true && config.trader.spawntrader == true) { + ServerTickEvents.END_SERVER_TICK.register(minecraftServer -> { + ServerWorld world = minecraftServer.getOverworld(); + IceCreamTraderSpawn.tick(world); + }); + } + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/mixin/DefaultBiomeFeaturesMixin.java b/src/main/java/eu/midnightdust/motschen/dishes/mixin/DefaultBiomeFeaturesMixin.java deleted file mode 100644 index 0bce905..0000000 --- a/src/main/java/eu/midnightdust/motschen/dishes/mixin/DefaultBiomeFeaturesMixin.java +++ /dev/null @@ -1,18 +0,0 @@ -package eu.midnightdust.motschen.dishes.mixin; - -import eu.midnightdust.motschen.dishes.OreFeatures; -import net.minecraft.world.biome.GenerationSettings.Builder; -import net.minecraft.world.gen.GenerationStep; -import net.minecraft.world.gen.feature.DefaultBiomeFeatures; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - -@Mixin(DefaultBiomeFeatures.class) -public class DefaultBiomeFeaturesMixin { - @Inject(at = @At("RETURN"), method = "addDefaultOres") - private static void addDefaultOres(Builder builder, CallbackInfo info) { - builder.feature(GenerationStep.Feature.UNDERGROUND_ORES, OreFeatures.SALT_ORE_FEATURE); - } -} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/mixin/GenerationSettingsAccessorMixin.java b/src/main/java/eu/midnightdust/motschen/dishes/mixin/GenerationSettingsAccessorMixin.java new file mode 100644 index 0000000..8699725 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/mixin/GenerationSettingsAccessorMixin.java @@ -0,0 +1,19 @@ +package eu.midnightdust.motschen.dishes.mixin; + +import net.minecraft.world.biome.GenerationSettings; +import net.minecraft.world.gen.feature.ConfiguredFeature; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; + +import java.util.List; +import java.util.function.Supplier; + +@Mixin(GenerationSettings.class) +public interface GenerationSettingsAccessorMixin { + + @Accessor + List>>> getFeatures(); + + @Accessor + void setFeatures(List>>> features); +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/world/LootModifier.java b/src/main/java/eu/midnightdust/motschen/dishes/world/LootModifier.java new file mode 100644 index 0000000..fc58e95 --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/world/LootModifier.java @@ -0,0 +1,63 @@ +package eu.midnightdust.motschen.dishes.world; + +import eu.midnightdust.motschen.dishes.DishesMain; +import eu.midnightdust.motschen.dishes.config.DishesConfig; +import eu.midnightdust.motschen.dishes.init.CropInit; +import me.sargunvohra.mcmods.autoconfig1u.AutoConfig; +import net.fabricmc.fabric.api.loot.v1.FabricLootPoolBuilder; +import net.fabricmc.fabric.api.loot.v1.event.LootTableLoadingCallback; +import net.fabricmc.loader.api.FabricLoader; +import net.minecraft.loot.UniformLootTableRange; +import net.minecraft.loot.condition.RandomChanceLootCondition; +import net.minecraft.loot.entry.ItemEntry; + +public class LootModifier { + private static final DishesConfig config = AutoConfig.getConfigHolder(DishesConfig.class).getConfig(); + + public static void init() { + if (FabricLoader.getInstance().isModLoaded("galacticraft-rewoven")) { + LootTableLoadingCallback.EVENT.register((resourceManager, lootManager, id, supplier, setter) -> { + if (id.getPath().contains("galacticraft-rewoven") && id.getPath().contains("loot_tables") && id.getPath().contains("chests")) { + FabricLootPoolBuilder spaceburger = FabricLootPoolBuilder.builder() + .rolls(UniformLootTableRange.between(0, 2)) + .withCondition(RandomChanceLootCondition.builder(1.0f).build()) + .with(ItemEntry.builder(DishesMain.Spaceburger)); + supplier.pool(spaceburger); + } + }); + } + if (FabricLoader.getInstance().isModLoaded("patchouli")) { + LootTableLoadingCallback.EVENT.register((resourceManager, lootManager, id, supplier, setter) -> { + if (id.getPath().contains("chests") && id.getPath().contains("village")) { + FabricLootPoolBuilder patchouli = FabricLootPoolBuilder.builder() + .rolls(UniformLootTableRange.between(0, 1)) + .withCondition(RandomChanceLootCondition.builder(1.0f).build()) + .with(ItemEntry.builder(DishesMain.CookingGuide)); + supplier.pool(patchouli); + } + }); + } + if (config.main.tomatoes == true) { + LootTableLoadingCallback.EVENT.register((resourceManager, lootManager, id, supplier, setter) -> { + if (id.getPath().contains("chests") && id.getPath().contains("village")) { + FabricLootPoolBuilder tomato = FabricLootPoolBuilder.builder() + .rolls(UniformLootTableRange.between(0, 5)) + .withCondition(RandomChanceLootCondition.builder(1.0f).build()) + .with(ItemEntry.builder(CropInit.Tomato)); + supplier.pool(tomato); + } + }); + } + if (config.main.lettuce == true) { + LootTableLoadingCallback.EVENT.register((resourceManager, lootManager, id, supplier, setter) -> { + if (id.getPath().contains("chests") && id.getPath().contains("village")) { + FabricLootPoolBuilder lettuce = FabricLootPoolBuilder.builder() + .rolls(UniformLootTableRange.between(0, 5)) + .withCondition(RandomChanceLootCondition.builder(1.0f).build()) + .with(ItemEntry.builder(CropInit.Lettuce)); + supplier.pool(lettuce); + } + }); + } + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/world/OreFeatureInjector.java b/src/main/java/eu/midnightdust/motschen/dishes/world/OreFeatureInjector.java new file mode 100644 index 0000000..c4452af --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/dishes/world/OreFeatureInjector.java @@ -0,0 +1,44 @@ +package eu.midnightdust.motschen.dishes.world; + +import com.google.common.collect.Lists; +import eu.midnightdust.motschen.dishes.mixin.GenerationSettingsAccessorMixin; +import net.fabricmc.fabric.api.event.registry.RegistryEntryAddedCallback; +import net.minecraft.util.registry.BuiltinRegistries; +import net.minecraft.world.biome.Biome; +import net.minecraft.world.gen.GenerationStep; +import net.minecraft.world.gen.feature.ConfiguredFeature; + +import java.util.ArrayList; +import java.util.List; +import java.util.function.Supplier; + +public class OreFeatureInjector { + + public static void init() { + BuiltinRegistries.BIOME.forEach(OreFeatureInjector::addToBiome); + RegistryEntryAddedCallback.event(BuiltinRegistries.BIOME).register((i, identifier, biome) -> addToBiome(biome)); + } + + private static void addToBiome(Biome biome) { + addSaltOre(biome); + } + + private static void addSaltOre(Biome biome) { + if (biome.getCategory() != Biome.Category.NETHER && biome.getCategory() != Biome.Category.THEEND) { + addFeature(biome, GenerationStep.Feature.UNDERGROUND_DECORATION, OreFeatures.SALT_ORE_FEATURE); + } + } + + public static void addFeature(Biome biome, GenerationStep.Feature step, ConfiguredFeature feature) { + GenerationSettingsAccessorMixin generationSettingsAccessor = (GenerationSettingsAccessorMixin) biome.getGenerationSettings(); + int stepIndex = step.ordinal(); + List>>> featuresByStep = new ArrayList<>( generationSettingsAccessor.getFeatures()); + while (featuresByStep.size() <= stepIndex) { + featuresByStep.add(Lists.newArrayList()); + } + List>> features = new ArrayList<>(featuresByStep.get(stepIndex)); + features.add(() -> feature); + featuresByStep.set(stepIndex, features); + generationSettingsAccessor.setFeatures(featuresByStep); + } +} diff --git a/src/main/java/eu/midnightdust/motschen/dishes/OreFeatures.java b/src/main/java/eu/midnightdust/motschen/dishes/world/OreFeatures.java similarity index 88% rename from src/main/java/eu/midnightdust/motschen/dishes/OreFeatures.java rename to src/main/java/eu/midnightdust/motschen/dishes/world/OreFeatures.java index a71ce6b..eebb787 100644 --- a/src/main/java/eu/midnightdust/motschen/dishes/OreFeatures.java +++ b/src/main/java/eu/midnightdust/motschen/dishes/world/OreFeatures.java @@ -1,5 +1,6 @@ -package eu.midnightdust.motschen.dishes; +package eu.midnightdust.motschen.dishes.world; +import eu.midnightdust.motschen.dishes.DishesMain; import net.minecraft.util.Identifier; import net.minecraft.util.registry.BuiltinRegistries; import net.minecraft.util.registry.Registry; diff --git a/src/main/resources/assets/dishes/blockstates/birthday_cake.json b/src/main/resources/assets/dishes/blockstates/birthday_cake.json new file mode 100644 index 0000000..d73fbb7 --- /dev/null +++ b/src/main/resources/assets/dishes/blockstates/birthday_cake.json @@ -0,0 +1,11 @@ +{ + "variants": { + "bites=0": { "model": "dishes:block/birthday_cake" }, + "bites=1": { "model": "dishes:block/birthday_cake_slice1" }, + "bites=2": { "model": "dishes:block/birthday_cake_slice2" }, + "bites=3": { "model": "dishes:block/birthday_cake_slice3" }, + "bites=4": { "model": "dishes:block/birthday_cake_slice4" }, + "bites=5": { "model": "dishes:block/birthday_cake_slice5" }, + "bites=6": { "model": "dishes:block/birthday_cake_slice6" } + } +} diff --git a/src/main/resources/assets/dishes/blockstates/cheeseburger.json b/src/main/resources/assets/dishes/blockstates/cheeseburger.json index 1f2ea6b..fbbb296 100644 --- a/src/main/resources/assets/dishes/blockstates/cheeseburger.json +++ b/src/main/resources/assets/dishes/blockstates/cheeseburger.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/cheeseburger4" }, "facing=east,bites=4": { "model": "dishes:block/cheeseburger4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/cheeseburger4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/cheeseburger4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/cheeseburger4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/chickenburger.json b/src/main/resources/assets/dishes/blockstates/chickenburger.json index fe3e0bd..b16aa4c 100644 --- a/src/main/resources/assets/dishes/blockstates/chickenburger.json +++ b/src/main/resources/assets/dishes/blockstates/chickenburger.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/chickenburger4" }, "facing=east,bites=4": { "model": "dishes:block/chickenburger4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/chickenburger4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/chickenburger4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/chickenburger4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/fishandchips.json b/src/main/resources/assets/dishes/blockstates/fishandchips.json index 85487da..f820388 100644 --- a/src/main/resources/assets/dishes/blockstates/fishandchips.json +++ b/src/main/resources/assets/dishes/blockstates/fishandchips.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/fishandchips4" }, "facing=east,bites=4": { "model": "dishes:block/fishandchips4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/fishandchips4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/fishandchips4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/fishandchips4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/hamburger.json b/src/main/resources/assets/dishes/blockstates/hamburger.json index 650b1d1..8adc948 100644 --- a/src/main/resources/assets/dishes/blockstates/hamburger.json +++ b/src/main/resources/assets/dishes/blockstates/hamburger.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/hamburger4" }, "facing=east,bites=4": { "model": "dishes:block/hamburger4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/hamburger4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/hamburger4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/hamburger4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/pizzabacon.json b/src/main/resources/assets/dishes/blockstates/pizzabacon.json index e1d8c98..e48c7f0 100644 --- a/src/main/resources/assets/dishes/blockstates/pizzabacon.json +++ b/src/main/resources/assets/dishes/blockstates/pizzabacon.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/pizzabacon4" }, "facing=east,bites=4": { "model": "dishes:block/pizzabacon4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/pizzabacon4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/pizzabacon4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/pizzabacon4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/pizzaham.json b/src/main/resources/assets/dishes/blockstates/pizzaham.json index a5955ca..2df9e4b 100644 --- a/src/main/resources/assets/dishes/blockstates/pizzaham.json +++ b/src/main/resources/assets/dishes/blockstates/pizzaham.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/pizzaham4" }, "facing=east,bites=4": { "model": "dishes:block/pizzaham4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/pizzaham4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/pizzaham4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/pizzaham4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/pizzasalami.json b/src/main/resources/assets/dishes/blockstates/pizzasalami.json index d877cf4..6d6ab78 100644 --- a/src/main/resources/assets/dishes/blockstates/pizzasalami.json +++ b/src/main/resources/assets/dishes/blockstates/pizzasalami.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/pizzasalami4" }, "facing=east,bites=4": { "model": "dishes:block/pizzasalami4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/pizzasalami4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/pizzasalami4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/pizzasalami4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/pizzatuna.json b/src/main/resources/assets/dishes/blockstates/pizzatuna.json index 9fed872..b0cf239 100644 --- a/src/main/resources/assets/dishes/blockstates/pizzatuna.json +++ b/src/main/resources/assets/dishes/blockstates/pizzatuna.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/pizzatuna4" }, "facing=east,bites=4": { "model": "dishes:block/pizzatuna4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/pizzatuna4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/pizzatuna4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/pizzatuna4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/potatoeswithcurdcheese.json b/src/main/resources/assets/dishes/blockstates/potatoeswithcurdcheese.json index 4ec5cdd..cda5827 100644 --- a/src/main/resources/assets/dishes/blockstates/potatoeswithcurdcheese.json +++ b/src/main/resources/assets/dishes/blockstates/potatoeswithcurdcheese.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/potatoeswithcurdcheese4" }, "facing=east,bites=4": { "model": "dishes:block/potatoeswithcurdcheese4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/potatoeswithcurdcheese4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/potatoeswithcurdcheese4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/potatoeswithcurdcheese4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/schnitzel.json b/src/main/resources/assets/dishes/blockstates/schnitzel.json index 0466909..6ccddfb 100644 --- a/src/main/resources/assets/dishes/blockstates/schnitzel.json +++ b/src/main/resources/assets/dishes/blockstates/schnitzel.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/schnitzel4" }, "facing=east,bites=4": { "model": "dishes:block/schnitzel4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/schnitzel4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/schnitzel4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/schnitzel4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/spaceburger.json b/src/main/resources/assets/dishes/blockstates/spaceburger.json new file mode 100644 index 0000000..040bbc0 --- /dev/null +++ b/src/main/resources/assets/dishes/blockstates/spaceburger.json @@ -0,0 +1,24 @@ +{ + "variants": { + "facing=north,bites=0": { "model": "dishes:block/spaceburger" }, + "facing=east,bites=0": { "model": "dishes:block/spaceburger", "y": 90 }, + "facing=south,bites=0": { "model": "dishes:block/spaceburger", "y": 180 }, + "facing=west,bites=0": { "model": "dishes:block/spaceburger", "y": 270 }, + "facing=north,bites=1": { "model": "dishes:block/spaceburger1" }, + "facing=east,bites=1": { "model": "dishes:block/spaceburger1", "y": 90 }, + "facing=south,bites=1": { "model": "dishes:block/spaceburger1", "y": 180 }, + "facing=west,bites=1": { "model": "dishes:block/spaceburger1", "y": 270 }, + "facing=north,bites=2": { "model": "dishes:block/spaceburger2" }, + "facing=east,bites=2": { "model": "dishes:block/spaceburger2", "y": 90 }, + "facing=south,bites=2": { "model": "dishes:block/spaceburger2", "y": 180 }, + "facing=west,bites=2": { "model": "dishes:block/spaceburger2", "y": 270 }, + "facing=north,bites=3": { "model": "dishes:block/spaceburger3" }, + "facing=east,bites=3": { "model": "dishes:block/spaceburger3", "y": 90 }, + "facing=south,bites=3": { "model": "dishes:block/spaceburger3", "y": 180 }, + "facing=west,bites=3": { "model": "dishes:block/spaceburger3", "y": 270 }, + "facing=north,bites=4": { "model": "dishes:block/spaceburger4" }, + "facing=east,bites=4": { "model": "dishes:block/spaceburger4", "y": 90 }, + "facing=south,bites=4": { "model": "dishes:block/spaceburger4", "y": 180 }, + "facing=west,bites=4": { "model": "dishes:block/spaceburger4", "y": 270 } + } +} diff --git a/src/main/resources/assets/dishes/blockstates/spaghetti_bolognese.json b/src/main/resources/assets/dishes/blockstates/spaghetti_bolognese.json index 050463a..7e2d934 100644 --- a/src/main/resources/assets/dishes/blockstates/spaghetti_bolognese.json +++ b/src/main/resources/assets/dishes/blockstates/spaghetti_bolognese.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/spaghetti_bolognese4" }, "facing=east,bites=4": { "model": "dishes:block/spaghetti_bolognese4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/spaghetti_bolognese4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/spaghetti_bolognese4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/spaghetti_bolognese4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/steak.json b/src/main/resources/assets/dishes/blockstates/steak.json index 9726892..5286eb0 100644 --- a/src/main/resources/assets/dishes/blockstates/steak.json +++ b/src/main/resources/assets/dishes/blockstates/steak.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/steak4" }, "facing=east,bites=4": { "model": "dishes:block/steak4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/steak4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/steak4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/steak4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/blockstates/tinypotatoeswithcurdcheese.json b/src/main/resources/assets/dishes/blockstates/tinypotatoeswithcurdcheese.json index 0f73575..45be558 100644 --- a/src/main/resources/assets/dishes/blockstates/tinypotatoeswithcurdcheese.json +++ b/src/main/resources/assets/dishes/blockstates/tinypotatoeswithcurdcheese.json @@ -19,14 +19,6 @@ "facing=north,bites=4": { "model": "dishes:block/tinypotatoeswithcurdcheese4" }, "facing=east,bites=4": { "model": "dishes:block/tinypotatoeswithcurdcheese4", "y": 90 }, "facing=south,bites=4": { "model": "dishes:block/tinypotatoeswithcurdcheese4", "y": 180 }, - "facing=west,bites=4": { "model": "dishes:block/tinypotatoeswithcurdcheese4", "y": 270 }, - "facing=north,bites=5": { "model": "block/air" }, - "facing=east,bites=5": { "model": "block/air" }, - "facing=south,bites=5": { "model": "block/air" }, - "facing=west,bites=5": { "model": "block/air" }, - "facing=north,bites=6": { "model": "block/air" }, - "facing=east,bites=6": { "model": "block/air" }, - "facing=south,bites=6": { "model": "block/air" }, - "facing=west,bites=6": { "model": "block/air" } + "facing=west,bites=4": { "model": "dishes:block/tinypotatoeswithcurdcheese4", "y": 270 } } } diff --git a/src/main/resources/assets/dishes/icon.png b/src/main/resources/assets/dishes/icon.png index 218d6c21f806ec0d5c1be125bd132d61ccbdb5dc..1be55510cb5afdef1e551a6ffb8951c10740a5b2 100644 GIT binary patch literal 10504 zcmV+jDfiZiP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGizW@LZzX3P}QzQTYD4j_}K~#8N?VWji z9LII%Yi5AKee(csQsO0&x~L?-;AkG11Nmg&S=dpDm?c0akSIN4;g zn`9jyvZCbUMBd#vmUTpmBS+Flwj}E&C5rb=fFM8+#6g^c0R}VszOT9l4PXuc91I5# zf54lnuCA``uJ`J_S4Vf7%eaiocn>4sh4UV#_CE680txdWxuZM1Bohcsy}d*tLGY&h zKDq9iPyMMTzK1a{1z`XFABHPNd!o7#EEPt>?4WKsSVqS^Dk3SRKsbNEkUL8!$Z`ilzvHrxi>*o-q0s zkDJ(Nl9J|9otDV}mwncY(p6jRk^16#&|(i#tqZ?5KtT z5e`3KI6RLh;==5NiH*gD`NH&(K{Ga%5E?V1u`w^S!t~PXN6jDp_eUn4U;&^YZ|J!v z|4jHI%<)=gSxMLw7l%xBRfRG+C=?KZAVdN*kd|u&Ag-ZCJy47?U0ZiR7#}cW!q}KF zcubf-G8&WZF%4r9_Vx{$*0v7Qbf(k9B@gC>^Z)rb9xcfFx)>DX4gKWtKS{tCRms{~ zVO&huX944bp<+{2QDUkpOO)Y3(FSOVP$;CK3P}KyU|Trl(W*zHqY}o<$jGQLT((DI z=B3y6n9&gg!sbI8j0vF~IG!@gO2g*cfBW=h0muiQdF)RTv_!`Y1R*{)nry{fb|4Va z)(`ltsw`E;*H%{x!>llne@u>5W(y4q^N*isHQl{^rlX@r%ZJgZeaULemoP3r?z|*~ zibAHmti(M056@f{fPCOzfAq(RQE8pnVAQnQ>DZ_;1t!5DV?+Q1mT7F`Cj^!G)&vC1 z;`(ZB;V-16INHlKWpI2&BBb-P_lErrW&qb~NhZK@x^egh zMM5}qgfKH06vhUnELyV^;RMVN6$TwI7?C`#t7&1`%YGXRhRQT_d7PlwLK9~1zEkom z;fdg70muXdU^qJBIc&C`XnEn1uqg?bXzQ)5uF$X~9M=6R0P^SWI;s~hX$Sy32uh1& z#2CgXDPtVdtx6|UNZh86L;0MD*>lB5&5;xBroE%r^z}z{-$%qm0NVw%#}lHJ_U=EW zwJoV;-^t4YkP(mnpFclQN%c(NKhJ&%R@_ z2eaa75BcAJGE^`E;M1Xn1uB#Z*6x@`Fv2p>wq8e6ta|s7|LnQ*=B)Jbp@;~P`U@~b zN%D$~4~pFm2E~yJSmOAgrzIeV6Q^3uzx>-P=3jpDs?ZziRO)r;sbD-Nhv8x&5!NVL zOU+Kg^bZV~x8FUgaqh$2k6vd1!FRib12n);Bq|juet=XgS6Lbkney^7>xGN+NB2!z zlxP5FgLPXYcJ|M~C1dLwrMs67FTAwJ3`GXLEtMx5>W^p`-4eh^A$lnID(luRGu4&l zrlPz=#|ut2omHnYAbyJqtv6<&kc&CkRCHMbWP-GshcuK*RUa_Q2=MC&OwL0#NB*4tbWQO#G!ED%&|fyW9yCBqeT{*^hzLSduUUt$IaWxom1FrI z8+OGM3<^>Jq+XLPpPqml%4JX{X$HWg+H{rf_NS_A|9(K!w>bgHK<# zJ}=piB!ebFll(jU$CK`D$C;icu4c)uEpS~zTec;Qt4V-3TuUk#6s8j>f41^$i>GyI zB|2t%kQ5tg<@!mJm078f+@0djVakzSxmu(vSGN%W_F3W*ZMxm3aguyOP)I0DCr}(c zwfCNC)xI>O73fvCN2EE@idG_@gt|eTytG&mBuDB2({ z+KFwKPN>JpU-J6VN_s@$pdbZcba=?bMj~c(WZ1L)*0#Eeq=J)7_lOEtwGYXr6$tjp zE;+_9n>ZFViCDxV@y6kWBLY{BBbzubT)xnrUj&q;WuqfPqY{tG^@$)z9!{xwJjPpX z#xWDuCthk4qyVVbFScLpzY0QB1wpj|Oi)tZcomG#K;?Q2k~lkczorov(sVL#7E;GI z{iMfAUaMhjBFEb@$BFYY7~~eOIR7Mheid5Fc&>d+m@k_Jg@O@)`*&=4{Y!UlKL5E} zHzZCTI(c7T|Bx9R8a9#0i1w}R#E_lcqY_n}D@|mGuHxZO8RwWL0h^lS<@cC0fdKp1 zl&A_1=bLmMD9Kd0ChMen0xIe3M;H(er@^8k#G~4+9kJ&r5L~jM;Q#W=+kPz^4t`Bq z?p0LWi1hvXhepiGx^iFMpxx9oonHZ40&MK zHxMk=Vd3P+Ft-_x+M8uR`y{&OU@IvW%2*=feR#IzSJKFBC!0t?$ZY?A)O2?Dn(E3@ z!|Y{MMX9N%s4%s))uyzB*3QzifCz>a-b5l~+V&kZ{b$>CI=eU&{A@4~9Q=!a+y6sK zz7)_p$rt|XN4B+$B@!jlpcap^{$6Ty>+)Ljc5{~*l}a5JRT`02($*U>LlRbmi_H2P zw&-e|MM(ju76GWz#T<^o_BN~#1XvaxwEL9JUZwy7kWAAgv)2;<%UG`j<`xK40Gv?p zgTTQ=>!30SG$h)ovkL(TtI4Vq0jTr@fF)$)rF$5QiH{(f;MC9GGBFX9?Q0rzO~Sr2 z-6{yoYm|kH&M?9GhmXIriZkX5c`*Th|G8Te-xEqC0xK&^!;8zyicLjXktr`JQbtn= zx=6zdDUt%@C2zwty+S||>g5aR|c09CUg1miSrnTr*G zY+TY*-4j|B4+9fS0`V+?v}VhATb2v0DS+%afK&UJ1WXr`MbY6AbNZ#%OkA$1s3>3# zob53O+ImDtf~KT6WJ<$96N`_nl!meL_dj+Wx0*NPMF4EeQ)O-XM7^)7sW6R|W$L)K zbPu8mO@%OhePfNees#UMY26}o=jKMUw7SexNxrhOQZ)k<1OwIS!u$3yWSlH>K?09l zNm_M)Ie!xEe$8SzJf5y04~|eRmhnm9AoR*6bmy{8CJR(UvMr&ctNmA@6gt;#f`<;6 zRdp4jIv6^Rn__A4EK23RdGhE`Yp*%p-lzBDDW|+4F9I+iOm{1AXyx4a;;K?pA{8+r z6|inmm1(FfF&BoSs{XqMqY@uA<)Zo{M~|DT*3+i=*kKds>DCISWnpu9$U}#UX=ylO zA{a4g@#9)SNErp8z{6%N5H@io5eSd5uI1YnE==V(;yy-OVYB7>S1Y??$-}v1mkKA_ zho1eJIkM-FInv&1j-Bh%R!}Ow%i*)V%Ji{VLWBV=XSH2O>L{Pb#iIoxk*LnbMTVpLh|m=iC& zth0lqYTvCh$m-*;2uG24dQKY-NjV+;!%4M|6P$14Mc@3^2d{cXZul0YACH&HbFEGq zm7+!*!)sU8o1Y&)rxo`8D;7&jH0I6b^HR~qY*|(-6%;dr!ho~Vq8#(e>S{Fq74N%2 zSN!l0C-OoZqN42+Lo5R$WTg(RHfZ)AY|?Xc9SEJOe>s_s@JU=Xg4fd3$&++0eDGAW z^eP!u@45*Z5QIl*^d27Wlpry3;4Qsf%zCtUQ z1>C1P2c)|=X6nnsrnh&{LWO<$RB2 zvh1MMJHNs2L+E-xOigc}89aW{jGXT@LD2?O9M{v*GiZjQV`i0HA1xl{Bh;9$`pQya zYQl7jPs6=-4n%bup#W$<2h7ge`btw@QDR;>-tmB!Jm<)Zr2Xw@KJbcEz%9+^`^`W! zrfJ(&)|q~B4o^s0Dqtr8EgGq~adiW8gi_ft^TsLB3Q}R!rN!z{#e{)$Cuwm}VHkkf zVO9`}THbuicCpQ3pQZH|iyBtVAT9Rr(H3#yL;w&181HESgkrF%$;A2xR3O>5nj~P( ziZ4Rfbi>kWy~d;B;KAH&E9x|C?;SGza*h6qovhj&<5$#`tD~z9qF`M^rIztOp4pcd zzJR>=0R7^;r9zdceJT;EmUyu^g_A)F4Q5wMmwCIT+YAeXVL-7kvqYGQ8pWZck}FDz zRn2Y@!n;OI_jh!eH=lUUy!Plbrn{{}Z8*LH&ZD#EwihvGhR>fjgNF{9p~HtvLhL#W z2bCgdTp!@voEL`Fbtmn6&!7<0s68z57h>zWrvTz1?=pgeb2=%nvr55lNWUBdQ!B z<$RnQ^CHSYO$fF<8&*pTuM-uY3e-!hXqVGs2J?x$2!I2s7WSjE_lsi$p~#6}WHA7v%2G znXh~zF9NV}X_Xh73LGXU5a|#V^@@gACl#6ry^#^Kzx9GSC9Tn#7TXV}1=GdENrR~y z7FU}s;xE`CUq;^&R!exAf_!vGRTBs`b@iKrZ5Pz9NQc_8usVVq@4Wd`Xch++hNmlw zYt1L}A^_#mBClOtFO_6%zEkIZ;5fZ@;=Hy-h)E&3Uk=n4YIx(4YMUUyiJA)OU(2y* z1KuOF=S;T>n6=$j2x#5a!Z3uvs`p~G=QxM}J5K9X?IPRsI3|O#5K4!|V%sU(4+Ph* zy=d+D3V!J5pPU5kvRQ-@A<8H6Y62X%S;qUXT2|wwOa(3Z?dEQ8>*8=goHM$aXdC!} z5L)MPd^8T553?C@WN;=OB&#xiy-yHRp}jYv-PK+Zrc{9O>las(%VO0;;9q0{<{{s>Bu-#D;C*KU{d#OMlxif+LHRUG zX5qc(8ki!cvonFQgM4GQ0&ts0Gr}Ky^jhR-US*U$d&t zi_Hw*zxOt!-}&&>Nx}~Q>J4kmFDwn2(>*gEjeFn|*DHPY7dLn*d4sE-RFu*FgV_qe z%O1@LBceYit5`dv8!#W*w%lx7mbz<2Yky060rUj+p6;HO9nO@6vY?)!sIEnT{QdRW zV1H|mQopGBRNx+%FiHpRDc!`_Tq3U~;Lm=%*ZkFU2hCqTd%%41p%;~iL(>J*t?&wl zbq&~02BZSx_1Xq9fa%$MfhBM0kZELa8sNxulv%Y33dRS>W_MGK5uD0Vi*a&7D`oNK zhAe|TnUF>13JwJ$052UmXO5mtJ-GsI-`r?+h?&^7a(wu8w!qv_4hu9JtIKp$59VJC z)-;IVEUnhTo>X8&@ZFa5Bb)SQx30MOdz&c=MgXRZMqgKn`TyBsnUur0JM#j$0CNeM zkZHXi!ly&gb1FM4I*yMn#}eAmSgn)} ztvy5Lrw7lPSC5|aQf3dzVVwczW$HE)!~JkAH5HmV2b6G9Q(;+cnYkg&f)}ZV!z={- z-5>3qH6!N=%mpBrGa-jm`_j^5zjasQGrzb#<-T|Y>kVC3{nP~p>0`{ElGCV9g6AUx& zp8?^D*?IFghN(bbeYWET9LH*-LPNm_0ABLwXl^TrhdFYIi|DJHl29=3Q@ztct_5J$ zHjKvKG>wIoer(G$6gdbZYMWi2Hr%S&W1mv9pAd+Gs z3gZCa=SRjJN}kJu@vIbb%fVgO%`NqE+s>I|iR(MfU3%?TF0Rt+V1WtOtSg3O`)Eg> zUbA}&2&a?M={AxtpHBg$!X+~S*R5)hZd{$&B%VJtKqXP{ZajuI_}a-1o|4h76%|Lw z%2}3XV^eu*hf0S5&iM6E{f!QtX0IG zLmbC*0`%coa)$7-@|e{@N6uO11Ad9JP2M$&DsNm=(OQgcUq*c#pz@6 zIapyt?;<63-nm&9aX$Rw5ijN9;bt5E`uWV0W6TD!8W;`0>YZ;qmp=dR{>nAF%#C&Y zX;$&f6k1Pr?bwlc;rZt^AqU9D-@a9({-RPtu)?i~^p&%n=oN5N@;+_K&R zTg_9s*?@gl8!vP++f1WeC=TabTyH*6a00*+I5Qm(%7%fFQ8Or%4KNdL-99Cp`5Kh* za-Er;0-6sfI02Xo@Q}%L7zN8Q7y6WMmO+~j%Sl=8jfdTT!B2N$t;zP3Hj&cjj+Bf5=ACfL?$T6w3PX z-ZL6cg|GhdR&(5YIP~c~EgGi6$F5&Jp^_L5z|XmEb%S;bfA6uk{kx~r3z(4qVo`7! zKpzpGh7(97l8dZZVz$B6(r3SBRlPDFK_Ho&HunsWCHr(cDrDnPGFBNu?m7zv*{)_T zGyq7O_mR)vYTh{6X}P4D7t0+`|G6GpptRhUcxmvS=mn@BkYjGS;&NRsFR#ic3QhprU`#H-j2)Cq zTrG}ff%$W@Lcs~Zb*t-hE&y|(0_KYMYl`=Kv5UuFJ@}w~?mPps-A6V~_>a#?UU2~R z#Y#VZ@r0L>9>vS;JpH>TGLOkqCdk&am*UQhvP=hmV*6^dwxLoNfbeqX|NHt$Z_iZx`y1D2$Teh| z4*qx7uJqOm7zD*%2N#V`edaTXN51zxZ!0CTp0D6cfDYJrmyMLXezHTDVOuyebjxb& zcLo@#!&Ib|Bp;aHpUzV^Ec@n>bKc*RZh5zZ3ZHiknV|RM3v-E3F!RGG(?PbYnoj*r z7yfglE%$$a@@9QQ*LPmXJQO?={LOECK*KNm{VN)#1Fd@VQv2d6UM%(G+vx{*r2nrW z%g-LqkZ%Ui`uSu-L*gI1a^|pRmAZn{0F2@D&b?fMH+*KT34!L3pXod`%yWRK_4z#) zScoP-YL$x3C19v~A#*kyZ0ps>!?I|0oq!@wwtR(-lmhVR6HnaXMe~ksVOFl~<#fju z$YJx^a5~7fu;v>n1>l~$@BWz=%>}5UX;%}gbUQ_5=Mw5PPJ^HDoNRQprgOnCztCp) zW{Lvr1^rBs&3UoiEG9WWFs$7^)`9A}06CCyQ0uhV8`jjD z{bw$ytp~iqy|aHasKv&Vj`WRGVAqe>k z5g7&GQaOXRVr?bgC@sFuw?^OFW#8jp5)!YyM=M_IUUq3c%f|AWGRrU}4zl~n$A_m5 zv|TW#&JRrO9msxH7R$F*)KzHt_$H)l770&^mSR(r+ztV;4NIz2V6we6q!5r%0CMaM zP74*zINWF+aTjhq%S2h3V8hX{oJyQoJ3O-Na$8211spm=&J*vFclHTJAcT$14DaG6cM+5<&5o zA+7y`P2rs8ZCC6>YDO` zB~&Y~UgZT5jnc9;zx=q02P_3wK1tlQZuiGG2q9hrzh2ZeuWunQ40J-narl9UrM2^d zOM3!K?BkPlgbLD>Y!EU-$5(e$7EuBJCG!&2{elkjN0AYWg?^Y#Sy$4;B0UDv41{ie}$Nd3Eu?g34wdI@=3$gkbJPCo^MUFQRpeM6&`IX;}3^m;hTKPvAejr)4}-0V5|GV6K?&!1sgEzI+7?W-hKO z@ic;E0DsN{S4dQOOQ+jM*KT=DxwYHm^~hm&Q>W6vFfW$0vxGc(LmW-CvaVd;6Tr5fUVr8Wzj@!i zg)acP)&^HEsgUkkkuU`=+BE8zZWd4H^6^KUI`t2fybJ<7dHllgMGAw6GnN49hbSj8TeX81XKaC`VEP$*Inb5igbT1@Nf(1? z$>X35%33Dcq^vkMU;ms7l|LB;F95)OT@y7=e8bWz-FA$FH+&0_Z~O)%&ij3O2cyQkC{SVMaL`Q{OBC8y$Z)v%2WF;$1>B04?#JU$F~dps3{AZH4T-j5iD6j$OYy? z|ijtzW zt7zv8>^9fIS^zf4tHjR?@XZGwyku)I3tj-~#u~azAbyR%f_cm58FAELAeEhDyu>w+ z7f&AG0}N+%&^Br5OeC$UFIS;bFM*wtz$feR`YDGi@Cz8B>jn5vBcgSU7tIQu-}~~; zoq3;jcbHT?g^!(gY}zfYbvvzFv~UtvEvpuL-Df&k7ABHG3umbprh@kdvCSvx9Rs1Z z-f`w>55hZ+4^+7)gJ3@U54YRdJp`tudt%p*GDUh`dumV1End>R!Mrd5emwZIBR4Se zMt9G3&-jD+tPoOdAo-N|krp{qkCu*XD;y^KljKOaQ{b2p=}PB3x{pHA$cR&3--* zK^gpE9?%+gH*f#$HHUrx=A{5wW?8@(9vx@?KPom}HG#JeuETiN3|Hfrm$F@hm-K$XOW=$qy@h8R_H8rtD|n$O#SSmJZ~aAMI+|D%q!?P+Pqp z-2c4B{X4e2B+R+hwo=$e-#jLLde#vpRNdSw&AAW3i^Cj!PJbBO*fT>}60nJ?lI{oWsJXld%ZYoQQdEw-OskeFS1WpF;3SLrO zYD)Q5kdHmEkdHOJaninGh6hRr(HIcSXNC`oiuz}!Z!pU0A^sWs`^;4fGcVbdrF zw~;dC=c7-(Gd~u4P8SPIp2zW}J2xkoFoKT}>At~S%tTn4FysEblJyh|LnH%Z{{TTD zzYYRPNaaYj?q~M4+IQ70Kr9#&FnKZR9gD8Eqdb!klV(qgzIJ7uSt@3Nd4;L4&7bf3 zEoA0{1*-w>xyOVm+BU?x2Zyy=xWv-{*l@-Km?L1+57@`J`4FX@0fhZaL^ycD=qLMH z7i=AY1)~8{!8vR^u6;s!2&@6X?x%#LZ&+HR4~*g*p6eT4xUIv7g)IOg0j||!4Vcpx z|4!ElPJtvHJJ)OaqA`hDCsG~11&#%Oho8FZx}mj>C z>-7m@3F!e8kHuI2^MSVXUxQj8SkM{(Jo3Vx@->^ceNi;QnD+1Gj%nCD`^Rfu`XZyr z)-ImFa3YYn?qBzw3A`7W4;H?Tn}pBbwxKnV2dubefQ1z zTKvnngmB%(FWkOy*GI2gmAHHR>Sem)GA`pX-eb6w>+uT%#{7S44UoJ*7Ejaw0000< KMNUMnLSTZ2)iNmn literal 173386 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 ^dEhe%+j>1qZGffsS%U%ko%OUUeoVY0TiJW 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
  • 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 z ziNGHU;?dL7!|n08%`VLs3A_jA{H2@?2zzHk50NoeUo%Q$(-yJwaA&onEP7_@ed~%x z6@AVhqygPjE$LK!^Hz=|T-d1f6OYmyGJQD)otp?fiKf1jY%&yJJ|Tduq1DNtiJ~!s zPNxfCT2#a58PG+7S+pWVorU$u#&IGT6<)e>uhR0-@r{ zuQcqapmQcr=z}$pn}|vuTM@@VQb}*2YEtu19p5h~uQd4)=alG(96VBg8Pl7@%-xTM zW}5AWk=n!X`*Thl1n?wNV4CV?8Uznhrc0%TDA_Q8$e*mp=fa7*I>PW=OM@QGxppn~ z*@au-vkQdVJ6{qV4F4>?W3qAlW_WR!nksGFe=xtYa5MQ+>b`v9$>g1{uTiMEMj_cZ zWm-JG>eABpetv#XH#`-oX;>tC+Hr+0`}?Gx%d3}N+|0kFAEU&TR%~)*CCyDHvfNVl zPnNgGBCqk%h!qe@1d^wRlb1b&-V;%t`x;6efT$zdzIBT8@$tQp9G41l@nm6WaACdV zA&WxzZzLtX`z+>pebrz4PF?*jrW*71=(3J6j(0B(6B)jZ;T`2b@qpf(@ueabjUj>* z>GoGN-kUG9^TLOm$|CdfbKnt6Q-D=@eWZ021jOh>#z4%wb2Y*WPH?g2lUL^H?kg`# zX#J{rkOHag=t*y65A^ra$jd~n4#4CtT|bnn$j{B@p!@t z8!bEIRiXhT_IMt~H~j@C@0-by^A)F9DCC(!V>Lg<%BnXW3LVQCd%;uVGr;ot_76xW z?AibDdkezdifA?OI}-?;$jZ}yD~c+pOl^?=BQ-j=4|@T0=4eSXArB}hQd*wD-cH#P zH@`V>!nh$w-pm13BfqjFBZ51X6ocznqoxCXRh$=03&}3Fdi%*)E7h8ig@gi@w-aJv z#gSSdmMwVXN>+EA$ei2ji@GMaT0=p%sUx|{e$#4cQWDx-gZ5z~M@Nqc%ZE*^zrCDj)8sc|TO=KZw0H}%DsgcJueb9o zPCwGE%z3UqP%ry#)F8%%+Jsrt_BZ8YYBHf3p)8e3D7gss0GALP^z8O!9C!C+|LKdH&D)Ud-VJ$C3Kr#Q1?8}l zUkOG+Hbj}3y2ER$W#(7Cv7}ochvd9p5!GY#t0`_eyQZmbQGlI4=uSL0t_H!WNVV!A zgFS=qwOK&GFKYYW!(jH?@v>s8+f5Y{{nwS!WfX5`FklWYS{(eL;HuDgn+#RT2|>;u5#cs z!mJMk10n&4l!Osm*5IH5 zBF%64_wTOYU7S_Ri|BVbt6+vU1&cmTBFwuW92I9KdVPZ<<=5F1uhzWJj!&t`UUiEG zSOj~sX0Hy!9rYrlVs=C~x(Llg=C7>h<#qqtxSsBp-n_k(BN)6zTRUxcA`kJ~VWJ=S zs+PO)71+5i5^%}F^~i17IbaU@ON~a01^a4x*hxXmwujr7jLHwdC5(ZRR~1_b;#VN0 z@6n^42}v;&F2Si3@TfsP#EdAVtB-qodk4$Q&CYTiKF1tcR-tuH z^t5S`jm%9(!EKJlI#PubFSqku7-mz<;ghq=9{G89Z0`Acvq}qHgx| zY*fHXEt1~b4;hl%I4}!&olOwZdx8EWhZ4H7ZFS3x_{M5H&E$cK$dr0`G{T6Doq+KH zFV2pL{Lr6+%o3s}F-Z?aDY5C_n51O^HOdI-dDVX;P{FgiQZa^gUe{{8q2AWCkrf1j zHr?U?O@r5Vh&988gVEfLAHT`reH+Tc;oz@%iji@g&mh~c?@38W>hDjNJVCY;`mdPV zN#K~@Fz}4Ivf`q`gV?Mj#tfDHfT>*~V&znq#3mygl z@jBnJphvol5I99DTc0bU-i#!N+i#Xg=XzQK%&ML*N-eb9OH^IFU_M=ZOWDJ=7k7^( zD)dD~Rv-{)Sm#^qyAUFQrmZEZ*WvVwFDsU!>C^kva^8aDh1Ufy1*p2aSfkTAYXEr0Kf<^YQB-gU{V5`K zvp)+C>A_Q@-$)vza2Ny4LJtj^q}M;l(j(V!)z1o%>7?MD*}x*pM=NZTaUO$n@t`sy#K;%4nlJz@$*RxaRRv=t>7-aK0OI=PQXY4arh@%M?jthH%nKj5q1_ za`*QqXE4gzuvJPjZghc3M>m*JQc?z9)R%q#?R2$6;V@c|+T=t6lf`TliFeCl%A7DN z_9|$~fN{0S37yDwl8_eRS?1p$_f10pQv^smJy(OmX0?)>Nv!ZquIiq4n4ll6|I?x~ z?PBA85e!C=Zp}ZAjSW~)f-#VrA2|Yekt%GRr~6RiKSk2`A|$4)bq@yE`*4D*F)9hQ0p*Oj)LFAp@!-k?x(Co@re&|I7>p9Pm13BjfSXh!_IXcRzLfJPa?y(Qn)4s?Pkd+ z@@xZg(AqnsRxv;iP@Udg0kD>C%QFIArt8P^xI?lEnpR{d4V2Zus|2Uahq7a=3n~@= z^t^lmqxMwDAnB7TeB1~VACFTFp|GBBMcrAEgwMM4vLh(~Y1?S7xWn3H>ylaU;R7Ry zp?SJ(mx>j=bj}U$Qw=F6pWO=MwA$It@i^P?Dn*(=h%}+?c+F~k3pwT+qCMDUft9mF zD8gdk>gtN}`sn2JaLXRnr)igzM};+DNjGQ@*W&W_zJjt9nO-bz=LO=fhDVnD>V$0~^i@Hd+#jgKz z;!M7xepBP;4|0opoug-*h%5L7HQ+>_@fXMx=tLRY-kKLZ8&t>DH9fCXjaZ?rQ^0}}wgw-(&ky_88ss-%c7 z24+uNkZ)iWOGI7uNlQ8qRyjCw<-XBFV!%i)TkaN;06XUCE+bc1*D>|ig8412UKeb~ z^D=HI;_GyLES2Y;2kkuht8iKJMtzm25cS$=k`T-AUH)}yZscs~B+;@)ttTGs3bU_G3fg7I&u@M{O zw!`k5mjlGQ@%pdF-4=7A)N|3# ziTsXa;8AFkr=7!-aImYhi59o1l7dA5o&qfCEYaPS<9nQ-jD?l+mv z=>4H;XOsu8f0*>k5WJ4Q4$q~HR#*h5+$j!rLUOcvo9!lDQ2xoPf+k<70qo1GDvbNe z6si!Ht98XLe&LLV1u)2nzDMcCZY2Z+ zVjD-VKul@orz4M(%`dcGwxuRNa>VbzzXvuhjZBvDo~SP;~ed zQaein8#ukO8gow^M#hz_Mc`n?-8)(7{dU7+1A;N=qX%%vxrR1Gj~OU~${8npy1Dj{ z-1lXMchIT`xGjP3(xR=qG{C~7I1<}TEfQ-_%EJ)BVb9(R=>R=ED|KK3D^JHhM`i0eacFRh%v z=0@sqh&$*{gSmv?0-{<)ZEci+%?vM(jQsewTl)2DW+uth>w71EK>)udc>wya@o|Z} zMTDR&(CTu8#l@zMlE-?QkjjA%z_1bL@OVk`uK>@CTM<56fhKg6m<~hV<4sP{!L*m$ z!>FW)EN2vW#JyL_g`o;)_HOk5o2H%dtIJiYG;^P^8}GEIeZ|OYNAqLwwnC9MFL`y^ zf|stWH%xcSa2je0N@84|MLzBrm*4#N)q1}JzzcA;v%A$@X0Xqd$&CiiwA%kjxy}_D zj+ycI$7ohdzzqmazKn_0cu)9Q&NM{%6X!=j$b{Tl@-&($U42S7aFRq5u!T`+q-?Nm zV%j+lfTGo$4MoB!n3;;)$kAtzli9?2Q_%JRvo4p|yqa2a*}M?+bUT+?45giPz`?jj zn8A0^w2K|&tEi|b1az?D(dNb0a3E+7|%r_Z@Mrs1yH*nE$G#|Hh|iINemGgk8lM$9+`M zL8U8uWkHh-$v;gAp6$05qP@7jkyo-;l8&1P?Ud-7`R~k?L@_Eew=hkcetg37()DW+ z$c{)N{ov!z7mO90&v;-idHN`T3JOJUv(#wyV zAEcpL2a%k`tbkpa>>vez=yei+rUlaJ$jUT>#-UKM;R^EY1dP6y#@1e>Lf8U0dNL8E zOY_s{DW3m#CyFUHP|*{zT(80nf7wpL2i)j>7#Sm9ZyiH@UE?cEdjoPcCOCGguJlgA zqh?t}J-2M#7#wbh+M$`j@2(uA<-A~#KJUL2507!0GKuuqvvJF>RrQR0V{by$f94xA z`xd|(OZ;+KK7;iy4pE`@)b^B?#_%G2qy5=bFcur&>|I@GKFC_DfI_<8Dnv$xP%<}n z#P}YMR&(l)2zRJ{Y*JOBWl~zIV=YMU%>bra~k8LHUw7zC`?k!bv$RLvStOwtcZp4!; zzx4v>*I;C3Cb-uDeS0n`_;>O7!xG!8$wj7GHOjMU!O3^jC`oGi_AXSm8d#;+O+P9G zko%oRH11L1>bnAw6_R_HDA7ZYzt56tli9_wDW*iblCjY0Y z_d&_=D4p>rjbjQEP~*d@!poc22yiwv($)c!`4a<)*PUgR#{4UY8ad6$Ppxt<5HuMx zI)8ogRs9L&t{DdN!dRrfwW35~es?Tuc_RM{<~t*~XNAWEcGrwQwZR{Tlvynwm< zRnM)y!1Wi5&tyzLxk#`MJ3)(0yI&`Qc3Qe0b3=Vs#wmHEb)Tpu0K27#i=MAkT`fK- zYX^Zj3JxCU0{}h%V;#1Pzq_O%XTMK-9;Zhg9UT#ns(Qg>ABl#mAhs9~Kx<)49IfEw zQD@Yzb!TtySQMnxVU#eE^Owg4;FK>EX~Gjv2aPDeN6O%k1K9uMopKtDV9EzO#nrJv zV7e3l6gIGjzzY8djX5;af?mA+2!?iG1Y;#~#i|<;m+^dIau$rC1g-ABhQJ(pjjBoa zi6FQHNVb2kvEm9^5vhTBx`Ng@29q{RpTfk`2ELmR6+s3o zri+o9*Rl1Awq8XJa9~H8038U4{CJb=Ouy5e@pWPn_2ggo|*q8fX_ zsy0u!vG$NuF^WE_I99*LP?qM06W-$&s{5PfCR;2B0n+k@IfEm7JC761UrxK{7Zzd; zZRC0CsOo%K@WUFbHgHJ!f=;`GyMlwA)Cqm`95c@2N(qK9d*?T6YQEG^-$?|(9&B7( zPNwhvjgF2IKbcY-Ms%9Png0mB11$2d&d_oaP^V-C>b4Cib^f#;MlcMp&}r9b3cwx64X&_znad+(VAdIH z2?Zjb*YH%L0b%3?^9f-VU~n>zs_I(IwAuoPq!T}@U1pz)4x^eUfuI^St+L(RPBeDO z6`p5!n3n)pPiOf36*`hSlugfqM{iyu_;Ai7M>A)|UpfI}{9S$n7fTLmN(4doFZF6(F)C}rV;6&6U`pRXzb4FURkyoW> z*@sBBa<+Ov9w#gfS#Xc$ei&fw3tYONFE}w$5>za|1WewWEBNQ zKNJi(4E-SVf5$M(#y5pwz$+HsL2XnrE4Nc1A}hqW9=@<(7uowg)@}lj3{cA5d5sMv zXR$)J&_xs>ycG4DlCi19xNQ3ZpGIp5GM7xCO5Zq_S*q4qjz`PolBwC zEAUDoLeRQ-xa=eODvdk}Ap0r%NK$slaw#fO5CN>e2T;;Y{0f5|Ceih~)hA1S`L*#9fDS`8nGh?OEAq1G!ywL*J?>nMT|KtgOn%i#md?H%yrD4%if{A>OB-yoeF8<{0zCng#vM zB%eG^hAoT^gB*gz@GHvgj7WPUZT|IUX`!<&$dYs9W_tdE!uu+^E&Ne8J`AM`$Hlm*9%Bn;VL7%033wnBL zYkPVsE8{wd+ZIjO2SoA1rB~6as;h_J;^s{G=JIGjxy)MK&L8jQbnl$XK2z49kVo4Z z)Usuaj9eTb7DYWT$ET*^zW6OI>X^2kNn{ha(+^cAKg{rV3&&5AuUN zo;fKwoY=qOIVW~Ec%RZnB>Vlps?Izfs`q{4XI3-JWb9*XL-wSxjgmBrY)PoGWf|E? zR9YySVIphOSfelu$rh26(pZuu8f&(qg^0@fNu~PD_s`$?@BDjS&v~BbzVGY0-V63! zIwEQQB-@0hoZ3SJ7Yf#ar;IMc=j9jKWAfeRllnHf$J`}?b;8N`8C~a>4k1q*Oe)-( zQdRrKIbg&cmvE)P_Du*oB}LCD=sMF7?CoO<5vmYrCjK>~`ytz*Riu?D_j8T096WW4 z$jzm^f!KWQ$YaZ02u>ckBPXStiuQ!U{t6m+%%%lO&*?2(mW8?|KH495MXoLMdXP-y zW-~ufP^EUQRC-!{(l`r4&5#lK{2|ae1(NkTU8Hi2zqj~HlS3z28B0uL`EYZ=Io+h4 zh>=Y%Ra*!nbN=m6{EqGy7O!_#c6Q8>d)Q@ja~=1UcIVn%{_or3;$k2rM&q)gN3^kz zmh8gZ+}!5FhwoY~*kbGJ{}bIyN$vf*!nk|MuX{YY?%n*^eYYD6e=nXpxcyH2XNuIz zG1YN-rL-rRXg-Yg?PMlo7TF znRBFL?1)6LvbCh5fs6ugeZy*&ID;%8yGsB4WT_I&2E8ipqtk3_=%Y#JD*D`OT6~MU zvf@mLinlY8A;zlm@)WDbo9d4XwSXYliu~8)s$azSMy=1>378XN2~*WQEPq=`qcj|c z5$#*I5j}%|;krAY5Fwq3>jF~GK-Eiw4~blvZ@$ivxAHX7wf)1QOc*tlnzvpdePyPkwyDVV)@^%;%+#rjy-uy5x#al$!oR5i$y3#ibI6%srdtO)z z;xE)`+b54cH1TXWY%Tq1ig^`GqMO~Z_}jJm{pye3*4_u5yXCff0&zITx6HhzZ3(|c z`GNk*{PdeaGPRiQ`hB6=E{4-gH{r*CR&PS-97=u9xtQ8u>YiAGy!m&xEuadwlO7`4RteNC!Y_8Uq^rD zGKXTq(wh4n-#L-dgn}zrj%;lg!_hXu9*>%;uIzny(jiY1zuf&OE*OQ4edrdKLF&X_ zHgTlic>E^PiEK=HGxlaaFz{}zgKWyRmhY_vhvBmUGRALC;@>(taUHdnUVr68s4O)9 zXZOyAuk&g9@%qt!pB9C=-zPWUKq~9=F=@`6XX%S2r;@F1wYiaOC)^qrE;~s^Ih}G$ zZnOcFy5(~XneuR3u5kTafj1SI>t;|4;UpPmoL=}1a@;KiClUtV>ZFNmGwh&C;<^BJ z5OReAj7xj&Ar#DQRMp_rzW?Y9LPddUmD@J=fmpaYU36BQ^}Z}trJ{J`t#^8uU^oUR zJyQmj_+Cfxw?~7VmYgk)TXU_-BG6aRgOa%BD-z!>{WXe}}}n z4Y!gN2puutj_-BITCu#{BQe)E+Pt|u^45E}A*(dMeo=Uqg3k(-Ny~(7eQWQ86RB5}_1HAP4tN@1)bSEt+Yi*gH#c^C@cPS{wC0e7P1WCa@I+zD z31R`}-Ya3iXN@YQw}{UGTcM6lb;V0I^$d?ml)PhmoX+NA{?%)E(7eSSAHFxbf0eB? zSpVSZm9?$ajF{cG>^Hm0P3oWW8Ey_hjgMVQ`+0j0_K(YZZa-fU_A@ST zX1ktoXh#h`8pcQVu@(}Z0SQezPAqsG6Vdh3fF=v^6_GjZbY!FG@$^hCs)zTCfqV?C z=aUK9;-aYfKdZJgbYe`;Fn&Q&=QA1A?ByJ60@rtio|4u;-yM_vlg%{E|0{|adM@Op z371eknwjNrIWmLZOsTiR`EA|04G5GKGHYQ8hZNwIibqC8(@fc>c?=qu_uA${_Czf> zjdz4YQzNoz=bYy6mi3_+a63+fD8jm$6}Hn}-{efM7oql?f__e5-T8Z81P^d&4I}pA zd>1~**~i-{M?d@eHG(GXfq|Yg+DZqJ?Yv>AS3*YDh$sa!60n_LtUoG%r#~NtE5_oq zr%LXc{4r68B_saf$%%FkuY4F^t-m?g*47q2mB{TB)zgXpbM^>n>@SjkG&Qb&;Fa># zk6YX#WwYpQe@Ro#wrN3brEkkFR4PRtr7`WCPI(LN8WN0J+pB9FH8@pO!a@ZgR{Yf8 z-|aF(7Qnf^U1L9Q+2)f4Vf4|XJG$OTsh`QPTnr*;cs2TB@qrf?*0|<>sj!_^z*hKA z`dMtg&wS;5%k0FX9yZIt9WVn}&1?`vyGi?bXzw^Hj!L*P6;x6tpYt#1k_bi@q~P*g zY8pE%pxZLdU|rZnBfyqF3So1_2wf!Q$n!@@g?PUe`N_&qcH9hNMgcY_%kw~GV9B1x z{$e_4IosGo?Yia)i&vaLzJERy$?SSoVZ?D}k@RRL()D!&^cBxlm;43Ew*tv^r$MsdFs z&~Qe|v9_ir_VbCEeH+W%7cXAe6CpdEZk*Vy&uR}Ivq2_Ltzo8tdueu7_f$3W;dzSi zSkbQ}><5xOR$q>OLC=;|$(T`lx{M5PvHNFk0sW|B#L);813GeC$6vuS+XYmU0b$vd zrZx%6Va4Dgt6#P}5#eYjSeP>X5zCP9UX(g=sZ#uj=b@@o@qXQG$GEB?IAP@AloUXo z+VdwiO?jBe;H9mELmzy}oW>?6H!~b%>SX_%b_*em@^zyV3|jH(elH!{6D8J~017@w zgpbL(4Ie}`eFcbU-Do+N)+qVQMAiF1%X6vg;T|RV2i&|QcJ>*{x<8xG={x#r*JiJH z1wA}BFpL)a^`5Tl!qfe2NUHuj?%01(9TNxAvoCzPgYFF+d%Z%30m0BsF%}F>+Ra+#YgV z79MYDKVbF#h$wDjsSYvW2Ae@Eg8Dy!#wNUv-WTlK$$@rIe^OUWS`GahQVg@CtfGE` z?PsYUarnn%E!zjDltsynle*aktpKs7s0YcP6wG&)lLgl#{a)%GW~dr>1Fdhiw2@ts z@m!{4F~gf-9-vyttY_qcvxM6)9gJ;^&C4APY<4>+N|7mbomGu|D!x$Wd+qofPxFkS z$^Y9z$F+eHmxL+iw_^-hZS0&x6t`6LQJb&`d;FW z?pYg^akQ2oNXazTxvRgHjkd|L3B=YjjRD%eVo@|Ii(&tCuj4%lG=T*Mh&HYvEJ4mt zl7U%Cx;pgOLojq8C1FNG<&!EsMCkw92`xfx?zU`4?6w0?F31_U<25UA)?KnAiG>|6 z*bj1ZrO>BpCGovm>d3Tyn;X!hv6s!So(DcdeUD29!U zjQn_Xi$6MmEN;0QBpmy__*``L+uhgRPc9kc_PuA5Q^{EuSmMrmwQNk3vncYhBk`*| zJG98e6(wV~p=>2jj1D$W(4sO!f)%t$i{Xb*#r0OmHE5NEipdq$6My{2mSSiyM3Xf5 z1$4L5wBuxH-9RJQcpxg`(MKryZ`g)wo6DNu?L-_Q6iARC4 z$8L>lzq}$u;v$5$*^EOruQ=+YR+%fHQ_v>)sovB`p%m&8{DF)i!?-+hGmtO_Z3W%6 zXpyo-#8qS097>PHTV{uJp0=V6qdwls5hGVzZtTa?Q@cx9gQT;0XUwZWvpTbOEY4DT zE<_S`$~oT>83Zxr^r)ZSQR}T#bgNJ&#|{EHapBu^awaI-3C|PaFMoQq$0()#J-nxN zt9^Y>T6#wJp1ttzG^b(~=2TZ{tf>v|n<2t=i^f8^5) zmr1)UOHVogtSVFLiDc$eL&5DBKZ0oFd6@j0rxzGYV8*s|g@9Ze4goQAODT9HbHZh` zS@T_z3KsU1RrQhy?gJ8({_DZ;r5bI)2w$*k1d=5T9A7;DbJHVa2g+7!6?h#h{G6@qo=#wh10`MZg9T9_)4Wxc^06#tnH>Ui^8Lu+F<>z&P$-RSzn1#b^YrV& z10gW#Y=AT~bOTC~$Hmt-H%BghDAQ8DygWYWCyaZqsuI(0zgHTmG)2Pi0qxrlHcsLE ztm!xjRXFXP5H9=7snd#US5C`9dN93xWKD!Kl<*zARYHX&lC8Bq&o@`a*O*QaK}*Wv zICx+=SyQyxBRbYXwVv?AlDoA z(j1`5BFz%P(DmyHcC?qKo14@Z<3;_Oj!=8Pn((hVOBoBhRz$lc)nfZALD~(D#z}KN z1HkF`>>H9pa`B0s>)JQR{@4!(*BDZ|NU2Pw78ID=_{-zH%g$ga&kpiKJU-l#CM;)6!f50v?P`&IM7tS_GGJ+hwmZSDo2}8B&g;w>ATm(bi7uR7@HK8TXo7Q^49ZnW9|rP7^u>~nXm}b|_evsjb8|9O_7~b~T>Sd(?eOq1 zWSpO5nXu4K_5+P^sY$Ir?tIViZ1t>Zel203MTP@CN5T^0)b6TA@Xyrz!=R?@J7&}v zi4PAARpuYZ{;wR?#l4XjeC6bK3~{aW6A{4}yIm7_+2S*W9~ z?D>mPIel|tasvndj{Dtj-B@dH2fvnL-*aB0s$}iJ?5#rn;_eEcv?h?}q*A%&&_^P+ zZy}gxr%S)Vea$P5*}YYg4F3%lWQc_Ti`AyEzy@_=URhw^N2}O~?iT|sDe<(!3TvkU zsnS!hULZY~a^2XViZPMi^ZjPEm9L?2|CkER>KZN%C&`$HPkkH_N=5XgR_aXT>>7jL z!f{$aSoY1coSQw=R8Yw|PW8Z*@N zpk;Huqc+&M5cP0AiWI&qVFOIGFgPV`t?g8`0C}#|e&q(B@8DHT3J(&1Tf&kW9^c+L zd-g%Bd9g3j)Qh#Y;AzO6`NSCTjfGG(B#vuxpwUlmJtId^FR&HxZ8zX-j z8DocNmSbT}OnX>xpL6`+06lY*%S!<*8cn)+c-$_`&o8*+?&URMW;`-ACFaA$`@BsP z`{$|uW8+4V+4h$zEeAy(FL&EMkpmL*92>2NXPT<_l{pdb8k+arOl%De+l%gV7t^!K z3Sd+Jb{{D$P{qA%1NY#i!*FG3YIx{S<+QVj1^T_B@Mnb7O{AEa#`n}`bOcI$HM{Q5V0kXS!;nRM;gYTi@~hJy zJe1cL0mF+k#B08+^dcG6_uO&Anv)~cK(7(2PidBNfHDeI*fwrph(a1PqVcAT8Etf# zf;}QG&c$h{+_y=54O3tty0Y<0BN|fqw>wx7%5mAe(oL!M0}t=M+Fly#9{fp>q5Bl4 zuJ2W(fl*gbzb|h6fXff0p@!@HLa$2_Lw~g$i%yV3HxCe9b~A}kZx_qG8z5>6>rZ;s zng{K>4=*J8y=}>RnOXNK$`$_guhWF%{e=L<%*ZCst}OM%_Cj~}3o*G!5rJ^T-+Vso zp|g8lQ4v<<>YsuHhtpYmfOqFVp@JYKgXqU_nQ*^Z)exQ;l18x^efap1Nw z!j4<9!4#c0AN*z9gggh2d{SJL5pGrCMM?PZURw0H{EocCw3DUk5wy+y{6ig=c2xJm z)K!gyVGT^O#V*MJQ_`+81-8{oq`C~7;(pZCy+E>4bBxi)YBWgx?3xQ=Wj`Hn%M{-! zj1|MCIoV2S1H$Cx4Ua|YA25-u{oOMQ)U}co;`Lxvy@D%2s5MT+f6T1AB@3&Z4)YJD z?lQRz#Je%8xo8chzrBskMM#|vs&ZXtAs(cH=J-1bjgf_;Q9P}48V41!U(Y!x9&BxG zY7M`1DK_@&R=sK5ui>B_2Y&121nB)~I`qr2s=o9+XS-LRgQr5s>>eeCI>Kfcv3U9h zg%F@8U@puHitl|KGn`I(aT?VvD4D+q^jJiO9(v|7RGepsWjqE}NQB7`hAlFBV5ArDljjFV6%n^y&>P9!DR#z{K#@#Ngs^} z#eIm27e<6_+Ky`X;k?G?7Ca51NHqZbYlOa7DDhZBUDN5yUsM!hS=}1 zRP86jN(-5=)7GlAuh4kf?3~jW8OpW<#SLrA%YZ#C?w2 z9}~$5N=3tb%!N{=x_wv#8DCi!uHL_t@N)us%8#P&(jNePtPW)P!~16MqBqxT5}r|{ z#!^7~_+FojbuwXyDVwPoYwZaYeimS&iC+{9uKt7U=e@ml*E#bZdA17#5rqk^Iz zNL*c)6*+cS0hcR_fGi4RSCJb72*LFrge(wb$ZYon*0A61=YBuFU-slxzgO?Qs(MxR zs;Xm@>cNN0OQuIXVO0phvC1^zN&0H4_}r>WA4cH5WKTbcWU+XnrixQlnLtvQ$4(@D zHVQ*T!ZlUgY7QHy7Jyt~H5U-F`BgKfqhul(3C)@6;sd~oE8gg7Tc6QOyG)$+?k9`u5yF&EF?!1K9ee@GKu-- zNYH|-m7q&Z;J6kt!SV=>Ta;WCAvGgrTo0K{PP+`18I%G@rMCED5v58UumnuzP!zHd zRwe|RSc06M2l7N5fs5k|CrN`x?;r!_oIaNmu)!QFWeB^%o`fT1j35KE`o5GAIXlOTc!=62)qtS|t{NKmJc zIgEZ(;g+SH3MG_|h%Jc3jEM;`jN|5HK!dnIp44RUiy>NC#2sYr2wqwqbLL!Tn-zB2G@ui=@&qEDFlDfUah^-# z(Pu(#xz3A507c4ZGr74rqteH>Bms|~BT~a^17HaW1r7}*2OzbibRrlMkk+u($JMIb z9xs$t!$zf45nv)}mBAy52ttrUX_BgwUJaztf;qR+%;oY#+!&-srLvevFY<=@0XD8q zYh|er%8%-$@gy9i?4#l#h71PCBq<%i5l5s7GpOf>1Q@6bNFCk;Ppn8oFwdz)9FP_> z@?tr{LphC4iy{&eV9udF849rdh&d>8Cb&pkDa^*hgiwTGQi~kqqXBCi_FHo{mM(5m z8pB|SK=qVdj!Y)%V1|4~5O&)mXb@MTULznfJ9tuS5=1hBv@2~e8l@hoAC@2iH>GTi z7{_%IIUC6^%@8bz>HV-Fn-zMbs0pab?_GN&~tDLVm)ek{Mi(*&m5(QMa5g3H#i7$c1{erj*JeH3M+eWXz#Z zfK11{@p#4&mwAiyy)K710UL!{S41lFMU-ZZ!~g|Bp`9=BYojR$^n-GNO=*^Bp$x_g ziai!{*3ai=wJdf5gR_9ffeXwEvqUM$gso285F-zK&N+rTr_3O zVH`z7iC_vv+{tp7Euu7#^IC8nM{DI;@HEdM3Z#wMBqZU28Kss5rDEx*lZ}Q#F1{4v zI8zy0ng?YfvV@kjOGP9KuoOJlE`ZFLxZIp|LT0T(#0;?nNxn;C z^kWef8x5P3kUEIgv+vN6wS(WA_?E1 zW5L>V(&{mI5UCbVibzn6$3j+bfDbYK(p13c2E{%oVoi(fkdgqC04pmns*L_HpQMaH z_~od8Y4Ir2t|U*dReA^yOo~a!B%|(&(gk|Bq$liR2Qq55MJi`n_?lEEZB&|Y72A@O zJ2gy!na#l=M;b90)Rt66N+70m*2*XGAm#j4Ew1CIATcH;4WQf3(TA0y2x8K6^^n{N zb6A!PXbRZkJQPnEJyNAaWzsN}Jc-YTiKDO@ipojc;Ii3Sai<_+#RTdMU!a#0UI$yG z7W15tL*ympQXzl|9mWhMb+C;rk<7`<5k3(M<51T@B+4NqM?@V<0$XFe1Y(amh1{Iq zEfHg?jLAZZgP7d!W1EcxDQAl99Fvh^l{NudgF1z>w1gm$Wpd(ik<+c^=ZyL&-<>2_ zoDhm>aX<$ec|nAm^TncJA>q&E04V@rP}(52XJN6!sBlO#ZVq9xFpaS&pT|rE!!ej2 z7C=bOC_<@_B}zjeB$g;GdQd3z*>N5$^!jD0v^roVa0jRd;ea$HgIsAT9EU_cjnPO- zTqvM%N^=smjZe5>v4NTNlVTmrS7;%T-N@&Q`SIV>}tPwP2wkzqH0fH>B&0yB>Bu;_j0mHge8O046Lrw`-7-lVm3VW%Y$N%|=L``>5DCa9&=w@=WblSvuDkw4_{K=hXONiw{l8XCFT7n(2qv{Yn{<+N~1`eGRM~_H25bo73HYY zAyi5%tlLuv3J1qR(Sa2WNv zD^ExwajbV>y!!+Crz2!BPtY8O_YUS_A{j!W#gJZ1714Mkip7%zmMBY*aW8^mgNu{Q zA9Kin9z-#P4D9LmB$C@Je1JbfSkH~g5rcpLx0miE3Oy?0o8#Gv)T=-+>Q@2MW< zMR+%XVjLV!?I<5Xfs&cGTlq+;!=M#h)buE-Q$CskKQ5p`TuDEAqQDT8|q z(Y}xL77?a0DphOI6A7k15)UE4+e2E$qMQ%WJZU-q)v;;6xGP(iCa7fT!TKdoBn(iK zeW?h2mqm40C=$<#gAp`9>x^zQZ#Oz~t*#9gH%IF+Hop>OT z5F=;+k4MO`rz{dhP$HQvFRDTp@n8%(6ZZYN)C3I1J)?RXzv!7obJM!GWAM^(lupWI zZmK4#<|{+G=~4=YBdy1J77G%5OF&@No`^D25o`!elFGjF$|y(dru z2JP3h%}XDqzyKvxePVGuPMNHSKcm1nLGh<$pyo^Z(JuKPx-q?;7N;NWSO3ltX)owc z-2y!6<8#Y>NWxgGfckqdFZC}6%tK9=GZ?h17Gj>fGibBX zD*aI*1A4LqjVtN9a@>;sJ-w3eS03~ag$D1tUjEE)hO=IN>e=IuJu`9sp2qKXjkyOp z{B&8zVAK6I=Z6l>3n%3sSTLuf?O@sEbEeCTxufcyI_1A!d-#YAzJBPC*ZZfT`Qyhg z{q^{bt7-f7)YP4!dBOwJADY*VeY5xExRI;h-+6uVgzv}BEq^W_3=Leh?P&peF2AR| z`q_^jyRU`dGg{M!BEN{Pe{C4H`=Q}?;y0Cfj8>#yDc3$pU(zvsXY%KIWJ4fwmU+wte z(Cd$WHT7n9v$Shn{>hb$_oi%djNNl=**9%3F8$&1!V81oUp6$o)H)~qz$;te^rY$| z?Ps#C)|Ha8lmWja>KE%W#+=c-|cwjhm9SbY3+rJ z*%v>%&wOH^blZx_uh+e5_up#zwcaqRLee_n=B}6iTsZLA(F|${tml2fzjVoSw7tP9 zi)mJDS!U%aOo7RTcQ&mYd9-ake%uvdJ-flulrZNHx5u0Jto!!8Uw3F)pI=qBO5W|v z4;WQzKi!qRrFio4^k?6x`{o+>?iXLyzc}pCO&|VY?Q@@XSUlnk2~Kq_}seu<*t{?K3wts@Cz58cWqk{7%!^b+_me|Z>P32zLo#w zhQ>>;Op$f%xVmmj=`-B=C%>F^bK}0QKYVb_w7mA!7dCWW+x^k5UrfLJ@r=hS9&Vm8 zXMam4<3Q*6iw90@vTa=dJJu_$fx^o>*8R}l5y;MOw;f+|gt5Pov-A4jPD*b`hALjZ zHGa~6{uWxQ*&%CsEQ-0Z63bVao)Q#y2D&|_7Yw8c&|Et#7uL>H% z58XJsPt<@+96hk~>=0yF?KvWUc&<1<_Qt8nBWiZf`KVQPVb6{8w^l7}8_ljSA|l!eu;PPSYCDWFP;3*rN)ky$qh5QW8FZL2YqZ)di6#!Sg;i$ z9hPIqx@y<<88v5y!jpKLBL4o7+IRDF@9Q6qj9ItfFQBM?{u_t3`0hrG7&K;jP>z39&vmg8;XUEkB#?}q5?=Qe_K8~KQZoe4F{pxJ@yc^>NWoP$81M8jF zD(-piA)+T-(N#7p+^tz3H|x%|EU!!KtKXDcJZb&AZM8RA zk9~Fd;K1FMD+SK%MV#v!Poa-H2Rywopxe|naox48XSQ5lG(YmFqmE3>oi#bmK+jDK5H-f>P*HLy0y6n=@bLp9l4|cm| z4_JF)(s^O+B0Lou(dUEpU+!<+Tv+o_;pFKV9W}wl4c41a^#A@b^3-qEFCMo1(!8qX z&ce_S6NTMPGvs{>jfFESwjNpDT=DRCoI-nh!^&;jnl^WA`)l{yL7~fQ8i(w?DLuM} z#h$G`Fz2_sj-DCTXWGXz+vYD>w6&eR|NgfN(|?g$p{PE%^3!&BX<@eHT<*7qy3K88 zI|r*zx3w%dd!l{m#g3CZzZ>#&Vb%f0vE7TuuReRDW7Y4wdDGO*kFFY7)-Y^l?TBlV zw*uJ~edmN<%-8MPajKAG4Q>&!)6Z>KSX*0|Kki$&%XIIy^U#R4zrA@VJGB7WcQ?Ft zc;uftYTK`=xk44ofy`glX(f`u%tWsIx;Y9 z?C1WI$jZRL%n;xc;tCX3lN2#l5meJx&@fT3P*=3mRJ74jHni0=w9~ZnQnB?nb~n`W zGSrB$&`#oG@QG82%F#)6GAVV}FY&Xk@G`G1Dy%LlswpaBm?oIhWL`PZxlxFrRhXeA z#A->r+=3L_331MIlLPjYdTy;w-%yot&d~6Ync3d%q9somw*6-~)2I3AfaS!A6PGWT zzkI=h6$=&|-nZxQ{=G-`@4b2B(ybepKY#xG<;$1<|NjG>ItoTZfVv?d^HXdlFrP4# z1o;I6)7VG`48h;oRe_<)S>O>_%)r2R5QG_bOw4`@EG$-dx;TbJxZjPrdc_YG6Yj+jWJGMG6sNXYKPCUpOrm^e$c;aB;rEgU?(} z56kDMCj5#uxy#Zqq1S^c&c(G&=H#YmrkZ>0mw%s+WvFO79KoE#Cm?uKW9_a5?e(j< zC-A)FVraT^C4Mb~@fFQ$Gnj`vw7t_z6bjb&rDdA&SW6&vz4XcN#BbE@ivtiuMVvW ze!DGZg?HfTZTfmSyRT02Qr!G;R_X#pu`_eamS4`4?)dR=*xaG$~www{Vwpn&5+k=<23<@v1eoSvzRF-*LBUa!B>)t4y21Wq}muh*2 zyq_KqszkgQCNuxqzI#FTHUqs}*#lZEj3rh6JqxZ^S0yRkzQy$Z=+Q8i3JrC}e_!IX z8=muKa_YF-EL8ZDM3qgXA5Rr+@RS#dBer`-vhd~JY{LHF?*w%d|_IY zZr9@#VV6xG-{(#Ecj^+5f6Oq1bAkTBhNbGu&(|p)h<1}K`RN}XCCI z)r~#8(Ujr*<5-3@f=As}MWk!BUAeXM#I=p@ep@m0=O^__HoRZ-ibphjPE_8U_7H}m zuun`AjC=mD9JmndRjcuom$5*`{^`BxKbM_#eE64vK|eIhE?8^#5(i^PkoFC%eb6 z{ZNVg#rM=`VSlG*PMYVs2lH3x_$KeUYBrH=PRLbvMQ1Ka#;OS>$sd19^ky-foAV~w zY`(8t`sSO}T`OPwVh8}bJyK@d8}qh_hb#`&N-gNVp1eo-^zM=~(^Ic~&2OK$#X_lj zzjM+Yr8Nn{9ZYlB|70HO2a0W8I(NN3lUTPs+mWDc)0%slLB*t}tDnm{r-UW|_xmFv literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/dishes/textures/item/ice_cream_banana.png b/src/main/resources/assets/dishes/textures/item/ice_cream_banana.png new file mode 100644 index 0000000000000000000000000000000000000000..2e0f4e121d48afb0decb8a64b42d835dc199332d GIT binary patch literal 265 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPFl-iw0HjvP#eW&+8~mbnKe|EsRH*;m#kd*IW8Nb%~mO7ELuL-ZzXeR7}W z*j&BPHW&c7CTz5Y$xeC2JKFC>azMyWOxe^j-X(NlWr*H;!J;{KjzFZ-s5vmNZZ W`-D`#9bIt&51pFlB!Aa(TuXP_d^0*}aI1_r+UAk1jN8ms~o zO!9Pb43W4j+IvyZ*^z_E&`cni*)sRQ3{ZtxxW= z9Gj~b`et%T!THw$uh+k6o3Fer^Myq5%P7^R;*YBKGI~l+{rbvcMBLx=>}B5+akhh9 Xcb|~zx1%dAfZXZn>gTe~DWM4f$H!7$ literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/dishes/textures/item/ice_cream_bubblegum.png b/src/main/resources/assets/dishes/textures/item/ice_cream_bubblegum.png new file mode 100644 index 0000000000000000000000000000000000000000..7759a16abb56cd33e07a0122ad6804485115a143 GIT binary patch literal 265 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPFCRJEY1S;Yz@Q5sCVBp&i!i*NI!74z( zBu^K|5Q)p8y%zb^BmEJeShUiV&`s6;# zvAKGoZzh)%oPRCwdi|TW`O4ceUq}?cj8bhX{-|m%qo?%Ludggd#QiEt+XZr6>%1LL>4nJ@a+d-Mhn(p6`){} zr;B5V#AVUmi-OLM988900?Evlxd$fytFE@$SJozb;M0Og@#?io@0(&n^d@b6a-Zec zT)ogYlS>NDzZQ7C{!QC_3{ZtxxW= z9Gj~b`et%T!THw$uh+k6o3Fer^Myq5%P7^R;*YBKGI~l+{rbvcMBLx=>}B5+akhh9 Xcb|~zx1%dAfZXZn>gTe~DWM4f;O$a( literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/dishes/textures/item/ice_cream_strawberry.png b/src/main/resources/assets/dishes/textures/item/ice_cream_strawberry.png new file mode 100644 index 0000000000000000000000000000000000000000..a09d49b535f3f8c7d21a0b83bd36c0f976b4214f GIT binary patch literal 265 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPFg^@9K=pd!u!kH}&M2EP3u%xJ+HtO68F z@^o|{dr{EYk%P(5Ody%rGWWpbf7R7C`^ws64}4k>DPFx+>3vgdh~A{FPwulE zo2wW4W^zfv`PTxk*S~3-ue>eug+%eoDAlIokE-@EdP-0I`pRNN+~4!;W#1HWwu4=F WpOEUeqbn|e-0A7+=d#Wzp$Pz0e@_$u literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/dishes/textures/item/ice_cream_sweetberry.png b/src/main/resources/assets/dishes/textures/item/ice_cream_sweetberry.png new file mode 100644 index 0000000000000000000000000000000000000000..0cc41814553868afb0024b8474abfd8a4bb5c9d5 GIT binary patch literal 265 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPFg7h~64pd!u!kH}&M2EP3u%xJ+HtO68F z@^o|{dr{EYk%P(5Ody%rGWWpbf7R7C`^ws64}4k>DPFx+>3vgdh~A{FPwulE zo2wW4W^zfv`PTxk*S~3-ue>eug+%eoDAlIokE-@EdP-0I`pRNN+~4!;W#1HWwu4=F WpOEUeqbn|e-0A7+=d#Wzp$Py>s7zM? literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/dishes/textures/item/ice_cream_vanilla.png b/src/main/resources/assets/dishes/textures/item/ice_cream_vanilla.png new file mode 100644 index 0000000000000000000000000000000000000000..b7c8f32802d76978684c0e59448f61f02b4fa1a5 GIT binary patch literal 265 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPFzV7>r%|J1NU^P?62B0F&0*}aI1_r(ZAk3I`t&^v&dwg7dEhUax=CHeY#L<_n49mr<%s#UEAeW%QJu`t_B?h`7J!*~`8u;%o=I X?mi*aZ%0>L0J+oC)z4*}Q$iB}mtj-W literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/dishes/textures/item/ice_cream_waffle.png b/src/main/resources/assets/dishes/textures/item/ice_cream_waffle.png new file mode 100644 index 0000000000000000000000000000000000000000..68e37242d5e86487fe9ad2d16288c344b6b91c96 GIT binary patch literal 326 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vJfv#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6-A0X`wF1+H41p(cG1X4B#W%R&EWLLg)QX&YDv-o;KCnUL!`WP+nOQo0_ZAy4a7~$b zdSmdCX=05W&!nRI+|pM}d9AV};Fi*?;~JZm-&;9%vcQR_rCjq}zDM&aPWjm#G)bFf yXIPC^dTE^%!>*;P}Ti+(1Q~1s;*b3=DkxL735kHCP2G znB?i=7$R|5wD+Q*vm*zSp_xE3vt{mq$^WXWZT6M5$sYK$AX2<~t^v&dwg7dEhUax=CHeY#L<_n49mr<%s#UEAeW%QJu`t_B?h`7J!*~`8u;%o=I X?mi*aZ%0>L0J+oC)z4*}Q$iB}NQG2? literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/dishes/textures/item/space_beef.png b/src/main/resources/assets/dishes/textures/item/space_beef.png new file mode 100644 index 0000000000000000000000000000000000000000..f14ebad5fa9740c642f5fdd5b2238e95525f544a GIT binary patch literal 413 zcmV;O0b>4%P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0WwKMK~y+T)sit! z!cY{2k0Ky7Lcl_NiNr)qP&Ar2J1{vo_+uTN9Q*?&iVipsG$w5zQm_>nH0P%8#aBQU z7r&%wZ}ZMM_udx&pQZTzD+d?qD}EI2FJFyrp#jCJ<|4PYis=0V8`T2tuAhv_vYeU& z#i^AHRJ{VHl*J^Rpw}J1RRz=4Tmv3BY}T-UTE*>E8)1Kp&AJP(6CmxR;k8F{Zpwf{ zUQBto=_2D~#iY~n#H6yF7ZZ(Tpj+NK+LE+lIVb7bggf9EVK0gmGdf@b(7In4Sa@U zskyYkADZN(m{>)*u`b_M?Uk%WQAm!Xw|Pe&!_0 zwc=sn848D@%0229pUysMyTsy7Y9-`5i-Hwaw#b z`Galt3vWry(0Y8>;Rr+fM28**p$r*j-D?Ll?lT{hIx)M@+0Lw?bB*f7iS7?n9PZ?A zY`n6=wm1Kd!zopr01|+a9{>OV literal 0 HcmV?d00001 diff --git a/src/main/resources/data/dishes/mayberecipes/cheeseburger.json b/src/main/resources/data/dishes/mayberecipes/cheeseburger.json new file mode 100644 index 0000000..ac1012b --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/cheeseburger.json @@ -0,0 +1,34 @@ +{ + "condition": { + "modid": "sandwichable" + }, + "recipe": { + "type": "minecraft:crafting_shaped", + "pattern": [ + " # ", + "KCF", + " #P" + ], + "key": { + "#": { + "item": "minecraft:bread" + }, + "K": { + "item": "sandwichable:lettuce_leaf" + }, + "C": { + "item": "minecraft:cooked_beef" + }, + "F": { + "item": "dishes:cheese_slice" + }, + "P": { + "item": "dishes:plate" + } + }, + "result": { + "item": "dishes:cheeseburger", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/mayberecipes/chickenburger.json b/src/main/resources/data/dishes/mayberecipes/chickenburger.json new file mode 100644 index 0000000..ca32c86 --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/chickenburger.json @@ -0,0 +1,31 @@ +{ + "condition": { + "modid": "sandwichable" + }, + "recipe": { + "type": "minecraft:crafting_shaped", + "pattern": [ + " # ", + "KCP", + " # " + ], + "key": { + "#": { + "item": "minecraft:bread" + }, + "K": { + "item": "sandwichable:lettuce_leaf" + }, + "C": { + "item": "minecraft:cooked_chicken" + }, + "P": { + "item": "dishes:plate" + } + }, + "result": { + "item": "dishes:chickenburger", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/mayberecipes/hamburger.json b/src/main/resources/data/dishes/mayberecipes/hamburger.json new file mode 100644 index 0000000..f13bff5 --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/hamburger.json @@ -0,0 +1,31 @@ +{ + "condition": { + "modid": "sandwichable" + }, + "recipe": { + "type": "minecraft:crafting_shaped", + "pattern": [ + " # ", + "KCP", + " # " + ], + "key": { + "#": { + "item": "minecraft:bread" + }, + "K": { + "item": "sandwichable:lettuce_leaf" + }, + "C": { + "item": "minecraft:cooked_beef" + }, + "P": { + "item": "dishes:plate" + } + }, + "result": { + "item": "dishes:hamburger", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/mayberecipes/patchouli_book.json b/src/main/resources/data/dishes/mayberecipes/patchouli_book.json new file mode 100644 index 0000000..f588762 --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/patchouli_book.json @@ -0,0 +1,20 @@ +{ + "condition": { + "modid": "patchouli" + }, + "recipe": { + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "dishes:salt" + }, + { + "item": "minecraft:writable_book" + } + ], + "result": { + "item": "dishes:cooking_guide", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/mayberecipes/pizzabacon.json b/src/main/resources/data/dishes/mayberecipes/pizzabacon.json new file mode 100644 index 0000000..6306a62 --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/pizzabacon.json @@ -0,0 +1,33 @@ +{ + "condition": { + "modid": "sandwichable" + }, + "recipe": { + "type": "minecraft:crafting_shaped", + "pattern": [ + "TPU", + "#_#" + ], + "key": { + "#": { + "item": "dishes:flour" + }, + "T": { + "item": "sandwichable:tomato" + }, + "P": { + "item": "dishes:cheese_slice" + }, + "_": { + "item": "dishes:pizzabox" + }, + "U": { + "item": "dishes:bacon" + } + }, + "result": { + "item": "dishes:pizzabacon", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/mayberecipes/pizzaham.json b/src/main/resources/data/dishes/mayberecipes/pizzaham.json new file mode 100644 index 0000000..c314e9f --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/pizzaham.json @@ -0,0 +1,33 @@ +{ + "condition": { + "modid": "sandwichable" + }, + "recipe": { + "type": "minecraft:crafting_shaped", + "pattern": [ + "TPU", + "#_#" + ], + "key": { + "#": { + "item": "dishes:flour" + }, + "T": { + "item": "sandwichable:tomato" + }, + "P": { + "item": "dishes:cheese_slice" + }, + "_": { + "item": "dishes:pizzabox" + }, + "U": { + "item": "minecraft:porkchop" + } + }, + "result": { + "item": "dishes:pizzaham", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/mayberecipes/pizzasalami.json b/src/main/resources/data/dishes/mayberecipes/pizzasalami.json new file mode 100644 index 0000000..1c46401 --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/pizzasalami.json @@ -0,0 +1,33 @@ +{ + "condition": { + "modid": "sandwichable" + }, + "recipe": { + "type": "minecraft:crafting_shaped", + "pattern": [ + "TPU", + "#_#" + ], + "key": { + "#": { + "item": "dishes:flour" + }, + "T": { + "item": "sandwichable:tomato" + }, + "P": { + "item": "dishes:cheese_slice" + }, + "_": { + "item": "dishes:pizzabox" + }, + "U": { + "item": "dishes:salami" + } + }, + "result": { + "item": "dishes:pizzasalami", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/mayberecipes/pizzatuna.json b/src/main/resources/data/dishes/mayberecipes/pizzatuna.json new file mode 100644 index 0000000..40af699 --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/pizzatuna.json @@ -0,0 +1,33 @@ +{ + "condition": { + "modid": "sandwichable" + }, + "recipe": { + "type": "minecraft:crafting_shaped", + "pattern": [ + "TPU", + "#_#" + ], + "key": { + "#": { + "item": "dishes:flour" + }, + "T": { + "item": "sandwichable:tomato" + }, + "P": { + "item": "dishes:cheese_slice" + }, + "_": { + "item": "dishes:pizzabox" + }, + "U": { + "item": "minecraft:cooked_salmon" + } + }, + "result": { + "item": "dishes:pizzatuna", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/mayberecipes/spaghetti_bolognese.json b/src/main/resources/data/dishes/mayberecipes/spaghetti_bolognese.json new file mode 100644 index 0000000..56119fe --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/spaghetti_bolognese.json @@ -0,0 +1,28 @@ +{ + "condition": { + "modid": "sandwichable" + }, + "recipe": { + "type": "minecraft:crafting_shaped", + "pattern": [ + "///", + "/G/", + "/_/" + ], + "key": { + "/": { + "item": "dishes:spaghetti" + }, + "G": { + "item": "sandwichable:tomato" + }, + "_": { + "item": "dishes:plate" + } + }, + "result": { + "item": "dishes:spaghetti_bolognese", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_lil-tater.json b/src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_lil-tater.json new file mode 100644 index 0000000..afca3c7 --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_lil-tater.json @@ -0,0 +1,26 @@ +{ + "condition": { + "modid": "lil-tater" + }, + "recipe": { + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "lil-tater:lil_tater", + "item_h": "lil-tater:lil_tater" + }, + { + "item": "minecraft:milk_bucket", + "item_h": "minecraft:milk_bucket" + }, + { + "item": "dishes:plate", + "item_h": "dishes:plate" + } + ], + "result": { + "item": "dishes:tinypotatoeswithcurdcheese", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_liltater.json b/src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_liltater.json new file mode 100644 index 0000000..baf3116 --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_liltater.json @@ -0,0 +1,26 @@ +{ + "condition": { + "modid": "liltater" + }, + "recipe": { + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "liltater:lil_tater", + "item_h": "liltater:lil_tater" + }, + { + "item": "minecraft:milk_bucket", + "item_h": "minecraft:milk_bucket" + }, + { + "item": "dishes:plate", + "item_h": "dishes:plate" + } + ], + "result": { + "item": "dishes:tinypotatoeswithcurdcheese", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_ltr.json b/src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_ltr.json new file mode 100644 index 0000000..b878e86 --- /dev/null +++ b/src/main/resources/data/dishes/mayberecipes/tinypotatoeswithcurdcheese_ltr.json @@ -0,0 +1,26 @@ +{ + "condition": { + "modid": "liltater" + }, + "recipe": { + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "ltr:lil_tater", + "item_h": "ltr:lil_tater" + }, + { + "item": "minecraft:milk_bucket", + "item_h": "minecraft:milk_bucket" + }, + { + "item": "dishes:plate", + "item_h": "dishes:plate" + } + ], + "result": { + "item": "dishes:tinypotatoeswithcurdcheese", + "count": 1 + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/book.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/book.json index 6705565..113e62e 100644 --- a/src/main/resources/data/dishes/patchouli_books/cooking_guide/book.json +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/book.json @@ -4,5 +4,5 @@ "version": 1, "book_texture": "patchouli:textures/gui/book_gray.png", "model": "patchouli:book_gray", - "creative_tab": "dishes.dishes" + "creative_tab": "dishes.main" } \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/categories/sweets.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/categories/sweets.json new file mode 100644 index 0000000..382c963 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/categories/sweets.json @@ -0,0 +1,5 @@ +{ + "name": "Süßes", + "description": "Süßigkeiten und Kuchen", + "icon": "dishes:ice_cream_vanilla" +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/birthday_cake.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/birthday_cake.json new file mode 100644 index 0000000..f063380 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/birthday_cake.json @@ -0,0 +1,18 @@ +{ + "name": "Geburtstagskuchen", + "icon": "dishes:birthday_cake", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:birthday_cake", + "title": "Geburtstagskuchen", + "link_recipe": false, + "text": "Happy Birthday!" + }, + { + "type": "crafting", + "recipe": "dishes:birthday_cake" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_banana.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_banana.json new file mode 100644 index 0000000..0143f89 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_banana.json @@ -0,0 +1,14 @@ +{ + "name": "Bananeneis", + "icon": "dishes:ice_cream_banana", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_banana", + "title": "Bananeneis", + "link_recipe": false, + "text": "Wer mag Eiscreme bitte nicht? Erhältlich beim Eiscreme-Händler." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_blueberry.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_blueberry.json new file mode 100644 index 0000000..2738a89 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_blueberry.json @@ -0,0 +1,14 @@ +{ + "name": "Blaubeereis", + "icon": "dishes:ice_cream_blueberry", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_blueberry", + "title": "Blaubeereis", + "link_recipe": false, + "text": "Wer mag Eiscreme bitte nicht? Erhältlich beim Eiscreme-Händler." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_bubblegum.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_bubblegum.json new file mode 100644 index 0000000..c2739a4 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_bubblegum.json @@ -0,0 +1,14 @@ +{ + "name": "Kaugummieis", + "icon": "dishes:ice_cream_bubblegum", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_bubblegum", + "title": "Kaugummieis", + "link_recipe": false, + "text": "Wer mag Eiscreme bitte nicht? Erhältlich beim Eiscreme-Händler." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_chocolate.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_chocolate.json new file mode 100644 index 0000000..8351a0b --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_chocolate.json @@ -0,0 +1,14 @@ +{ + "name": "Schokoeis", + "icon": "dishes:ice_cream_chocolate", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_chocolate", + "title": "Schokoeis", + "link_recipe": false, + "text": "Wer mag Eiscreme bitte nicht? Erhältlich beim Eiscreme-Händler." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_pear.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_pear.json new file mode 100644 index 0000000..90ee0d2 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_pear.json @@ -0,0 +1,14 @@ +{ + "name": "Birneneis", + "icon": "dishes:ice_cream_pear", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_pear", + "title": "Birneneis", + "link_recipe": false, + "text": "Wer mag Eiscreme bitte nicht? Erhältlich beim Eiscreme-Händler." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_strawberry.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_strawberry.json new file mode 100644 index 0000000..f4375ea --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_strawberry.json @@ -0,0 +1,14 @@ +{ + "name": "Erdbeereis", + "icon": "dishes:ice_cream_strawberry", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_strawberry", + "title": "Erdbeereis", + "link_recipe": false, + "text": "Wer mag Eiscreme bitte nicht? Erhältlich beim Eiscreme-Händler." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_sweetberry.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_sweetberry.json new file mode 100644 index 0000000..0be0f26 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_sweetberry.json @@ -0,0 +1,14 @@ +{ + "name": "Süßbeereis", + "icon": "dishes:ice_cream_sweetberry", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_sweetberry", + "title": "Süßbeereis", + "link_recipe": false, + "text": "Wer mag Eiscreme bitte nicht? Erhältlich beim Eiscreme-Händler." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_vanilla.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_vanilla.json new file mode 100644 index 0000000..9fa0f53 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_vanilla.json @@ -0,0 +1,14 @@ +{ + "name": "Vanilleeis", + "icon": "dishes:ice_cream_vanilla", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_vanilla", + "title": "Vanilleeis", + "link_recipe": false, + "text": "Wer mag Eiscreme bitte nicht? Erhältlich beim Eiscreme-Händler." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_white_chocolate.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_white_chocolate.json new file mode 100644 index 0000000..ccf6237 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/ice_cream_white_chocolate.json @@ -0,0 +1,14 @@ +{ + "name": "Weißes Schokoeis", + "icon": "dishes:ice_cream_white_chocolate", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_white_chocolate", + "title": "Weißes Schokoeis", + "link_recipe": false, + "text": "Wer mag Eiscreme bitte nicht? Erhältlich beim Eiscreme-Händler." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/tinypotatoeswithcurdcheese.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/tinypotatoeswithcurdcheese.json deleted file mode 100644 index 826bed1..0000000 --- a/src/main/resources/data/dishes/patchouli_books/cooking_guide/de_de/entries/cooking_guide/tinypotatoeswithcurdcheese.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "Tiny Potatoes mit Quark", - "icon": "dishes:tinypotatoeswithcurdcheese", - "category": "dishes:german", - "pages": [ - { - "type": "spotlight", - "item": "dishes:tinypotatoeswithcurdcheese", - "title": "Tiny Potatoes mit Quark", - "link_recipe": false, - "text": "OMG! Es ist TINY POTATO OMG! #TATERGANG! - Das Rezept funktioniert nur mit der Lil Tater Mod!" - }, - { - "type": "crafting", - "recipe": "lil-tater:tinypotatoeswithcurdcheese" - }, - { - "type": "crafting", - "recipe": "liltater:tinypotatoeswithcurdcheese" - }, - { - "type": "crafting", - "recipe": "ltr:tinypotatoeswithcurdcheese" - } - ] -} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/categories/sweets.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/categories/sweets.json new file mode 100644 index 0000000..88517a8 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/categories/sweets.json @@ -0,0 +1,5 @@ +{ + "name": "Sweets", + "description": "Sweets and Cake", + "icon": "dishes:ice_cream_vanilla" +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/birthday_cake.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/birthday_cake.json new file mode 100644 index 0000000..2b5e5f8 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/birthday_cake.json @@ -0,0 +1,18 @@ +{ + "name": "Birthday Cake", + "icon": "dishes:birthday_cake", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:birthday_cake", + "title": "Birthday Cake", + "link_recipe": false, + "text": "Happy Birthday!" + }, + { + "type": "crafting", + "recipe": "dishes:birthday_cake" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_banana.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_banana.json new file mode 100644 index 0000000..9942192 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_banana.json @@ -0,0 +1,14 @@ +{ + "name": "Ice Cream Banana", + "icon": "dishes:ice_cream_banana", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_banana", + "title": "Ice Cream Banana", + "link_recipe": false, + "text": "Who doesn't love ice cream? Sold by the Ice Cream trader." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_blueberry.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_blueberry.json new file mode 100644 index 0000000..525ba68 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_blueberry.json @@ -0,0 +1,14 @@ +{ + "name": "Ice Cream Blueberry", + "icon": "dishes:ice_cream_blueberry", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_blueberry", + "title": "Ice Cream Blueberry", + "link_recipe": false, + "text": "Who doesn't love ice cream? Sold by the Ice Cream trader." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_bubblegum.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_bubblegum.json new file mode 100644 index 0000000..2c06532 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_bubblegum.json @@ -0,0 +1,14 @@ +{ + "name": "Ice Cream Bubblegum", + "icon": "dishes:ice_cream_bubblegum", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_bubblegum", + "title": "Ice Cream Bubblegum", + "link_recipe": false, + "text": "Who doesn't love ice cream? Sold by the Ice Cream trader." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_chocolate.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_chocolate.json new file mode 100644 index 0000000..313266f --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_chocolate.json @@ -0,0 +1,14 @@ +{ + "name": "Ice Cream Chocolate", + "icon": "dishes:ice_cream_chocolate", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_chocolate", + "title": "Ice Cream Chocolate", + "link_recipe": false, + "text": "Who doesn't love ice cream? Sold by the Ice Cream trader." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_pear.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_pear.json new file mode 100644 index 0000000..73e9b8c --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_pear.json @@ -0,0 +1,14 @@ +{ + "name": "Ice Cream Pear", + "icon": "dishes:ice_cream_pear", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_pear", + "title": "Ice Cream Pear", + "link_recipe": false, + "text": "Who doesn't love ice cream? Sold by the Ice Cream trader." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_strawberry.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_strawberry.json new file mode 100644 index 0000000..58a5711 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_strawberry.json @@ -0,0 +1,14 @@ +{ + "name": "Ice Cream Strawberry", + "icon": "dishes:ice_cream_strawberry", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_strawberry", + "title": "Ice Cream Strawberry", + "link_recipe": false, + "text": "Who doesn't love ice cream? Sold by the Ice Cream trader." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_sweetberry.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_sweetberry.json new file mode 100644 index 0000000..38c203b --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_sweetberry.json @@ -0,0 +1,14 @@ +{ + "name": "Ice Cream Sweet Berry", + "icon": "dishes:ice_cream_sweetberry", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_sweetberry", + "title": "Ice Cream Sweet Berry", + "link_recipe": false, + "text": "Who doesn't love ice cream? Sold by the Ice Cream trader." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_vanilla.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_vanilla.json new file mode 100644 index 0000000..809be53 --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_vanilla.json @@ -0,0 +1,14 @@ +{ + "name": "Ice Cream Vanilla", + "icon": "dishes:ice_cream_vanilla", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_vanilla", + "title": "Ice Cream Vanilla", + "link_recipe": false, + "text": "Who doesn't love ice cream? Sold by the Ice Cream trader." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_white_chocolate.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_white_chocolate.json new file mode 100644 index 0000000..a9a7e5a --- /dev/null +++ b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/ice_cream_white_chocolate.json @@ -0,0 +1,14 @@ +{ + "name": "Ice Cream White Chocolate", + "icon": "dishes:ice_cream_white_chocolate", + "category": "dishes:sweets", + "pages": [ + { + "type": "spotlight", + "item": "dishes:ice_cream_white_chocolate", + "title": "Ice Cream White Chocolate", + "link_recipe": false, + "text": "Who doesn't love ice cream? Sold by the Ice Cream trader." + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/tinypotatoeswithcurdcheese.json b/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/tinypotatoeswithcurdcheese.json deleted file mode 100644 index 4b37c91..0000000 --- a/src/main/resources/data/dishes/patchouli_books/cooking_guide/en_us/entries/cooking_guide/tinypotatoeswithcurdcheese.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "Tiny Potatoes with Curd Cheese", - "icon": "dishes:tinypotatoeswithcurdcheese", - "category": "dishes:german", - "pages": [ - { - "type": "spotlight", - "item": "dishes:tinypotatoeswithcurdcheese", - "title": "Tiny Potatoes with Curd Cheese", - "link_recipe": false, - "text": "OMG! IT'S TINY POTATO OMG! #TATERGANG! - Recipe only works with Lil Tater installed!" - }, - { - "type": "crafting", - "recipe": "lil-tater:tinypotatoeswithcurdcheese" - }, - { - "type": "crafting", - "recipe": "liltater:tinypotatoeswithcurdcheese" - }, - { - "type": "crafting", - "recipe": "ltr:tinypotatoeswithcurdcheese" - } - ] -} \ No newline at end of file diff --git a/src/main/resources/data/dishes/recipes/birthday_cake.json b/src/main/resources/data/dishes/recipes/birthday_cake.json new file mode 100644 index 0000000..70fdc57 --- /dev/null +++ b/src/main/resources/data/dishes/recipes/birthday_cake.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "minecraft:diamond" + }, + { + "item": "minecraft:cake" + } + ], + "result": { + "item": "dishes:birthday_cake", + "count": 1 + } +} \ No newline at end of file diff --git a/src/main/resources/data/lil-tater/recipes/tinypotatoeswithcurdcheese.json b/src/main/resources/data/lil-tater/recipes/tinypotatoeswithcurdcheese.json deleted file mode 100644 index ed7a143..0000000 --- a/src/main/resources/data/lil-tater/recipes/tinypotatoeswithcurdcheese.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "ingredients": [ - { - "item": "lil-tater:lil_tater", - "item_h": "lil-tater:lil_tater" - }, - { - "item": "minecraft:milk_bucket", - "item_h": "minecraft:milk_bucket" - }, - { - "item": "dishes:plate", - "item_h": "dishes:plate" - } - ], - "result": { - "item": "dishes:tinypotatoeswithcurdcheese", - "count": 1 - } -} \ No newline at end of file diff --git a/src/main/resources/data/liltater/recipes/tinypotatoeswithcurdcheese.json b/src/main/resources/data/liltater/recipes/tinypotatoeswithcurdcheese.json deleted file mode 100644 index bdeabb2..0000000 --- a/src/main/resources/data/liltater/recipes/tinypotatoeswithcurdcheese.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "ingredients": [ - { - "item": "liltater:lil_tater", - "item_h": "liltater:lil_tater" - }, - { - "item": "minecraft:milk_bucket", - "item_h": "minecraft:milk_bucket" - }, - { - "item": "dishes:plate", - "item_h": "dishes:plate" - } - ], - "result": { - "item": "dishes:tinypotatoeswithcurdcheese", - "count": 1 - } -} \ No newline at end of file diff --git a/src/main/resources/data/ltr/recipes/tinypotatoeswithcurdcheese.json b/src/main/resources/data/ltr/recipes/tinypotatoeswithcurdcheese.json deleted file mode 100644 index 5f62082..0000000 --- a/src/main/resources/data/ltr/recipes/tinypotatoeswithcurdcheese.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "ingredients": [ - { - "item": "ltr:lil_tater", - "item_h": "ltr:lil_tater" - }, - { - "item": "minecraft:milk_bucket", - "item_h": "minecraft:milk_bucket" - }, - { - "item": "dishes:plate", - "item_h": "dishes:plate" - } - ], - "result": { - "item": "dishes:tinypotatoeswithcurdcheese", - "count": 1 - } -} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/chests/village/village_butcher.json b/src/main/resources/data/minecraft/loot_tables/chests/village/village_butcher.json deleted file mode 100644 index b8f337e..0000000 --- a/src/main/resources/data/minecraft/loot_tables/chests/village/village_butcher.json +++ /dev/null @@ -1,111 +0,0 @@ -{ - "type": "minecraft:chest", - "pools": [ - { - "rolls": { - "min": 1.0, - "max": 5.0, - "type": "minecraft:uniform" - }, - "entries": [ - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 1.0, - "type": "minecraft:uniform" - } - }, - { - "function": "minecraft:set_nbt", - "tag": "{\"patchouli:book\": \"dishes:cooking_guide\"}" - } - ], - "name": "patchouli:guide_book" - }, - { - "type": "minecraft:item", - "name": "minecraft:emerald" - }, - { - "type": "minecraft:item", - "weight": 6, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:porkchop" - }, - { - "type": "minecraft:item", - "weight": 6, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:wheat" - }, - { - "type": "minecraft:item", - "weight": 6, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:beef" - }, - { - "type": "minecraft:item", - "weight": 6, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:mutton" - }, - { - "type": "minecraft:item", - "weight": 3, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:coal" - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/chests/village/village_fisher.json b/src/main/resources/data/minecraft/loot_tables/chests/village/village_fisher.json deleted file mode 100644 index 7369389..0000000 --- a/src/main/resources/data/minecraft/loot_tables/chests/village/village_fisher.json +++ /dev/null @@ -1,123 +0,0 @@ -{ - "type": "minecraft:chest", - "pools": [ - { - "rolls": { - "min": 1.0, - "max": 5.0, - "type": "minecraft:uniform" - }, - "entries": [ - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 0.0, - "max": 1.0, - "type": "minecraft:uniform" - } - }, - { - "function": "minecraft:set_nbt", - "tag": "{\"patchouli:book\": \"dishes:cooking_guide\"}" - } - ], - "name": "patchouli:guide_book" - }, - { - "type": "minecraft:item", - "name": "minecraft:emerald" - }, - { - "type": "minecraft:item", - "weight": 2, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:cod" - }, - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:salmon" - }, - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:water_bucket" - }, - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:barrel" - }, - { - "type": "minecraft:item", - "weight": 3, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:wheat_seeds" - }, - { - "type": "minecraft:item", - "weight": 2, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:coal" - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/chests/village/village_plains_house.json b/src/main/resources/data/minecraft/loot_tables/chests/village/village_plains_house.json deleted file mode 100644 index d9cd445..0000000 --- a/src/main/resources/data/minecraft/loot_tables/chests/village/village_plains_house.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "type": "minecraft:chest", - "pools": [ - { - "rolls": { - "min": 3.0, - "max": 8.0, - "type": "minecraft:uniform" - }, - "entries": [ - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 0.0, - "max": 1.0, - "type": "minecraft:uniform" - } - }, - { - "function": "minecraft:set_nbt", - "tag": "{\"patchouli:book\": \"dishes:cooking_guide\"}" - } - ], - "name": "patchouli:guide_book" - }, - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 3.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:gold_nugget" - }, - { - "type": "minecraft:item", - "weight": 2, - "name": "minecraft:dandelion" - }, - { - "type": "minecraft:item", - "name": "minecraft:poppy" - }, - { - "type": "minecraft:item", - "weight": 10, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 7.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:potato" - }, - { - "type": "minecraft:item", - "weight": 10, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 4.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:bread" - }, - { - "type": "minecraft:item", - "weight": 10, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 5.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:apple" - }, - { - "type": "minecraft:item", - "name": "minecraft:book" - }, - { - "type": "minecraft:item", - "name": "minecraft:feather" - }, - { - "type": "minecraft:item", - "weight": 2, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 4.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:emerald" - }, - { - "type": "minecraft:item", - "weight": 5, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 2.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:oak_sapling" - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/loot_tables/chests/village/village_taiga_house.json b/src/main/resources/data/minecraft/loot_tables/chests/village/village_taiga_house.json deleted file mode 100644 index 13370fc..0000000 --- a/src/main/resources/data/minecraft/loot_tables/chests/village/village_taiga_house.json +++ /dev/null @@ -1,169 +0,0 @@ -{ - "type": "minecraft:chest", - "pools": [ - { - "rolls": { - "min": 3.0, - "max": 8.0, - "type": "minecraft:uniform" - }, - "entries": [ - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 0.0, - "max": 1.0, - "type": "minecraft:uniform" - } - }, - { - "function": "minecraft:set_nbt", - "tag": "{\"patchouli:book\": \"dishes:cooking_guide\"}" - } - ], - "name": "patchouli:guide_book" - }, - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 5.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:iron_nugget" - }, - { - "type": "minecraft:item", - "weight": 2, - "name": "minecraft:fern" - }, - { - "type": "minecraft:item", - "weight": 2, - "name": "minecraft:large_fern" - }, - { - "type": "minecraft:item", - "weight": 10, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 7.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:potato" - }, - { - "type": "minecraft:item", - "weight": 5, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 7.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:sweet_berries" - }, - { - "type": "minecraft:item", - "weight": 10, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 4.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:bread" - }, - { - "type": "minecraft:item", - "weight": 5, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 5.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:pumpkin_seeds" - }, - { - "type": "minecraft:item", - "name": "minecraft:pumpkin_pie" - }, - { - "type": "minecraft:item", - "weight": 2, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 4.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:emerald" - }, - { - "type": "minecraft:item", - "weight": 5, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 5.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:spruce_sapling" - }, - { - "type": "minecraft:item", - "name": "minecraft:spruce_sign" - }, - { - "type": "minecraft:item", - "weight": 10, - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 1.0, - "max": 5.0, - "type": "minecraft:uniform" - } - } - ], - "name": "minecraft:spruce_log" - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/dishes.mixins.json b/src/main/resources/dishes.mixins.json index 8575526..fa606c4 100644 --- a/src/main/resources/dishes.mixins.json +++ b/src/main/resources/dishes.mixins.json @@ -3,7 +3,7 @@ "package": "eu.midnightdust.motschen.dishes.mixin", "compatibilityLevel": "JAVA_8", "mixins": [ - "DefaultBiomeFeaturesMixin" + "GenerationSettingsAccessorMixin" ], "injectors": { "defaultRequire": 1 diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 97ae0a1..8dc5c02 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -4,14 +4,14 @@ "version": "${version}", "name": "Delicious Dishes", - "description": "Adds many cool new dishes with 3d models! Originally created for ModFest 1.16", + "description": "Adds many cool new dishes with 3d models and animations!", "authors": [ "Motschen", "TeamMidnightDust" ], "contact": { "homepage": "https://www.midnightdust.eu/", - "sources": "https://github.com/Motschen/simplystrawberrys" + "sources": "https://github.com/TeamMidnightDust/DeliciousDishes" }, "license": "MIT", @@ -24,6 +24,9 @@ ], "client": [ "eu.midnightdust.motschen.dishes.DishesClient" + ], + "modmenu": [ + "eu.midnightdust.motschen.dishes.config.ModMenuIntegration" ] },

  • &r3)@&3Id$JWg+Wr zHw(S>tfdd-{^bef|GWC(tnPXq1Er^|!_;L8QA@2^14yM2@W1YYVdC*EO8_)U$Uy5p z4bEOs2?J8?=(#u&RtputVAQRD+`dX@9}$i#TNhS&AvBSi;R>!`qv3-rL~N=$$0noC z70t>B7jpqcAvBZpmPq(;JPWZAw}4!Ah@{|5%eIICPFgI6TN8uor(%leMq z>gF=tLUv8}>=M}Ltc%r#CiJ`i?)SylN5m>bzb9iWhM4B=?PZA8Q2HnM;Pdl=1E%Fz zJ!}DC3DRf3rX0wfx&>Pu*#6uw^a`Fs2vaf{T47cIIV(8@&BSDmX!_W?V1n`(F^35# z6Aa_|eM_eQYW#`YL2d}?NFaqW$tFQ!aU=-0Cfqba5pMq$b2hkUoUSN!mU>Zd?pQ~Y znmg~?HE0iCkY}f-h~mi^InY`KGWv>~B6?IzztqT)Aoa^%*{jIMTY=OedqC(X(ly>1obEFVJF0nz$AK_Gb1a zVbOM1l~7Tm{nGDv3}T?L0k}abHw7kx&xc`nuC)O(>h=1C3m49vJ9j<>qSMpU{^Y+~k#6DLocToq3BUyFG9>EjnK%+N=2)Y(G2lhvF1*KrF-VyvqmPWybvRg7sJZ$1nozfE7|tJgjl`nBLam0i>m1>m z2YQpaGcz+YyDUhapPz57^(Cg8gRoHzu`LhU`P8Y?=~;Xtx#EmIb@CKAbLI@*?CjaI z&IBj$7o?sFViEA4dg>`U(Fd42WS@?JsMB&;q|jRC@D&=&F3EdC2JRwT8yAabv*Eqi z3E)yH1lpam6fD0fGj)W{k7zU+S6_YgPyh5!|L_n0us>S9S}?)>?9cw}-~QX*!|9s_ zN~DS^`i2{Bc+Y#@^OBdmB#5paAN=44-}k=vjgODZ+hntIb2C5i13&chKmW7WUVCkj zSS3F5na}?0&;P<-fBdhlkAf>yD{&=_!yoSskK*REZYvdU>B51X$n@4$!EqF4DGTYsD&VKdO zER>ykMW?-`S;lb)&``0XNj6h&)L;4Xm;Rlf_}g!O)7O}`)d5%a2mj%Z-v6^77^_w& zp5mtGX21FE-}sxq{!clh1ff;p%-OU5`uBeC;K4)KOjONlzn-RMR&BlIN5h37T!sh) zSu9Z?HPIshnqt?sZFk&$`=P6^w)EBEp(95gdgRgBT8;K~PNUg;&8uI1`13`a`m2wB@{{ptE^PIlUhHrCI^^D+J74*VSG@AouQuMQ@yMf({f9sLqr-;}dz8^~ z^ym|en7{MmKkl5>0%!T3{^*Z)?b>C-U=V8aPV3IwZolJ&FAS_z;-N1+{Hf1;CN>Lu zs(rh5-FC|h4zBg57yj(O{r4Yw&yP-DoTgz5`AVy;?`txX*sJL$mzvFDzEEZ#RVp01 z_Ub$Dyz|JBBlq5WFJqFCgOem28yjO4@iB%%2vySv#uY9aJ_5esAYs>q&51QY;C|FblU#@Wc%@y1Y#s;hL@=^yFp9;0-7x) zDtEj9-ru{!>6D0shBGk z7>O()?6r0GD3r5Cm^qY1OM1UBycy+duP@y?GdoXc+PvXZH@)ddou1so8VPF@t{`JW z#m-3~mp7-CvlYP_zin#jhMR6ae8Y{&b;IEs4if^SZ@BJ;!?)gc`^EW%FWhra$hH>P z7AIZ_Zym4=1sB?M+i_jGo&oIGvE%TKH!yoU-A-*`q1mXnTMbUuc!N%>-DtHM^~U)N z(^p-!|9jv4z3+ej```G+H?r^KIJvN}zyg3HfG{V}2d2LUUa!aUKoMloJz;wggQKyJ zJhhEAyM|;kmYGDBsM+KMBi6>R;Gv96Z9d33#)>>296mrg11BNk#*gUe;byUhkDy4EM#Erv0 z>Vgvr+13K{`+XNp6Vld%WC7sf5J2c^w<;JnK%?<7Xv0-B$t6 z=q4FMh)ie`7ZC?`fG4aLroRuaYRw8AW>NHy@|vMx689S9)&WcILY@Uiw@uGJd%-2aGKsf~^^Wp%(M zhLANyUv)g2CZDAeC^96r6@X!cZd)3Q_lXTe5u|-Q*P4*>*Ieqzkg#5))dtOWZCC*t z1NP>J4jsUob2wyf6qqO2tB=U6ZFE}|B6s}wiU0DS|I5Gl7ysg8ANv?90rKALHlmgs zha@39Jw08o*V(GlWr451HfQviuAb(!8?|9W?=ns}2RPHqat`!*I=&C+O2e74)GY|N z4O4yTb=p$a2z(;PHb0=SXxrJ&381(6hbTeIF5L(sUKdlL69S!0$b#=(F6iS>EirPC zYei7i4|juHA#TG0rbZ`a>B&qsG1@N@vezNK)9r;HCQ$3?DIyLFdXckdSrdW{G-8Mr4Qe9t_E>9w=D9l4UXMo8_Q%Z5-5* zR+kNgbf&J2HF(_^8yh=t;K0=ODdudmKHq6J+cwc#cE_S+E}`CRo<4K-Q=j_eAN;`| zeEQR$_Geg_=JWQD0(-BNuULc+D&Mg&A6YZ}!&F*!4tle_Xs4FeWvgHI_}K>08P8Tn6akjPu}^o~YNG z=o>LomxWrvmPfDZ5aR4YMqW^hp)Z%#>3ZN$7H|ypv_}V>g%q%_WHxu-*DrN*I$4AzJ2Z@uHL_Y{~@J{ zCL9KQW*1`&2Zif*?++bD9hcn&g3|a4P!o*=xgwN3VfMZ91$c4aoTukOl+D2_AM?@{e zq6_FdCF?M!CEJ*iU{R_qEPVb8U;N$Q`+YGpnOduP$8ER2_s4$Z```UN(zSY^?WM2& zs|IU=UA+=+VPXCi zFMsjh`LQ2*^VfcLC~q~;Q$YXmkKg|bzcf~@*p?edC z{mM6e`zv1dqHlQ9SM1!eO(*oF$MaI~8*~ur(|#m;nFqada^jBLZ#{JNTE>r_0($h( z*;+k5@Wk=(HLt$w@ZmK+1$6Pkg$Evd@X@1B;x+=ypv7BHe}^VzVjg+mfgMv*KlUR( z;+)mukw+i>4<8MS*Rvw7zow{4xLfKHz}b^m?$)#}Yt zXU|SnN~Lm%-Twmndbd_{S#!l6A80XWsF!W(BH@B-k{E)+$V0W#Q^mh`%9>;h0M;-)cd z;}?LOeI8h=&98F-pxvmrx88=}^yxGI`rrQUFaFZ6K(n6M0&v^<7l83fN$U?g3%V?y z3x@z(0JMc?ucTWkT)_%H_@#)BGp1Hew}#v5-uapFX^S|#d5_yRzZ8b`(O zKiO*j66S)_Du5Kdyl}LMRUu zMAispM1qn{bIQQ*)=RePN_7rmX!=y^-c-!+34?D^LUGTFR+FOZ6N z(X5YgX$niHT?(CEp{0k=a1bSyUUIM)w>vFVluAW=lB8HF<^2>&nB!oo?_ITe-8H|f z&W^FgVy;ju6iWq`oKgjPJ(J0XU#pwRec`^x&YYj7NkhVFpdn5#NYx;m?+C2)TwEI% zf{Rz+Z6N63Ks|S{3C*$|FbtUZaqe%F3t;+(v1OnjLbhMN%M>)9)uCy)n8U1-c?o=N zuuOJA_bmYAF^NUEB8L|oM3)5_omip#vQW`xx-PG~Sr67Z5R@HLaXX2@TWe&grq+OF zq)fEZ%aoSq@EabpdpW`l{& zU}4rC+FL8g?^^WN=2I?TSVwJTOCg_Ui}%I*AH8s4hV|5%bJb8Cmxdc0A{zp%PLh^BIEQfY8e9MfL++F=FV$g!D}^grA7p@s zlpYs9Ly%YxP^*n+xU;5fD?vB-B8XAvb+ss&?c@Z|1cT;eOJRyRV(7&VY-U&sTJ4rT zUP^9ITDg+gs}_#LXXL;0s?=Z~K{H#0l$V>zU( z7}j9Q8R988e+@dHEnHauoE z^_?<$cU) z5ZE%zGGHr#009%#Qn^m^^ok+2Jm?R-u^x3;)zZ6-bbIT`V`omBKA+E1g~d%okh>Jn zz%^1nX_Ix_mwPsFWf^!*pw(*Gy`}KvPsGTfxIAo>j=+c$z%Vqi4ND0;1E6He4|W8E zq_x58qBbx%bBjS!ls}1y>s_E!OHF#MBOs?6Eroos#LmB)&9D-5v)O#HST0v5w@vNY zx3_5DZv+zVUjW?oCsA7i5>fxVYGgC^$unR9kit&*S;}=)8C8UwSdN`IbNcK>b9}S_ z%gf@i+9fXuuYQQ6U^aWwN>x3(pb>nv_hle(*MU(B$$FZ?^j(47{PEEh;t7U1mxSvX z#)uPuO$x!8z(pN_^^5~^D82ve6Oz^j&re8AaWqD6xnbuW0qhH$#MjyWs8GH6ugC1| z4r8m+Y1$q>mn-PoUd1w;3p3MC9Y29I4G!3Y5Ml=M)^36D)BuaExl^o?nL@FY%jp}E z($me@5)%a00%_5JDHaP)Jbn7%$B)m~_3kazUKjmNy;pP~@LVHhEQwLX5L%C|&jL1f z0Z3ocy>_5ru~R@`KmWiEtlidw*CC!lXqtY6wAG+*0azZ4@<2WN*gBRx7oodAx_Y^M zPCo}RH;+Ov1>UVJ*z?%*Ke2=meA{y!uW(HgOe;WP+y8)#s$ zDdY;dY(d^>eZZ=*v8ui(qo)&dj~+e#xqBXl2+1Zu_+0ee&jZjSjI!t0y|s-6!2A)4n%slWR>P-=0Z8HJ`NiMuRG_isCeEC!_ zFTyPdvX_FZig1o6tpjL?m&F6ty#gfgnmVDux0Nv1A99CluQd%uf5tsUTt>U0oV-p2 z%;a9S(QICvo(aDSY0ZKxPTwsQ0{d!Yn{k>N6?E8JqhQ04l4n?JO*Wbf- zX9|V(fp+HHh3O}coeD__tnNUCQ3I>Wh>fSog!vL!gV=K8=b3~r1AeJH*9U8D$6~(# z$n|Xro=c$Cw$suaOpiKmmtnYMgbTxra84S1{@t?;BP3r6K{|nRJZT+3gItnb0pf-d zHUKu^eULe03n9x68>_;lrm%30P@ClocvYOX{I%ZlQ!EwqC3XLZR zjBtH7hl*A!)wzYn-48tGLubfPHIKO)8R9z(5E5f@KeHd!L02GbU^{rjqcC*M^QVoe ztW|vR6zhIz}~9YVTfgW`1N)! z(<|icMdu|}0DT`ho9)=m^LD#c>$Dqr)`nibhr_p9K{OjWTlQ;?YXc^5G|6kT&RWv6 zuF#HeJ)Mk>E@v2yxfshN%I9b28}~o*)I!aEeQESy#t;DkYw>`Pm?Wn;TNY;GbHL6O zB5C>VdbR}5Ie4uhn7Phj>@hE#P6K`v){sp=)cL@pX-KK3c^r7QVMIr{6kIHgkgz^r znp+40OVIW(km~?CZ8`DAMdy|pTvl@@t*)ZiV<0`!)oaSNr`KrEeVkUiQ!bY|7PMRK zh1voR-d_DyXf*0-c|1IxU5_HLXlPfSvtg!@PTM~>UIQqLDzXYu zv~E)s3al&?84&!K_1RdnI zFfdU^pyUeN=Qz{@fqY(o$;G^L-%Hh*9cqE4+rU$8v<8puoRB<(HBQ&%L8*b-I4o0# zbt0vC>kX}>A!X!-SjQnkI(0us-Wvy*%{3Z&HF>!rzYj4pGu`R5ckSB6<{#0Hz8Bo! z)WBMh7$Jv3&Pt^;RvlycWF65@9Iy_o&t)@m3VQu$v0kr1mx_IFDqKB!cC5%}^LB*E z^vdPZ-aR{WMZMaZHVsnC!iNX5iNHC}EnH6C|M>>rm@+FF!_lGp8sGx!hi>?y7Yfx5 zv@ZkCHWH);6^7-7R|^#O6DZ#>{fVg?Y4AosCjfnn$=150A79jDUeDr6=1!Y6fDN{8 z{ugktl}e>*_xy2>S`x;_tCQQto2`1SHqS<%El7_oNSi^@$@lC&A!AZ+63rBf`h|*e zsi>bF#G%?7L)X)Ws##BNI$tW(>Wxe`R~@Uar@k~FN1b9pkNp%1#oKN^{A1tuj(_pN zpZ&%+fAuZ5-a0lufpQ=GOG9IxaSf%WPnLmXz-(z?V!U7O%YfeecV#hn?f}0}$Pfh# zK1LlJ&B0N_Ps21B&&U85ChFN;gUK!;JkbZG~28QICcE@{K5im{N*ou*<0WG);sUK zLtanr0_Zc|9NFwABK6se9!|xsE+>OVv(eFwcDjbsgnnx`l(kBjhHSoAXf~VmMw4}^ z-R{iJ&XE!%Ru4ujKRhb zWuOAAh3Q^?0I4yVj8_9u=L3(Xp_@vq5>Za9A)z!zreaW9gO}85wKnAU0DkG0{!jZo z05t@9P|l7O5B0$h{-f8w{k|q66{|Ntzwm{-@BZ^Y|EL!8T&~t= z+a}0> zf?IF-{O3P^_uXH}cWLcTtJP*-k=4uMWH-kFjs)1L+yCq!3VN)F0a`O}~K2fs!akB?8h@P#jY?1?A8?9Q8h^Pl|^<30$j5|2Li)VqG< z7rybWZ#sP4!CP;>rc%nEI(6pE>C+c4UYwtsV|-3cO^r{Cv(nH9w!8P9N%zhmeD2X9 z7F+B)s9oE(-EsTvhpxWbl2(Vs-vbCANBQpoyz20EYyUlf`}KPOM+*g+%9wLLNc-zj zq4dB5_pkH!0RHg9AHM$Z_0W_;XC0-`Ty7n|2XOK~{n1Bu?%v%$YXWFzM(mxpZP@Pt zu=p2qxowk^lT+KAGXVQ=ivP=v3PFCU%b?2UvU4-DPdxF&-0a-zUiaFUzU-v~KgqB{ zpz4}yt~q=5tS?S9tlzC+*FwvToD@DBfj1o?oX7;jO{%4DRSSS)Kxte69HbI$G#XT3 zoeRKk{nl?MKM11*z}G+;;)O4~^MfD!AnhAOSC0>V@Ymk=zKvV}{^oB!^Zxh$++ThC zuXSIY*1%Am$kY^m5OXFw=?w0J_OnT8QU((U{i?Wrz6w>Hw!WwZkJh;T_S@e3V}JYm z-u=CjSv@{~_r0(9sy7$P6*fJ^N_BGkRHcw_TsS{FH_Pt6(W(~;#ltsTf7OAjjvYIG z_U!3QOP_(_?lA^~+%qu(WnNeQQYQh%d!d-m7Z;kXSHAqEKlS53`1NmE%MZd#&&>Ye zAN|SCe&E+i<FSAx@L&i$J|_{clH`7Nz>>)e@h zXU?8If9~Ae>?~7=9-$K3w{IVxn4pRdt0wuDn+1pw#)r_gvtwx)Tz}Pry5Oeg-bPiz}&Ic|WX~N+8Bj64oBqVSSxgsJTI0svu z@TB#?^?3b3;D*vdWNq;5t{*_-0mNDl!fxL#JuWh$9Vo*d!Uss@bYsOY-CReKl+eVg zVmJI`vFp*2!HHt6pnE#Kd?!=r=8J{O_|&eecJAI^tycB&g=}tYY=W|m9)04opZo0T z(a{_$A!j(Z?U3zIYLZ=~FL&APSRqFebs^)+s`1sZ?k?p2dff*KX}I z4~CO<-v-zm#=KoVB-R0RgaIGhc_U#x9Ol2B04kNrE;b#bF0jL{OJeu#-TSWEw|DQJ z9ou)@{DPZb^x_v!ZnIw@U5EW%cW(rToS=cJN|fp8t(0ynXv-b4$Ed@_0DPc^CW0aW zfrRF{oi&`}%m|NqW{30B^o9e?)H$UeV!frMvnQ4E*c#zRI?Tn$anny}5J$|dces3n zOu^^kTlG|B-n^3Z0EENXT`QDT@BGmV66$RD8_fmwKJyEd*=lxL%@$>=DL51tiwm`R z{6C9;`FedG;NwD(UJuLcB|_OwS6>NkHrvgH-nyXM%WDN=l5(hNyVJS%o_kK6K2@z& z)>GeRv-Q}ckKcFCJx@IL*xcM492!&2I0Wko9lxl!oi(-9fa8_LG8Y3b85$}D&q5_E zTocIJU)F|Td8h0{Dn!-|FUxeU7qq8cQl(Z|@1n9Kk|LIbcZz)z=hE;2##Ws+7$2)f zr@Ce^9i%ha`|1lkz22Asf(c1+l!6SYM7=neAUKWW*y?<__0$<6?x_XhgmN~P)1%Ki zyq>fvVPMJBK&&6B9$K$btfI5Hl5U_O!yjibg8!0r>r?d+2=Ft^gc{7(;H|d z)gR$p5AvCIG1DF^w91`}GsnJk`tb*9_1RvxsW<1hTisSWOB*+Pt+{5gs|SxXcv|{a zFnMKjHiw626=0xsNXm3`g-kBr>UI}0y?PEmvyLW2U8_OmtL2I9?6_uZaZXWhicwiE7508b6lYk;-0&bHRv zp`DkQ`*CE1_@z)Pml!{o$60c0VuE=U64nI9qeht~Zt%SfJova7oD5T0iH4Y}@jQf} z$HsqJ06H5#4F@ErRd^oH>``Sf5cSZL2K2flqiUT`0nyW+{`9B+{Leo+Gc&`K^kTit ziHV7C{^qyee*5h%xdwdjga7D#@B5ibMJFk0&APJA4}p&yIr1C7@tgPDbFXgf>xIUH zUc;cavCmE|roVPPS1+4$Cngy@X^vLCaAEq$gAZC8XK~xN-+t>){Me6t-}ioxWnMMD z^yp(h{NDG|7dd;Rhthl9POt5c^l0>mi3JRl;M#)6giD$?J|TiOZ|LIsLytUi;o=20 z&CPc2)vtKfPrdg&Z&}-iz|*t;=|BJXpa13m-`LoAzEo(z&^U*m_s^;+$TC!Ton>0|yB5EWUN24t68F<(ar2T3{Av~eWBjVerD9537H zSP}$GlA=I_OJdeK7Xb9k&(F`!&YJ$dim|%v-o0ybax%nM4}T1_T&_Z6ZN0wm13&PC zKmYSTx8?<4dV2cNM<2a-@uKO&+L1k>@w7OmBxW)9F%DaB(J(VJ`_Yg6rXJ+R<^ZC2Y%S)q*q$D~E=T47#Lg2~&DKrNEtwsURZsCOs z=l{jO`mN7=?z5dPXSLp|U-_z^{)r!X%bUJB$gKu5Gjo6Vkw5)~U-`#3-SmQ+Zn^c* z$B!O)=+STb+OPUoAN)BVX=?zdt*4)Sl5>{^WYXk|$Rf~Wlaa1kgjG<4^$jA5q$L@F z=Pq8nFgGuky|D{`frHv>UUk>u!)sgsSi0w!Jacm+YZpPw-~q-bCQ6HM$zB~cd;w^+ zn&;1*Gtw=$36cPVtLzcR#&j}U6MO++s}9Xki;-W+<#ukL+P-~<3-lwFPUzENIUrHg zof-X32F|%$sa}2cp|$N`@Siu_aKrKA$EhuD*N;A-H_e&roM9gj!iVS6L_>X4k25|! z2`IBoZ8`JRo&X@EBUOe;^_A+;^`8JX6}|v)0`Mpc!1sUu5B$O}{QR01fDH!=z;FE4 zhyITb{30#Rd7{y5-gfH?e*8z@^L_7L;|XBHF*`f=w}0ZN{_CIqS-s7)?cDW>SH15i zf9&hu{52tYHHZtqi(d5NuYBF>zi`iefA#Ud`MTG=>UaLh2iCj*Y${k??!Etk`@i(1 zl6j&{SOA)@dG*>)0M8gUd;!>Oq!$3TI_-Anz@9xXy5o*L`}VoO76A(Yt;zzx2_R=n zh&y@_t(Hu;&zzYZenZTsiTiMqS_G0#AdhE8CT8gqbtf)&Zg3`m4-h7dNdv?%EbCT> zSIX%~Y!TG!b^1x~>(NV@OZIs(*B0`IHCfnZgKRgN?SAtLc1febfXQV$z20L_JpPGK zed^&yA8B>kWqoBKq;EAe8V%|jhkxK+!E*%ipLV%V!`p_0Ee6cP?_-{ivFL<-NADpV zXFBZ}hd~kxfUg;r!|wWeHV3Rg8A85f0RSOxh#V(|;bL1B0~PeY7H%O}pXjrG`@lc1 zdo^3FVQt9i!6kiU*I@t!{wkqIK)Wm?h1x><$OB(Ged-(?M3wzM{T2k~QFB)17?nSH zJ|gj@&nehM(iP%c5)3e=z}VQ>`1m-4Z`%unLZwoLY2V<{@RMigUjUqTxE=^r3tuqO zbl-N8xQ9-x8E(XL2#n_f_u{5>OTf+qX~18J%jFn>Fd8CQ z1HxG#0y(+=1Vjh+Mm#o%=YOi?C9p;({=)-{Bz zzXSbTg72j5!*ai#3rLJ!^KgA8;Li4|zxws>eCIn~@PZc*btjAihQKqF%X*zJuDsc7 z`Z#odt8tltsAUN+ydxJO#|Zyic5ndzw(1Bmr-NvqMlArt90$UI+G23SGz9dnco{$R z*~zmH9DZJdw43qoU2VNRCIcjwEf%u+6&F4Fu+~F>K1j&)a+T~WUv~RX{pff8*!R8T zjbHW3Ls#wg@w%0v`CzjKdZ}5kA}}5qj?WPXnnLuY$@Sc+!4_Yybd#o=`Ru1Z```cD ze}DR^r|joh3z~8n`FbC6fZ^u^@Db=^(&0>q^bnPQw`kvI03fD$W=EQX0Ek3H%szl& z$t{A!TFirRdW8MYBCt#sF16R`>6Ob`{INSEZxt{+irIWIn=AIRY(N5cwP?56d-v@4 zuJ3sBcYpg^zU7;~=EZm1I6pJ}^wY;nTkrX?k$!t1 zZmyoK==T2i|Ng5#`tXMzedJLhc;QaFgEuafN`4>!5Nzjd^vThO%qgV(wj)OS766r& z+VZ>KkJ+4F3JAE8h>);V;TF27ZtRxZY?@*EQkK3MO6c*e)v)w?rjY9uioJ3rQ!4k? z`aZZ;vwq#d-9Pgq?|S7+Zo6>d;v^_Z-7= zeqsxN36xBtt-fB-lG#kV8@~MPckKxoW_|-FdTg9C1kvS3pay6^`gZy*Avco(%s^er z^~AhxmNO%<)!_9tdxgl^Lcky)ug7D$Sv?Meom;Iv^LhnvrdTSDPZcM&=Zb52^DW3_ zGo5zp?78!gKlb>2_ul)^ks}u_T+kkPYtPV40aXrHU|hjQf>xz%eJW`-=}$=7V$h3! zibelw2rl04+v|}7qS5t(vf-6`DlDV|C-CL*ItJP{)TP{}%dfj?~ zE1xgo{W%jLz#Q>uvSvp;_&oqvA(FtC8i(gu25~t8&WXgci;sTvW3PJEU0?mxU&HnK z*S~@Aw}1OX#bVh_1wn30AvvJRzN8l{VXFXpI+;wf-EML~37-V4@fMKZ)4Xv0JmZZh zni)$zAh#;i8y!7Jy(I_F6)XkDlrEcH{t}el79D1I`S2ZJPRA{M9Skr*I-L##A>N-k z0tfhfS*?rcy9ETuA3-u4!Vq79YGlabW_cFZ@T}wP*|VSi^d~=I_>|$Pr=H?Gg?U@V z!ckBI;`#joVc>2V&~z-K`C_?HC}(m71|fEav{k}8f^i&a=Wkimx?{y`{i@;lWWTkHl{p2iY2Pk)H{pxB7jWJp8u3L06t%wwt5JjcO+agjll(A z03n}YAesh>obX(ZG=Gag3uOwy(B$*&t!AyBi`U*n2I{iWx}{9Ss#2+1Dvei4)k3a_ zZ4AkfwkCLYgvi!Lt5+P)P2X1j#LcBo?I}FLRO)8ftgWMe7=ByzYtNS*Qe#ZBDv(ET7z{N~F z$ODgVCCH>;oYjah&4Kp1Y$eDrx?ZqfF?4f7;#PpnDe9@@T*1d9jp!+tJ*a3ox3ItP z$nE97dO`71*XF;N@73Dfbv(0_%%&^20tdUkHXD9>^|E#c=I&Vv@Cs>%Oep7IbYw)c-1V=jPgLe?Pg8&e#HkK0voV+~5eSK_6$UA#GlugE!bhuqmI*7V!f4PP@}; z>qQQn2I5R{&+LvGP9z8i;8{G$iHN?}K?BbKTzkw3U=qS{0Z(#*g@6?2J5xq?ItLCM zc<+1P`+eW{eN;v&RtfZ^4OkC8@{x~x_jiBy*w{pfC)FYJHLTgJzw2G!`_n)DQ`cOx zme=`i1O{t*=IpuO|AYVZkN?@f%v&QY%+KF^k^JHOQh1X8Gn(pS<@*8LW& z8m>MmOULGH=Ir^4zwp6-{^x)F*Sw|74eQD%NmboxD z_rQ@OpS}Bwj2!FqUZdH%@$lg{y!I>Ifz!MiU?Wh0b z(7FG+TiB7`b4xbg{@Bs4-EsA+U-E)UuWhH7=Wi@3O%LP22ai1Z_!IN>hFaFPWzAOW zu2;PLx=ngHd8lAC%7_8`BopM8!DEj<{^9@ppRd1u@paHoJ@q7A_#^Lmk8@Uy#d4Qv zu$5p`r81d^A9>_6pZ`Mid$`oSJ9pf2(@pyi9B|GGuyVsfWyrv$nzEcrG?^2g=tLh{ zt=1hcdhy9qr%HtqiO~~EuG>!U>7Ac;$j-SWBs{zTxIwN+ntYf+$JD z!VdVJG%N-p6F>teBGcTV@04?TdyLwRhRT!7)yWiGPQTTq?|_lB%g&$d9L*4Ag5}J; z=Jm)88FSfQ7Ij&BUm%*PX`)}6V5&sDsZ(Dl$#h!wR*8=NC>Uj9kAAwxg=0HAoiFKI z$XO0Xxl%4)>~tB#`Z@SYxl*3kRVYuix(jpl*=7r=YP&~Y6>mDc_v>E&@^5|f>*U3A zx!Kv-lP6A`K7D$Ac9tSsIm9q%AO;?VLYoX#&$WA{ePh#aIrKlP`6f+5iVLqAv|=Hf zt7dBVw9fwXxmMdphl0bw^?9fZCJ8S*F+SQU=SH zYB|>$`^%?a+Uyn!xh_fiXna}oefyRUf%bsQo3VCiKrWg@^;M8X2tuN45Mx;zu$GOf z%V;zvpXB?`BmggDITZlzhabB3fW3AUz?d-n48Y!djK#&&%WicQm56)b=x$h-`c@Eo06S{ zg_;_(OC8)oFFD)oXgWlQbxF%jjLrR&K*aJ*~V0HRzEi%Jjv=H zt(9!Hn!WJv=j)$uqN8<+x`)&O;Qcf0-sGFA6JJy5&3C&aUPH$aX%pnPUzaOSWb=hg zzG{ZKb^Z~EI-J#Ora8uv@Wrz?AD`P(%(e4bW`XG#h5lwS4K{a{X|Z)dc3L>B+?m0_ zgz?}hOMzh~iv=Wo(rNA+Cv@9N>Y%oB$)L@M^;AEpONcs>VHTl!YT{qwYqY@3@-<*Z zR-suxUtX^l^0|8-e)7M5?9)#^eR8~*=c>(4*XCzwIp)^F!hEjVL7J@=px>D<%6?I!+6;*`f zN_Ud$M^UH81{_*WpAkw*PY-x$`LBwFmd@+p~RoX6}i{AHQ(^{OrsO ztC1|X)&Q|7MnPNtW=D?_y?XZ-rb@GWE9Z7sE|9>fLsec4RFJm(*>0nE;dkfRqc