From 76830ae428d1cb5e1cf0b299dbb40160d9474eeb Mon Sep 17 00:00:00 2001 From: Voidsong Dragonfly Date: Sat, 22 Jun 2024 16:14:23 -0400 Subject: [PATCH] Adding More Blocks to Specialty Tool Break Tags (#5971) * Update block tags for grinding disc cutting - Added metal multiblocks to the list of cuttables - Added most* `MetalDevice`s to the list of cuttables - Added windows and new decor to the list of cuttables - Added transformers to the list of cuttables * Remove razor wire from hammer break list - Brings parity with expectations - Now, only wirecutters can remove it * Update rockcutting blade breakable tags - Add other Overworld stones (calcite, dripstone) - Add nether stones (blackstone, basalt) - Add other stones (endstone, obsidian) - Added silktouchable stone blocks: - Added Gilded Blackstone - Added coral blocks * Add Vanilla metallic blocks to grinding disc - Added chipped, damaged, and normal anvils - Add cauldrons with all fluids - Added chains and iron bars - Added iron doors and trapdoors - Added light and heavy weighted pressure plates - Added hopper and lightning rod * Remove non-metal storage blocks from grinding disc - Does not remove other mod's storage blocks - Technical limitations prevent this - Removes lapis, redstone, quartz, diamond, emerald, amethyst, and coal --- .../data/tags/IEBlockTags.java | 56 +++++++++++++-- .../8861e8b56b8339d4437e7f8f8306e4a1ccd9b173 | 16 ++--- .../tags/blocks/mineable/grinding_disk.json | 69 ++++++++++++++++++- .../tags/blocks/mineable/hammer.json | 3 + .../tags/blocks/mineable/rockcutter.json | 25 +++++++ 5 files changed, 154 insertions(+), 15 deletions(-) diff --git a/src/datagen/java/blusunrize/immersiveengineering/data/tags/IEBlockTags.java b/src/datagen/java/blusunrize/immersiveengineering/data/tags/IEBlockTags.java index f76ef07117..9c3100e79f 100644 --- a/src/datagen/java/blusunrize/immersiveengineering/data/tags/IEBlockTags.java +++ b/src/datagen/java/blusunrize/immersiveengineering/data/tags/IEBlockTags.java @@ -19,6 +19,7 @@ import blusunrize.immersiveengineering.common.blocks.metal.ConveyorBlock; import blusunrize.immersiveengineering.common.blocks.metal.MetalLadderBlock; import blusunrize.immersiveengineering.common.blocks.metal.MetalScaffoldingType; +import blusunrize.immersiveengineering.common.blocks.multiblocks.IEMultiblocks; import blusunrize.immersiveengineering.common.blocks.wooden.TreatedWoodStyles; import blusunrize.immersiveengineering.common.fluids.IEFluidBlock; import blusunrize.immersiveengineering.common.register.IEBlocks; @@ -311,20 +312,42 @@ private void registerHammerMineable() if(block instanceof ConnectorBlock||block instanceof ConveyorBlock) tag.add(block); } + //Razor wire should only be broken by wirecutters, and its addition is accidental + tag.remove(MetalDevices.RAZOR_WIRE.get()); } private void registerRockcutterMineable() { + /* + * Current design philosophy for the rockcutter is as follows: + * The rockcutter is not here to break synthetic stone blocks, it's here to break worldgen blocks + silktouchables + * Thus, no stairs or slabs or similar, and the exclusion of prismarine + * Just the stone blocks common in every dimension along with ores and other similar blocks + */ IntrinsicTagAppender tag = tag(IETags.rockcutterHarvestable); - // stones & ores + // overworld stones & ores tag.addTag(Tags.Blocks.COBBLESTONE); tag.addTag(Tags.Blocks.STONE); + tag.addTag(Tags.Blocks.SANDSTONE); tag.addTag(Tags.Blocks.ORES); - // glass, ice, glowing blocks + tag.add(Blocks.CALCITE, Blocks.DRIPSTONE_BLOCK, Blocks.POINTED_DRIPSTONE); + // specialty stones and stone-alikes + tag.addTag(Tags.Blocks.NETHERRACK); + tag.add(Blocks.BASALT, Blocks.SMOOTH_BASALT); + tag.add(Blocks.BLACKSTONE); + tag.add(Blocks.END_STONE); + tag.add(Blocks.OBSIDIAN, Blocks.CRYING_OBSIDIAN); + tag.add(Blocks.BONE_BLOCK); + // glass, ice, amethyst, glowing blocks, gilded blackstone tag.addTag(Tags.Blocks.GLASS); tag.addTag(BlockTags.ICE); + tag.add(Blocks.AMETHYST_BLOCK, Blocks.BUDDING_AMETHYST, Blocks.AMETHYST_CLUSTER, Blocks.LARGE_AMETHYST_BUD, Blocks.MEDIUM_AMETHYST_BUD, Blocks.SMALL_AMETHYST_BUD); tag.add(Blocks.GLOWSTONE); tag.add(Blocks.SEA_LANTERN); + tag.add(Blocks.GILDED_BLACKSTONE); + // coral, first alive by tag and then dead by block - silktouchable and pickaxe-needed + the dead ones for consistency + tag.addTag(BlockTags.CORAL_BLOCKS); + tag.add(Blocks.DEAD_BRAIN_CORAL_BLOCK, Blocks.DEAD_BUBBLE_CORAL_BLOCK, Blocks.DEAD_FIRE_CORAL_BLOCK, Blocks.DEAD_HORN_CORAL_BLOCK, Blocks.DEAD_TUBE_CORAL_BLOCK); // enderchest tag.addTag(Tags.Blocks.CHESTS_ENDER); // skulk, but intentionally only some of them @@ -334,8 +357,9 @@ private void registerRockcutterMineable() private void registerGrindingDiskMineable() { IntrinsicTagAppender tag = tag(IETags.grindingDiskHarvestable); - // storage and sheetmetal + // storage and remove rocklike storage, sheetmetal tag.addTag(Tags.Blocks.STORAGE_BLOCKS); + tag.remove(Blocks.AMETHYST_BLOCK, Blocks.QUARTZ_BLOCK, Blocks.LAPIS_BLOCK, Blocks.REDSTONE_BLOCK, Blocks.DIAMOND_BLOCK, Blocks.EMERALD_BLOCK, Blocks.COAL_BLOCK); tag.addTag(IETags.sheetmetals); // storage and sheetmetal slabs for(EnumMetals metal : EnumMetals.values()) @@ -347,19 +371,39 @@ private void registerGrindingDiskMineable() tag.addTag(IETags.cutCopperBlocks); tag.addTag(IETags.cutCopperSlabs); tag.addTag(IETags.cutCopperStairs); + // vanilla blocks + tag.add(Blocks.ANVIL, Blocks.CHIPPED_ANVIL, Blocks.DAMAGED_ANVIL); + tag.add(Blocks.CHAIN, Blocks.IRON_BARS, Blocks.IRON_DOOR, Blocks.IRON_TRAPDOOR, Blocks.HEAVY_WEIGHTED_PRESSURE_PLATE, Blocks.LIGHT_WEIGHTED_PRESSURE_PLATE, + Blocks.HOPPER, Blocks.CAULDRON, Blocks.LAVA_CAULDRON, Blocks.WATER_CAULDRON, Blocks.POWDER_SNOW_CAULDRON, Blocks.LIGHTNING_ROD); // scaffolding tag.addTag(IETags.scaffoldingSteel); tag.addTag(IETags.scaffoldingAlu); - tag.add(MetalDecoration.ALU_FENCE.get(), MetalDecoration.ALU_POST.get(), MetalDecoration.ALU_WALLMOUNT.get(), MetalDecoration.ALU_SLOPE.get()); - tag.add(MetalDecoration.STEEL_FENCE.get(), MetalDecoration.STEEL_POST.get(), MetalDecoration.STEEL_WALLMOUNT.get(), MetalDecoration.STEEL_SLOPE.get()); + // decorations including catwalks + tag.add(MetalDecoration.LANTERN.get(), MetalDecoration.STEEL_DOOR.get(), MetalDecoration.STEEL_TRAPDOOR.get(), MetalDecoration.REINFORCED_WINDOW.get()); + tag.add(MetalDecoration.ALU_FENCE.get(), MetalDecoration.ALU_POST.get(), MetalDecoration.ALU_WALLMOUNT.get(), MetalDecoration.ALU_SLOPE.get(), + MetalDecoration.ALU_CATWALK.get(), MetalDecoration.ALU_CATWALK_STAIRS.get(), MetalDecoration.ALU_WINDOW.get()); + tag.add(MetalDecoration.STEEL_FENCE.get(), MetalDecoration.STEEL_POST.get(), MetalDecoration.STEEL_WALLMOUNT.get(), MetalDecoration.STEEL_SLOPE.get(), + MetalDecoration.STEEL_CATWALK.get(), MetalDecoration.STEEL_CATWALK_STAIRS.get(), MetalDecoration.STEEL_WINDOW.get()); MetalDecoration.METAL_LADDER.values().forEach(entry -> tag.add(entry.get())); // chutes MetalDevices.CHUTES.values().forEach(entry -> tag.add(entry.get())); // fluid machines - tag.add(MetalDevices.BARREL.get(), MetalDevices.FLUID_PUMP.get(), MetalDevices.FLUID_PIPE.get(), MetalDevices.FLUID_PLACER.get()); + tag.add(MetalDevices.BARREL.get(), MetalDevices.FLUID_PUMP.get(), MetalDevices.FLUID_PIPE.get(), MetalDevices.FLUID_PLACER.get(), MetalDevices.PIPE_VALVE.get()); + // other machines + tag.add(MetalDevices.BLAST_FURNACE_PREHEATER.get(), MetalDevices.FURNACE_HEATER.get(), MetalDevices.DYNAMO.get(), MetalDevices.THERMOELECTRIC_GEN.get(), + MetalDevices.ELECTRIC_LANTERN.get(), MetalDevices.SAMPLE_DRILL.get(), MetalDevices.FLOODLIGHT.get(), MetalDevices.ELECTROMAGNET.get()); + // wire connected machines + tag.add(Connectors.CONNECTOR_STRUCTURAL.get(), Connectors.TRANSFORMER.get(), Connectors.TRANSFORMER_HV.get(), Connectors.BREAKER_SWITCH.get(), + Connectors.REDSTONE_BREAKER.get(), Connectors.CURRENT_TRANSFORMER.get(), Connectors.POST_TRANSFORMER.get()); // multiblock components tag.add(MetalDecoration.LV_COIL.get(), MetalDecoration.MV_COIL.get(), MetalDecoration.MV_COIL.get()); tag.add(MetalDecoration.ENGINEERING_RS.get(), MetalDecoration.ENGINEERING_LIGHT.get(), MetalDecoration.ENGINEERING_HEAVY.get(), MetalDecoration.RADIATOR.get(), MetalDecoration.GENERATOR.get()); + // multiblock blocks? + tag.add(IEMultiblocks.CRUSHER.getBlock(), IEMultiblocks.SAWMILL.getBlock(), IEMultiblocks.ARC_FURNACE.getBlock(), IEMultiblocks.ASSEMBLER.getBlock(), + IEMultiblocks.AUTO_WORKBENCH.getBlock(), IEMultiblocks.BOTTLING_MACHINE.getBlock(), IEMultiblocks.BUCKET_WHEEL.getBlock(), + IEMultiblocks.DIESEL_GENERATOR.getBlock(), IEMultiblocks.EXCAVATOR.getBlock(), IEMultiblocks.FERMENTER.getBlock(), IEMultiblocks.LIGHTNING_ROD.getBlock(), + IEMultiblocks.METAL_PRESS.getBlock(), IEMultiblocks.MIXER.getBlock(), IEMultiblocks.REFINERY.getBlock(), IEMultiblocks.SHEETMETAL_TANK.getBlock(), + IEMultiblocks.SILO.getBlock(), IEMultiblocks.SQUEEZER.getBlock()); } private void registerAxeMineable() diff --git a/src/generated/resources/.cache/8861e8b56b8339d4437e7f8f8306e4a1ccd9b173 b/src/generated/resources/.cache/8861e8b56b8339d4437e7f8f8306e4a1ccd9b173 index e0084c6ee7..7fd437ce8d 100644 --- a/src/generated/resources/.cache/8861e8b56b8339d4437e7f8f8306e4a1ccd9b173 +++ b/src/generated/resources/.cache/8861e8b56b8339d4437e7f8f8306e4a1ccd9b173 @@ -1,8 +1,9 @@ -// 1.20.4 2024-06-20T18:04:30.3871027 Tags for minecraft:block mod id immersiveengineering +// 1.20.4 2024-06-22T15:55:19.466854633 Tags for minecraft:block mod id immersiveengineering 23e0570e60d941c629a243d8c02fbf74523eee75 data/chiselsandbits/tags/blocks/chiselable/forced.json bb2e9cd3d85c96526d774c4c6023d900f99a15bc data/forge/tags/blocks/fences/aluminum.json c9ee95be2edb84e91278b0fef1cbc9dea336b664 data/forge/tags/blocks/fences/steel.json 798333dba3595d9304d05418ce04a44f69a7d6c1 data/forge/tags/blocks/gravel.json +03803ad3e358573f495ef5a2b28fff69483d9903 data/forge/tags/blocks/ore_rates/singular.json 096b05ce0e1511fdf1f849355b7214fd71c6727d data/forge/tags/blocks/ores.json 996364607181408578d2a18b0cd5941fe3251ffd data/forge/tags/blocks/ores/aluminum.json 2d5302798c26775d656807ac1d209b4b7430ff17 data/forge/tags/blocks/ores/lead.json @@ -11,9 +12,9 @@ c9ee95be2edb84e91278b0fef1cbc9dea336b664 data/forge/tags/blocks/fences/steel.jso e10e19eb1ecd0d4fbd2270995a9c4b14c981af49 data/forge/tags/blocks/ores/uranium.json ad7cc89e6b8ad6b0c7c3544c0abd3446c612060c data/forge/tags/blocks/ores_in_ground/deepslate.json 81467f7c9399b301ac496bf424b8c8b807db752a data/forge/tags/blocks/ores_in_ground/stone.json -03803ad3e358573f495ef5a2b28fff69483d9903 data/forge/tags/blocks/ore_rates/singular.json c0ba8fbc5bb958978c15dbbbf9109c2f235e20ec data/forge/tags/blocks/sandstone/colorless.json 6a91d4acdb80541d81cbf2ccc3347b0749b64363 data/forge/tags/blocks/sandstone/red.json +f8407d8b86459d08f321ad472e23df8b11f04807 data/forge/tags/blocks/sheetmetal_slabs.json edecb36d2c51c53656e146c80bbf300e4d52de39 data/forge/tags/blocks/sheetmetals.json 685fe54ad50bcb90d1857662c38ad1e2e89bb8a6 data/forge/tags/blocks/sheetmetals/aluminum.json 208b8916c3964147d79703c1eb7096e8775aa78f data/forge/tags/blocks/sheetmetals/constantan.json @@ -26,7 +27,6 @@ ff543a6161432e4e8dd2bd8775ab99af16c0315c data/forge/tags/blocks/sheetmetals/nick bc8cb8d4f41333ae547eb75f529beb92a7a62dd9 data/forge/tags/blocks/sheetmetals/silver.json 44df194bae79ecbc6ba642f28825d7d55f640865 data/forge/tags/blocks/sheetmetals/steel.json 517af5879eee0eaacb6ec77424a19790f680f6bd data/forge/tags/blocks/sheetmetals/uranium.json -f8407d8b86459d08f321ad472e23df8b11f04807 data/forge/tags/blocks/sheetmetal_slabs.json c0afad8eab5f9b2dac5ccf01d9dbec3d9c080202 data/forge/tags/blocks/storage_blocks.json a252494dc3a9a5b9aab17e82ae7ff504ca84a099 data/forge/tags/blocks/storage_blocks/aluminum.json da1d12f678963493519caaff63a76241b220579f data/forge/tags/blocks/storage_blocks/clay.json @@ -53,16 +53,16 @@ a512013e18e15e72a03d9d066e8c87ca591ed9cd data/immersiveengineering/tags/blocks/c 3e4fc91069da2d49ed9c3bd132c947b9879bdd0c data/immersiveengineering/tags/blocks/cut_slabs/copper.json 240d783ca901747689edbff6ec068e1ebafd3dc6 data/immersiveengineering/tags/blocks/cut_stairs/copper.json f7dc293929a2176bc6e428c765f6bf49fbeccdb5 data/immersiveengineering/tags/blocks/mineable/drill.json -cbf85412255d24b479f6ffd05374a23bb4e18d6f data/immersiveengineering/tags/blocks/mineable/grinding_disk.json -7204f37efe73e4ab8e5d05aef0e7c1fc973a8771 data/immersiveengineering/tags/blocks/mineable/hammer.json -2c887477b8e0a8ee24392b29c8b0488279730574 data/immersiveengineering/tags/blocks/mineable/rockcutter.json +df59740a45d81e46667fe6be8276f38bfad83c07 data/immersiveengineering/tags/blocks/mineable/grinding_disk.json +4c5243b0031eaa087fae83b917f458e007e938ef data/immersiveengineering/tags/blocks/mineable/hammer.json +257302a3aa4c7c0535a097da79937172a08f7e84 data/immersiveengineering/tags/blocks/mineable/rockcutter.json 22c291dd8a303b2f6629a7430880a0678e679ac4 data/immersiveengineering/tags/blocks/mineable/wirecutter.json -586d8c57de0cdcef9e768494366ce79e22d75223 data/immersiveengineering/tags/blocks/scaffoldings/aluminum.json -8f3e0a730467c3941f6d1bc9e6c02d4dac7200f0 data/immersiveengineering/tags/blocks/scaffoldings/steel.json c3d387e89fbb8dfb53e5e91ad3b45e07f5202650 data/immersiveengineering/tags/blocks/scaffolding_slabs/aluminum.json 56c051f4ddf6a8bfb51631d88f7553d13e908a69 data/immersiveengineering/tags/blocks/scaffolding_slabs/steel.json b7ae6076dcdde66b8bd7c303e7f5ea5e58ba24f1 data/immersiveengineering/tags/blocks/scaffolding_stairs/aluminum.json 58bcbaec9e8e1403838cbc28eb4bae9fdfa0dc3d data/immersiveengineering/tags/blocks/scaffolding_stairs/steel.json +586d8c57de0cdcef9e768494366ce79e22d75223 data/immersiveengineering/tags/blocks/scaffoldings/aluminum.json +8f3e0a730467c3941f6d1bc9e6c02d4dac7200f0 data/immersiveengineering/tags/blocks/scaffoldings/steel.json 154c4acefd20a19382ee2148d4621e8947e597d8 data/immersiveengineering/tags/blocks/survey_tool_targets.json 7719335563ce8d10e5dbd9d148c5be1d25ae89a5 data/immersiveengineering/tags/blocks/teleport_blocking.json 9acd1b4c75ce6ff1914c8b9852a3e6d29bb85403 data/minecraft/tags/blocks/azalea_root_replaceable.json diff --git a/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/grinding_disk.json b/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/grinding_disk.json index 540b17b2a0..485e629a09 100644 --- a/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/grinding_disk.json +++ b/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/grinding_disk.json @@ -1,4 +1,13 @@ { + "remove": [ + "minecraft:amethyst_block", + "minecraft:quartz_block", + "minecraft:lapis_block", + "minecraft:redstone_block", + "minecraft:diamond_block", + "minecraft:emerald_block", + "minecraft:coal_block" + ], "values": [ "#forge:storage_blocks", "#forge:sheetmetals", @@ -15,16 +24,41 @@ "#immersiveengineering:cut_blocks/copper", "#immersiveengineering:cut_slabs/copper", "#immersiveengineering:cut_stairs/copper", + "minecraft:anvil", + "minecraft:chipped_anvil", + "minecraft:damaged_anvil", + "minecraft:chain", + "minecraft:iron_bars", + "minecraft:iron_door", + "minecraft:iron_trapdoor", + "minecraft:heavy_weighted_pressure_plate", + "minecraft:light_weighted_pressure_plate", + "minecraft:hopper", + "minecraft:cauldron", + "minecraft:lava_cauldron", + "minecraft:water_cauldron", + "minecraft:powder_snow_cauldron", + "minecraft:lightning_rod", "#immersiveengineering:scaffoldings/steel", "#immersiveengineering:scaffoldings/aluminum", + "immersiveengineering:lantern", + "immersiveengineering:steel_door", + "immersiveengineering:steel_trapdoor", + "immersiveengineering:reinforced_window", "immersiveengineering:alu_fence", "immersiveengineering:alu_post", "immersiveengineering:alu_wallmount", "immersiveengineering:alu_slope", + "immersiveengineering:alu_catwalk", + "immersiveengineering:alu_catwalk_stairs", + "immersiveengineering:alu_window", "immersiveengineering:steel_fence", "immersiveengineering:steel_post", "immersiveengineering:steel_wallmount", "immersiveengineering:steel_slope", + "immersiveengineering:steel_catwalk", + "immersiveengineering:steel_catwalk_stairs", + "immersiveengineering:steel_window", "immersiveengineering:metal_ladder_none", "immersiveengineering:metal_ladder_alu", "immersiveengineering:metal_ladder_steel", @@ -36,6 +70,22 @@ "immersiveengineering:fluid_pump", "immersiveengineering:fluid_pipe", "immersiveengineering:fluid_placer", + "immersiveengineering:pipe_valve", + "immersiveengineering:blastfurnace_preheater", + "immersiveengineering:furnace_heater", + "immersiveengineering:dynamo", + "immersiveengineering:thermoelectric_generator", + "immersiveengineering:electric_lantern", + "immersiveengineering:sample_drill", + "immersiveengineering:floodlight", + "immersiveengineering:electromagnet", + "immersiveengineering:connector_structural", + "immersiveengineering:transformer", + "immersiveengineering:transformer_hv", + "immersiveengineering:breaker_switch", + "immersiveengineering:redstone_breaker", + "immersiveengineering:current_transformer", + "immersiveengineering:post_transformer", "immersiveengineering:coil_lv", "immersiveengineering:coil_mv", "immersiveengineering:coil_mv", @@ -43,6 +93,23 @@ "immersiveengineering:light_engineering", "immersiveengineering:heavy_engineering", "immersiveengineering:radiator", - "immersiveengineering:generator" + "immersiveengineering:generator", + "immersiveengineering:crusher", + "immersiveengineering:sawmill", + "immersiveengineering:arc_furnace", + "immersiveengineering:assembler", + "immersiveengineering:auto_workbench", + "immersiveengineering:bottling_machine", + "immersiveengineering:bucket_wheel", + "immersiveengineering:diesel_generator", + "immersiveengineering:excavator", + "immersiveengineering:fermenter", + "immersiveengineering:lightning_rod", + "immersiveengineering:metal_press", + "immersiveengineering:mixer", + "immersiveengineering:refinery", + "immersiveengineering:tank", + "immersiveengineering:silo", + "immersiveengineering:squeezer" ] } \ No newline at end of file diff --git a/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/hammer.json b/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/hammer.json index c6a800cd21..69e6c6e43b 100644 --- a/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/hammer.json +++ b/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/hammer.json @@ -1,4 +1,7 @@ { + "remove": [ + "immersiveengineering:razor_wire" + ], "values": [ "immersiveengineering:metal_ladder_none", "immersiveengineering:metal_ladder_alu", diff --git a/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/rockcutter.json b/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/rockcutter.json index 247e33726a..1b66d15615 100644 --- a/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/rockcutter.json +++ b/src/generated/resources/data/immersiveengineering/tags/blocks/mineable/rockcutter.json @@ -2,11 +2,36 @@ "values": [ "#forge:cobblestone", "#forge:stone", + "#forge:sandstone", "#forge:ores", + "minecraft:calcite", + "minecraft:dripstone_block", + "minecraft:pointed_dripstone", + "#forge:netherrack", + "minecraft:basalt", + "minecraft:smooth_basalt", + "minecraft:blackstone", + "minecraft:end_stone", + "minecraft:obsidian", + "minecraft:crying_obsidian", + "minecraft:bone_block", "#forge:glass", "#minecraft:ice", + "minecraft:amethyst_block", + "minecraft:budding_amethyst", + "minecraft:amethyst_cluster", + "minecraft:large_amethyst_bud", + "minecraft:medium_amethyst_bud", + "minecraft:small_amethyst_bud", "minecraft:glowstone", "minecraft:sea_lantern", + "minecraft:gilded_blackstone", + "#minecraft:coral_blocks", + "minecraft:dead_brain_coral_block", + "minecraft:dead_bubble_coral_block", + "minecraft:dead_fire_coral_block", + "minecraft:dead_horn_coral_block", + "minecraft:dead_tube_coral_block", "#forge:chests/ender", "minecraft:sculk", "minecraft:sculk_catalyst",