diff --git a/src/main/java/eu/midnightdust/motschen/verticalslabs/VerticalSlab.java b/src/main/java/eu/midnightdust/motschen/verticalslabs/VerticalSlab.java index 3bf20a0..15c78d2 100644 --- a/src/main/java/eu/midnightdust/motschen/verticalslabs/VerticalSlab.java +++ b/src/main/java/eu/midnightdust/motschen/verticalslabs/VerticalSlab.java @@ -1,95 +1,85 @@ -package eu.midnightdust.motschen.verticalslabs; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockRenderType; -import net.minecraft.block.BlockState; -import net.minecraft.block.HorizontalFacingBlock; -import net.minecraft.entity.EntityContext; -import net.minecraft.fluid.FluidState; -import net.minecraft.fluid.Fluids; -import net.minecraft.item.ItemPlacementContext; -import net.minecraft.state.StateManager; -import net.minecraft.state.property.BooleanProperty; -import net.minecraft.state.property.Properties; -import net.minecraft.tag.FluidTags; -import net.minecraft.util.Identifier; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Direction; -import net.minecraft.util.registry.Registry; -import net.minecraft.util.shape.VoxelShape; -import net.minecraft.util.shape.VoxelShapes; -import net.minecraft.world.BlockView; - - -public class VerticalSlab extends HorizontalFacingBlock { - - 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 static final BooleanProperty WATERLOGGED = Properties.WATERLOGGED; - - public VerticalSlab(Settings settings){ - super(settings); - this.setDefaultState(this.stateManager.getDefaultState().with(WATERLOGGED, true).with(FACING, Direction.NORTH)); - } - - @Override - public FluidState getFluidState(BlockState blockState_1) { - return (Boolean)blockState_1.get(WATERLOGGED) ? Fluids.WATER.getStill(false) : super.getFluidState(blockState_1); - } - - @Override - public Identifier getDropTableId() { - Identifier identifier = Registry.BLOCK.getId(this); - return new Identifier(identifier.getNamespace(), "blocks/" + identifier.getPath()); - } - - @Override - public BlockRenderType getRenderType(BlockState blockState_1) { - return BlockRenderType.MODEL; - } - - @Override - public BlockState getPlacementState(ItemPlacementContext itemPlacementContext) { - FluidState fluidState = itemPlacementContext.getWorld().getFluidState(itemPlacementContext.getBlockPos()); - boolean waterLog = fluidState.matches(FluidTags.WATER) && fluidState.getLevel() == 8; - return super.getPlacementState(itemPlacementContext).with(WATERLOGGED, waterLog) - .with(FACING, itemPlacementContext.getPlayerFacing().getOpposite()); - } - - @Override - protected void appendProperties(StateManager.Builder builder) { - builder.add(WATERLOGGED, FACING); - } - @Override - public VoxelShape getOutlineShape(BlockState state, BlockView view, BlockPos pos, EntityContext context) { - switch (state.get(FACING)) { - case NORTH: return NORTH_SHAPE; - case EAST: return EAST_SHAPE; - case SOUTH: return SOUTH_SHAPE; - case WEST: return WEST_SHAPE; - default: return super.getOutlineShape(state, view, pos, context); - } - } - static { - VoxelShape shape = createCuboidShape(0, 0, 0, 8, 16, 16); - - EAST_SHAPE = shape; - NORTH_SHAPE = rotate(Direction.EAST, Direction.NORTH, shape); - SOUTH_SHAPE = rotate(Direction.EAST, Direction.SOUTH, shape); - WEST_SHAPE = rotate(Direction.EAST, Direction.WEST, 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]; - } -} +package eu.midnightdust.motschen.verticalslabs; + +import net.minecraft.block.*; +import net.minecraft.fluid.FluidState; +import net.minecraft.fluid.Fluids; +import net.minecraft.item.ItemPlacementContext; +import net.minecraft.state.StateManager; +import net.minecraft.state.property.BooleanProperty; +import net.minecraft.state.property.Properties; +import net.minecraft.tag.FluidTags; +import net.minecraft.util.Identifier; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Direction; +import net.minecraft.util.registry.Registry; +import net.minecraft.util.shape.VoxelShape; +import net.minecraft.util.shape.VoxelShapes; +import net.minecraft.world.BlockView; + + +public class VerticalSlab extends HorizontalFacingBlock { + + 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 static final BooleanProperty WATERLOGGED = Properties.WATERLOGGED; + + public VerticalSlab(Settings settings){ + super(settings); + this.setDefaultState(this.stateManager.getDefaultState().with(WATERLOGGED, true).with(FACING, Direction.NORTH)); + } + + @Override + public FluidState getFluidState(BlockState blockState_1) { + return (Boolean)blockState_1.get(WATERLOGGED) ? Fluids.WATER.getStill(false) : super.getFluidState(blockState_1); + } + + @Override + public BlockRenderType getRenderType(BlockState blockState_1) { + return BlockRenderType.MODEL; + } + + @Override + public BlockState getPlacementState(ItemPlacementContext itemPlacementContext) { + FluidState fluidState = itemPlacementContext.getWorld().getFluidState(itemPlacementContext.getBlockPos()); + boolean waterLog = fluidState.matches(FluidTags.WATER) && fluidState.getLevel() == 8; + return super.getPlacementState(itemPlacementContext).with(WATERLOGGED, waterLog) + .with(FACING, itemPlacementContext.getPlayerFacing().getOpposite()); + } + + @Override + protected void appendProperties(StateManager.Builder builder) { + builder.add(WATERLOGGED, FACING); + } + @Override + public VoxelShape getOutlineShape(BlockState state, BlockView view, BlockPos pos, ShapeContext context) { + switch (state.get(FACING)) { + case NORTH: return NORTH_SHAPE; + case EAST: return EAST_SHAPE; + case SOUTH: return SOUTH_SHAPE; + case WEST: return WEST_SHAPE; + default: return super.getOutlineShape(state, view, pos, context); + } + } + static { + VoxelShape shape = createCuboidShape(0, 0, 0, 8, 16, 16); + + EAST_SHAPE = shape; + NORTH_SHAPE = rotate(Direction.EAST, Direction.NORTH, shape); + SOUTH_SHAPE = rotate(Direction.EAST, Direction.SOUTH, shape); + WEST_SHAPE = rotate(Direction.EAST, Direction.WEST, 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]; + } +} diff --git a/src/main/java/eu/midnightdust/motschen/verticalslabs/VerticalSlabs.java b/src/main/java/eu/midnightdust/motschen/verticalslabs/VerticalSlabs.java index dc91618..83dc4b3 100644 --- a/src/main/java/eu/midnightdust/motschen/verticalslabs/VerticalSlabs.java +++ b/src/main/java/eu/midnightdust/motschen/verticalslabs/VerticalSlabs.java @@ -1,124 +1,139 @@ -package eu.midnightdust.motschen.verticalslabs; - -import net.fabricmc.api.ModInitializer; -import net.fabricmc.fabric.api.block.FabricBlockSettings; -import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder; -import net.fabricmc.fabric.api.tools.FabricToolTags; -import net.minecraft.block.Block; -import net.minecraft.block.Material; -import net.minecraft.item.*; -import net.minecraft.sound.BlockSoundGroup; -import net.minecraft.util.Identifier; -import net.minecraft.util.registry.Registry; - -public class VerticalSlabs implements ModInitializer { - - public static final String MOD_ID = "verticalslabs"; - public static final ItemGroup VerticalSlabsGroup = FabricItemGroupBuilder.build(new Identifier(MOD_ID, "vertical_slabs"), () -> new ItemStack(VerticalSlabs.VERTICAL_OAK_SLAB)); - public static final Block VERTICAL_OAK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); - public static final Block VERTICAL_SPRUCE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); - public static final Block VERTICAL_BIRCH_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); - public static final Block VERTICAL_JUNGLE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); - public static final Block VERTICAL_ACACIA_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); - public static final Block VERTICAL_DARK_OAK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); - public static final Block VERTICAL_STONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_SMOOTH_STONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_CUT_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_COBBLESTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_STONE_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_NETHER_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_QUARTZ_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_RED_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_CUT_RED_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_PURPUR_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_PRISMARINE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_PRISMARINE_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_DARK_PRISMARINE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_POLISHED_GRANITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_SMOOTH_RED_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_MOSSY_STONE_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_POLISHED_DIORITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_MOSSY_COBBLESTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_END_STONE_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_SMOOTH_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_SMOOTH_QUARTZ_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_GRANITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_ANDESITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_RED_NETHER_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_POLISHED_ANDESITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - public static final Block VERTICAL_DIORITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); - - @Override - public void onInitialize() { - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_oak_slab"), VERTICAL_OAK_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_oak_slab"), new BlockItem(VERTICAL_OAK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_spruce_slab"), VERTICAL_SPRUCE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_spruce_slab"), new BlockItem(VERTICAL_SPRUCE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_birch_slab"), VERTICAL_BIRCH_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_birch_slab"), new BlockItem(VERTICAL_BIRCH_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_jungle_slab"), VERTICAL_JUNGLE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_jungle_slab"), new BlockItem(VERTICAL_JUNGLE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_acacia_slab"), VERTICAL_ACACIA_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_acacia_slab"), new BlockItem(VERTICAL_ACACIA_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_dark_oak_slab"), VERTICAL_DARK_OAK_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_dark_oak_slab"), new BlockItem(VERTICAL_DARK_OAK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_stone_slab"), VERTICAL_STONE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_stone_slab"), new BlockItem(VERTICAL_STONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_smooth_stone_slab"), VERTICAL_SMOOTH_STONE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_smooth_stone_slab"), new BlockItem(VERTICAL_SMOOTH_STONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_sandstone_slab"), VERTICAL_SANDSTONE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_sandstone_slab"), new BlockItem(VERTICAL_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_cut_sandstone_slab"), VERTICAL_CUT_SANDSTONE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_cut_sandstone_slab"), new BlockItem(VERTICAL_CUT_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_cobblestone_slab"), VERTICAL_COBBLESTONE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_cobblestone_slab"), new BlockItem(VERTICAL_COBBLESTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_brick_slab"), VERTICAL_BRICK_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_brick_slab"), new BlockItem(VERTICAL_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_stone_brick_slab"), VERTICAL_STONE_BRICK_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_stone_brick_slab"), new BlockItem(VERTICAL_STONE_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_nether_brick_slab"), VERTICAL_NETHER_BRICK_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_nether_brick_slab"), new BlockItem(VERTICAL_NETHER_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_quartz_slab"), VERTICAL_QUARTZ_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_quartz_slab"), new BlockItem(VERTICAL_QUARTZ_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_red_sandstone_slab"), VERTICAL_RED_SANDSTONE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_red_sandstone_slab"), new BlockItem(VERTICAL_RED_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_cut_red_sandstone_slab"), VERTICAL_CUT_RED_SANDSTONE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_cut_red_sandstone_slab"), new BlockItem(VERTICAL_CUT_RED_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_purpur_slab"), VERTICAL_PURPUR_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_purpur_slab"), new BlockItem(VERTICAL_PURPUR_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_prismarine_slab"), VERTICAL_PRISMARINE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_prismarine_slab"), new BlockItem(VERTICAL_PRISMARINE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_prismarine_brick_slab"), VERTICAL_PRISMARINE_BRICK_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_prismarine_brick_slab"), new BlockItem(VERTICAL_PRISMARINE_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_dark_prismarine_slab"), VERTICAL_DARK_PRISMARINE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_dark_prismarine_slab"), new BlockItem(VERTICAL_DARK_PRISMARINE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_polished_granite_slab"), VERTICAL_POLISHED_GRANITE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_polished_granite_slab"), new BlockItem(VERTICAL_POLISHED_GRANITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_smooth_red_sandstone_slab"), VERTICAL_SMOOTH_RED_SANDSTONE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_smooth_red_sandstone_slab"), new BlockItem(VERTICAL_SMOOTH_RED_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_mossy_stone_brick_slab"), VERTICAL_MOSSY_STONE_BRICK_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_mossy_stone_brick_slab"), new BlockItem(VERTICAL_MOSSY_STONE_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_polished_diorite_slab"), VERTICAL_POLISHED_DIORITE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_polished_diorite_slab"), new BlockItem(VERTICAL_POLISHED_DIORITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_mossy_cobblestone_slab"), VERTICAL_MOSSY_COBBLESTONE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_mossy_cobblestone_slab"), new BlockItem(VERTICAL_MOSSY_COBBLESTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_end_stone_brick_slab"), VERTICAL_END_STONE_BRICK_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_end_stone_brick_slab"), new BlockItem(VERTICAL_END_STONE_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_smooth_sandstone_slab"), VERTICAL_SMOOTH_SANDSTONE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_smooth_sandstone_slab"), new BlockItem(VERTICAL_SMOOTH_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_smooth_quartz_slab"), VERTICAL_SMOOTH_QUARTZ_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_smooth_quartz_slab"), new BlockItem(VERTICAL_SMOOTH_QUARTZ_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_granite_slab"), VERTICAL_GRANITE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_granite_slab"), new BlockItem(VERTICAL_GRANITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_andesite_slab"), VERTICAL_ANDESITE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_andesite_slab"), new BlockItem(VERTICAL_ANDESITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_red_nether_brick_slab"), VERTICAL_RED_NETHER_BRICK_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_red_nether_brick_slab"), new BlockItem(VERTICAL_RED_NETHER_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_polished_andesite_slab"), VERTICAL_POLISHED_ANDESITE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_polished_andesite_slab"), new BlockItem(VERTICAL_POLISHED_ANDESITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_diorite_slab"), VERTICAL_DIORITE_SLAB); - Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_diorite_slab"), new BlockItem(VERTICAL_DIORITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); - } -} +package eu.midnightdust.motschen.verticalslabs; + +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.block.FabricBlockSettings; +import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder; +import net.fabricmc.fabric.api.tools.FabricToolTags; +import net.minecraft.block.Block; +import net.minecraft.block.Material; +import net.minecraft.item.*; +import net.minecraft.sound.BlockSoundGroup; +import net.minecraft.util.Identifier; +import net.minecraft.util.registry.Registry; + +public class VerticalSlabs implements ModInitializer { + + public static final String MOD_ID = "verticalslabs"; + public static final ItemGroup VerticalSlabsGroup = FabricItemGroupBuilder.build(new Identifier(MOD_ID, "vertical_slabs"), () -> new ItemStack(VerticalSlabs.VERTICAL_OAK_SLAB)); + public static final Block VERTICAL_OAK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); + public static final Block VERTICAL_SPRUCE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); + public static final Block VERTICAL_BIRCH_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); + public static final Block VERTICAL_JUNGLE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); + public static final Block VERTICAL_ACACIA_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); + public static final Block VERTICAL_DARK_OAK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); + public static final Block VERTICAL_CRIMSON_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); + public static final Block VERTICAL_WARPED_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2f).breakByTool(FabricToolTags.AXES).build()); + public static final Block VERTICAL_STONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_SMOOTH_STONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_CUT_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_COBBLESTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_STONE_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_NETHER_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_QUARTZ_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_RED_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_CUT_RED_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_PURPUR_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_PRISMARINE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_PRISMARINE_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_DARK_PRISMARINE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_POLISHED_GRANITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_SMOOTH_RED_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_MOSSY_STONE_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_POLISHED_DIORITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_MOSSY_COBBLESTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_END_STONE_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_SMOOTH_SANDSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_SMOOTH_QUARTZ_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_GRANITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_ANDESITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_RED_NETHER_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_POLISHED_ANDESITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_DIORITE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_BLACKSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_POLISHED_BLACKSTONE_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + public static final Block VERTICAL_POLISHED_BLACKSTONE_BRICK_SLAB = new VerticalSlab(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2f).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).build()); + + @Override + public void onInitialize() { + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_oak_slab"), VERTICAL_OAK_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_oak_slab"), new BlockItem(VERTICAL_OAK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_spruce_slab"), VERTICAL_SPRUCE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_spruce_slab"), new BlockItem(VERTICAL_SPRUCE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_birch_slab"), VERTICAL_BIRCH_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_birch_slab"), new BlockItem(VERTICAL_BIRCH_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_jungle_slab"), VERTICAL_JUNGLE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_jungle_slab"), new BlockItem(VERTICAL_JUNGLE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_acacia_slab"), VERTICAL_ACACIA_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_acacia_slab"), new BlockItem(VERTICAL_ACACIA_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_dark_oak_slab"), VERTICAL_DARK_OAK_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_dark_oak_slab"), new BlockItem(VERTICAL_DARK_OAK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_crimson_slab"), VERTICAL_CRIMSON_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_crimson_slab"), new BlockItem(VERTICAL_CRIMSON_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_warped_slab"), VERTICAL_WARPED_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_warped_slab"), new BlockItem(VERTICAL_WARPED_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_stone_slab"), VERTICAL_STONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_stone_slab"), new BlockItem(VERTICAL_STONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_smooth_stone_slab"), VERTICAL_SMOOTH_STONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_smooth_stone_slab"), new BlockItem(VERTICAL_SMOOTH_STONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_sandstone_slab"), VERTICAL_SANDSTONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_sandstone_slab"), new BlockItem(VERTICAL_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_cut_sandstone_slab"), VERTICAL_CUT_SANDSTONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_cut_sandstone_slab"), new BlockItem(VERTICAL_CUT_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_cobblestone_slab"), VERTICAL_COBBLESTONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_cobblestone_slab"), new BlockItem(VERTICAL_COBBLESTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_brick_slab"), VERTICAL_BRICK_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_brick_slab"), new BlockItem(VERTICAL_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_stone_brick_slab"), VERTICAL_STONE_BRICK_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_stone_brick_slab"), new BlockItem(VERTICAL_STONE_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_nether_brick_slab"), VERTICAL_NETHER_BRICK_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_nether_brick_slab"), new BlockItem(VERTICAL_NETHER_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_quartz_slab"), VERTICAL_QUARTZ_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_quartz_slab"), new BlockItem(VERTICAL_QUARTZ_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_red_sandstone_slab"), VERTICAL_RED_SANDSTONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_red_sandstone_slab"), new BlockItem(VERTICAL_RED_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_cut_red_sandstone_slab"), VERTICAL_CUT_RED_SANDSTONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_cut_red_sandstone_slab"), new BlockItem(VERTICAL_CUT_RED_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_purpur_slab"), VERTICAL_PURPUR_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_purpur_slab"), new BlockItem(VERTICAL_PURPUR_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_prismarine_slab"), VERTICAL_PRISMARINE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_prismarine_slab"), new BlockItem(VERTICAL_PRISMARINE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_prismarine_brick_slab"), VERTICAL_PRISMARINE_BRICK_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_prismarine_brick_slab"), new BlockItem(VERTICAL_PRISMARINE_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_dark_prismarine_slab"), VERTICAL_DARK_PRISMARINE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_dark_prismarine_slab"), new BlockItem(VERTICAL_DARK_PRISMARINE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_polished_granite_slab"), VERTICAL_POLISHED_GRANITE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_polished_granite_slab"), new BlockItem(VERTICAL_POLISHED_GRANITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_smooth_red_sandstone_slab"), VERTICAL_SMOOTH_RED_SANDSTONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_smooth_red_sandstone_slab"), new BlockItem(VERTICAL_SMOOTH_RED_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_mossy_stone_brick_slab"), VERTICAL_MOSSY_STONE_BRICK_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_mossy_stone_brick_slab"), new BlockItem(VERTICAL_MOSSY_STONE_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_polished_diorite_slab"), VERTICAL_POLISHED_DIORITE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_polished_diorite_slab"), new BlockItem(VERTICAL_POLISHED_DIORITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_mossy_cobblestone_slab"), VERTICAL_MOSSY_COBBLESTONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_mossy_cobblestone_slab"), new BlockItem(VERTICAL_MOSSY_COBBLESTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_end_stone_brick_slab"), VERTICAL_END_STONE_BRICK_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_end_stone_brick_slab"), new BlockItem(VERTICAL_END_STONE_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_smooth_sandstone_slab"), VERTICAL_SMOOTH_SANDSTONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_smooth_sandstone_slab"), new BlockItem(VERTICAL_SMOOTH_SANDSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_smooth_quartz_slab"), VERTICAL_SMOOTH_QUARTZ_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_smooth_quartz_slab"), new BlockItem(VERTICAL_SMOOTH_QUARTZ_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_granite_slab"), VERTICAL_GRANITE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_granite_slab"), new BlockItem(VERTICAL_GRANITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_andesite_slab"), VERTICAL_ANDESITE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_andesite_slab"), new BlockItem(VERTICAL_ANDESITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_red_nether_brick_slab"), VERTICAL_RED_NETHER_BRICK_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_red_nether_brick_slab"), new BlockItem(VERTICAL_RED_NETHER_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_polished_andesite_slab"), VERTICAL_POLISHED_ANDESITE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_polished_andesite_slab"), new BlockItem(VERTICAL_POLISHED_ANDESITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_diorite_slab"), VERTICAL_DIORITE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_diorite_slab"), new BlockItem(VERTICAL_DIORITE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_blackstone_slab"), VERTICAL_BLACKSTONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_blackstone_slab"), new BlockItem(VERTICAL_BLACKSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_polished_blackstone_slab"), VERTICAL_POLISHED_BLACKSTONE_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_polished_blackstone_slab"), new BlockItem(VERTICAL_POLISHED_BLACKSTONE_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + Registry.register(Registry.BLOCK, new Identifier("verticalslabs","vertical_polished_blackstone_brick_slab"), VERTICAL_POLISHED_BLACKSTONE_BRICK_SLAB); + Registry.register(Registry.ITEM, new Identifier("verticalslabs","vertical_polished_blackstone_brick_slab"), new BlockItem(VERTICAL_POLISHED_BLACKSTONE_BRICK_SLAB, new Item.Settings().group(VerticalSlabs.VerticalSlabsGroup))); + } +}