package de.ellpeck.actuallyadditions.mod.blocks; import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockPlant; import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheMiscBlocks; import de.ellpeck.actuallyadditions.mod.items.metalists.TheCrystals; import net.minecraft.block.Block; import net.minecraft.block.StairsBlock; import net.minecraft.block.material.Material; import net.minecraftforge.fml.RegistryObject; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; public final class InitBlocks { public static final DeferredRegister BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS, ActuallyAdditions.MODID); public static final RegistryObject blockCrystalClusterRedstone = BLOCKS.register("block_crystal_cluster_redstone", () -> new BlockCrystalCluster(TheCrystals.REDSTONE); public static final RegistryObject blockCrystalClusterLapis = BLOCKS.register("block_crystal_cluster_lapis", () -> new BlockCrystalCluster(TheCrystals.LAPIS); public static final RegistryObject blockCrystalClusterDiamond = BLOCKS.register("block_crystal_cluster_diamond", () -> new BlockCrystalCluster(TheCrystals.DIAMOND); public static final RegistryObject blockCrystalClusterCoal = BLOCKS.register("block_crystal_cluster_coal", () -> new BlockCrystalCluster(TheCrystals.COAL); public static final RegistryObject blockCrystalClusterEmerald = BLOCKS.register("block_crystal_cluster_emerald", () -> new BlockCrystalCluster(TheCrystals.EMERALD); public static final RegistryObject blockCrystalClusterIron = BLOCKS.register("block_crystal_cluster_iron", () -> new BlockCrystalCluster(TheCrystals.IRON); public static final RegistryObject blockBatteryBox = BLOCKS.register("block_battery_box", BlockBatteryBox::new); public static final RegistryObject blockItemViewerHopping = BLOCKS.register("block_item_viewer_hopping", BlockItemViewerHopping::new); public static final RegistryObject blockFarmer = BLOCKS.register("block_farmer", BlockFarmer::new); public static final RegistryObject blockBioReactor = BLOCKS.register("block_bio_reactor", BlockBioReactor::new); public static final RegistryObject blockEmpowerer = BLOCKS.register("block_empowerer", BlockEmpowerer::new); public static final RegistryObject blockTinyTorch = BLOCKS.register("block_tiny_torch", BlockTinyTorch::new); public static final RegistryObject blockShockSuppressor = BLOCKS.register("block_shock_suppressor", BlockShockSuppressor::new); public static final RegistryObject blockDisplayStand = BLOCKS.register("block_display_stand", BlockDisplayStand::new); public static final RegistryObject blockPlayerInterface = BLOCKS.register("block_player_interface", BlockPlayerInterface::new); public static final RegistryObject blockItemViewer = BLOCKS.register("block_item_viewer", BlockItemViewer::new); public static final RegistryObject blockFireworkBox = BLOCKS.register("block_firework_box", BlockFireworkBox::new); public static final RegistryObject blockMiner = BLOCKS.register("block_miner", BlockMiner::new); public static final RegistryObject blockAtomicReconstructor = BLOCKS.register("block_atomic_reconstructor", BlockAtomicReconstructor::new); public static final RegistryObject blockCrystal = BLOCKS.register("block_crystal", () -> new BlockCrystal(false)); public static final RegistryObject blockCrystalEmpowered = BLOCKS.register("block_crystal_empowered", () -> new BlockCrystal(true)); public static final RegistryObject blockBlackLotus = BLOCKS.register("block_black_lotus", BlockBlackLotus::new); public static final RegistryObject blockLaserRelay = BLOCKS.register("block_laser_relay", () -> new BlockLaserRelay(Type.ENERGY_BASIC)); public static final RegistryObject blockLaserRelayAdvanced = BLOCKS.register("block_laser_relay_advanced", () -> new BlockLaserRelay(Type.ENERGY_ADVANCED)); public static final RegistryObject blockLaserRelayExtreme = BLOCKS.register("block_laser_relay_extreme", () -> new BlockLaserRelay(Type.ENERGY_EXTREME)); public static final RegistryObject blockLaserRelayFluids = BLOCKS.register("block_laser_relay_fluids", () -> new BlockLaserRelay(Type.FLUIDS)); public static final RegistryObject blockLaserRelayItem = BLOCKS.register("block_laser_relay_item", () -> new BlockLaserRelay(Type.ITEM)); public static final RegistryObject blockLaserRelayItemWhitelist = BLOCKS.register("block_laser_relay_item_whitelist", () -> new BlockLaserRelay(Type.ITEM_WHITELIST)); public static final RegistryObject blockRangedCollector = BLOCKS.register("block_ranged_collector", BlockRangedCollector::new); public static final RegistryObject blockDirectionalBreaker = BLOCKS.register("block_directional_breaker", BlockDirectionalBreaker::new); public static final RegistryObject blockLeafGenerator = BLOCKS.register("block_leaf_generator", BlockLeafGenerator::new); public static final RegistryObject blockSmileyCloud = BLOCKS.register("block_smiley_cloud", BlockSmileyCloud::new); public static final RegistryObject blockXPSolidifier = BLOCKS.register("block_xp_solidifier", BlockXPSolidifier::new); public static final RegistryObject blockTestifiBucksGreenWall = BLOCKS.register("block_testifi_bucks_green_wall", BlockGeneric::new); public static final RegistryObject blockTestifiBucksWhiteWall = BLOCKS.register("block_testifi_bucks_white_wall", BlockGeneric::new); public static final RegistryObject blockTestifiBucksGreenStairs = BLOCKS.register("block_testifi_bucks_green_stairs", () -> new StairsBlock(() -> blockTestifiBucksGreenWall.get().getDefaultState(), Block.Properties.create(Material.ROCK))); public static final RegistryObject blockTestifiBucksWhiteStairs = BLOCKS.register("block_testifi_bucks_white_stairs", () -> new StairsBlock(() -> blockTestifiBucksWhiteWall.get().getDefaultState(), Block.Properties.create(Material.ROCK))); public static final RegistryObject blockTestifiBucksGreenSlab = BLOCKS.register("block_testifi_bucks_green_slab", () -> new BlockSlabs("block_testifi_bucks_green_slab", blockTestifiBucksGreenWall); public static final RegistryObject blockTestifiBucksWhiteSlab = BLOCKS.register("block_testifi_bucks_white_slab", () -> new BlockSlabs("block_testifi_bucks_white_slab", blockTestifiBucksWhiteWall); public static final RegistryObject blockTestifiBucksGreenFence = BLOCKS.register("block_testifi_bucks_green_fence", () -> new BlockWallAA("block_testifi_bucks_green_fence", blockTestifiBucksGreenWall); public static final RegistryObject blockTestifiBucksWhiteFence = BLOCKS.register("block_testifi_bucks_white_fence", () -> new BlockWallAA("block_testifi_bucks_white_fence", blockTestifiBucksWhiteWall); public static final RegistryObject blockColoredLamp = BLOCKS.register("block_colored_lamp", () -> new BlockColoredLamp(false)); public static final RegistryObject blockColoredLampOn = BLOCKS.register("block_colored_lamp_on", () -> new BlockColoredLamp(true)); public static final RegistryObject blockLampPowerer = BLOCKS.register("block_lamp_powerer", BlockLampPowerer::new); public static final RegistryObject blockTreasureChest = BLOCKS.register("block_treasure_chest", BlockTreasureChest::new); public static final RegistryObject blockEnergizer = BLOCKS.register("block_energizer", () -> new BlockEnergizer(true)); public static final RegistryObject blockEnervator = BLOCKS.register("block_enervator", () -> new BlockEnergizer(false)); public static final RegistryObject blockLavaFactoryController = BLOCKS.register("block_lava_factory_controller", BlockLavaFactoryController::new); public static final RegistryObject blockCanolaPress = BLOCKS.register("block_canola_press", BlockCanolaPress::new); public static final RegistryObject blockPhantomface = BLOCKS.register("block_phantomface", () -> new BlockPhantom(BlockPhantom.Type.FACE)); public static final RegistryObject blockPhantomPlacer = BLOCKS.register("block_phantom_placer", () -> new BlockPhantom(BlockPhantom.Type.PLACER)); public static final RegistryObject blockPhantomLiquiface = BLOCKS.register("block_phantom_liquiface", () -> new BlockPhantom(BlockPhantom.Type.LIQUIFACE)); public static final RegistryObject blockPhantomEnergyface = BLOCKS.register("block_phantom_energyface", () -> new BlockPhantom(BlockPhantom.Type.ENERGYFACE)); public static final RegistryObject blockPhantomRedstoneface = BLOCKS.register("block_phantom_redstoneface", () -> new BlockPhantom(BlockPhantom.Type.REDSTONEFACE)); public static final RegistryObject blockPhantomBreaker = BLOCKS.register("block_phantom_breaker", () -> new BlockPhantom(BlockPhantom.Type.BREAKER)); public static final RegistryObject blockCoalGenerator = BLOCKS.register("block_coal_generator", BlockCoalGenerator::new); public static final RegistryObject blockOilGenerator = BLOCKS.register("block_oil_generator", BlockOilGenerator::new); public static final RegistryObject blockFermentingBarrel = BLOCKS.register("block_fermenting_barrel", BlockFermentingBarrel::new); public static final RegistryObject blockRice = BLOCKS.register("block_rice", () -> new BlockPlant(1, 2)); public static final RegistryObject blockCanola = BLOCKS.register("block_canola", () -> new BlockPlant(2, 3)); public static final RegistryObject blockFlax = BLOCKS.register("block_flax", () -> new BlockPlant(2, 4)); public static final RegistryObject blockCoffee = BLOCKS.register("block_coffee", () -> new BlockPlant(2, 2)); public static final RegistryObject blockCompost = BLOCKS.register("block_compost", BlockCompost::new); public static final RegistryObject blockMisc = BLOCKS.register("block_misc", BlockMisc::new); public static final RegistryObject blockFeeder = BLOCKS.register("block_feeder", BlockFeeder::new); public static final RegistryObject blockGiantChest = BLOCKS.register("block_giant_chest", BlockGiantChest::new); public static final RegistryObject blockGiantChestMedium = BLOCKS.register("block_giant_chest_medium", BlockGiantChest::new); public static final RegistryObject blockGiantChestLarge = BLOCKS.register("block_giant_chest_large", BlockGiantChest::new); public static final RegistryObject blockGrinder = BLOCKS.register("block_grinder", () -> new BlockGrinder(false)); public static final RegistryObject blockGrinderDouble = BLOCKS.register("block_grinder_double", () -> new BlockGrinder(true)); public static final RegistryObject blockFurnaceDouble = BLOCKS.register("block_furnace_double", BlockFurnaceDouble::new); public static final RegistryObject blockInputter = BLOCKS.register("block_inputter", () -> new BlockInputter(false)); public static final RegistryObject blockInputterAdvanced = BLOCKS.register("block_inputter_advanced", () -> new BlockInputter(true)); public static final RegistryObject blockFishingNet = BLOCKS.register("block_fishing_net", BlockFishingNet::new); public static final RegistryObject blockFurnaceSolar = BLOCKS.register("block_furnace_solar", BlockFurnaceSolar::new); public static final RegistryObject blockHeatCollector = BLOCKS.register("block_heat_collector", BlockHeatCollector::new); public static final RegistryObject blockItemRepairer = BLOCKS.register("block_item_repairer", BlockItemRepairer::new); public static final RegistryObject blockGreenhouseGlass = BLOCKS.register("block_greenhouse_glass", BlockGreenhouseGlass::new); public static final RegistryObject blockBreaker = BLOCKS.register("block_breaker", () -> new BlockBreaker(false)); public static final RegistryObject blockPlacer = BLOCKS.register("block_placer", () -> new BlockBreaker(true)); public static final RegistryObject blockDropper = BLOCKS.register("block_dropper", BlockDropper::new); public static final RegistryObject blockFluidPlacer = BLOCKS.register("block_fluid_placer", () -> new BlockFluidCollector(true)); public static final RegistryObject blockFluidCollector = BLOCKS.register("block_fluid_collector", () -> new BlockFluidCollector(false)); public static final RegistryObject blockCoffeeMachine = BLOCKS.register("block_coffee_machine", BlockCoffeeMachine::new); public static final RegistryObject blockPhantomBooster = BLOCKS.register("block_phantom_booster", BlockPhantomBooster::new); public static final RegistryObject blockWildPlant = BLOCKS.register("block_wild", BlockWildPlant::new); public static final RegistryObject blockQuartzWall = BLOCKS.register("block_quartz_wall", () -> new BlockWallAA(blockMisc)); public static final RegistryObject blockChiseledQuartzWall = BLOCKS.register("block_chiseled_quartz_wall", () -> new BlockWallAA(blockMisc)); public static final RegistryObject blockPillarQuartzWall = BLOCKS.register("block_pillar_quartz_wall", () -> new BlockWallAA(blockMisc)); public static final RegistryObject blockQuartzStair = BLOCKS.register("block_quartz_stair", () -> new StairsBlock(blockMisc.get().getDefaultState().with(BlockMisc.TYPE, TheMiscBlocks.QUARTZ), Block.Properties.create(Material.ROCK))); public static final RegistryObject blockChiseledQuartzStair = BLOCKS.register("block_chiseled_quartz_stair", () -> new StairsBlock(blockMisc.get().getDefaultState().with(BlockMisc.TYPE, TheMiscBlocks.QUARTZ_CHISELED), Block.Properties.create(Material.ROCK))); public static final RegistryObject blockPillarQuartzStair = BLOCKS.register("block_pillar_quartz_stair", () -> new StairsBlock(blockMisc.get().getDefaultState().with(BlockMisc.TYPE, TheMiscBlocks.QUARTZ_PILLAR), Block.Properties.create(Material.ROCK))); public static final RegistryObject blockQuartzSlab = BLOCKS.register("block_quartz_slab", () -> new BlockSlabs(blockMisc.get().getDefaultState().with(BlockMisc.TYPE, TheMiscBlocks.QUARTZ), Block.Properties.create(Material.ROCK))); public static final RegistryObject blockChiseledQuartzSlab = BLOCKS.register("block_chiseled_quartz_slab", () -> new BlockSlabs(blockMisc.get().getDefaultState().with(BlockMisc.TYPE, TheMiscBlocks.QUARTZ_CHISELED), Block.Properties.create(Material.ROCK))); public static final RegistryObject blockPillarQuartzSlab = BLOCKS.register("block_pillar_quartz_slab", () -> new BlockSlabs(blockMisc.get().getDefaultState().with(BlockMisc.TYPE, TheMiscBlocks.QUARTZ_PILLAR), Block.Properties.create(Material.ROCK))); public static void init() { ActuallyAdditions.LOGGER.info("Initializing Blocks..."); } }