package ovh.glitchlabs.ornamentum.blocks; import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.Item; import net.minecraft.world.level.block.*; import net.minecraft.world.level.block.state.BlockBehaviour; import net.neoforged.bus.api.IEventBus; import net.neoforged.neoforge.registries.DeferredBlock; import net.neoforged.neoforge.registries.DeferredRegister; import ovh.glitchlabs.ornamentum.Ornamentum; import ovh.glitchlabs.ornamentum.blocks.custom.FlagBlock; import ovh.glitchlabs.ornamentum.blocks.custom.GlowGlassBlock; import ovh.glitchlabs.ornamentum.blocks.custom.GrateBlock; import ovh.glitchlabs.ornamentum.blocks.custom.ShelfBlock; import ovh.glitchlabs.ornamentum.items.ModItems; import java.util.function.Supplier; public class ModBlocks { public static final DeferredRegister.Blocks BLOCKS = DeferredRegister.createBlocks(Ornamentum.MODID); public static final DeferredBlock DUCK = registerBlock("duck", () -> new ShelfBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.YELLOW_CARPET).noOcclusion())); public static final DeferredBlock IRON_SHELF = registerBlock("iron_shelf", () -> new ShelfBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.IRON_BLOCK).noOcclusion())); public static final DeferredBlock OBSIDIAN_BRICKS = registerBlock("obsidian_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.OBSIDIAN))); public static final DeferredBlock CRACKED_OBSIDIAN_BRICKS = registerBlock("cracked_obsidian_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.OBSIDIAN))); public static final DeferredBlock OBSIDIAN_TILES = registerBlock("obsidian_tiles", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.OBSIDIAN))); public static final DeferredBlock CRACKED_OBSIDIAN_TILES = registerBlock("cracked_obsidian_tiles", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.OBSIDIAN))); public static final DeferredBlock POLISHED_OBSIDIAN = registerBlock("polished_obsidian", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.OBSIDIAN))); // flags public static final DeferredBlock WHITE_FLAG = registerBlock("white_flag", () -> new FlagBlock(BlockBehaviour.Properties.of().strength(1.0f).sound(SoundType.WOOD))); public static final DeferredBlock ORANGE_FLAG = registerBlock("orange_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock MAGENTA_FLAG = registerBlock("magenta_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock LIGHT_BLUE_FLAG = registerBlock("light_blue_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock YELLOW_FLAG = registerBlock("yellow_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock LIME_FLAG = registerBlock("lime_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock PINK_FLAG = registerBlock("pink_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock GRAY_FLAG = registerBlock("gray_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock LIGHT_GRAY_FLAG = registerBlock("light_gray_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock CYAN_FLAG = registerBlock("cyan_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock PURPLE_FLAG = registerBlock("purple_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock BLUE_FLAG = registerBlock("blue_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock BROWN_FLAG = registerBlock("brown_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock GREEN_FLAG = registerBlock("green_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock RED_FLAG = registerBlock("red_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock BLACK_FLAG = registerBlock("black_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock AUSTRIA_FLAG = registerBlock("austria_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock BOUVET_ISLAND_FLAG = registerBlock("bouvet_island_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock CANADA_FLAG = registerBlock("canada_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock CHINA_FLAG = registerBlock("china_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock DENMARK_FLAG = registerBlock("denmark_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock FINLAND_FLAG = registerBlock("finland_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock FRANCE_FLAG = registerBlock("france_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock GERMANY_FLAG = registerBlock("germany_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock GREECE_FLAG = registerBlock("greece_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock HUNGARY_FLAG = registerBlock("hungary_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock ICELAND_FLAG = registerBlock("iceland_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock INDIA_FLAG = registerBlock("india_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock IRELAND_FLAG = registerBlock("ireland_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock ITALY_FLAG = registerBlock("italy_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock JAPAN_FLAG = registerBlock("japan_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock LATVIA_FLAG = registerBlock("latvia_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock NETHERLANDS_FLAG = registerBlock("netherlands_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock SWEDEN_FLAG = registerBlock("sweden_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock SWITZERLAND_FLAG = registerBlock("switzerland_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock UNITED_KINGDOM_FLAG = registerBlock("united_kingdom_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock UNITED_STATES_FLAG = registerBlock("united_states_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock AGENDER_FLAG = registerBlock("agender_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock AROACE_FLAG = registerBlock("aroace_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock AROMANTIC_FLAG = registerBlock("aromantic_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock ASEXUAL_FLAG = registerBlock("asexual_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock BISEXUAL_FLAG = registerBlock("bisexual_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock DEMIROMANTIC_FLAG = registerBlock("demiromantic_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock DEMISEXUAL_FLAG = registerBlock("demisexual_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock GAY_MEN_FLAG = registerBlock("gay_men_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock GENDERFLUID_FLAG = registerBlock("genderfluid_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock GENDERQUEER_FLAG = registerBlock("genderqueer_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock INTERSEX_FLAG = registerBlock("intersex_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock LESBIAN_FLAG = registerBlock("lesbian_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock NON_BINARY_FLAG = registerBlock("non-binary_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock OMNISEXUAL_FLAG = registerBlock("omnisexual_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock PANSEXUAL_FLAG = registerBlock("pansexual_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock PRIDE_FLAG = registerBlock("pride_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock PROGRESS_PRIDE_FLAG = registerBlock("progress_pride_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); public static final DeferredBlock TRANS_FLAG = registerBlock("trans_flag", () -> new FlagBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_FLAG.get()))); // Pattern Blocks public static final DeferredBlock WHITE_PATTERN_BLOCK = registerBlock("white_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.WHITE_CONCRETE))); public static final DeferredBlock WHITE_PATTERN_BLOCK_STAIRS = registerBlock("white_pattern_block_stairs", () -> new StairBlock(WHITE_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(WHITE_PATTERN_BLOCK.get()))); public static final DeferredBlock WHITE_PATTERN_BLOCK_SLAB = registerBlock("white_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_PATTERN_BLOCK.get()))); public static final DeferredBlock ORANGE_PATTERN_BLOCK = registerBlock("orange_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.ORANGE_CONCRETE))); public static final DeferredBlock ORANGE_PATTERN_BLOCK_STAIRS = registerBlock("orange_pattern_block_stairs", () -> new StairBlock(ORANGE_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(ORANGE_PATTERN_BLOCK.get()))); public static final DeferredBlock ORANGE_PATTERN_BLOCK_SLAB = registerBlock("orange_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(ORANGE_PATTERN_BLOCK.get()))); public static final DeferredBlock MAGENTA_PATTERN_BLOCK = registerBlock("magenta_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.MAGENTA_CONCRETE))); public static final DeferredBlock MAGENTA_PATTERN_BLOCK_STAIRS = registerBlock("magenta_pattern_block_stairs", () -> new StairBlock(MAGENTA_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(MAGENTA_PATTERN_BLOCK.get()))); public static final DeferredBlock MAGENTA_PATTERN_BLOCK_SLAB = registerBlock("magenta_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(MAGENTA_PATTERN_BLOCK.get()))); public static final DeferredBlock LIGHT_BLUE_PATTERN_BLOCK = registerBlock("light_blue_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.LIGHT_BLUE_CONCRETE))); public static final DeferredBlock LIGHT_BLUE_PATTERN_BLOCK_STAIRS = registerBlock("light_blue_pattern_block_stairs", () -> new StairBlock(LIGHT_BLUE_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(LIGHT_BLUE_PATTERN_BLOCK.get()))); public static final DeferredBlock LIGHT_BLUE_PATTERN_BLOCK_SLAB = registerBlock("light_blue_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(LIGHT_BLUE_PATTERN_BLOCK.get()))); public static final DeferredBlock YELLOW_PATTERN_BLOCK = registerBlock("yellow_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.YELLOW_CONCRETE))); public static final DeferredBlock YELLOW_PATTERN_BLOCK_STAIRS = registerBlock("yellow_pattern_block_stairs", () -> new StairBlock(YELLOW_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(YELLOW_PATTERN_BLOCK.get()))); public static final DeferredBlock YELLOW_PATTERN_BLOCK_SLAB = registerBlock("yellow_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(YELLOW_PATTERN_BLOCK.get()))); public static final DeferredBlock LIME_PATTERN_BLOCK = registerBlock("lime_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.LIME_CONCRETE))); public static final DeferredBlock LIME_PATTERN_BLOCK_STAIRS = registerBlock("lime_pattern_block_stairs", () -> new StairBlock(LIME_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(LIME_PATTERN_BLOCK.get()))); public static final DeferredBlock LIME_PATTERN_BLOCK_SLAB = registerBlock("lime_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(LIME_PATTERN_BLOCK.get()))); public static final DeferredBlock PINK_PATTERN_BLOCK = registerBlock("pink_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.PINK_CONCRETE))); public static final DeferredBlock PINK_PATTERN_BLOCK_STAIRS = registerBlock("pink_pattern_block_stairs", () -> new StairBlock(PINK_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(PINK_PATTERN_BLOCK.get()))); public static final DeferredBlock PINK_PATTERN_BLOCK_SLAB = registerBlock("pink_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(PINK_PATTERN_BLOCK.get()))); public static final DeferredBlock GRAY_PATTERN_BLOCK = registerBlock("gray_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.GRAY_CONCRETE))); public static final DeferredBlock GRAY_PATTERN_BLOCK_STAIRS = registerBlock("gray_pattern_block_stairs", () -> new StairBlock(GRAY_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(GRAY_PATTERN_BLOCK.get()))); public static final DeferredBlock GRAY_PATTERN_BLOCK_SLAB = registerBlock("gray_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(GRAY_PATTERN_BLOCK.get()))); public static final DeferredBlock LIGHT_GRAY_PATTERN_BLOCK = registerBlock("light_gray_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.LIGHT_GRAY_CONCRETE))); public static final DeferredBlock LIGHT_GRAY_PATTERN_BLOCK_STAIRS = registerBlock("light_gray_pattern_block_stairs", () -> new StairBlock(LIGHT_GRAY_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(LIGHT_GRAY_PATTERN_BLOCK.get()))); public static final DeferredBlock LIGHT_GRAY_PATTERN_BLOCK_SLAB = registerBlock("light_gray_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(LIGHT_GRAY_PATTERN_BLOCK.get()))); public static final DeferredBlock CYAN_PATTERN_BLOCK = registerBlock("cyan_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.CYAN_CONCRETE))); public static final DeferredBlock CYAN_PATTERN_BLOCK_STAIRS = registerBlock("cyan_pattern_block_stairs", () -> new StairBlock(CYAN_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(CYAN_PATTERN_BLOCK.get()))); public static final DeferredBlock CYAN_PATTERN_BLOCK_SLAB = registerBlock("cyan_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(CYAN_PATTERN_BLOCK.get()))); public static final DeferredBlock PURPLE_PATTERN_BLOCK = registerBlock("purple_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.PURPLE_CONCRETE))); public static final DeferredBlock PURPLE_PATTERN_BLOCK_STAIRS = registerBlock("purple_pattern_block_stairs", () -> new StairBlock(PURPLE_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(PURPLE_PATTERN_BLOCK.get()))); public static final DeferredBlock PURPLE_PATTERN_BLOCK_SLAB = registerBlock("purple_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(PURPLE_PATTERN_BLOCK.get()))); public static final DeferredBlock BLUE_PATTERN_BLOCK = registerBlock("blue_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BLUE_CONCRETE))); public static final DeferredBlock BLUE_PATTERN_BLOCK_STAIRS = registerBlock("blue_pattern_block_stairs", () -> new StairBlock(BLUE_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(BLUE_PATTERN_BLOCK.get()))); public static final DeferredBlock BLUE_PATTERN_BLOCK_SLAB = registerBlock("blue_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(BLUE_PATTERN_BLOCK.get()))); public static final DeferredBlock BROWN_PATTERN_BLOCK = registerBlock("brown_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BROWN_CONCRETE))); public static final DeferredBlock BROWN_PATTERN_BLOCK_STAIRS = registerBlock("brown_pattern_block_stairs", () -> new StairBlock(BROWN_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(BROWN_PATTERN_BLOCK.get()))); public static final DeferredBlock BROWN_PATTERN_BLOCK_SLAB = registerBlock("brown_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(BROWN_PATTERN_BLOCK.get()))); public static final DeferredBlock GREEN_PATTERN_BLOCK = registerBlock("green_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.GREEN_CONCRETE))); public static final DeferredBlock GREEN_PATTERN_BLOCK_STAIRS = registerBlock("green_pattern_block_stairs", () -> new StairBlock(GREEN_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(GREEN_PATTERN_BLOCK.get()))); public static final DeferredBlock GREEN_PATTERN_BLOCK_SLAB = registerBlock("green_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(GREEN_PATTERN_BLOCK.get()))); public static final DeferredBlock RED_PATTERN_BLOCK = registerBlock("red_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.RED_CONCRETE))); public static final DeferredBlock RED_PATTERN_BLOCK_STAIRS = registerBlock("red_pattern_block_stairs", () -> new StairBlock(RED_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(RED_PATTERN_BLOCK.get()))); public static final DeferredBlock RED_PATTERN_BLOCK_SLAB = registerBlock("red_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(RED_PATTERN_BLOCK.get()))); public static final DeferredBlock BLACK_PATTERN_BLOCK = registerBlock("black_pattern_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BLACK_CONCRETE))); public static final DeferredBlock BLACK_PATTERN_BLOCK_STAIRS = registerBlock("black_pattern_block_stairs", () -> new StairBlock(BLACK_PATTERN_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(BLACK_PATTERN_BLOCK.get()))); public static final DeferredBlock BLACK_PATTERN_BLOCK_SLAB = registerBlock("black_pattern_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(BLACK_PATTERN_BLOCK.get()))); //more bricks public static final DeferredBlock AMETIST_BRICKS = registerBlock("ametist_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.AMETHYST_BLOCK))); public static final DeferredBlock AMETIST_BRICKS_STAIRS = registerBlock("ametist_bricks_stairs", () -> new StairBlock(AMETIST_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(AMETIST_BRICKS.get()))); public static final DeferredBlock AMETIST_BRICKS_SLAB = registerBlock("ametist_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(AMETIST_BRICKS.get()))); public static final DeferredBlock POLISHED_ANDESITE_BRICKS = registerBlock("polished_andesite_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.POLISHED_ANDESITE))); public static final DeferredBlock POLISHED_ANDESITE_BRICKS_STAIRS = registerBlock("polished_andesite_bricks_stairs", () -> new StairBlock(POLISHED_ANDESITE_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(POLISHED_ANDESITE_BRICKS.get()))); public static final DeferredBlock POLISHED_ANDESITE_BRICKS_SLAB = registerBlock("polished_andesite_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(POLISHED_ANDESITE_BRICKS.get()))); public static final DeferredBlock POLISHED_DIORITE_BRICKS = registerBlock("polished_diorite_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.POLISHED_DIORITE))); public static final DeferredBlock POLISHED_DIORITE_BRICKS_STAIRS = registerBlock("polished_diorite_bricks_stairs", () -> new StairBlock(POLISHED_DIORITE_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(POLISHED_DIORITE_BRICKS.get()))); public static final DeferredBlock POLISHED_DIORITE_BRICKS_SLAB = registerBlock("polished_diorite_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(POLISHED_DIORITE_BRICKS.get()))); public static final DeferredBlock POLISHED_GRANITE_BRICKS = registerBlock("polished_granite_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.POLISHED_GRANITE))); public static final DeferredBlock POLISHED_GRANITE_BRICKS_STAIRS = registerBlock("polished_granite_bricks_stairs", () -> new StairBlock(POLISHED_GRANITE_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(POLISHED_GRANITE_BRICKS.get()))); public static final DeferredBlock POLISHED_GRANITE_BRICKS_SLAB = registerBlock("polished_granite_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(POLISHED_GRANITE_BRICKS.get()))); public static final DeferredBlock PURPUR_BRICKS = registerBlock("purpur_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.PURPUR_BLOCK))); public static final DeferredBlock PURPUR_BRICKS_STAIRS = registerBlock("purpur_bricks_stairs", () -> new StairBlock(PURPUR_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(PURPUR_BRICKS.get()))); public static final DeferredBlock PURPUR_BRICKS_SLAB = registerBlock("purpur_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(PURPUR_BRICKS.get()))); public static final DeferredBlock SMOOTH_BASALT_BRICKS = registerBlock("smooth_basalt_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.SMOOTH_BASALT))); public static final DeferredBlock SMOOTH_BASALT_BRICKS_STAIRS = registerBlock("smooth_basalt_bricks_stairs", () -> new StairBlock(SMOOTH_BASALT_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(SMOOTH_BASALT_BRICKS.get()))); public static final DeferredBlock SMOOTH_BASALT_BRICKS_SLAB = registerBlock("smooth_basalt_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(SMOOTH_BASALT_BRICKS.get()))); // COLORED BRICKS + STAIRS + SLABS public static final DeferredBlock WHITE_BRICKS = registerBlock("white_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock WHITE_BRICKS_STAIRS = registerBlock("white_bricks_stairs", () -> new StairBlock(WHITE_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(WHITE_BRICKS.get()))); public static final DeferredBlock WHITE_BRICKS_SLAB = registerBlock("white_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_BRICKS.get()))); public static final DeferredBlock ORANGE_BRICKS = registerBlock("orange_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock ORANGE_BRICKS_STAIRS = registerBlock("orange_bricks_stairs", () -> new StairBlock(ORANGE_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(ORANGE_BRICKS.get()))); public static final DeferredBlock ORANGE_BRICKS_SLAB = registerBlock("orange_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(ORANGE_BRICKS.get()))); public static final DeferredBlock MAGENTA_BRICKS = registerBlock("magenta_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock MAGENTA_BRICKS_STAIRS = registerBlock("magenta_bricks_stairs", () -> new StairBlock(MAGENTA_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(MAGENTA_BRICKS.get()))); public static final DeferredBlock MAGENTA_BRICKS_SLAB = registerBlock("magenta_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(MAGENTA_BRICKS.get()))); public static final DeferredBlock LIGHT_BLUE_BRICKS = registerBlock("light_blue_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock LIGHT_BLUE_BRICKS_STAIRS = registerBlock("light_blue_bricks_stairs", () -> new StairBlock(LIGHT_BLUE_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(LIGHT_BLUE_BRICKS.get()))); public static final DeferredBlock LIGHT_BLUE_BRICKS_SLAB = registerBlock("light_blue_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(LIGHT_BLUE_BRICKS.get()))); public static final DeferredBlock YELLOW_BRICKS = registerBlock("yellow_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock YELLOW_BRICKS_STAIRS = registerBlock("yellow_bricks_stairs", () -> new StairBlock(YELLOW_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(YELLOW_BRICKS.get()))); public static final DeferredBlock YELLOW_BRICKS_SLAB = registerBlock("yellow_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(YELLOW_BRICKS.get()))); public static final DeferredBlock LIME_BRICKS = registerBlock("lime_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock LIME_BRICKS_STAIRS = registerBlock("lime_bricks_stairs", () -> new StairBlock(LIME_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(LIME_BRICKS.get()))); public static final DeferredBlock LIME_BRICKS_SLAB = registerBlock("lime_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(LIME_BRICKS.get()))); public static final DeferredBlock PINK_BRICKS = registerBlock("pink_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock PINK_BRICKS_STAIRS = registerBlock("pink_bricks_stairs", () -> new StairBlock(PINK_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(PINK_BRICKS.get()))); public static final DeferredBlock PINK_BRICKS_SLAB = registerBlock("pink_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(PINK_BRICKS.get()))); public static final DeferredBlock GRAY_BRICKS = registerBlock("gray_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock GRAY_BRICKS_STAIRS = registerBlock("gray_bricks_stairs", () -> new StairBlock(GRAY_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(GRAY_BRICKS.get()))); public static final DeferredBlock GRAY_BRICKS_SLAB = registerBlock("gray_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(GRAY_BRICKS.get()))); public static final DeferredBlock LIGHT_GRAY_BRICKS = registerBlock("light_gray_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock LIGHT_GRAY_BRICKS_STAIRS = registerBlock("light_gray_bricks_stairs", () -> new StairBlock(LIGHT_GRAY_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(LIGHT_GRAY_BRICKS.get()))); public static final DeferredBlock LIGHT_GRAY_BRICKS_SLAB = registerBlock("light_gray_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(LIGHT_GRAY_BRICKS.get()))); public static final DeferredBlock CYAN_BRICKS = registerBlock("cyan_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock CYAN_BRICKS_STAIRS = registerBlock("cyan_bricks_stairs", () -> new StairBlock(CYAN_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(CYAN_BRICKS.get()))); public static final DeferredBlock CYAN_BRICKS_SLAB = registerBlock("cyan_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(CYAN_BRICKS.get()))); public static final DeferredBlock PURPLE_BRICKS = registerBlock("purple_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock PURPLE_BRICKS_STAIRS = registerBlock("purple_bricks_stairs", () -> new StairBlock(PURPLE_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(PURPLE_BRICKS.get()))); public static final DeferredBlock PURPLE_BRICKS_SLAB = registerBlock("purple_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(PURPLE_BRICKS.get()))); public static final DeferredBlock BLUE_BRICKS = registerBlock("blue_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock BLUE_BRICKS_STAIRS = registerBlock("blue_bricks_stairs", () -> new StairBlock(BLUE_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(BLUE_BRICKS.get()))); public static final DeferredBlock BLUE_BRICKS_SLAB = registerBlock("blue_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(BLUE_BRICKS.get()))); public static final DeferredBlock BROWN_BRICKS = registerBlock("brown_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock BROWN_BRICKS_STAIRS = registerBlock("brown_bricks_stairs", () -> new StairBlock(BROWN_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(BROWN_BRICKS.get()))); public static final DeferredBlock BROWN_BRICKS_SLAB = registerBlock("brown_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(BROWN_BRICKS.get()))); public static final DeferredBlock GREEN_BRICKS = registerBlock("green_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock GREEN_BRICKS_STAIRS = registerBlock("green_bricks_stairs", () -> new StairBlock(GREEN_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(GREEN_BRICKS.get()))); public static final DeferredBlock GREEN_BRICKS_SLAB = registerBlock("green_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(GREEN_BRICKS.get()))); public static final DeferredBlock RED_BRICKS = registerBlock("red_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock RED_BRICKS_STAIRS = registerBlock("red_bricks_stairs", () -> new StairBlock(RED_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(RED_BRICKS.get()))); public static final DeferredBlock RED_BRICKS_SLAB = registerBlock("red_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(RED_BRICKS.get()))); public static final DeferredBlock BLACK_BRICKS = registerBlock("black_bricks", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.BRICKS))); public static final DeferredBlock BLACK_BRICKS_STAIRS = registerBlock("black_bricks_stairs", () -> new StairBlock(BLACK_BRICKS.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(BLACK_BRICKS.get()))); public static final DeferredBlock BLACK_BRICKS_SLAB = registerBlock("black_bricks_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(BLACK_BRICKS.get()))); // WOOL STAIRS AND SLABS public static final DeferredBlock WHITE_WOOL_STAIRS = registerBlock("white_wool_stairs", () -> new StairBlock(Blocks.WHITE_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.WHITE_WOOL))); public static final DeferredBlock WHITE_WOOL_SLAB = registerBlock("white_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.WHITE_WOOL))); public static final DeferredBlock ORANGE_WOOL_STAIRS = registerBlock("orange_wool_stairs", () -> new StairBlock(Blocks.ORANGE_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.ORANGE_WOOL))); public static final DeferredBlock ORANGE_WOOL_SLAB = registerBlock("orange_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.ORANGE_WOOL))); public static final DeferredBlock MAGENTA_WOOL_STAIRS = registerBlock("magenta_wool_stairs", () -> new StairBlock(Blocks.MAGENTA_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.MAGENTA_WOOL))); public static final DeferredBlock MAGENTA_WOOL_SLAB = registerBlock("magenta_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.MAGENTA_WOOL))); public static final DeferredBlock LIGHT_BLUE_WOOL_STAIRS = registerBlock("light_blue_wool_stairs", () -> new StairBlock(Blocks.LIGHT_BLUE_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.LIGHT_BLUE_WOOL))); public static final DeferredBlock LIGHT_BLUE_WOOL_SLAB = registerBlock("light_blue_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.LIGHT_BLUE_WOOL))); public static final DeferredBlock YELLOW_WOOL_STAIRS = registerBlock("yellow_wool_stairs", () -> new StairBlock(Blocks.YELLOW_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.YELLOW_WOOL))); public static final DeferredBlock YELLOW_WOOL_SLAB = registerBlock("yellow_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.YELLOW_WOOL))); public static final DeferredBlock LIME_WOOL_STAIRS = registerBlock("lime_wool_stairs", () -> new StairBlock(Blocks.LIME_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.LIME_WOOL))); public static final DeferredBlock LIME_WOOL_SLAB = registerBlock("lime_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.LIME_WOOL))); public static final DeferredBlock PINK_WOOL_STAIRS = registerBlock("pink_wool_stairs", () -> new StairBlock(Blocks.PINK_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.PINK_WOOL))); public static final DeferredBlock PINK_WOOL_SLAB = registerBlock("pink_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.PINK_WOOL))); public static final DeferredBlock GRAY_WOOL_STAIRS = registerBlock("gray_wool_stairs", () -> new StairBlock(Blocks.GRAY_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.GRAY_WOOL))); public static final DeferredBlock GRAY_WOOL_SLAB = registerBlock("gray_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.GRAY_WOOL))); public static final DeferredBlock LIGHT_GRAY_WOOL_STAIRS = registerBlock("light_gray_wool_stairs", () -> new StairBlock(Blocks.LIGHT_GRAY_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.LIGHT_GRAY_WOOL))); public static final DeferredBlock LIGHT_GRAY_WOOL_SLAB = registerBlock("light_gray_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.LIGHT_GRAY_WOOL))); public static final DeferredBlock CYAN_WOOL_STAIRS = registerBlock("cyan_wool_stairs", () -> new StairBlock(Blocks.CYAN_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.CYAN_WOOL))); public static final DeferredBlock CYAN_WOOL_SLAB = registerBlock("cyan_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.CYAN_WOOL))); public static final DeferredBlock PURPLE_WOOL_STAIRS = registerBlock("purple_wool_stairs", () -> new StairBlock(Blocks.PURPLE_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.PURPLE_WOOL))); public static final DeferredBlock PURPLE_WOOL_SLAB = registerBlock("purple_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.PURPLE_WOOL))); public static final DeferredBlock BLUE_WOOL_STAIRS = registerBlock("blue_wool_stairs", () -> new StairBlock(Blocks.BLUE_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.BLUE_WOOL))); public static final DeferredBlock BLUE_WOOL_SLAB = registerBlock("blue_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.BLUE_WOOL))); public static final DeferredBlock BROWN_WOOL_STAIRS = registerBlock("brown_wool_stairs", () -> new StairBlock(Blocks.BROWN_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.BROWN_WOOL))); public static final DeferredBlock BROWN_WOOL_SLAB = registerBlock("brown_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.BROWN_WOOL))); public static final DeferredBlock GREEN_WOOL_STAIRS = registerBlock("green_wool_stairs", () -> new StairBlock(Blocks.GREEN_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.GREEN_WOOL))); public static final DeferredBlock GREEN_WOOL_SLAB = registerBlock("green_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.GREEN_WOOL))); public static final DeferredBlock RED_WOOL_STAIRS = registerBlock("red_wool_stairs", () -> new StairBlock(Blocks.RED_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.RED_WOOL))); public static final DeferredBlock RED_WOOL_SLAB = registerBlock("red_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.RED_WOOL))); public static final DeferredBlock BLACK_WOOL_STAIRS = registerBlock("black_wool_stairs", () -> new StairBlock(Blocks.BLACK_WOOL.defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(Blocks.BLACK_WOOL))); public static final DeferredBlock BLACK_WOOL_SLAB = registerBlock("black_wool_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.BLACK_WOOL))); public static final DeferredBlock MESH_IRON = registerBlock("mesh_iron", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.IRON_BLOCK) .strength(5.0f, 6.0f) .noOcclusion() )); //POOL TILES public static final DeferredBlock POOL_TILES = registerBlock("pool_tiles", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.IRON_BLOCK) .strength(5.0f, 6.0f) .noOcclusion() )); public static final DeferredBlock POOL_TILES1 = registerBlock("pool_tiles1", () -> new Block(BlockBehaviour.Properties.ofFullCopy(ModBlocks.POOL_TILES.get()) )); public static final DeferredBlock POOL_TILES_STAIRS = registerBlock("pool_tiles_stairs", () -> new StairBlock(ModBlocks.POOL_TILES.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(ModBlocks.POOL_TILES.get()))); public static final DeferredBlock POOL_TILES_SLAB = registerBlock("pool_tiles_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(ModBlocks.POOL_TILES.get()))); public static final DeferredBlock POOL_TILES1_STAIRS = registerBlock("pool_tiles1_stairs", () -> new StairBlock(ModBlocks.POOL_TILES1.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(ModBlocks.POOL_TILES1.get()))); public static final DeferredBlock POOL_TILES1_SLAB = registerBlock("pool_tiles1_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(ModBlocks.POOL_TILES1.get()))); //GRATES public static final DeferredBlock IRON_GRATE = registerBlock("iron_grate", () -> new GrateBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.COPPER_GRATE) .strength(5.0f, 6.0f) .noOcclusion() )); public static final DeferredBlock GOLD_GRATE = registerBlock("gold_grate", () -> new GrateBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.COPPER_GRATE) .strength(3.0f, 4.0f) .noOcclusion() )); public static final DeferredBlock DIAMOND_GRATE = registerBlock("diamond_grate", () -> new GrateBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.COPPER_GRATE) .strength(5.0f, 6.0f) .noOcclusion() )); public static final DeferredBlock NETHERITE_GRATE = registerBlock("netherite_grate", () -> new GrateBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.COPPER_GRATE) .strength(6.0f, 7.0f) .noOcclusion() .explosionResistance(1200.0f) )); public static final DeferredBlock AMETHYST_GRATE = registerBlock("amethyst_grate", () -> new GrateBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.COPPER_GRATE) .strength(3.0f, 4.0f) .noOcclusion() )); public static final DeferredBlock OBSIDIAN_GRATE = registerBlock("obsidian_grate", () -> new GrateBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.COPPER_GRATE) .strength(50.0f, 1200.0f) .noOcclusion() .explosionResistance(1200.0f) )); //GLOW BLOCK public static final DeferredBlock LIME_GLOW_BLOCK = registerBlock("lime_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(Blocks.IRON_BLOCK) .emissiveRendering((state, level, pos) -> true) .lightLevel(blockstate -> 15) .hasPostProcess((bs, br, bp) -> true) .noOcclusion() )); public static final DeferredBlock WHITE_GLOW_BLOCK = registerBlock("white_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock LIGHT_GRAY_GLOW_BLOCK = registerBlock("light_gray_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock GRAY_GLOW_BLOCK = registerBlock("gray_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock BLACK_GLOW_BLOCK = registerBlock("black_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock BROWN_GLOW_BLOCK = registerBlock("brown_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock RED_GLOW_BLOCK = registerBlock("red_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock ORANGE_GLOW_BLOCK = registerBlock("orange_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock YELLOW_GLOW_BLOCK = registerBlock("yellow_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock GREEN_GLOW_BLOCK = registerBlock("green_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock CYAN_GLOW_BLOCK = registerBlock("cyan_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock LIGHT_BLUE_GLOW_BLOCK = registerBlock("light_blue_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock BLUE_GLOW_BLOCK = registerBlock("blue_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock PURPLE_GLOW_BLOCK = registerBlock("purple_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock MAGENTA_GLOW_BLOCK = registerBlock("magenta_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock PINK_GLOW_BLOCK = registerBlock("pink_glow_block", () -> new Block(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); // GlowBlock stairs/slabs public static final DeferredBlock LIME_GLOW_BLOCK_STAIRS = registerBlock("lime_glow_block_stairs", () -> new StairBlock(LIME_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock LIME_GLOW_BLOCK_SLAB = registerBlock("lime_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_BLOCK.get()))); public static final DeferredBlock WHITE_GLOW_BLOCK_STAIRS = registerBlock("white_glow_block_stairs", () -> new StairBlock(WHITE_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(WHITE_GLOW_BLOCK.get()))); public static final DeferredBlock WHITE_GLOW_BLOCK_SLAB = registerBlock("white_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(WHITE_GLOW_BLOCK.get()))); public static final DeferredBlock LIGHT_GRAY_GLOW_BLOCK_STAIRS = registerBlock("light_gray_glow_block_stairs", () -> new StairBlock(LIGHT_GRAY_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(LIGHT_GRAY_GLOW_BLOCK.get()))); public static final DeferredBlock LIGHT_GRAY_GLOW_BLOCK_SLAB = registerBlock("light_gray_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(LIGHT_GRAY_GLOW_BLOCK.get()))); public static final DeferredBlock GRAY_GLOW_BLOCK_STAIRS = registerBlock("gray_glow_block_stairs", () -> new StairBlock(GRAY_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(GRAY_GLOW_BLOCK.get()))); public static final DeferredBlock GRAY_GLOW_BLOCK_SLAB = registerBlock("gray_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(GRAY_GLOW_BLOCK.get()))); public static final DeferredBlock BLACK_GLOW_BLOCK_STAIRS = registerBlock("black_glow_block_stairs", () -> new StairBlock(BLACK_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(BLACK_GLOW_BLOCK.get()))); public static final DeferredBlock BLACK_GLOW_BLOCK_SLAB = registerBlock("black_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(BLACK_GLOW_BLOCK.get()))); public static final DeferredBlock BROWN_GLOW_BLOCK_STAIRS = registerBlock("brown_glow_block_stairs", () -> new StairBlock(BROWN_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(BROWN_GLOW_BLOCK.get()))); public static final DeferredBlock BROWN_GLOW_BLOCK_SLAB = registerBlock("brown_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(BROWN_GLOW_BLOCK.get()))); public static final DeferredBlock RED_GLOW_BLOCK_STAIRS = registerBlock("red_glow_block_stairs", () -> new StairBlock(RED_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(RED_GLOW_BLOCK.get()))); public static final DeferredBlock RED_GLOW_BLOCK_SLAB = registerBlock("red_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(RED_GLOW_BLOCK.get()))); public static final DeferredBlock ORANGE_GLOW_BLOCK_STAIRS = registerBlock("orange_glow_block_stairs", () -> new StairBlock(ORANGE_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(ORANGE_GLOW_BLOCK.get()))); public static final DeferredBlock ORANGE_GLOW_BLOCK_SLAB = registerBlock("orange_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(ORANGE_GLOW_BLOCK.get()))); public static final DeferredBlock YELLOW_GLOW_BLOCK_STAIRS = registerBlock("yellow_glow_block_stairs", () -> new StairBlock(YELLOW_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(YELLOW_GLOW_BLOCK.get()))); public static final DeferredBlock YELLOW_GLOW_BLOCK_SLAB = registerBlock("yellow_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(YELLOW_GLOW_BLOCK.get()))); public static final DeferredBlock GREEN_GLOW_BLOCK_STAIRS = registerBlock("green_glow_block_stairs", () -> new StairBlock(GREEN_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(GREEN_GLOW_BLOCK.get()))); public static final DeferredBlock GREEN_GLOW_BLOCK_SLAB = registerBlock("green_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(GREEN_GLOW_BLOCK.get()))); public static final DeferredBlock CYAN_GLOW_BLOCK_STAIRS = registerBlock("cyan_glow_block_stairs", () -> new StairBlock(CYAN_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(CYAN_GLOW_BLOCK.get()))); public static final DeferredBlock CYAN_GLOW_BLOCK_SLAB = registerBlock("cyan_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(CYAN_GLOW_BLOCK.get()))); public static final DeferredBlock LIGHT_BLUE_GLOW_BLOCK_STAIRS = registerBlock("light_blue_glow_block_stairs", () -> new StairBlock(LIGHT_BLUE_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(LIGHT_BLUE_GLOW_BLOCK.get()))); public static final DeferredBlock LIGHT_BLUE_GLOW_BLOCK_SLAB = registerBlock("light_blue_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(LIGHT_BLUE_GLOW_BLOCK.get()))); public static final DeferredBlock BLUE_GLOW_BLOCK_STAIRS = registerBlock("blue_glow_block_stairs", () -> new StairBlock(BLUE_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(BLUE_GLOW_BLOCK.get()))); public static final DeferredBlock BLUE_GLOW_BLOCK_SLAB = registerBlock("blue_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(BLUE_GLOW_BLOCK.get()))); public static final DeferredBlock PURPLE_GLOW_BLOCK_STAIRS = registerBlock("purple_glow_block_stairs", () -> new StairBlock(PURPLE_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(PURPLE_GLOW_BLOCK.get()))); public static final DeferredBlock PURPLE_GLOW_BLOCK_SLAB = registerBlock("purple_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(PURPLE_GLOW_BLOCK.get()))); public static final DeferredBlock MAGENTA_GLOW_BLOCK_STAIRS = registerBlock("magenta_glow_block_stairs", () -> new StairBlock(MAGENTA_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(MAGENTA_GLOW_BLOCK.get()))); public static final DeferredBlock MAGENTA_GLOW_BLOCK_SLAB = registerBlock("magenta_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(MAGENTA_GLOW_BLOCK.get()))); public static final DeferredBlock PINK_GLOW_BLOCK_STAIRS = registerBlock("pink_glow_block_stairs", () -> new StairBlock(PINK_GLOW_BLOCK.get().defaultBlockState(), BlockBehaviour.Properties.ofFullCopy(PINK_GLOW_BLOCK.get()))); public static final DeferredBlock PINK_GLOW_BLOCK_SLAB = registerBlock("pink_glow_block_slab", () -> new SlabBlock(BlockBehaviour.Properties.ofFullCopy(PINK_GLOW_BLOCK.get()))); //GlowGlass public static final DeferredBlock LIME_GLOW_STAINED_GLASS = registerBlock("lime_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.GLASS) .emissiveRendering(((blockState, blockGetter, blockPos) -> true)) .lightLevel(blockstate -> 13) .noOcclusion() .hasPostProcess((bs, br, bp) -> true)) ); public static final DeferredBlock WHITE_GLOW_STAINED_GLASS = registerBlock("white_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock LIGHT_GRAY_GLOW_STAINED_GLASS = registerBlock("light_gray_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock GRAY_GLOW_STAINED_GLASS = registerBlock("gray_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock BLACK_GLOW_STAINED_GLASS = registerBlock("black_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock BROWN_GLOW_STAINED_GLASS = registerBlock("brown_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock RED_GLOW_STAINED_GLASS = registerBlock("red_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock ORANGE_GLOW_STAINED_GLASS = registerBlock("orange_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock YELLOW_GLOW_STAINED_GLASS = registerBlock("yellow_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock GREEN_GLOW_STAINED_GLASS = registerBlock("green_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock CYAN_GLOW_STAINED_GLASS = registerBlock("cyan_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock LIGHT_BLUE_GLOW_STAINED_GLASS = registerBlock("light_blue_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock BLUE_GLOW_STAINED_GLASS = registerBlock("blue_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock PURPLE_GLOW_STAINED_GLASS = registerBlock("purple_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock MAGENTA_GLOW_STAINED_GLASS = registerBlock("magenta_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); public static final DeferredBlock PINK_GLOW_STAINED_GLASS = registerBlock("pink_glow_stained_glass", () -> new GlowGlassBlock(BlockBehaviour.Properties.ofFullCopy(LIME_GLOW_STAINED_GLASS.get()))); private static DeferredBlock registerBlock(String name, Supplier block) { DeferredBlock toReturn = BLOCKS.register(name, block); registerBlockItem(name, toReturn); return toReturn; } private static void registerBlockItem(String name, DeferredBlock block) { ModItems.ITEMS.register(name, () -> new BlockItem(block.get(), new Item.Properties())); } public static void register(IEventBus eventBus) { BLOCKS.register(eventBus); } }