Update 2.0.0 - Pretty Sweet Update
6
.gitignore
vendored
@@ -1,7 +1,11 @@
|
||||
# gradle
|
||||
|
||||
.gradle/
|
||||
build/
|
||||
build/classes/
|
||||
build/generated/
|
||||
build/libs/
|
||||
build/resources/
|
||||
build/tmp/
|
||||
out/
|
||||
classes/
|
||||
|
||||
|
||||
19
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 {
|
||||
|
||||
BIN
build/loom-cache/maybe-data-1.0.0-1.16.2.jar
Normal file
BIN
build/loom-cache/midnight-hats-1.0.2.jar
Normal file
@@ -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
|
||||
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
|
||||
0
logs/latest.log
Normal file
@@ -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));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -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<Block, BlockState> builder) {
|
||||
builder.add(BITES);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BlockEntity createBlockEntity(BlockView world) {
|
||||
return new BirthdayCakeBlockEntity();
|
||||
}
|
||||
|
||||
private static ToIntFunction<BlockState> 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;
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -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<Block, BlockState> 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());
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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<Block, BlockState> 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());
|
||||
}
|
||||
@@ -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.*;
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
@@ -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<ItemStack> use(World world, PlayerEntity user, Hand hand) {
|
||||
ItemStack itemStack = user.getStackInHand(hand);
|
||||
|
||||
Optional<Item> 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);
|
||||
}
|
||||
}
|
||||
@@ -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;
|
||||
@@ -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();
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
@@ -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();
|
||||
}
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
@@ -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<? extends WanderingTraderEntity> 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);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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<BlockPos> 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;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -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<TradeOffers.Factory[]> ICE_CREAM_TRADER_TRADES;
|
||||
|
||||
private static Int2ObjectMap<TradeOffers.Factory[]> copyToFastUtilMap(ImmutableMap<Integer, TradeOffers.Factory[]> 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);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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<IceCreamTraderEntity, VillagerResemblingModel<IceCreamTraderEntity>> {
|
||||
|
||||
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");
|
||||
}
|
||||
}
|
||||
@@ -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> 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));
|
||||
}
|
||||
}
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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<IceCreamTraderEntity> 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));
|
||||
}
|
||||
}
|
||||
@@ -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);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
@@ -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<List<Supplier<ConfiguredFeature<?, ?>>>> getFeatures();
|
||||
|
||||
@Accessor
|
||||
void setFeatures(List<List<Supplier<ConfiguredFeature<?, ?>>>> features);
|
||||
}
|
||||
@@ -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);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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<List<Supplier<ConfiguredFeature<?, ?>>>> featuresByStep = new ArrayList<>( generationSettingsAccessor.getFeatures());
|
||||
while (featuresByStep.size() <= stepIndex) {
|
||||
featuresByStep.add(Lists.newArrayList());
|
||||
}
|
||||
List<Supplier<ConfiguredFeature<?, ?>>> features = new ArrayList<>(featuresByStep.get(stepIndex));
|
||||
features.add(() -> feature);
|
||||
featuresByStep.set(stepIndex, features);
|
||||
generationSettingsAccessor.setFeatures(featuresByStep);
|
||||
}
|
||||
}
|
||||
@@ -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;
|
||||
@@ -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" }
|
||||
}
|
||||
}
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 169 KiB After Width: | Height: | Size: 10 KiB |
@@ -1,22 +1,10 @@
|
||||
{
|
||||
"itemGroup.dishes.dishes":"Delicious Dishes",
|
||||
"itemGroup.dishes.main":"Delicious Dishes - Allgemein",
|
||||
"itemGroup.dishes.dishes":"Delicious Dishes - Gerichte",
|
||||
"itemGroup.dishes.pizza":"Delicious Dishes - Pizza",
|
||||
"text.dishes.landing_text":"Dies ist ein Kochbuch, das dir beim Zubereiten der Gerichte der Mod Delicious Dishes hilft",
|
||||
"book.dishes.cooking_guide":"Kochbuch",
|
||||
"item.dishes.plate":"Teller",
|
||||
"item.dishes.pizzabox":"Leerer Pizzakarton",
|
||||
"item.dishes.potatoeswithcurdcheese":"Kartoffeln mit Quark",
|
||||
"item.dishes.tinypotatoeswithcurdcheese":"Tiny Potatoes mit Quark",
|
||||
"item.dishes.schnitzel":"Schnitzel",
|
||||
"item.dishes.pizzasalami":"Pizza Salami",
|
||||
"item.dishes.pizzaham":"Pizza Ham",
|
||||
"item.dishes.pizzatuna":"Pizza Tuhnfisch",
|
||||
"item.dishes.pizzabacon":"Pizza Bacon",
|
||||
"item.dishes.spaghetti_bolognese":"Spaghetti Bolognese",
|
||||
"item.dishes.steak":"Steak",
|
||||
"item.dishes.hamburger":"Hamburger",
|
||||
"item.dishes.chickenburger":"Chickenburger",
|
||||
"item.dishes.cheeseburger":"Cheeseburger",
|
||||
"item.dishes.fishandchips":"Fish and Chips",
|
||||
"item.dishes.cooking_guide":"Kochbuch",
|
||||
"item.dishes.flour":"Mehl",
|
||||
"item.dishes.raw_spaghetti":"Rohe Spaghetti",
|
||||
"item.dishes.spaghetti":"Spaghetti",
|
||||
@@ -51,5 +39,20 @@
|
||||
"block.dishes.hamburger":"Hamburger",
|
||||
"block.dishes.chickenburger":"Chickenburger",
|
||||
"block.dishes.cheeseburger":"Cheeseburger",
|
||||
"block.dishes.fishandchips":"Fish and Chips"
|
||||
"block.dishes.fishandchips":"Fish and Chips",
|
||||
|
||||
"itemGroup.dishes.sweets":"Delicious Dishes - Süßigkeiten",
|
||||
"item.dishes.ice_cream_vanilla":"Vanilleeis",
|
||||
"item.dishes.ice_cream_strawberry":"Erdbeereis",
|
||||
"item.dishes.ice_cream_banana":"Bananeneis",
|
||||
"item.dishes.ice_cream_pear":"Birneneis",
|
||||
"item.dishes.ice_cream_sweetberry":"Süßbeereis",
|
||||
"item.dishes.ice_cream_blueberry":"Blaubeereis",
|
||||
"item.dishes.ice_cream_bubblegum":"Kaugummieis",
|
||||
"item.dishes.ice_cream_chocolate":"Schokoladeneis",
|
||||
"item.dishes.ice_cream_white_chocolate":"Weißes Schokoladeneis",
|
||||
"item.dishes.ice_cream_trader_spawn_egg":"Erschaffe Eiscremeverkäufer",
|
||||
"entity.dishes.ice_cream_trader":"Eiscremeverkäufer",
|
||||
|
||||
"block.dishes.birthday_cake": "Geburtstagskuchen"
|
||||
}
|
||||
@@ -1,22 +1,10 @@
|
||||
{
|
||||
"itemGroup.dishes.dishes":"Delicious Dishes",
|
||||
"itemGroup.dishes.main":"Delicious Dishes - Main",
|
||||
"itemGroup.dishes.dishes":"Delicious Dishes - Dishes",
|
||||
"itemGroup.dishes.pizza":"Delicious Dishes - Pizza",
|
||||
"text.dishes.landing_text":"This is a guide on how to cook the different dishes added by Delicious Dishes. We have dishes of many countries including Germany, Italy, USA, Britain, and many more!",
|
||||
"book.dishes.cooking_guide":"Cooking Guide",
|
||||
"item.dishes.plate":"Plate",
|
||||
"item.dishes.pizzabox":"Empty Pizzabox",
|
||||
"item.dishes.potatoeswithcurdcheese":"Potatoes with Curd Cheese",
|
||||
"item.dishes.tinypotatoeswithcurdcheese":"Tiny Potatoes with Curd Cheese",
|
||||
"item.dishes.schnitzel":"Schnitzel",
|
||||
"item.dishes.pizzasalami":"Pizza Salami",
|
||||
"item.dishes.pizzaham":"Pizza Ham",
|
||||
"item.dishes.pizzatuna":"Pizza Tuna",
|
||||
"item.dishes.pizzabacon":"Pizza Bacon",
|
||||
"item.dishes.spaghetti_bolognese":"Spaghetti Bolognese",
|
||||
"item.dishes.steak":"Steak",
|
||||
"item.dishes.hamburger":"Hamburger",
|
||||
"item.dishes.chickenburger":"Chickenburger",
|
||||
"item.dishes.cheeseburger":"Cheeseburger",
|
||||
"item.dishes.fishandchips":"Fish and Chips",
|
||||
"item.dishes.cooking_guide":"Cooking Guide",
|
||||
"item.dishes.flour":"Flour",
|
||||
"item.dishes.raw_spaghetti":"Raw Spaghetti",
|
||||
"item.dishes.spaghetti":"Spaghetti",
|
||||
@@ -51,5 +39,33 @@
|
||||
"block.dishes.hamburger":"Hamburger",
|
||||
"block.dishes.chickenburger":"Chickenburger",
|
||||
"block.dishes.cheeseburger":"Cheeseburger",
|
||||
"block.dishes.fishandchips":"Fish and Chips"
|
||||
"block.dishes.spaceburger":"Spaceburger",
|
||||
"block.dishes.fishandchips":"Fish and Chips",
|
||||
|
||||
"itemGroup.dishes.sweets":"Delicious Dishes - Sweets",
|
||||
"item.dishes.ice_cream_vanilla":"Vanilla Ice Cream",
|
||||
"item.dishes.ice_cream_strawberry":"Strawberry Ice Cream",
|
||||
"item.dishes.ice_cream_banana":"Banana Ice Cream",
|
||||
"item.dishes.ice_cream_pear":"Pear Ice Cream",
|
||||
"item.dishes.ice_cream_sweetberry":"Sweet Berry Ice Cream",
|
||||
"item.dishes.ice_cream_blueberry":"Blueberry Ice Cream",
|
||||
"item.dishes.ice_cream_bubblegum":"Bubblegum Ice Cream",
|
||||
"item.dishes.ice_cream_chocolate":"Chocolate Ice Cream",
|
||||
"item.dishes.ice_cream_white_chocolate":"White Chocolate Ice Cream",
|
||||
"item.dishes.ice_cream_trader_spawn_egg":"Spawn Ice Cream Trader",
|
||||
"entity.dishes.ice_cream_trader":"Ice Cream Trader",
|
||||
|
||||
"block.dishes.birthday_cake":"Birthday Cake",
|
||||
|
||||
"text.autoconfig.dishes.title":"Delicious Dishes Config",
|
||||
"text.autoconfig.dishes.category.main":"Crops",
|
||||
"text.autoconfig.dishes.category.worldgen":"World Gen",
|
||||
"text.autoconfig.dishes.category.trader":"Trader",
|
||||
|
||||
"text.autoconfig.dishes.option.main.tomatoes":"Enable Tomatoes",
|
||||
"text.autoconfig.dishes.option.main.lettuce":"Enable Lettuce",
|
||||
"text.autoconfig.dishes.option.worldgen.salt_ore":"Enable Salt Ore",
|
||||
"text.autoconfig.dishes.option.worldgen.loot":"Enable Loot Tables",
|
||||
"text.autoconfig.dishes.option.trader.enabled":"Enable Ice Cream Trader",
|
||||
"text.autoconfig.dishes.option.trader.spawntrader":"Spawn Ice Cream Trader"
|
||||
}
|
||||
@@ -1,22 +1,10 @@
|
||||
{
|
||||
"itemGroup.dishes.dishes":"美味佳肴",
|
||||
"itemGroup.dishes.main":"美味佳肴 - 主要",
|
||||
"itemGroup.dishes.dishes":"美味佳肴 - 菜式",
|
||||
"itemGroup.dishes.pizza":"美味佳肴 - 比萨",
|
||||
"text.dishes.landing_text":"这是本教你如何煮出美味佳肴的指南。你可以煮出世界各地的美食!",
|
||||
"book.dishes.cooking_guide":"烹饪指南",
|
||||
"item.dishes.plate":"盘子",
|
||||
"item.dishes.pizzabox":"空披萨盒",
|
||||
"item.dishes.potatoeswithcurdcheese":"芝士土豆",
|
||||
"item.dishes.tinypotatoeswithcurdcheese":"小份芝士土豆",
|
||||
"item.dishes.schnitzel":"炸猪排",
|
||||
"item.dishes.pizzasalami":"萨拉米披萨",
|
||||
"item.dishes.pizzaham":"披萨火腿",
|
||||
"item.dishes.pizzatuna":"披萨金枪鱼",
|
||||
"item.dishes.pizzabacon":"披萨培根",
|
||||
"item.dishes.spaghetti_bolognese":"意大利肉酱面",
|
||||
"item.dishes.steak":"牛排",
|
||||
"item.dishes.hamburger":"汉堡",
|
||||
"item.dishes.chickenburger":"鸡肉汉堡",
|
||||
"item.dishes.cheeseburger":"芝士汉堡",
|
||||
"item.dishes.fishandchips":"炸鱼薯条",
|
||||
"item.dishes.cooking_guide":"烹饪指南",
|
||||
"item.dishes.flour":"面粉",
|
||||
"item.dishes.raw_spaghetti":"意大利面条",
|
||||
"item.dishes.spaghetti":"意大利面",
|
||||
@@ -51,5 +39,20 @@
|
||||
"block.dishes.hamburger":"汉堡",
|
||||
"block.dishes.chickenburger":"鸡肉汉堡",
|
||||
"block.dishes.cheeseburger":"芝士汉堡",
|
||||
"block.dishes.fishandchips":"炸鱼薯条"
|
||||
"block.dishes.fishandchips":"炸鱼薯条",
|
||||
|
||||
"itemGroup.dishes.sweets":"美味佳肴 - 甜食",
|
||||
"item.dishes.ice_cream_vanilla":"香草冰激凌",
|
||||
"item.dishes.ice_cream_strawberry":"草莓冰淇淋",
|
||||
"item.dishes.ice_cream_banana":"香蕉冰淇淋",
|
||||
"item.dishes.ice_cream_pear":"梨冰淇淋",
|
||||
"item.dishes.ice_cream_sweetberry":"草莓冰淇淋",
|
||||
"item.dishes.ice_cream_blueberry":"蓝莓冰淇淋",
|
||||
"item.dishes.ice_cream_bubblegum":"泡泡糖冰淇淋",
|
||||
"item.dishes.ice_cream_chocolate":"巧克力冰淇淋",
|
||||
"item.dishes.ice_cream_white_chocolate":"白巧克力冰淇淋",
|
||||
"item.dishes.ice_cream_trader_spawn_egg": "产生冰淇淋的卖家",
|
||||
"entity.dishes.ice_cream_trader": "冰淇淋卖家",
|
||||
|
||||
"block.dishes.birthday_cake": "生日蛋糕"
|
||||
}
|
||||
|
||||
339
src/main/resources/assets/dishes/models/block/birthday_cake.json
Normal file
@@ -0,0 +1,339 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "block/block",
|
||||
"textures": {
|
||||
"3": "block/red_concrete",
|
||||
"4": "dishes:block/flame",
|
||||
"5": "block/black_concrete",
|
||||
"bottom": "block/cake_bottom",
|
||||
"top": "block/cake_top",
|
||||
"particle": "block/cake_side",
|
||||
"side": "block/cake_side"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"from": [1, 0, 1],
|
||||
"to": [15, 8, 15],
|
||||
"faces": {
|
||||
"north": {"uv": [1, 8, 15, 16], "texture": "#side"},
|
||||
"east": {"uv": [1, 8, 15, 16], "texture": "#side"},
|
||||
"south": {"uv": [1, 8, 15, 16], "texture": "#side"},
|
||||
"west": {"uv": [1, 8, 15, 16], "texture": "#side"},
|
||||
"up": {"uv": [1, 1, 15, 15], "texture": "#top"},
|
||||
"down": {"uv": [1, 1, 15, 15], "texture": "#bottom", "cullface": "down"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [3, 8, 3],
|
||||
"to": [4, 11, 4],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [10.3, 11, 6.9],
|
||||
"to": [11.3, 12, 6.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [3, 19, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [3.4, 11, 3.4],
|
||||
"to": [3.6, 11.2, 3.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [11, 19, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [2, 8, 7.5],
|
||||
"to": [3, 11, 8.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [10, 16, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [9.6, 11, 11.6],
|
||||
"to": [10.6, 12, 11.6],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [2, 19, 19]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [2.4, 11, 7.9],
|
||||
"to": [2.6, 11.2, 8.1],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [10, 19, 16]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.5, 8, 13],
|
||||
"to": [8.5, 11, 14],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 16, 21]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [14.6, 11, 17.3],
|
||||
"to": [15.6, 12, 17.3],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [7, 19, 24]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.9, 11, 13.4],
|
||||
"to": [8.1, 11.2, 13.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 19, 21]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 12],
|
||||
"to": [13, 11, 13],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 15.9],
|
||||
"to": [20.3, 12, 15.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 23]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 12.4],
|
||||
"to": [12.6, 11.2, 12.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13, 8, 7.5],
|
||||
"to": [14, 11, 8.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 16, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [20.6, 11, 11.6],
|
||||
"to": [21.6, 12, 11.6],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [13, 19, 19]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13.4, 11, 7.9],
|
||||
"to": [13.6, 11.2, 8.1],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 19, 16]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 3],
|
||||
"to": [13, 11, 4],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 6.9],
|
||||
"to": [20.3, 12, 6.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 3.4],
|
||||
"to": [12.6, 11.2, 3.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.5, 8, 2],
|
||||
"to": [8.5, 11, 3],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 16, 10]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [14.6, 11, 6.3],
|
||||
"to": [15.6, 12, 6.3],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [7, 19, 13]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.9, 11, 2.4],
|
||||
"to": [8.1, 11.2, 2.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 19, 10]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [3, 8, 12],
|
||||
"to": [4, 11, 13],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [10.3, 11, 15.9],
|
||||
"to": [11.3, 12, 15.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [3, 19, 23]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [3.4, 11, 12.4],
|
||||
"to": [3.6, 11.2, 12.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [11, 19, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
}
|
||||
],
|
||||
"groups": [0,
|
||||
{
|
||||
"name": "candles",
|
||||
"origin": [8, 8, 8],
|
||||
"children": [
|
||||
{
|
||||
"name": "candle1",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [1, 2, 3]
|
||||
},
|
||||
{
|
||||
"name": "candle2",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [4, 5, 6]
|
||||
},
|
||||
{
|
||||
"name": "candle3",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [7, 8, 9]
|
||||
},
|
||||
{
|
||||
"name": "candle4",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [10, 11, 12]
|
||||
},
|
||||
{
|
||||
"name": "candle5",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [13, 14, 15]
|
||||
},
|
||||
{
|
||||
"name": "candle6",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [16, 17, 18]
|
||||
},
|
||||
{
|
||||
"name": "candle7",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [19, 20, 21]
|
||||
},
|
||||
{
|
||||
"name": "candle8",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [22, 23, 24]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,301 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"textures": {
|
||||
"3": "block/red_concrete",
|
||||
"4": "dishes:block/flame",
|
||||
"5": "block/black_concrete",
|
||||
"6": "block/cake_inner",
|
||||
"bottom": "block/cake_bottom",
|
||||
"top": "block/cake_top",
|
||||
"particle": "block/cake_side",
|
||||
"side": "block/cake_side"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"from": [3, 0, 1],
|
||||
"to": [15, 8, 15],
|
||||
"faces": {
|
||||
"north": {"uv": [1, 8, 13, 16], "texture": "#side"},
|
||||
"east": {"uv": [1, 8, 15, 16], "texture": "#side"},
|
||||
"south": {"uv": [3, 8, 15, 16], "texture": "#side"},
|
||||
"west": {"uv": [1, 8, 15, 16], "texture": "#6"},
|
||||
"up": {"uv": [3, 1, 15, 15], "texture": "#top"},
|
||||
"down": {"uv": [3, 1, 15, 15], "texture": "#bottom", "cullface": "down"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [3, 8, 3],
|
||||
"to": [4, 11, 4],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [10.3, 11, 6.9],
|
||||
"to": [11.3, 12, 6.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [3, 19, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [3.4, 11, 3.4],
|
||||
"to": [3.6, 11.2, 3.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [11, 19, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.5, 8, 13],
|
||||
"to": [8.5, 11, 14],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 16, 21]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [14.6, 11, 17.3],
|
||||
"to": [15.6, 12, 17.3],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [7, 19, 24]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.9, 11, 13.4],
|
||||
"to": [8.1, 11.2, 13.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 19, 21]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 12],
|
||||
"to": [13, 11, 13],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 15.9],
|
||||
"to": [20.3, 12, 15.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 23]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 12.4],
|
||||
"to": [12.6, 11.2, 12.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13, 8, 7.5],
|
||||
"to": [14, 11, 8.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 16, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [20.6, 11, 11.6],
|
||||
"to": [21.6, 12, 11.6],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [13, 19, 19]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13.4, 11, 7.9],
|
||||
"to": [13.6, 11.2, 8.1],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 19, 16]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 3],
|
||||
"to": [13, 11, 4],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 6.9],
|
||||
"to": [20.3, 12, 6.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 3.4],
|
||||
"to": [12.6, 11.2, 3.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.5, 8, 2],
|
||||
"to": [8.5, 11, 3],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 16, 10]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [14.6, 11, 6.3],
|
||||
"to": [15.6, 12, 6.3],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [7, 19, 13]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.9, 11, 2.4],
|
||||
"to": [8.1, 11.2, 2.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 19, 10]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [3, 8, 12],
|
||||
"to": [4, 11, 13],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [10.3, 11, 15.9],
|
||||
"to": [11.3, 12, 15.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [3, 19, 23]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [3.4, 11, 12.4],
|
||||
"to": [3.6, 11.2, 12.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [11, 19, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
}
|
||||
],
|
||||
"groups": [0,
|
||||
{
|
||||
"name": "candles",
|
||||
"origin": [8, 8, 8],
|
||||
"children": [
|
||||
{
|
||||
"name": "candle1",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [1, 2, 3]
|
||||
},
|
||||
{
|
||||
"name": "candle3",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [4, 5, 6]
|
||||
},
|
||||
{
|
||||
"name": "candle4",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [7, 8, 9]
|
||||
},
|
||||
{
|
||||
"name": "candle5",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [10, 11, 12]
|
||||
},
|
||||
{
|
||||
"name": "candle6",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [13, 14, 15]
|
||||
},
|
||||
{
|
||||
"name": "candle7",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [16, 17, 18]
|
||||
},
|
||||
{
|
||||
"name": "candle8",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [19, 20, 21]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,225 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"textures": {
|
||||
"3": "block/red_concrete",
|
||||
"4": "dishes:block/flame",
|
||||
"5": "block/black_concrete",
|
||||
"6": "block/cake_inner",
|
||||
"bottom": "block/cake_bottom",
|
||||
"top": "block/cake_top",
|
||||
"particle": "block/cake_side",
|
||||
"side": "block/cake_side"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"from": [5, 0, 1],
|
||||
"to": [15, 8, 15],
|
||||
"faces": {
|
||||
"north": {"uv": [1, 8, 11, 16], "texture": "#side"},
|
||||
"east": {"uv": [1, 8, 15, 16], "texture": "#side"},
|
||||
"south": {"uv": [5, 8, 15, 16], "texture": "#side"},
|
||||
"west": {"uv": [1, 8, 15, 16], "texture": "#6"},
|
||||
"up": {"uv": [5, 1, 15, 15], "texture": "#top"},
|
||||
"down": {"uv": [5, 1, 15, 15], "texture": "#bottom", "cullface": "down"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.5, 8, 13],
|
||||
"to": [8.5, 11, 14],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 16, 21]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [14.6, 11, 17.3],
|
||||
"to": [15.6, 12, 17.3],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [7, 19, 24]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.9, 11, 13.4],
|
||||
"to": [8.1, 11.2, 13.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 19, 21]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 12],
|
||||
"to": [13, 11, 13],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 15.9],
|
||||
"to": [20.3, 12, 15.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 23]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 12.4],
|
||||
"to": [12.6, 11.2, 12.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13, 8, 7.5],
|
||||
"to": [14, 11, 8.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 16, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [20.6, 11, 11.6],
|
||||
"to": [21.6, 12, 11.6],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [13, 19, 19]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13.4, 11, 7.9],
|
||||
"to": [13.6, 11.2, 8.1],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 19, 16]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 3],
|
||||
"to": [13, 11, 4],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 6.9],
|
||||
"to": [20.3, 12, 6.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 3.4],
|
||||
"to": [12.6, 11.2, 3.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.5, 8, 2],
|
||||
"to": [8.5, 11, 3],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 16, 10]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [14.6, 11, 6.3],
|
||||
"to": [15.6, 12, 6.3],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [7, 19, 13]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.9, 11, 2.4],
|
||||
"to": [8.1, 11.2, 2.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 19, 10]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
}
|
||||
],
|
||||
"groups": [0,
|
||||
{
|
||||
"name": "candles",
|
||||
"origin": [8, 8, 8],
|
||||
"children": [
|
||||
{
|
||||
"name": "candle3",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [1, 2, 3]
|
||||
},
|
||||
{
|
||||
"name": "candle4",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [4, 5, 6]
|
||||
},
|
||||
{
|
||||
"name": "candle5",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [7, 8, 9]
|
||||
},
|
||||
{
|
||||
"name": "candle6",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [10, 11, 12]
|
||||
},
|
||||
{
|
||||
"name": "candle7",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [13, 14, 15]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,225 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"textures": {
|
||||
"3": "block/red_concrete",
|
||||
"4": "dishes:block/flame",
|
||||
"5": "block/black_concrete",
|
||||
"6": "block/cake_inner",
|
||||
"bottom": "block/cake_bottom",
|
||||
"top": "block/cake_top",
|
||||
"particle": "block/cake_side",
|
||||
"side": "block/cake_side"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"from": [7, 0, 1],
|
||||
"to": [15, 8, 15],
|
||||
"faces": {
|
||||
"north": {"uv": [1, 8, 9, 16], "texture": "#side"},
|
||||
"east": {"uv": [1, 8, 15, 16], "texture": "#side"},
|
||||
"south": {"uv": [7, 8, 15, 16], "texture": "#side"},
|
||||
"west": {"uv": [1, 8, 15, 16], "texture": "#6"},
|
||||
"up": {"uv": [7, 1, 15, 15], "texture": "#top"},
|
||||
"down": {"uv": [7, 1, 15, 15], "texture": "#bottom", "cullface": "down"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.5, 8, 13],
|
||||
"to": [8.5, 11, 14],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 16, 21]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [14.6, 11, 17.3],
|
||||
"to": [15.6, 12, 17.3],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [7, 19, 24]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.9, 11, 13.4],
|
||||
"to": [8.1, 11.2, 13.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 19, 21]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 12],
|
||||
"to": [13, 11, 13],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 15.9],
|
||||
"to": [20.3, 12, 15.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 23]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 12.4],
|
||||
"to": [12.6, 11.2, 12.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13, 8, 7.5],
|
||||
"to": [14, 11, 8.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 16, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [20.6, 11, 11.6],
|
||||
"to": [21.6, 12, 11.6],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [13, 19, 19]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13.4, 11, 7.9],
|
||||
"to": [13.6, 11.2, 8.1],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 19, 16]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 3],
|
||||
"to": [13, 11, 4],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 6.9],
|
||||
"to": [20.3, 12, 6.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 3.4],
|
||||
"to": [12.6, 11.2, 3.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.5, 8, 2],
|
||||
"to": [8.5, 11, 3],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 16, 10]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [14.6, 11, 6.3],
|
||||
"to": [15.6, 12, 6.3],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [7, 19, 13]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.9, 11, 2.4],
|
||||
"to": [8.1, 11.2, 2.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 19, 10]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
}
|
||||
],
|
||||
"groups": [0,
|
||||
{
|
||||
"name": "candles",
|
||||
"origin": [8, 8, 8],
|
||||
"children": [
|
||||
{
|
||||
"name": "candle3",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [1, 2, 3]
|
||||
},
|
||||
{
|
||||
"name": "candle4",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [4, 5, 6]
|
||||
},
|
||||
{
|
||||
"name": "candle5",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [7, 8, 9]
|
||||
},
|
||||
{
|
||||
"name": "candle6",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [10, 11, 12]
|
||||
},
|
||||
{
|
||||
"name": "candle7",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [13, 14, 15]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,149 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"textures": {
|
||||
"3": "block/red_concrete",
|
||||
"4": "dishes:block/flame",
|
||||
"5": "block/black_concrete",
|
||||
"6": "block/cake_inner",
|
||||
"bottom": "block/cake_bottom",
|
||||
"top": "block/cake_top",
|
||||
"particle": "block/cake_side",
|
||||
"side": "block/cake_side"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"from": [9, 0, 1],
|
||||
"to": [15, 8, 15],
|
||||
"faces": {
|
||||
"north": {"uv": [1, 8, 7, 16], "texture": "#side"},
|
||||
"east": {"uv": [1, 8, 15, 16], "texture": "#side"},
|
||||
"south": {"uv": [9, 8, 15, 16], "texture": "#side"},
|
||||
"west": {"uv": [1, 8, 15, 16], "texture": "#6"},
|
||||
"up": {"uv": [9, 1, 15, 15], "texture": "#top"},
|
||||
"down": {"uv": [9, 1, 15, 15], "texture": "#bottom", "cullface": "down"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 12],
|
||||
"to": [13, 11, 13],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 15.9],
|
||||
"to": [20.3, 12, 15.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 23]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 12.4],
|
||||
"to": [12.6, 11.2, 12.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13, 8, 7.5],
|
||||
"to": [14, 11, 8.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 16, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [20.6, 11, 11.6],
|
||||
"to": [21.6, 12, 11.6],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [13, 19, 19]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13.4, 11, 7.9],
|
||||
"to": [13.6, 11.2, 8.1],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 19, 16]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 3],
|
||||
"to": [13, 11, 4],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 6.9],
|
||||
"to": [20.3, 12, 6.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 3.4],
|
||||
"to": [12.6, 11.2, 3.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
}
|
||||
],
|
||||
"groups": [0,
|
||||
{
|
||||
"name": "candles",
|
||||
"origin": [8, 8, 8],
|
||||
"children": [
|
||||
{
|
||||
"name": "candle4",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [1, 2, 3]
|
||||
},
|
||||
{
|
||||
"name": "candle5",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [4, 5, 6]
|
||||
},
|
||||
{
|
||||
"name": "candle6",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [7, 8, 9]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,149 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"textures": {
|
||||
"3": "block/red_concrete",
|
||||
"4": "dishes:block/flame",
|
||||
"5": "block/black_concrete",
|
||||
"6": "block/cake_inner",
|
||||
"bottom": "block/cake_bottom",
|
||||
"top": "block/cake_top",
|
||||
"particle": "block/cake_side",
|
||||
"side": "block/cake_side"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"from": [11, 0, 1],
|
||||
"to": [15, 8, 15],
|
||||
"faces": {
|
||||
"north": {"uv": [1, 8, 5, 16], "texture": "#side"},
|
||||
"east": {"uv": [1, 8, 15, 16], "texture": "#side"},
|
||||
"south": {"uv": [11, 8, 15, 16], "texture": "#side"},
|
||||
"west": {"uv": [1, 8, 15, 16], "texture": "#6"},
|
||||
"up": {"uv": [11, 1, 15, 15], "texture": "#top"},
|
||||
"down": {"uv": [11, 1, 15, 15], "texture": "#bottom", "cullface": "down"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 12],
|
||||
"to": [13, 11, 13],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 15.9],
|
||||
"to": [20.3, 12, 15.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 23]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 12.4],
|
||||
"to": [12.6, 11.2, 12.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 20]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13, 8, 7.5],
|
||||
"to": [14, 11, 8.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 16, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [20.6, 11, 11.6],
|
||||
"to": [21.6, 12, 11.6],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [13, 19, 19]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13.4, 11, 7.9],
|
||||
"to": [13.6, 11.2, 8.1],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 19, 16]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 8, 3],
|
||||
"to": [13, 11, 4],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 16, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [19.3, 11, 6.9],
|
||||
"to": [20.3, 12, 6.9],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [12, 19, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12.4, 11, 3.4],
|
||||
"to": [12.6, 11.2, 3.6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [20, 19, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
}
|
||||
],
|
||||
"groups": [0,
|
||||
{
|
||||
"name": "candles",
|
||||
"origin": [8, 8, 8],
|
||||
"children": [
|
||||
{
|
||||
"name": "candle4",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [1, 2, 3]
|
||||
},
|
||||
{
|
||||
"name": "candle5",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [4, 5, 6]
|
||||
},
|
||||
{
|
||||
"name": "candle6",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [7, 8, 9]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"textures": {
|
||||
"3": "block/red_concrete",
|
||||
"4": "dishes:block/flame",
|
||||
"5": "block/black_concrete",
|
||||
"6": "block/cake_inner",
|
||||
"bottom": "block/cake_bottom",
|
||||
"top": "block/cake_top",
|
||||
"particle": "block/cake_side",
|
||||
"side": "block/cake_side"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"from": [13, 0, 1],
|
||||
"to": [15, 8, 15],
|
||||
"faces": {
|
||||
"north": {"uv": [1, 8, 3, 16], "texture": "#side"},
|
||||
"east": {"uv": [1, 8, 15, 16], "texture": "#side"},
|
||||
"south": {"uv": [13, 8, 15, 16], "texture": "#side"},
|
||||
"west": {"uv": [1, 8, 15, 16], "texture": "#6"},
|
||||
"up": {"uv": [13, 1, 15, 15], "texture": "#top"},
|
||||
"down": {"uv": [13, 1, 15, 15], "texture": "#bottom", "cullface": "down"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13, 8, 7.5],
|
||||
"to": [14, 11, 8.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 16, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"east": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"south": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"west": {"uv": [0, 0, 1, 3], "texture": "#3"},
|
||||
"up": {"uv": [0, 0, 1, 1], "texture": "#3"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [20.6, 11, 11.6],
|
||||
"to": [21.6, 12, 11.6],
|
||||
"rotation": {"angle": 45, "axis": "y", "origin": [13, 19, 19]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 15, 15], "texture": "#4"},
|
||||
"south": {"uv": [0, 0, 15, 15], "texture": "#4"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13.4, 11, 7.9],
|
||||
"to": [13.6, 11.2, 8.1],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [21, 19, 16]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"east": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"south": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"west": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"},
|
||||
"up": {"uv": [0, 0, 0.2, 0.2], "texture": "#5"}
|
||||
}
|
||||
}
|
||||
],
|
||||
"groups": [0,
|
||||
{
|
||||
"name": "candles",
|
||||
"origin": [8, 8, 8],
|
||||
"children": [
|
||||
{
|
||||
"name": "candle5",
|
||||
"origin": [10, 16, 11],
|
||||
"children": [1, 2, 3]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:block/hamburger",
|
||||
"textures": {
|
||||
"0": "block/quartz_block_side",
|
||||
"1": "dishes:item/space_bread",
|
||||
"2": "dishes:item/space_beef",
|
||||
"3": "block/carrots_stage3",
|
||||
"4": "block/red_terracotta",
|
||||
"particle": "block/quartz_block_side"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:block/hamburger1",
|
||||
"textures": {
|
||||
"0": "block/quartz_block_side",
|
||||
"1": "dishes:item/space_bread",
|
||||
"2": "dishes:item/space_beef",
|
||||
"3": "block/carrots_stage3",
|
||||
"4": "block/red_terracotta",
|
||||
"particle": "block/quartz_block_side"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:block/hamburger2",
|
||||
"textures": {
|
||||
"0": "block/quartz_block_side",
|
||||
"1": "dishes:item/space_bread",
|
||||
"2": "dishes:item/space_beef",
|
||||
"3": "block/carrots_stage3",
|
||||
"4": "block/red_terracotta",
|
||||
"particle": "block/quartz_block_side"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:block/hamburger3",
|
||||
"textures": {
|
||||
"0": "block/quartz_block_side",
|
||||
"1": "dishes:item/space_bread",
|
||||
"2": "dishes:item/space_beef",
|
||||
"3": "block/carrots_stage3",
|
||||
"4": "block/red_terracotta",
|
||||
"particle": "block/quartz_block_side"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:block/hamburger4",
|
||||
"textures": {
|
||||
"0": "block/quartz_block_side",
|
||||
"1": "dishes:item/space_bread",
|
||||
"2": "dishes:item/space_beef",
|
||||
"3": "block/carrots_stage3",
|
||||
"4": "block/red_terracotta",
|
||||
"particle": "block/quartz_block_side"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"parent": "dishes:block/birthday_cake"
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "patchouli:items/book_gray"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:item/ice_cream_vanilla",
|
||||
"textures": {
|
||||
"1": "dishes:item/ice_cream_banana"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:item/ice_cream_vanilla",
|
||||
"textures": {
|
||||
"1": "dishes:item/ice_cream_blueberry"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:item/ice_cream_vanilla",
|
||||
"textures": {
|
||||
"1": "dishes:item/ice_cream_bubblegum"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:item/ice_cream_vanilla",
|
||||
"textures": {
|
||||
"1": "dishes:item/ice_cream_chocolate"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:item/ice_cream_vanilla",
|
||||
"textures": {
|
||||
"1": "dishes:item/ice_cream_pear"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:item/ice_cream_vanilla",
|
||||
"textures": {
|
||||
"1": "dishes:item/ice_cream_strawberry"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:item/ice_cream_vanilla",
|
||||
"textures": {
|
||||
"1": "dishes:item/ice_cream_sweetberry"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"parent": "item/template_spawn_egg"
|
||||
}
|
||||
@@ -0,0 +1,281 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "block/block",
|
||||
"textures": {
|
||||
"0": "dishes:item/ice_cream_waffle",
|
||||
"1": "dishes:item/ice_cream_vanilla",
|
||||
"particle": "#1"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"from": [7, 0, 7],
|
||||
"to": [9, 1, 9],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 9, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 2.5, 1], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 2.5, 1], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 2.5, 1], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 2.5, 1], "texture": "#0"},
|
||||
"down": {"uv": [0, 0.5, 0.5, 1], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [6, 2, 6],
|
||||
"to": [10, 3, 10],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 10, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 4.5, 1], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 4.5, 1], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 4.5, 1], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 4.5, 1], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 0, 1, 0.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [5, 5, 5],
|
||||
"to": [11, 8, 11],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 13, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 6.5, 3], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 6.5, 3], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 6.5, 3], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 6.5, 3], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 0.5, 6, 6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4, 11, 11],
|
||||
"to": [12, 15, 12],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 19, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 8.5, 4], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 1, 4.5], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 8.5, 4.5], "texture": "#0"},
|
||||
"west": {"uv": [0.5, 0, 1.5, 4.5], "texture": "#0"},
|
||||
"up": {"uv": [0.5, 0, 8, 1], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 0.5, 8, 1.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4, 11, 4],
|
||||
"to": [12, 15, 5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 19, 8]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 8.5, 4.5], "texture": "#0"},
|
||||
"east": {"uv": [0.5, 0, 1.5, 4.5], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 8.5, 4], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 1, 4.5], "texture": "#0"},
|
||||
"up": {"uv": [0.5, 0.5, 8, 1.5], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 0, 8, 1], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4, 11, 5],
|
||||
"to": [5, 15, 11],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 19, 9]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 4], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 6.5, 4], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 1, 4], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 6.5, 4.5], "texture": "#0"},
|
||||
"up": {"uv": [0.5, 0.5, 1.5, 6], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 0, 1.5, 6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [11, 11, 5],
|
||||
"to": [12, 15, 11],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [22, 19, 9]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 4], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 6.5, 4.5], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 1, 4], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 6.5, 4], "texture": "#0"},
|
||||
"up": {"uv": [0, 0.5, 1, 6], "texture": "#0"},
|
||||
"down": {"uv": [0, 0.5, 1, 6.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [6.5, 1, 6.5],
|
||||
"to": [9.5, 2, 9.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 9, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 3.5, 1], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 3.5, 1], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 3.5, 1], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 3.5, 1], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 0, 1, 0.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [5.5, 3, 5.5],
|
||||
"to": [10.5, 5, 10.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 11, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 5.5, 2], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 5.5, 2], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 5.5, 2], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 5.5, 2], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 0.5, 4, 4], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4.5, 8, 4.5],
|
||||
"to": [11.5, 11, 11.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 16, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 7.5, 3], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 7.5, 3], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 7.5, 3], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 7.5, 3], "texture": "#0"},
|
||||
"up": {"uv": [0.5, 0.5, 7, 7], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 0.5, 7, 7], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [8, 0, 6.9],
|
||||
"to": [8.5, 1, 7],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [16, 8, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [15.5, 0, 16, 1], "texture": "#0"},
|
||||
"east": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"west": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"down": {"uv": [15.5, 0.1, 16, 0.6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7, 5, 4.9],
|
||||
"to": [7.5, 8, 5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 13, 12]},
|
||||
"faces": {
|
||||
"north": {"uv": [15.5, 0, 16, 1], "texture": "#0"},
|
||||
"east": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"west": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"down": {"uv": [15.5, 0.1, 16, 0.6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.5, 2, 5.9],
|
||||
"to": [8, 3, 6],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 10, 13]},
|
||||
"faces": {
|
||||
"north": {"uv": [15.5, 0, 16, 1], "texture": "#0"},
|
||||
"east": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"west": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"down": {"uv": [15.5, 0.1, 16, 0.6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [6.5, 11, 3.9],
|
||||
"to": [7, 15, 4],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [14, 19, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [15.5, 0, 16, 1], "texture": "#0"},
|
||||
"east": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"west": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"up": {"uv": [15.5, 0, 16, 0.1], "texture": "#0"},
|
||||
"down": {"uv": [15.5, 0.1, 16, 0.6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.75, 1, 6.4],
|
||||
"to": [8.25, 2, 6.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [16, 9, 13]},
|
||||
"faces": {
|
||||
"north": {"uv": [15.5, 0, 16, 1], "texture": "#0"},
|
||||
"east": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"west": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"down": {"uv": [15.5, 0.1, 16, 0.6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [6.75, 8, 4.4],
|
||||
"to": [7.25, 11, 4.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 16, 11]},
|
||||
"faces": {
|
||||
"north": {"uv": [15.5, 0, 16, 1], "texture": "#0"},
|
||||
"east": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"west": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"down": {"uv": [15.5, 0.1, 16, 0.6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.25, 3, 5.4],
|
||||
"to": [7.75, 5, 5.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 11, 12]},
|
||||
"faces": {
|
||||
"north": {"uv": [15.5, 0, 16, 1], "texture": "#0"},
|
||||
"east": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"west": {"uv": [15.5, 0, 15.6, 1], "texture": "#0"},
|
||||
"down": {"uv": [15.5, 0.1, 16, 0.6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4.5, 14, 4.5],
|
||||
"to": [8.5, 18, 8.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [13, 23, 13]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 4, 4], "texture": "#1"},
|
||||
"east": {"uv": [0, 0, 4, 4], "texture": "#1"},
|
||||
"south": {"uv": [0, 0, 4, 4], "texture": "#1"},
|
||||
"west": {"uv": [0, 0, 4, 4], "texture": "#1"},
|
||||
"up": {"uv": [0, 0, 4, 4], "texture": "#1"},
|
||||
"down": {"uv": [0, 0, 4, 4], "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [7.5, 14, 6],
|
||||
"to": [11.5, 18.5, 10],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [16, 23, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 4, 4.5], "texture": "#1"},
|
||||
"east": {"uv": [0, 0, 4, 4.5], "texture": "#1"},
|
||||
"south": {"uv": [0, 0, 4, 4.5], "texture": "#1"},
|
||||
"west": {"uv": [0, 0, 4, 4.5], "texture": "#1"},
|
||||
"up": {"uv": [0, 0, 4, 4], "texture": "#1"},
|
||||
"down": {"uv": [0, 0, 4, 4], "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4.5, 13, 5],
|
||||
"to": [11.5, 14, 11],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [16, 22, 15]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 7, 1], "texture": "#1"},
|
||||
"east": {"uv": [0, 0, 6, 1], "texture": "#1"},
|
||||
"south": {"uv": [0, 0, 7, 1], "texture": "#1"},
|
||||
"west": {"uv": [0, 0, 6, 1], "texture": "#1"},
|
||||
"up": {"uv": [0, 0, 7, 6], "texture": "#1"},
|
||||
"down": {"uv": [0, 0, 7, 6], "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [6.7, 13.5, 4.4],
|
||||
"to": [10.7, 17.5, 8.4],
|
||||
"rotation": {"angle": 22.5, "axis": "y", "origin": [15, 23, 13]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 4, 4], "texture": "#1"},
|
||||
"east": {"uv": [0, 0, 4, 4], "texture": "#1"},
|
||||
"south": {"uv": [0, 0, 4, 4], "texture": "#1"},
|
||||
"west": {"uv": [0, 0, 4, 4], "texture": "#1"},
|
||||
"up": {"uv": [0, 0, 4, 4], "texture": "#1"},
|
||||
"down": {"uv": [0, 0, 4, 4], "texture": "#1"}
|
||||
}
|
||||
}
|
||||
],
|
||||
"display": {
|
||||
"thirdperson_righthand": {
|
||||
"rotation": [0, -45, 0],
|
||||
"translation": [0, 0, -0.75],
|
||||
"scale": [0.4, 0.4, 0.4]
|
||||
},
|
||||
"thirdperson_lefthand": {
|
||||
"rotation": [0, -45, 0],
|
||||
"translation": [0, 0, -0.75],
|
||||
"scale": [0.4, 0.4, 0.4]
|
||||
},
|
||||
"head": {
|
||||
"translation": [0, -0.75, 0]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"credit": "made by Motschen",
|
||||
"parent": "dishes:item/ice_cream_vanilla",
|
||||
"textures": {
|
||||
"1": "dishes:item/ice_cream_white_chocolate"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"parent": "dishes:block/spaceburger"
|
||||
}
|
||||
BIN
src/main/resources/assets/dishes/textures/block/flame.png
Normal file
|
After Width: | Height: | Size: 207 B |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 265 B |
|
After Width: | Height: | Size: 265 B |
|
After Width: | Height: | Size: 265 B |
|
After Width: | Height: | Size: 265 B |
|
After Width: | Height: | Size: 265 B |
|
After Width: | Height: | Size: 265 B |
|
After Width: | Height: | Size: 265 B |
|
After Width: | Height: | Size: 265 B |
|
After Width: | Height: | Size: 326 B |
|
After Width: | Height: | Size: 265 B |
BIN
src/main/resources/assets/dishes/textures/item/space_beef.png
Normal file
|
After Width: | Height: | Size: 413 B |
BIN
src/main/resources/assets/dishes/textures/item/space_bread.png
Normal file
|
After Width: | Height: | Size: 365 B |
@@ -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
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
}
|
||||
31
src/main/resources/data/dishes/mayberecipes/hamburger.json
Normal file
@@ -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
|
||||
}
|
||||
}
|
||||
}
|
||||