Thanks for the info. I looked into that but haven't been successful yet.
I'm getting this error:
Exception caught during firing event: Attempted to set registry name with existing registry name! New: blockpalette:metal_1 Old: blockpalette:/metal/metal_1
Here's my ItemList class:
public class ItemList
{
private static Item.Properties ITEM_PROPERTIES = new Item.Properties().group(Blockpalette.BLOCKPALETTE_TAB);
public static final DeferredRegister<Item> ITEMS = new DeferredRegister<>(ForgeRegistries.ITEMS, Reference.MOD_ID);
//Block Items
public static final RegistryObject<Item> METAL_1 = ITEMS.register("metal_1", () -> new BlockItem(BlockList.METAL_1.get(), ITEM_PROPERTIES).setRegistryName(Reference.MOD_ID, "/metal/metal_1"));
}
I'm assuming I need to call the setRegistryName method before I register the BlockItem but I'm not sure how to do that with a RegistryObject and a DeferredRegister.