package com.thebrokenrail.energonrelics; import com.thebrokenrail.energonrelics.block.battery.ActiveBatteryControllerBlock; import com.thebrokenrail.energonrelics.block.reactor.ReactorControllerBlock; import com.thebrokenrail.energonrelics.block.reactor.ReactorCoreBlock; import com.thebrokenrail.energonrelics.block.reactor.ReactorInputBlock; import com.thebrokenrail.energonrelics.block.ThermalCasingBlock; import com.thebrokenrail.energonrelics.block.battery.BatteryControllerBlock; import com.thebrokenrail.energonrelics.block.battery.BatteryCoreBlock; import com.thebrokenrail.energonrelics.block.EnergonLightBlock; import com.thebrokenrail.energonrelics.block.SolarPanelBlock; import com.thebrokenrail.energonrelics.block.SwitchBlock; import com.thebrokenrail.energonrelics.block.util.SimpleBlock; import com.thebrokenrail.energonrelics.item.MultimeterItem; import com.thebrokenrail.energonrelics.item.NetworkChipItem; import net.fabricmc.api.ModInitializer; import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.Material; import net.minecraft.block.MaterialColor; import net.minecraft.item.Item; import net.minecraft.item.ItemGroup; import net.minecraft.item.ItemStack; import net.minecraft.sound.BlockSoundGroup; import net.minecraft.util.Identifier; import net.minecraft.util.registry.Registry; public class EnergonRelics implements ModInitializer { public static final String NAMESPACE = "energonrelics"; public static NetworkChipItem NETWORK_CHIP_ITEM; public static final ItemGroup ITEM_GROUP = FabricItemGroupBuilder.build(new Identifier(NAMESPACE, "item_group"), () -> new ItemStack(NETWORK_CHIP_ITEM)); public static final EnergonLightBlock ENERGON_LIGHT_BLOCK = new EnergonLightBlock(); public static final SolarPanelBlock SOLAR_PANEL_BLOCK = new SolarPanelBlock(); public static final SwitchBlock SWITCH_BLOCk = new SwitchBlock(); public static final MultimeterItem MULTIMETER_ITEM = new MultimeterItem(); public static final ThermalCasingBlock THERMAL_CASING_BLOCK = new ThermalCasingBlock(); public static final BatteryCoreBlock BATTERY_CORE_BLOCk = new BatteryCoreBlock(); public static final BatteryControllerBlock BATTERY_CONTROLLER_BLOCk = new BatteryControllerBlock(); public static final ActiveBatteryControllerBlock ACTIVE_BATTERY_CONTROLLER_BLOCK = new ActiveBatteryControllerBlock(); public static final ReactorCoreBlock REACTOR_CORE_BLOCK = new ReactorCoreBlock(); public static final ReactorInputBlock REACTOR_INPUT_BLOCK = new ReactorInputBlock(); public static final ReactorControllerBlock REACTOR_CONTROLLER_BLOCK = new ReactorControllerBlock(); public static final Item VERIDIUM_INGOT = new Item(new Item.Settings().group(ITEM_GROUP)); public static final SimpleBlock VERIDIUM_ORE = new SimpleBlock(FabricBlockSettings.of(Material.STONE).requiresTool().strength(3.0F, 3.0F)); public static final SimpleBlock VERIDIUM_BLOCK = new SimpleBlock(FabricBlockSettings.of(Material.METAL, MaterialColor.GOLD).requiresTool().strength(3.0F, 6.0F).sounds(BlockSoundGroup.METAL)); public static final Item CIRCUIT_BOARD_ITEM = new Item(new Item.Settings().group(ITEM_GROUP)); @Override public void onInitialize() { NETWORK_CHIP_ITEM = Registry.register(Registry.ITEM, new Identifier(NAMESPACE, "network_chip"), new NetworkChipItem()); Registry.register(Registry.ITEM, new Identifier(NAMESPACE, "multimeter"), MULTIMETER_ITEM); Registry.register(Registry.ITEM, new Identifier(NAMESPACE, "circuit_board"), CIRCUIT_BOARD_ITEM); ENERGON_LIGHT_BLOCK.register("energon_light"); SOLAR_PANEL_BLOCK.register("solar_panel"); SWITCH_BLOCk.register("switch"); THERMAL_CASING_BLOCK.register("thermal_casing"); BATTERY_CORE_BLOCk.register("battery_core"); BATTERY_CONTROLLER_BLOCk.register("battery_controller"); ACTIVE_BATTERY_CONTROLLER_BLOCK.register("active_battery_controller"); REACTOR_CORE_BLOCK.register("reactor_core"); REACTOR_INPUT_BLOCK.register("reactor_input"); REACTOR_CONTROLLER_BLOCK.register("reactor_controller"); Registry.register(Registry.ITEM, new Identifier(NAMESPACE, "veridium_ingot"), VERIDIUM_INGOT); VERIDIUM_ORE.register("veridium_ore"); VERIDIUM_BLOCK.register("veridium_block"); } }