diff --git a/src/main/java/ru/betterend/blocks/complex/WoodenMaterial.java b/src/main/java/ru/betterend/blocks/complex/WoodenMaterial.java index 53b58e00..d3100c4d 100644 --- a/src/main/java/ru/betterend/blocks/complex/WoodenMaterial.java +++ b/src/main/java/ru/betterend/blocks/complex/WoodenMaterial.java @@ -5,9 +5,11 @@ import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.block.Blocks; import net.minecraft.block.MaterialColor; +import net.minecraft.item.Item; import net.minecraft.item.Items; import net.minecraft.tag.BlockTags; import net.minecraft.tag.ItemTags; +import net.minecraft.tag.Tag; import ru.betterend.blocks.basis.BlockBark; import ru.betterend.blocks.basis.BlockBarkStripable; import ru.betterend.blocks.basis.BlockBarrel; @@ -46,11 +48,11 @@ public class WoodenMaterial { public final Block fence; public final Block gate; public final Block button; - public final Block pressure_plate; + public final Block pressurePlate; public final Block trapdoor; public final Block door; - public final Block crafting_table; + public final Block craftingTable; public final Block ladder; public final Block sign; @@ -58,6 +60,9 @@ public class WoodenMaterial { public final Block barrel; public final Block shelf; + public final Tag.Identified logBlockTag; + public final Tag.Identified logItemTag; + public WoodenMaterial(String name, MaterialColor woodColor, MaterialColor planksColor) { FabricBlockSettings materialPlanks = FabricBlockSettings.copyOf(Blocks.OAK_PLANKS).materialColor(planksColor); @@ -73,11 +78,11 @@ public class WoodenMaterial { fence = EndBlocks.registerBlock(name + "_fence", new BlockFence(planks)); gate = EndBlocks.registerBlock(name + "_gate", new BlockGate(planks)); button = EndBlocks.registerBlock(name + "_button", new BlockWoodenButton(planks)); - pressure_plate = EndBlocks.registerBlock(name + "_plate", new BlockPressurePlate(planks)); + pressurePlate = EndBlocks.registerBlock(name + "_plate", new BlockPressurePlate(planks)); trapdoor = EndBlocks.registerBlock(name + "_trapdoor", new BlockTrapdoor(planks)); door = EndBlocks.registerBlock(name + "_door", new BlockDoor(planks)); - crafting_table = EndBlocks.registerBlock(name + "_crafting_table", new BlockCraftingTable(planks)); + craftingTable = EndBlocks.registerBlock(name + "_crafting_table", new BlockCraftingTable(planks)); ladder = EndBlocks.registerBlock(name + "_ladder", new BlockLadder(planks)); sign = EndBlocks.registerBlock(name + "_sign", new BlockSign(planks)); @@ -92,10 +97,10 @@ public class WoodenMaterial { 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 + "_pressure_plate", pressurePlate).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 + "_crafting_table", craftingTable).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(); @@ -104,7 +109,7 @@ public class WoodenMaterial { // Item Tags // TagHelper.addTag(ItemTags.PLANKS, planks); - TagHelper.addTag(ItemTags.WOODEN_PRESSURE_PLATES, pressure_plate); + TagHelper.addTag(ItemTags.WOODEN_PRESSURE_PLATES, pressurePlate); TagHelper.addTag(ItemTags.LOGS, log, bark, log_stripped, bark_stripped); TagHelper.addTag(ItemTags.LOGS_THAT_BURN, log, bark, log_stripped, bark_stripped); @@ -128,6 +133,11 @@ public class WoodenMaterial { TagHelper.addTags(stairs, BlockTags.WOODEN_STAIRS, BlockTags.STAIRS); TagHelper.addTags(trapdoor, BlockTags.WOODEN_TRAPDOORS, BlockTags.TRAPDOORS); TagHelper.addTag(EndTags.BOOKSHELVES, shelf); + + logBlockTag = EndTags.makeBlockTag(name + "_logs"); + logItemTag = EndTags.makeItemTag(name + "_logs"); + TagHelper.addTag(logBlockTag, log_stripped, bark_stripped, log, bark); + TagHelper.addTag(logItemTag, log_stripped, bark_stripped, log, bark); } public boolean isTreeLog(Block block) { diff --git a/src/main/java/ru/betterend/registry/EndTags.java b/src/main/java/ru/betterend/registry/EndTags.java index 97acb5c9..f6943273 100644 --- a/src/main/java/ru/betterend/registry/EndTags.java +++ b/src/main/java/ru/betterend/registry/EndTags.java @@ -11,6 +11,7 @@ import net.minecraft.block.LeavesBlock; import net.minecraft.item.BlockItem; import net.minecraft.item.Item; import net.minecraft.tag.BlockTags; +import net.minecraft.tag.ItemTags; import net.minecraft.tag.Tag; import net.minecraft.tag.Tag.Identified; import net.minecraft.util.Identifier; @@ -26,20 +27,26 @@ import ru.betterend.util.TagHelper; public class EndTags { // Block Tags - public static final Tag.Identified END_GROUND = makeTag("end_ground"); - public static final Tag.Identified GEN_TERRAIN = makeTag("gen_terrain"); + public static final Tag.Identified END_GROUND = makeBlockTag("end_ground"); + public static final Tag.Identified GEN_TERRAIN = makeBlockTag("gen_terrain"); public static final Tag.Identified BOOKSHELVES = makeCommonTag("bookshelves"); // Item Tags public final static Tag HAMMERS = registerFabricItemTag("hammers"); - private static Tag.Identified makeTag(String name) { + public static Tag.Identified makeBlockTag(String name) { Identifier id = BetterEnd.makeID(name); Tag tag = BlockTags.getTagGroup().getTag(id); return tag == null ? (Identified) TagRegistry.block(id) : (Identified) tag; } - private static Tag.Identified makeCommonTag(String name) { + public static Tag.Identified makeItemTag(String name) { + Identifier id = BetterEnd.makeID(name); + Tag tag = ItemTags.getTagGroup().getTag(id); + return tag == null ? (Identified) TagRegistry.item(id) : (Identified) tag; + } + + public static Tag.Identified makeCommonTag(String name) { Identifier id = new Identifier("c", name); Tag tag = BlockTags.getTagGroup().getTag(id); return tag == null ? (Identified) TagRegistry.block(id) : (Identified) tag;