Glass recipe

This commit is contained in:
paulevsGitch 2020-10-27 12:19:30 +03:00
parent d5ca49ac31
commit 46bdaa968f
5 changed files with 66 additions and 63 deletions

View file

@ -13,7 +13,7 @@ import ru.betterend.blocks.basis.BlockStairs;
import ru.betterend.blocks.basis.BlockStoneButton;
import ru.betterend.blocks.basis.BlockStonePressurePlate;
import ru.betterend.blocks.basis.BlockWall;
import ru.betterend.recipe.builders.RecipeBuilder;
import ru.betterend.recipe.builders.GridRecipe;
import ru.betterend.registry.EndBlocks;
import ru.betterend.util.TagHelper;
@ -53,21 +53,21 @@ public class StoneMaterial {
brick_wall = EndBlocks.registerBlock(name + "_bricks_wall", new BlockWall(bricks));
// Recipes //
RecipeBuilder.make(name + "_bricks", bricks).setOutputCount(4).setShape("##", "##").addMaterial('#', stone).setGroup("end_bricks").build();
RecipeBuilder.make(name + "_polished", polished).setOutputCount(4).setShape("##", "##").addMaterial('#', bricks).setGroup("end_tile").build();
RecipeBuilder.make(name + "_tiles", tiles).setOutputCount(4).setShape("##", "##").addMaterial('#', polished).setGroup("end_small_tile").build();
RecipeBuilder.make(name + "_pillar", pillar).setShape("#", "#").addMaterial('#', slab).setGroup("end_pillar").build();
GridRecipe.make(name + "_bricks", bricks).setOutputCount(4).setShape("##", "##").addMaterial('#', stone).setGroup("end_bricks").build();
GridRecipe.make(name + "_polished", polished).setOutputCount(4).setShape("##", "##").addMaterial('#', bricks).setGroup("end_tile").build();
GridRecipe.make(name + "_tiles", tiles).setOutputCount(4).setShape("##", "##").addMaterial('#', polished).setGroup("end_small_tile").build();
GridRecipe.make(name + "_pillar", pillar).setShape("#", "#").addMaterial('#', slab).setGroup("end_pillar").build();
RecipeBuilder.make(name + "_stairs", stairs).setOutputCount(4).setShape("# ", "## ", "###").addMaterial('#', stone).setGroup("end_stone_stairs").build();
RecipeBuilder.make(name + "_slab", slab).setOutputCount(6).setShape("###").addMaterial('#', stone).setGroup("end_stone_slabs").build();
RecipeBuilder.make(name + "_bricks_stairs", brick_stairs).setOutputCount(4).setShape("# ", "## ", "###").addMaterial('#', bricks).setGroup("end_stone_stairs").build();
RecipeBuilder.make(name + "_bricks_slab", brick_slab).setOutputCount(6).setShape("###").addMaterial('#', bricks).setGroup("end_stone_slabs").build();
GridRecipe.make(name + "_stairs", stairs).setOutputCount(4).setShape("# ", "## ", "###").addMaterial('#', stone).setGroup("end_stone_stairs").build();
GridRecipe.make(name + "_slab", slab).setOutputCount(6).setShape("###").addMaterial('#', stone).setGroup("end_stone_slabs").build();
GridRecipe.make(name + "_bricks_stairs", brick_stairs).setOutputCount(4).setShape("# ", "## ", "###").addMaterial('#', bricks).setGroup("end_stone_stairs").build();
GridRecipe.make(name + "_bricks_slab", brick_slab).setOutputCount(6).setShape("###").addMaterial('#', bricks).setGroup("end_stone_slabs").build();
RecipeBuilder.make(name + "_wall", wall).setOutputCount(6).setShape("###", "###").addMaterial('#', stone).setGroup("end_wall").build();
RecipeBuilder.make(name + "_bricks_wall", brick_wall).setOutputCount(6).setShape("###", "###").addMaterial('#', bricks).setGroup("end_wall").build();
GridRecipe.make(name + "_wall", wall).setOutputCount(6).setShape("###", "###").addMaterial('#', stone).setGroup("end_wall").build();
GridRecipe.make(name + "_bricks_wall", brick_wall).setOutputCount(6).setShape("###", "###").addMaterial('#', bricks).setGroup("end_wall").build();
RecipeBuilder.make(name + "_button", button).setList("#").addMaterial('#', stone).setGroup("end_stone_buttons").build();
RecipeBuilder.make(name + "_pressure_plate", pressure_plate).setShape("##").addMaterial('#', stone).setGroup("end_stone_plates").build();
GridRecipe.make(name + "_button", button).setList("#").addMaterial('#', stone).setGroup("end_stone_buttons").build();
GridRecipe.make(name + "_pressure_plate", pressure_plate).setShape("##").addMaterial('#', stone).setGroup("end_stone_plates").build();
// Item Tags //
TagHelper.addTag(ItemTags.SLABS, slab, brick_slab);

View file

@ -26,7 +26,7 @@ import ru.betterend.blocks.basis.BlockSlab;
import ru.betterend.blocks.basis.BlockStairs;
import ru.betterend.blocks.basis.BlockTrapdoor;
import ru.betterend.blocks.basis.BlockWoodenButton;
import ru.betterend.recipe.builders.RecipeBuilder;
import ru.betterend.recipe.builders.GridRecipe;
import ru.betterend.registry.EndBlocks;
import ru.betterend.util.TagHelper;
@ -82,20 +82,20 @@ public class WoodenMaterial {
barrel = EndBlocks.registerBlock(name + "_barrel", new BlockBarrel(planks));
// Recipes //
RecipeBuilder.make(name + "_planks", planks).setOutputCount(4).setList("#").addMaterial('#', log, bark, log_stripped, bark_stripped).setGroup("end_planks").build();
RecipeBuilder.make(name + "_stairs", stairs).setOutputCount(4).setShape("# ", "## ", "###").addMaterial('#', planks).setGroup("end_planks_stairs").build();
RecipeBuilder.make(name + "_slab", slab).setOutputCount(6).setShape("###").addMaterial('#', planks).setGroup("end_planks_slabs").build();
RecipeBuilder.make(name + "_fence", fence).setOutputCount(3).setShape("#I#", "#I#").addMaterial('#', planks).addMaterial('I', Items.STICK).setGroup("end_planks_fences").build();
RecipeBuilder.make(name + "_gate", gate).setShape("I#I", "I#I").addMaterial('#', planks).addMaterial('I', Items.STICK).setGroup("end_planks_gates").build();
RecipeBuilder.make(name + "_button", button).setList("#").addMaterial('#', planks).setGroup("end_planks_buttons").build();
RecipeBuilder.make(name + "_pressure_plate", pressure_plate).setShape("##").addMaterial('#', planks).setGroup("end_planks_plates").build();
RecipeBuilder.make(name + "_trapdoor", trapdoor).setOutputCount(2).setShape("###", "###").addMaterial('#', planks).setGroup("end_trapdoors").build();
RecipeBuilder.make(name + "_door", door).setOutputCount(3).setShape("##", "##", "##").addMaterial('#', planks).setGroup("end_doors").build();
RecipeBuilder.make(name + "_crafting_table", crafting_table).setShape("##", "##").addMaterial('#', planks).setGroup("end_tables").build();
RecipeBuilder.make(name + "_ladder", ladder).setOutputCount(3).setShape("I I", "I#I", "I I").addMaterial('#', planks).addMaterial('I', Items.STICK).setGroup("end_ladders").build();
RecipeBuilder.make(name + "_sign", sign).setOutputCount(3).setShape("###", "###", " I ").addMaterial('#', planks).addMaterial('I', Items.STICK).setGroup("end_signs").build();
RecipeBuilder.make(name + "_chest", chest).setShape("###", "# #", "###").addMaterial('#', planks).setGroup("end_chests").build();
RecipeBuilder.make(name + "_barrel", barrel).setShape("#S#", "# #", "#S#").addMaterial('#', planks).addMaterial('S', slab).setGroup("end_barrels").build();
GridRecipe.make(name + "_planks", planks).setOutputCount(4).setList("#").addMaterial('#', log, bark, log_stripped, bark_stripped).setGroup("end_planks").build();
GridRecipe.make(name + "_stairs", stairs).setOutputCount(4).setShape("# ", "## ", "###").addMaterial('#', planks).setGroup("end_planks_stairs").build();
GridRecipe.make(name + "_slab", slab).setOutputCount(6).setShape("###").addMaterial('#', planks).setGroup("end_planks_slabs").build();
GridRecipe.make(name + "_fence", fence).setOutputCount(3).setShape("#I#", "#I#").addMaterial('#', planks).addMaterial('I', Items.STICK).setGroup("end_planks_fences").build();
GridRecipe.make(name + "_gate", gate).setShape("I#I", "I#I").addMaterial('#', planks).addMaterial('I', Items.STICK).setGroup("end_planks_gates").build();
GridRecipe.make(name + "_button", button).setList("#").addMaterial('#', planks).setGroup("end_planks_buttons").build();
GridRecipe.make(name + "_pressure_plate", pressure_plate).setShape("##").addMaterial('#', planks).setGroup("end_planks_plates").build();
GridRecipe.make(name + "_trapdoor", trapdoor).setOutputCount(2).setShape("###", "###").addMaterial('#', planks).setGroup("end_trapdoors").build();
GridRecipe.make(name + "_door", door).setOutputCount(3).setShape("##", "##", "##").addMaterial('#', planks).setGroup("end_doors").build();
GridRecipe.make(name + "_crafting_table", crafting_table).setShape("##", "##").addMaterial('#', planks).setGroup("end_tables").build();
GridRecipe.make(name + "_ladder", ladder).setOutputCount(3).setShape("I I", "I#I", "I I").addMaterial('#', planks).addMaterial('I', Items.STICK).setGroup("end_ladders").build();
GridRecipe.make(name + "_sign", sign).setOutputCount(3).setShape("###", "###", " I ").addMaterial('#', planks).addMaterial('I', Items.STICK).setGroup("end_signs").build();
GridRecipe.make(name + "_chest", chest).setShape("###", "# #", "###").addMaterial('#', planks).setGroup("end_chests").build();
GridRecipe.make(name + "_barrel", barrel).setShape("#S#", "# #", "#S#").addMaterial('#', planks).addMaterial('S', slab).setGroup("end_barrels").build();
// Item Tags //
TagHelper.addTag(ItemTags.PLANKS, planks);

View file

@ -3,35 +3,35 @@ package ru.betterend.recipe;
import net.minecraft.block.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.Items;
import ru.betterend.recipe.builders.RecipeBuilder;
import ru.betterend.recipe.builders.GridRecipe;
import ru.betterend.registry.EndBlocks;
import ru.betterend.registry.EndItems;
public class CraftingRecipes {
public static void register() {
RecipeBuilder.make("ender_pearl_to_block", EndBlocks.ENDER_BLOCK)
GridRecipe.make("ender_pearl_to_block", EndBlocks.ENDER_BLOCK)
.setShape(new String[] { "OO", "OO" })
.addMaterial('O', Items.ENDER_PEARL)
.build();
RecipeBuilder.make("ender_block_to_pearl", Items.ENDER_PEARL)
GridRecipe.make("ender_block_to_pearl", Items.ENDER_PEARL)
.addMaterial('#', EndBlocks.ENDER_BLOCK)
.setOutputCount(4)
.setList("#")
.build();
RecipeBuilder.make("end_stone_smelter", EndBlocks.END_STONE_SMELTER)
GridRecipe.make("end_stone_smelter", EndBlocks.END_STONE_SMELTER)
.setShape(new String[] { "###", "V V", "###" })
.addMaterial('#', Blocks.END_STONE_BRICKS)
.addMaterial('V', Items.BUCKET)
.build();
String material = "terminite";
RecipeBuilder.make(material + "_block", EndBlocks.TERMINITE_BLOCK)
GridRecipe.make(material + "_block", EndBlocks.TERMINITE_BLOCK)
.setShape(new String[] { "III", "III", "III" })
.addMaterial('I', EndItems.TERMINITE_INGOT)
.build();
RecipeBuilder.make(material + "_block_to_ingot", EndItems.TERMINITE_INGOT)
GridRecipe.make(material + "_block_to_ingot", EndItems.TERMINITE_INGOT)
.addMaterial('#', EndBlocks.TERMINITE_BLOCK)
.setOutputCount(9)
.setList("#")
@ -49,11 +49,11 @@ public class CraftingRecipes {
registerHammer(material, EndItems.TERMINITE_INGOT, EndItems.TERMINITE_HAMMER);
material = "aeternium";
RecipeBuilder.make(material + "_block", EndBlocks.AETERNIUM_BLOCK)
GridRecipe.make(material + "_block", EndBlocks.AETERNIUM_BLOCK)
.setShape(new String[] { "III", "III", "III" })
.addMaterial('I', EndItems.AETERNIUM_INGOT)
.build();
RecipeBuilder.make(material + "_block_to_ingot", EndItems.AETERNIUM_INGOT)
GridRecipe.make(material + "_block_to_ingot", EndItems.AETERNIUM_INGOT)
.addMaterial('#', EndBlocks.AETERNIUM_BLOCK)
.setOutputCount(9)
.setList("#")
@ -75,46 +75,46 @@ public class CraftingRecipes {
registerHammer("diamond", Items.DIAMOND, EndItems.DIAMOND_HAMMER);
registerHammer("netherite", Items.NETHERITE_INGOT, EndItems.NETHERITE_HAMMER);
RecipeBuilder.make("blue_vine_seed_dye", Items.BLUE_DYE).setList("#").addMaterial('#', EndBlocks.BLUE_VINE_SEED).build();
RecipeBuilder.make("creeping_moss_dye", Items.CYAN_DYE).setList("#").addMaterial('#', EndBlocks.CREEPING_MOSS).build();
RecipeBuilder.make("umbrella_moss_dye", Items.YELLOW_DYE).setList("#").addMaterial('#', EndBlocks.UMBRELLA_MOSS).build();
RecipeBuilder.make("umbrella_moss_tall_dye", Items.YELLOW_DYE).setList("#").addMaterial('#', EndBlocks.UMBRELLA_MOSS_TALL).build();
GridRecipe.make("blue_vine_seed_dye", Items.BLUE_DYE).setList("#").addMaterial('#', EndBlocks.BLUE_VINE_SEED).build();
GridRecipe.make("creeping_moss_dye", Items.CYAN_DYE).setList("#").addMaterial('#', EndBlocks.CREEPING_MOSS).build();
GridRecipe.make("umbrella_moss_dye", Items.YELLOW_DYE).setList("#").addMaterial('#', EndBlocks.UMBRELLA_MOSS).build();
GridRecipe.make("umbrella_moss_tall_dye", Items.YELLOW_DYE).setList("#").addMaterial('#', EndBlocks.UMBRELLA_MOSS_TALL).build();
RecipeBuilder.make("paper", Items.PAPER).setShape("###").addMaterial('#', EndItems.END_LILY_LEAF_DRIED).setOutputCount(3).build();
GridRecipe.make("paper", Items.PAPER).setShape("###").addMaterial('#', EndItems.END_LILY_LEAF_DRIED).setOutputCount(3).build();
RecipeBuilder.make("aurora_block", EndBlocks.AURORA_CRYSTAL).setShape("##", "##").addMaterial('#', EndItems.CRYSTAL_SHARDS).build();
GridRecipe.make("aurora_block", EndBlocks.AURORA_CRYSTAL).setShape("##", "##").addMaterial('#', EndItems.CRYSTAL_SHARDS).build();
}
private static void registerHelmet(String name, Item material, Item result) {
RecipeBuilder.make(name + "_helmet", result)
GridRecipe.make(name + "_helmet", result)
.setShape(new String[] { "III", "I I" })
.addMaterial('I', material)
.build();
}
private static void registerChestplate(String name, Item material, Item result) {
RecipeBuilder.make(name + "_chestplate", result)
GridRecipe.make(name + "_chestplate", result)
.setShape(new String[] { "I I", "III", "III" })
.addMaterial('I', material)
.build();
}
private static void registerLeggings(String name, Item material, Item result) {
RecipeBuilder.make(name + "_leggings", result)
GridRecipe.make(name + "_leggings", result)
.setShape(new String[] { "III", "I I", "I I" })
.addMaterial('I', material)
.build();
}
private static void registerBoots(String name, Item material, Item result) {
RecipeBuilder.make(name + "_boots", result)
GridRecipe.make(name + "_boots", result)
.setShape(new String[] { "I I", "I I" })
.addMaterial('I', material)
.build();
}
private static void registerShovel(String name, Item material, Item result) {
RecipeBuilder.make(name + "_shovel", result)
GridRecipe.make(name + "_shovel", result)
.setShape(new String[] { "I", "#", "#" })
.addMaterial('I', material)
.addMaterial('#', Items.STICK)
@ -122,7 +122,7 @@ public class CraftingRecipes {
}
private static void registerSword(String name, Item material, Item result) {
RecipeBuilder.make(name + "_sword", result)
GridRecipe.make(name + "_sword", result)
.setShape(new String[] { "I", "I", "#" })
.addMaterial('I', material)
.addMaterial('#', Items.STICK)
@ -130,7 +130,7 @@ public class CraftingRecipes {
}
private static void registerPickaxe(String name, Item material, Item result) {
RecipeBuilder.make(name + "_pickaxe", result)
GridRecipe.make(name + "_pickaxe", result)
.setShape(new String[] { "III", " # ", " # " })
.addMaterial('I', material)
.addMaterial('#', Items.STICK)
@ -138,7 +138,7 @@ public class CraftingRecipes {
}
private static void registerAxe(String name, Item material, Item result) {
RecipeBuilder.make(name + "_axe", result)
GridRecipe.make(name + "_axe", result)
.setShape(new String[] { "II", "#I", "# " })
.addMaterial('I', material)
.addMaterial('#', Items.STICK)
@ -146,7 +146,7 @@ public class CraftingRecipes {
}
private static void registerHoe(String name, Item material, Item result) {
RecipeBuilder.make(name + "_hoe", result)
GridRecipe.make(name + "_hoe", result)
.setShape(new String[] { "II", "# ", "# " })
.addMaterial('I', material)
.addMaterial('#', Items.STICK)
@ -154,7 +154,7 @@ public class CraftingRecipes {
}
private static void registerHammer(String name, Item material, Item result) {
RecipeBuilder.make(name + "_hammer", result)
GridRecipe.make(name + "_hammer", result)
.setShape(new String[] { "I I", "I#I", " # " })
.addMaterial('I', material)
.addMaterial('#', Items.STICK)

View file

@ -1,10 +1,13 @@
package ru.betterend.recipe;
import net.minecraft.block.Blocks;
import ru.betterend.recipe.builders.FurnaceRecipe;
import ru.betterend.registry.EndBlocks;
import ru.betterend.registry.EndItems;
public class SmeltigRecipes {
public static void register() {
FurnaceRecipe.make("end_lily_leaf_dried", EndItems.END_LILY_LEAF, EndItems.END_LILY_LEAF_DRIED).build();
FurnaceRecipe.make("end_glass", EndBlocks.ENDSTONE_DUST, Blocks.GLASS).build();
}
}

View file

@ -19,8 +19,8 @@ import ru.betterend.BetterEnd;
import ru.betterend.recipe.EndRecipeManager;
import ru.betterend.util.RecipeHelper;
public class RecipeBuilder {
private static final RecipeBuilder INSTANCE = new RecipeBuilder();
public class GridRecipe {
private static final GridRecipe INSTANCE = new GridRecipe();
private String name;
private ItemConvertible output;
@ -33,9 +33,9 @@ public class RecipeBuilder {
private int count;
private boolean exist = true;
private RecipeBuilder() {}
private GridRecipe() {}
public static RecipeBuilder make(String name, ItemConvertible output) {
public static GridRecipe make(String name, ItemConvertible output) {
INSTANCE.name = name;
INSTANCE.output = output;
@ -51,39 +51,39 @@ public class RecipeBuilder {
return INSTANCE;
}
public RecipeBuilder setGroup(String group) {
public GridRecipe setGroup(String group) {
this.group = group;
return this;
}
public RecipeBuilder setShape(String... shape) {
public GridRecipe setShape(String... shape) {
this.shape = shape;
return this;
}
public RecipeBuilder setList(String shape) {
public GridRecipe setList(String shape) {
this.shape = new String[] {shape};
this.shaped = false;
return this;
}
public RecipeBuilder addMaterial(char key, Tag<Item> value) {
public GridRecipe addMaterial(char key, Tag<Item> value) {
return addMaterial(key, Ingredient.fromTag(value));
}
public RecipeBuilder addMaterial(char key, ItemConvertible... values) {
public GridRecipe addMaterial(char key, ItemConvertible... values) {
for (ItemConvertible item: values) {
exist &= RecipeHelper.exists(item);
}
return addMaterial(key, Ingredient.ofItems(values));
}
private RecipeBuilder addMaterial(char key, Ingredient value) {
private GridRecipe addMaterial(char key, Ingredient value) {
materialKeys.put(key, value);
return this;
}
public RecipeBuilder setOutputCount(int count) {
public GridRecipe setOutputCount(int count) {
this.count = count;
return this;
}