mirror of
https://github.com/Sollace/Unicopia.git
synced 2025-02-07 22:16:44 +01:00
Set up recipe datagen
This commit is contained in:
parent
7d59e1e0bf
commit
1e8b6ebaab
41 changed files with 123 additions and 589 deletions
|
@ -0,0 +1,21 @@
|
|||
package com.minelittlepony.unicopia.datagen;
|
||||
|
||||
import com.minelittlepony.unicopia.item.UItems;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
|
||||
public interface ItemFamilies {
|
||||
Item[] MUSIC_DISCS = {
|
||||
UItems.MUSIC_DISC_CRUSADE, UItems.MUSIC_DISC_FUNK, UItems.MUSIC_DISC_PET, UItems.MUSIC_DISC_POPULAR
|
||||
};
|
||||
Item[] POLEARMS = {
|
||||
UItems.WOODEN_POLEARM, UItems.STONE_POLEARM, UItems.IRON_POLEARM, UItems.GOLDEN_POLEARM, UItems.DIAMOND_POLEARM, UItems.NETHERITE_POLEARM
|
||||
};
|
||||
Item[] HORSE_SHOES = {
|
||||
UItems.IRON_HORSE_SHOE, UItems.GOLDEN_HORSE_SHOE, UItems.COPPER_HORSE_SHOE, UItems.NETHERITE_HORSE_SHOE
|
||||
};
|
||||
Item[] BASKETS = {
|
||||
UItems.ACACIA_BASKET, UItems.BAMBOO_BASKET, UItems.BIRCH_BASKET, UItems.CHERRY_BASKET, UItems.DARK_OAK_BASKET,
|
||||
UItems.JUNGLE_BASKET, UItems.MANGROVE_BASKET, UItems.OAK_BASKET, UItems.PALM_BASKET, UItems.SPRUCE_BASKET
|
||||
};
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
package com.minelittlepony.unicopia.datagen;
|
||||
|
||||
import com.minelittlepony.unicopia.block.UBlocks;
|
||||
|
||||
import net.minecraft.data.family.BlockFamily;
|
||||
|
||||
public interface UBlockFamilies {
|
||||
BlockFamily PALM = new BlockFamily.Builder(UBlocks.PALM_PLANKS)
|
||||
.slab(UBlocks.PALM_SLAB).stairs(UBlocks.PALM_STAIRS).fence(UBlocks.PALM_FENCE).fenceGate(UBlocks.PALM_FENCE_GATE)
|
||||
.button(UBlocks.PALM_BUTTON).pressurePlate(UBlocks.PALM_PRESSURE_PLATE).sign(UBlocks.PALM_SIGN, UBlocks.PALM_WALL_SIGN)
|
||||
.door(UBlocks.PALM_DOOR).trapdoor(UBlocks.PALM_TRAPDOOR)
|
||||
.group("wooden").unlockCriterionName("has_planks")
|
||||
.build();
|
||||
BlockFamily ZAP = new BlockFamily.Builder(UBlocks.ZAP_PLANKS)
|
||||
.slab(UBlocks.ZAP_SLAB).stairs(UBlocks.ZAP_STAIRS).fence(UBlocks.ZAP_FENCE).fenceGate(UBlocks.ZAP_FENCE_GATE)
|
||||
.group("wooden").unlockCriterionName("has_planks")
|
||||
.build();
|
||||
BlockFamily WAXED_ZAP = new BlockFamily.Builder(UBlocks.WAXED_ZAP_PLANKS)
|
||||
.slab(UBlocks.WAXED_ZAP_SLAB).stairs(UBlocks.WAXED_ZAP_STAIRS).fence(UBlocks.WAXED_ZAP_FENCE).fenceGate(UBlocks.WAXED_ZAP_FENCE_GATE)
|
||||
.group("wooden").unlockCriterionName("has_planks")
|
||||
.build();
|
||||
}
|
|
@ -16,6 +16,7 @@ import com.minelittlepony.unicopia.block.ShellsBlock;
|
|||
import com.minelittlepony.unicopia.block.SlimePustuleBlock;
|
||||
import com.minelittlepony.unicopia.block.UBlocks;
|
||||
import com.minelittlepony.unicopia.block.zap.ZapAppleLeavesBlock;
|
||||
import com.minelittlepony.unicopia.datagen.UBlockFamilies;
|
||||
import com.minelittlepony.unicopia.server.world.Tree;
|
||||
|
||||
import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
|
||||
|
@ -36,7 +37,6 @@ import net.minecraft.data.client.TextureMap;
|
|||
import net.minecraft.data.client.TexturedModel;
|
||||
import net.minecraft.data.client.VariantsBlockStateSupplier;
|
||||
import net.minecraft.data.client.When;
|
||||
import net.minecraft.data.family.BlockFamily;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.Items;
|
||||
import net.minecraft.registry.Registries;
|
||||
|
@ -121,12 +121,7 @@ public class UBlockStateModelGenerator extends BlockStateModelGenerator {
|
|||
// palm wood
|
||||
registerLog(UBlocks.PALM_LOG).log(UBlocks.PALM_LOG).wood(UBlocks.PALM_WOOD);
|
||||
registerLog(UBlocks.STRIPPED_PALM_LOG).log(UBlocks.STRIPPED_PALM_LOG).wood(UBlocks.STRIPPED_PALM_WOOD);
|
||||
registerCubeAllModelTexturePool(UBlocks.PALM_PLANKS).family(new BlockFamily.Builder(UBlocks.PALM_PLANKS)
|
||||
.slab(UBlocks.PALM_SLAB).stairs(UBlocks.PALM_STAIRS).fence(UBlocks.PALM_FENCE).fenceGate(UBlocks.PALM_FENCE_GATE)
|
||||
.button(UBlocks.PALM_BUTTON).pressurePlate(UBlocks.PALM_PRESSURE_PLATE).sign(UBlocks.PALM_SIGN, UBlocks.PALM_WALL_SIGN)
|
||||
.door(UBlocks.PALM_DOOR).trapdoor(UBlocks.PALM_TRAPDOOR)
|
||||
.group("wooden").unlockCriterionName("has_planks")
|
||||
.build());
|
||||
registerCubeAllModelTexturePool(UBlocks.PALM_PLANKS).family(UBlockFamilies.PALM);
|
||||
registerHangingSign(UBlocks.STRIPPED_PALM_LOG, UBlocks.PALM_HANGING_SIGN, UBlocks.PALM_WALL_HANGING_SIGN);
|
||||
registerSimpleCubeAll(UBlocks.PALM_LEAVES);
|
||||
|
||||
|
@ -137,15 +132,7 @@ public class UBlockStateModelGenerator extends BlockStateModelGenerator {
|
|||
registerLog(UBlocks.STRIPPED_ZAP_LOG)
|
||||
.log(UBlocks.STRIPPED_ZAP_LOG).wood(UBlocks.STRIPPED_ZAP_WOOD)
|
||||
.log(UBlocks.WAXED_STRIPPED_ZAP_LOG).wood(UBlocks.WAXED_STRIPPED_ZAP_WOOD);
|
||||
registerCubeAllModelTexturePool(UBlocks.ZAP_PLANKS)
|
||||
.family(new BlockFamily.Builder(UBlocks.ZAP_PLANKS)
|
||||
.slab(UBlocks.ZAP_SLAB).stairs(UBlocks.ZAP_STAIRS).fence(UBlocks.ZAP_FENCE).fenceGate(UBlocks.ZAP_FENCE_GATE)
|
||||
.group("wooden").unlockCriterionName("has_planks")
|
||||
.build())
|
||||
.same(UBlocks.WAXED_ZAP_PLANKS).family(new BlockFamily.Builder(UBlocks.WAXED_ZAP_PLANKS)
|
||||
.slab(UBlocks.WAXED_ZAP_SLAB).stairs(UBlocks.WAXED_ZAP_STAIRS).fence(UBlocks.WAXED_ZAP_FENCE).fenceGate(UBlocks.WAXED_ZAP_FENCE_GATE)
|
||||
.group("wooden").unlockCriterionName("has_planks")
|
||||
.build());
|
||||
registerCubeAllModelTexturePool(UBlocks.ZAP_PLANKS).family(UBlockFamilies.ZAP).same(UBlocks.WAXED_ZAP_PLANKS).family(UBlockFamilies.WAXED_ZAP);
|
||||
registerZapLeaves(UBlocks.ZAP_LEAVES);
|
||||
registerSingleton(UBlocks.FLOWERING_ZAP_LEAVES, TexturedModel.LEAVES);
|
||||
registerStateWithModelReference(UBlocks.ZAP_LEAVES_PLACEHOLDER, Blocks.AIR);
|
||||
|
|
|
@ -8,6 +8,7 @@ import com.minelittlepony.unicopia.UConventionalTags;
|
|||
import com.minelittlepony.unicopia.UTags;
|
||||
import com.minelittlepony.unicopia.block.UBlocks;
|
||||
import com.minelittlepony.unicopia.datagen.Datagen;
|
||||
import com.minelittlepony.unicopia.datagen.ItemFamilies;
|
||||
import com.minelittlepony.unicopia.item.BedsheetsItem;
|
||||
import com.minelittlepony.unicopia.item.UItems;
|
||||
|
||||
|
@ -28,6 +29,8 @@ import net.minecraft.registry.tag.TagKey;
|
|||
import net.minecraft.util.Identifier;
|
||||
|
||||
public class UItemTagProvider extends FabricTagProvider.ItemTagProvider {
|
||||
|
||||
|
||||
private final UBlockTagProvider blockTagProvider;
|
||||
|
||||
public UItemTagProvider(FabricDataOutput output, CompletableFuture<RegistryWrapper.WrapperLookup> registriesFuture, UBlockTagProvider blockTagProvider) {
|
||||
|
@ -57,21 +60,18 @@ public class UItemTagProvider extends FabricTagProvider.ItemTagProvider {
|
|||
|
||||
getOrCreateTagBuilder(ItemTags.CHEST_BOATS).add(UItems.PALM_CHEST_BOAT);
|
||||
getOrCreateTagBuilder(ItemTags.BOATS).add(UItems.PALM_BOAT);
|
||||
getOrCreateTagBuilder(ItemTags.MUSIC_DISCS).add(UItems.MUSIC_DISC_CRUSADE, UItems.MUSIC_DISC_FUNK, UItems.MUSIC_DISC_PET, UItems.MUSIC_DISC_POPULAR);
|
||||
getOrCreateTagBuilder(ItemTags.MUSIC_DISCS).add(ItemFamilies.MUSIC_DISCS);
|
||||
getOrCreateTagBuilder(ItemTags.CREEPER_DROP_MUSIC_DISCS).add(UItems.MUSIC_DISC_CRUSADE, UItems.MUSIC_DISC_FUNK, UItems.MUSIC_DISC_PET, UItems.MUSIC_DISC_POPULAR);
|
||||
|
||||
getOrCreateTagBuilder(ItemTags.SIGNS).add(UBlocks.PALM_SIGN.asItem());
|
||||
getOrCreateTagBuilder(ItemTags.HANGING_SIGNS).add(UBlocks.PALM_HANGING_SIGN.asItem());
|
||||
|
||||
getOrCreateTagBuilder(UTags.HORSE_SHOES).add(UItems.IRON_HORSE_SHOE, UItems.GOLDEN_HORSE_SHOE, UItems.COPPER_HORSE_SHOE, UItems.NETHERITE_HORSE_SHOE);
|
||||
getOrCreateTagBuilder(UTags.POLEARMS).add(UItems.WOODEN_POLEARM, UItems.STONE_POLEARM, UItems.IRON_POLEARM, UItems.GOLDEN_POLEARM, UItems.DIAMOND_POLEARM, UItems.NETHERITE_POLEARM);
|
||||
getOrCreateTagBuilder(UTags.HORSE_SHOES).add(ItemFamilies.HORSE_SHOES);
|
||||
getOrCreateTagBuilder(UTags.POLEARMS).add(ItemFamilies.POLEARMS);
|
||||
|
||||
getOrCreateTagBuilder(ItemTags.TOOLS).addTag(UTags.HORSE_SHOES).addTag(UTags.POLEARMS);
|
||||
|
||||
getOrCreateTagBuilder(UTags.BASKETS).add(
|
||||
UItems.ACACIA_BASKET, UItems.BAMBOO_BASKET, UItems.BIRCH_BASKET, UItems.CHERRY_BASKET, UItems.DARK_OAK_BASKET,
|
||||
UItems.JUNGLE_BASKET, UItems.MANGROVE_BASKET, UItems.OAK_BASKET, UItems.PALM_BASKET, UItems.SPRUCE_BASKET
|
||||
);
|
||||
getOrCreateTagBuilder(UTags.BASKETS).add(ItemFamilies.BASKETS);
|
||||
getOrCreateTagBuilder(UTags.BADGES).add(Race.REGISTRY.stream()
|
||||
.map(race -> race.getId().withPath(p -> p + "_badge"))
|
||||
.flatMap(id -> Registries.ITEM.getOrEmpty(id).stream())
|
||||
|
|
|
@ -1,10 +1,29 @@
|
|||
package com.minelittlepony.unicopia.datagen.providers;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.NoSuchElementException;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import com.minelittlepony.unicopia.UTags;
|
||||
import com.minelittlepony.unicopia.block.UBlocks;
|
||||
import com.minelittlepony.unicopia.datagen.ItemFamilies;
|
||||
import com.minelittlepony.unicopia.datagen.UBlockFamilies;
|
||||
import com.minelittlepony.unicopia.item.UItems;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.data.server.recipe.RecipeJsonProvider;
|
||||
import net.minecraft.data.server.recipe.RecipeProvider;
|
||||
import net.minecraft.data.server.recipe.ShapedRecipeJsonBuilder;
|
||||
import net.minecraft.data.server.recipe.ShapelessRecipeJsonBuilder;
|
||||
import net.minecraft.data.server.recipe.VanillaRecipeProvider;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemConvertible;
|
||||
import net.minecraft.item.Items;
|
||||
import net.minecraft.recipe.book.RecipeCategory;
|
||||
import net.minecraft.registry.Registries;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
public class URecipeProvider extends FabricRecipeProvider {
|
||||
public URecipeProvider(FabricDataOutput output) {
|
||||
|
@ -13,7 +32,58 @@ public class URecipeProvider extends FabricRecipeProvider {
|
|||
|
||||
@Override
|
||||
public void generate(Consumer<RecipeJsonProvider> exporter) {
|
||||
Arrays.stream(ItemFamilies.BASKETS).forEach(basket -> {
|
||||
offerBasketRecipe(exporter, basket, getMaterial(basket, "_basket", "_planks"));
|
||||
});
|
||||
|
||||
offerBoatRecipe(exporter, UItems.PALM_BOAT, UBlocks.PALM_PLANKS);
|
||||
offerChestBoatRecipe(exporter, UItems.PALM_CHEST_BOAT, UItems.PALM_BOAT);
|
||||
offerHangingSignRecipe(exporter, UBlocks.PALM_HANGING_SIGN, UBlocks.PALM_PLANKS);
|
||||
offerPlanksRecipe(exporter, UBlocks.PALM_PLANKS, UTags.Items.PALM_LOGS, 4);
|
||||
offerPlanksRecipe(exporter, UBlocks.ZAP_PLANKS, UTags.Items.ZAP_LOGS, 4);
|
||||
offerPlanksRecipe(exporter, UBlocks.WAXED_ZAP_PLANKS, UTags.Items.WAXED_ZAP_LOGS, 4);
|
||||
offerBarkBlockRecipe(exporter, UBlocks.PALM_WOOD, UBlocks.PALM_LOG);
|
||||
offerBarkBlockRecipe(exporter, UBlocks.ZAP_WOOD, UBlocks.ZAP_LOG);
|
||||
offerBarkBlockRecipe(exporter, UBlocks.WAXED_ZAP_WOOD, UBlocks.WAXED_ZAP_LOG);
|
||||
|
||||
generateFamily(exporter, UBlockFamilies.PALM);
|
||||
generateFamily(exporter, UBlockFamilies.ZAP);
|
||||
generateFamily(exporter, UBlockFamilies.WAXED_ZAP);
|
||||
offerWaxingRecipes(exporter);
|
||||
}
|
||||
|
||||
private static Item getMaterial(Item output, String toStrip, String suffex) {
|
||||
Identifier id = Registries.ITEM.getId(output).withPath(p -> p.replace(toStrip, "") + suffex);
|
||||
return Registries.ITEM.getOrEmpty(id)
|
||||
.or(() -> Registries.ITEM.getOrEmpty(new Identifier(Identifier.DEFAULT_NAMESPACE, id.getPath())))
|
||||
.orElseThrow(() -> new NoSuchElementException("No item with id " + id));
|
||||
}
|
||||
|
||||
public static void offerBasketRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output, ItemConvertible input) {
|
||||
ShapedRecipeJsonBuilder.create(RecipeCategory.TRANSPORTATION, output)
|
||||
.input(Character.valueOf('#'), input)
|
||||
.pattern("# #")
|
||||
.pattern("# #")
|
||||
.pattern("###")
|
||||
.group("basket")
|
||||
.criterion(VanillaRecipeProvider.hasItem(input), VanillaRecipeProvider.conditionsFromItem(input))
|
||||
.offerTo(exporter);
|
||||
}
|
||||
|
||||
public static void offerWaxingRecipes(Consumer<RecipeJsonProvider> exporter) {
|
||||
UBlockFamilies.WAXED_ZAP.getVariants().forEach((variant, output) -> {
|
||||
Block input = UBlockFamilies.ZAP.getVariant(variant);
|
||||
offerWaxingRecipe(exporter, output, input);
|
||||
});
|
||||
offerWaxingRecipe(exporter, UBlocks.WAXED_ZAP_PLANKS, UBlocks.ZAP_PLANKS);
|
||||
offerWaxingRecipe(exporter, UBlocks.WAXED_ZAP_WOOD, UBlocks.ZAP_WOOD);
|
||||
}
|
||||
|
||||
public static void offerWaxingRecipe(Consumer<RecipeJsonProvider> exporter, ItemConvertible output, ItemConvertible input) {
|
||||
ShapelessRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, output)
|
||||
.input(input)
|
||||
.input(Items.HONEYCOMB).group(RecipeProvider.getItemPath(output))
|
||||
.criterion(RecipeProvider.hasItem(input), RecipeProvider.conditionsFromItem(input))
|
||||
.offerTo(exporter, RecipeProvider.convertBetween(output, Items.HONEYCOMB));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "basket",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:acacia_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# #",
|
||||
"# #",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 1,
|
||||
"item": "unicopia:acacia_basket"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "basket",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:bamboo_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# #",
|
||||
"# #",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 1,
|
||||
"item": "unicopia:bamboo_basket"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "basket",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:birch_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# #",
|
||||
"# #",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 1,
|
||||
"item": "unicopia:birch_basket"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "basket",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:cherry_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# #",
|
||||
"# #",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 1,
|
||||
"item": "unicopia:cherry_basket"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "basket",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:dark_oak_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# #",
|
||||
"# #",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 1,
|
||||
"item": "unicopia:dark_oak_basket"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "basket",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:jungle_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# #",
|
||||
"# #",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 1,
|
||||
"item": "unicopia:jungle_basket"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "basket",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:mangrove_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# #",
|
||||
"# #",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 1,
|
||||
"item": "unicopia:mangrove_basket"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "basket",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:oak_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# #",
|
||||
"# #",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 1,
|
||||
"item": "unicopia:oak_basket"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "basket",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:palm_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# #",
|
||||
"# #",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 1,
|
||||
"item": "unicopia:palm_basket"
|
||||
}
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "boat",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:palm_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# #",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"item": "unicopia:palm_boat"
|
||||
}
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"group": "wooden_button",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "unicopia:palm_planks"
|
||||
}
|
||||
],
|
||||
"result": {
|
||||
"item": "unicopia:palm_button"
|
||||
}
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"group": "chest_boat",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:chest"
|
||||
},
|
||||
{
|
||||
"item": "unicopia:palm_boat"
|
||||
}
|
||||
],
|
||||
"result": {
|
||||
"item": "unicopia:palm_chest_boat"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_door",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:palm_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"##",
|
||||
"##",
|
||||
"##"
|
||||
],
|
||||
"result": {
|
||||
"count": 3,
|
||||
"item": "unicopia:palm_door"
|
||||
}
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_fence",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:stick"
|
||||
},
|
||||
"W": {
|
||||
"item": "unicopia:palm_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"W#W",
|
||||
"W#W"
|
||||
],
|
||||
"result": {
|
||||
"count": 3,
|
||||
"item": "unicopia:palm_fence"
|
||||
}
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_fence_gate",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:stick"
|
||||
},
|
||||
"W": {
|
||||
"item": "unicopia:palm_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"#W#",
|
||||
"#W#"
|
||||
],
|
||||
"result": {
|
||||
"item": "unicopia:palm_fence_gate"
|
||||
}
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_sign",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:palm_planks"
|
||||
},
|
||||
"|": {
|
||||
"item": "minecraft:chain"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"| |",
|
||||
"###",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 3,
|
||||
"item": "unicopia:palm_hanging_sign"
|
||||
}
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"category": "building",
|
||||
"group": "planks",
|
||||
"ingredients": [
|
||||
{ "tag": "unicopia:palm_logs" }
|
||||
],
|
||||
"result": {
|
||||
"item": "unicopia:palm_planks",
|
||||
"count": 4
|
||||
}
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_pressure_plate",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:palm_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"##"
|
||||
],
|
||||
"result": {
|
||||
"item": "unicopia:palm_pressure_plate"
|
||||
}
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_sign",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:palm_planks"
|
||||
},
|
||||
"X": {
|
||||
"item": "minecraft:stick"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"###",
|
||||
"###",
|
||||
" X "
|
||||
],
|
||||
"result": {
|
||||
"count": 3,
|
||||
"item": "unicopia:palm_sign"
|
||||
}
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_slab",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:palm_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 6,
|
||||
"item": "unicopia:palm_slab"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_stairs",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:palm_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# ",
|
||||
"## ",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 4,
|
||||
"item": "unicopia:palm_stairs"
|
||||
}
|
||||
}
|
|
@ -1,17 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_trapdoor",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:palm_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"###",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 2,
|
||||
"item": "unicopia:palm_trapdoor"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"category": "building",
|
||||
"group": "bark",
|
||||
"pattern": [
|
||||
"##",
|
||||
"##"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:palm_log"
|
||||
}
|
||||
},
|
||||
"result": {
|
||||
"count": 3,
|
||||
"item": "unicopia:palm_wood"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "basket",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:spruce_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# #",
|
||||
"# #",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 1,
|
||||
"item": "unicopia:spruce_basket"
|
||||
}
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{ "item": "unicopia:zap_fence" },
|
||||
{ "item": "minecraft:honeycomb" }
|
||||
],
|
||||
"result": { "item": "unicopia:waxed_zap_fence" }
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{ "item": "unicopia:zap_fence_gate" },
|
||||
{ "item": "minecraft:honeycomb" }
|
||||
],
|
||||
"result": { "item": "unicopia:waxed_zap_fence_gate" }
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{ "item": "unicopia:zap_planks" },
|
||||
{ "item": "minecraft:honeycomb" }
|
||||
],
|
||||
"result": { "item": "unicopia:waxed_zap_planks" }
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{ "item": "unicopia:zap_slab" },
|
||||
{ "item": "minecraft:honeycomb" }
|
||||
],
|
||||
"result": { "item": "unicopia:waxed_zap_slab" }
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{ "item": "unicopia:zap_stairs" },
|
||||
{ "item": "minecraft:honeycomb" }
|
||||
],
|
||||
"result": { "item": "unicopia:waxed_zap_stairs" }
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{ "item": "unicopia:zap_wood" },
|
||||
{ "item": "minecraft:honeycomb" }
|
||||
],
|
||||
"result": { "item": "unicopia:waxed_zap_wood" }
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_fence",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:stick"
|
||||
},
|
||||
"W": {
|
||||
"item": "unicopia:zap_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"W#W",
|
||||
"W#W"
|
||||
],
|
||||
"result": {
|
||||
"count": 3,
|
||||
"item": "unicopia:zap_fence"
|
||||
}
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_fence_gate",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "minecraft:stick"
|
||||
},
|
||||
"W": {
|
||||
"item": "unicopia:zap_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"#W#",
|
||||
"#W#"
|
||||
],
|
||||
"result": {
|
||||
"item": "unicopia:zap_fence_gate"
|
||||
}
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"category": "building",
|
||||
"group": "planks",
|
||||
"ingredients": [
|
||||
{ "tag": "unicopia:zap_logs" }
|
||||
],
|
||||
"result": {
|
||||
"item": "unicopia:zap_planks",
|
||||
"count": 4
|
||||
}
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_slab",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:zap_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 6,
|
||||
"item": "unicopia:zap_slab"
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "wooden_stairs",
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:zap_planks"
|
||||
}
|
||||
},
|
||||
"pattern": [
|
||||
"# ",
|
||||
"## ",
|
||||
"###"
|
||||
],
|
||||
"result": {
|
||||
"count": 4,
|
||||
"item": "unicopia:zap_stairs"
|
||||
}
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"##",
|
||||
"##"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"item": "unicopia:zap_log"
|
||||
}
|
||||
},
|
||||
"result": {
|
||||
"item": "unicopia:zap_wood"
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue