Jump to content

Distinct Soul

Members
  • Posts

    58
  • Joined

  • Last visited

Posts posted by Distinct Soul

  1. I hope this is what you mean, because in all my mess of trying to fix things, I don't even remember anymore:

    public class BlockBase extends Block implements IHasModel {
    	
    	public BlockBase() {
    		
    		super(Material.ROCK);
    		setCreativeTab(ModItems.SOUL_FORGERY);
    	}
    	
    	@Override
    	public void registerModels() {
    		
    		IProxy.registerItemRenderer(Item.getItemFromBlock(this), 0, "inventory");
    	}
    
    	public TileEntity createNewTileEntity(World worldIn, int meta) {
    		return null;
    	}
    }

     

    If this does not include initializing them, then I would like to know how to do it. Because I've tried looking it up, and it just makes me more confused, as it just results in me getting different errors.

  2. Alright, so now that errors been fixed; however, now I have a new error:

    Spoiler

    ---- Minecraft Crash Report ----
    // Why did you do that?

    Time: 8/5/19 5:48 PM
    Description: Initializing game

    java.lang.NullPointerException: Initializing game
        at com.distinctsoul.soulforgery.EventSubscriber.registerItems(EventSubscriber.java:41)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_6_EventSubscriber_registerItems_Register.invoke(.dynamic)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
        at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:143)
        at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:179)
        at net.minecraftforge.registries.GameData.fireRegistryEvents(GameData.java:741)
        at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:604)
        at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:270)
        at net.minecraft.client.Minecraft.init(Minecraft.java:513)
        at net.minecraft.client.Minecraft.run(Minecraft.java:421)
        at net.minecraft.client.main.Main.main(Main.java:118)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
        at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)
        at GradleStart.main(GradleStart.java:25)


    A detailed walkthrough of the error, its code path and all known details is as follows:
    ---------------------------------------------------------------------------------------

    -- Head --
    Thread: Client thread
    Stacktrace:
        at com.distinctsoul.soulforgery.EventSubscriber.registerItems(EventSubscriber.java:41)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_6_EventSubscriber_registerItems_Register.invoke(.dynamic)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
        at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:143)
        at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:179)
        at net.minecraftforge.registries.GameData.fireRegistryEvents(GameData.java:741)
        at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:604)
        at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:270)
        at net.minecraft.client.Minecraft.init(Minecraft.java:513)

    -- Initialization --
    Details:
    Stacktrace:
        at net.minecraft.client.Minecraft.run(Minecraft.java:421)
        at net.minecraft.client.main.Main.main(Main.java:118)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
        at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)
        at GradleStart.main(GradleStart.java:25)

    -- System Details --
    Details:
        Minecraft Version: 1.12.2
        Operating System: Windows 10 (amd64) version 10.0
        Java Version: 1.8.0_181, Oracle Corporation
        Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
        Memory: 813085800 bytes (775 MB) / 1037959168 bytes (989 MB) up to 1037959168 bytes (989 MB)
        JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
        IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
        FML: MCP 9.42 Powered by Forge 14.23.3.2655 5 mods loaded, 5 mods active
        States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored

        | State | ID          | Version      | Source                           | Signature |
        |:----- |:----------- |:------------ |:-------------------------------- |:--------- |
        | UCH   | minecraft   | 1.12.2       | minecraft.jar                    | None      |
        | UCH   | mcp         | 9.42         | minecraft.jar                    | None      |
        | UCH   | FML         | 8.0.99.99    | forgeSrc-1.12.2-14.23.3.2655.jar | None      |
        | UCH   | forge       | 14.23.3.2655 | forgeSrc-1.12.2-14.23.3.2655.jar | None      |
        | UCH   | soulforgery | 0.0.1        | bin                              | None      |

        Loaded coremods (and transformers): 
        GL info: ' Vendor: 'NVIDIA Corporation' Version: '4.6.0 NVIDIA 430.86' Renderer: 'GeForce GTX 1050 Ti/PCIe/SSE2'
        Launched Version: 1.12.2
        LWJGL: 2.9.4
        OpenGL: GeForce GTX 1050 Ti/PCIe/SSE2 GL version 4.6.0 NVIDIA 430.86, NVIDIA Corporation
        GL Caps: Using GL 1.3 multitexturing.
    Using GL 1.3 texture combiners.
    Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
    Shaders are available because OpenGL 2.1 is supported.
    VBOs are available because OpenGL 1.5 is supported.

        Using VBOs: Yes
        Is Modded: Definitely; Client brand changed to 'fml,forge'
        Type: Client (map_client.txt)
        Resource Packs: 
        Current Language: English (US)
        Profiler Position: N/A (disabled)
        CPU: 12x AMD Ryzen 5 1600X Six-Core Processor 

    I get that it's located at line 41 of my EventSubscriber class; but I have no idea what the error means.

     

    Here is that class again:

    @EventBusSubscriber (modid = Main.MODID)
    public class EventSubscriber {
    	
    	@SubscribeEvent
    	public static void registerBlocks(Register<Block> event) {
    		
    		final Block[] blocks = {
    						new BlockBase(Material.ROCK).setRegistryName("igrian_ore").setTranslationKey(Main.MODID + "." + "igrian_ore"),
    						new BlockBase(Material.ROCK).setRegistryName("shard_fuser").setTranslationKey(Main.MODID + "." + "shard_fuser"),
    		};
    		
    		event.getRegistry().registerAll(blocks);
    	}
    	
    	@SubscribeEvent
    	public static void registerItems(Register<Item> event) {
    			
    			final Item[] items = {
    						new ItemBase().setRegistryName("tainted_soul").setTranslationKey(Main.MODID + "." + "tainted_soul"),
    						new ItemBase().setRegistryName("igrian_shards").setTranslationKey(Main.MODID + "." + "igrian_shards"),
    						new ItemBase().setRegistryName("igrian_ingot").setTranslationKey(Main.MODID + "." + "igrian_ingot"),
    						new ItemBase().setRegistryName("igrian_sword").setTranslationKey(Main.MODID + "." + "igrian_sword"),	
    			};
    			
    			final Item[] itemBlocks = {
    			new ItemBlock(ModBlocks.IGRIAN_ORE).setRegistryName(ModBlocks.IGRIAN_ORE.getRegistryName()),
    			new ItemBlock(ModBlocks.SHARD_FUSER).setRegistryName(ModBlocks.SHARD_FUSER.getRegistryName()),
    		};
    			
    			event.getRegistry().registerAll(items);
    			event.getRegistry().registerAll(itemBlocks);
    		}
    	
    }

     

  3. Oh my bad, I forgot that what I had in this class:

    @EventBusSubscriber (modid = Main.MODID)
    public class EventSubscriber {
    	
    	@SubscribeEvent
    	public static void registerBlocks(Register<Block> event) {
    		
    		final Block[] blocks = {
    						new BlockBase(Material.ROCK).setRegistryName("igrian_ore").setTranslationKey(Main.MODID + "." + "igrian_ore"),
    						new BlockBase(Material.ROCK).setRegistryName("shard_fuser").setTranslationKey(Main.MODID + "." + "shard_fuser"),
    		};
    		
    		event.getRegistry().registerAll(blocks);
    	}
    	
    	@SubscribeEvent
    	public static void registerItems(Register<Item> event) {
    			
    			final Item[] items = {
    						new ItemBase().setRegistryName("tainted_soul").setTranslationKey(Main.MODID + "." + "tainted_soul"),
    						new ItemBase().setRegistryName("igrian_shards").setTranslationKey(Main.MODID + "." + "igrian_shards"),
    						new ItemBase().setRegistryName("igrian_ingot").setTranslationKey(Main.MODID + "." + "igrian_ingot"),
    						new ItemBase().setRegistryName("igrian_sword").setTranslationKey(Main.MODID + "." + "igrian_sword"),	
    			};
    			
    			final Item[] itemBlocks = {
    			new ItemBlock(ModBlocks.IGRIAN_ORE).setRegistryName(ModBlocks.IGRIAN_ORE.getRegistryName()),
    			new ItemBlock(ModBlocks.SHARD_FUSER).setRegistryName(ModBlocks.SHARD_FUSER.getRegistryName()),
    		};
    			
    			event.getRegistry().registerAll(items);
    			event.getRegistry().registerAll(itemBlocks);
    		}
    	
    }

     

  4. Alright, so this is the class I just updated:

    public class ModItems {
    	
    	@SubscribeEvent
    	public void registerItems(RegistryEvent.Register<Item> event) {
    	    event.getRegistry().registerAll(TAINTED_SOUL, IGRIAN_SHARDS, IGRIAN_INGOT, IGRIAN_SWORD);
    	}
    	
    	// Creative Tabs
    	public static final CreativeTabs SOUL_FORGERY = new CreativeTabs("soul_forgery") {
    
    		@Override
    		public ItemStack createIcon() {
    			return new ItemStack(IGRIAN_INGOT);
    		}
    	};
    	
    	// Materials
    	public static final ToolMaterial MATERIAL_IGRIAN = EnumHelper.addToolMaterial("material_igrian", 4, 1600, 9.0F, 5.0F, 10);
    	
    	// Items
    	public static final ItemBase TAINTED_SOUL = null;
    	public static final ItemBase IGRIAN_SHARDS = null;
    	public static final ItemBase IGRIAN_INGOT = null;
    	
    	// Tools
    	public static final ItemSword IGRIAN_SWORD = new ToolSword(MATERIAL_IGRIAN);
    	
    }

    (Added the 'registerItems' event at the top, and removed the '@ObjectHolder' annotation that I believe was causing the previous crash)

     

    The class that I now believe relates to the current crash, which in the crash log references line 52 and 43 of:

    @Mod.EventBusSubscriber(modid = Main.MODID, value = CLIENT)
    public final class ClientEventSubscriber {
    	
    	private static final Logger LOGGER = LogManager.getLogger();
    	private static final String DEFAULT_VARIANT = "normal";
    	
    	@SubscribeEvent
    	public static void onRegisterModelsEvent(@Nonnull final ModelRegistryEvent event) {
    		
    		ForgeRegistries.BLOCKS.getValuesCollection().stream()
    						.filter(block -> block.getRegistryName().getNamespace().equals(Main.MODID))
    						.forEach(ClientEventSubscriber::registerItemBlockModel);
    		
    		registerItemBlockModel(ModBlocks.IGRIAN_ORE);
    		registerItemBlockModel(ModBlocks.SHARD_FUSER);
    		
    		registerItemModel(ModItems.IGRIAN_INGOT);
    		registerItemModel(ModItems.IGRIAN_SHARDS);
    		registerItemModel(ModItems.TAINTED_SOUL);
    		registerItemModel(ModItems.IGRIAN_SWORD);
    		
    		LOGGER.debug("Registered models");
    	}
    	
    	private static void registerItemModel(@Nonnull final Item item) {
    		Preconditions.checkNotNull(item, "Item cannot be null!");
    		final ResourceLocation registryName = item.getRegistryName();
    		Preconditions.checkNotNull(registryName, "Item Registry Name cannot be null!");
    		ModelLoader.setCustomModelResourceLocation(item, 0, new ModelResourceLocation(item.getRegistryName(), DEFAULT_VARIANT));
    	}
    
    	private static void registerItemBlockModel(@Nonnull final Block block) {
    		Preconditions.checkNotNull(block, "Block cannot be null!");
    		final ResourceLocation registryName = block.getRegistryName();
    		Preconditions.checkNotNull(registryName, "Block Registry Name cannot be null!");
    		ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), DEFAULT_VARIANT));
    	}
    	
    	@SubscribeEvent
    	public static void onTextureStitchEvent(@Nonnull final TextureStitchEvent event) {
    		// Register texture for Shard Fuser
    		final ResourceLocation registryName = ModBlocks.SHARD_FUSER.getRegistryName();
    		event.getMap().registerSprite(new ResourceLocation(registryName.getNamespace(), "block/" + registryName.getPath()));
    	}
    }

     

    And this is the error log:

    Spoiler

    ---- Minecraft Crash Report ----
    // My bad.

    Time: 7/24/19 4:29 PM
    Description: Initializing game

    java.lang.NullPointerException: Item cannot be null!
        at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:787)
        at com.distinctsoul.soulforgery.client.ClientEventSubscriber.registerItemModel(ClientEventSubscriber.java:52)
        at com.distinctsoul.soulforgery.client.ClientEventSubscriber.onRegisterModelsEvent(ClientEventSubscriber.java:43)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_5_ClientEventSubscriber_onRegisterModelsEvent_ModelRegistryEvent.invoke(.dynamic)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
        at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:143)
        at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:179)
        at net.minecraftforge.fml.client.FMLClientHandler.fireSidedRegistryEvents(FMLClientHandler.java:1096)
        at net.minecraftforge.fml.common.FMLCommonHandler.fireSidedRegistryEvents(FMLCommonHandler.java:758)
        at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:605)
        at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:270)
        at net.minecraft.client.Minecraft.init(Minecraft.java:513)
        at net.minecraft.client.Minecraft.run(Minecraft.java:421)
        at net.minecraft.client.main.Main.main(Main.java:118)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
        at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)
        at GradleStart.main(GradleStart.java:25)


    A detailed walkthrough of the error, its code path and all known details is as follows:
    ---------------------------------------------------------------------------------------

    -- Head --
    Thread: Client thread
    Stacktrace:
        at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:787)
        at com.distinctsoul.soulforgery.client.ClientEventSubscriber.registerItemModel(ClientEventSubscriber.java:52)
        at com.distinctsoul.soulforgery.client.ClientEventSubscriber.onRegisterModelsEvent(ClientEventSubscriber.java:43)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_5_ClientEventSubscriber_onRegisterModelsEvent_ModelRegistryEvent.invoke(.dynamic)
        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
        at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:143)
        at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:179)
        at net.minecraftforge.fml.client.FMLClientHandler.fireSidedRegistryEvents(FMLClientHandler.java:1096)
        at net.minecraftforge.fml.common.FMLCommonHandler.fireSidedRegistryEvents(FMLCommonHandler.java:758)
        at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:605)
        at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:270)
        at net.minecraft.client.Minecraft.init(Minecraft.java:513)

    -- Initialization --
    Details:
    Stacktrace:
        at net.minecraft.client.Minecraft.run(Minecraft.java:421)
        at net.minecraft.client.main.Main.main(Main.java:118)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
        at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)
        at GradleStart.main(GradleStart.java:25)

    -- System Details --
    Details:
        Minecraft Version: 1.12.2
        Operating System: Windows 10 (amd64) version 10.0
        Java Version: 1.8.0_181, Oracle Corporation
        Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
        Memory: 776709504 bytes (740 MB) / 1037959168 bytes (989 MB) up to 1037959168 bytes (989 MB)
        JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
        IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
        FML: MCP 9.42 Powered by Forge 14.23.3.2655 5 mods loaded, 5 mods active
        States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored

        | State | ID          | Version      | Source                           | Signature |
        |:----- |:----------- |:------------ |:-------------------------------- |:--------- |
        | UCH   | minecraft   | 1.12.2       | minecraft.jar                    | None      |
        | UCH   | mcp         | 9.42         | minecraft.jar                    | None      |
        | UCH   | FML         | 8.0.99.99    | forgeSrc-1.12.2-14.23.3.2655.jar | None      |
        | UCH   | forge       | 14.23.3.2655 | forgeSrc-1.12.2-14.23.3.2655.jar | None      |
        | UCH   | soulforgery | 0.0.1        | bin                              | None      |

        Loaded coremods (and transformers): 
        GL info: ' Vendor: 'NVIDIA Corporation' Version: '4.6.0 NVIDIA 430.86' Renderer: 'GeForce GTX 1050 Ti/PCIe/SSE2'
        Launched Version: 1.12.2
        LWJGL: 2.9.4
        OpenGL: GeForce GTX 1050 Ti/PCIe/SSE2 GL version 4.6.0 NVIDIA 430.86, NVIDIA Corporation
        GL Caps: Using GL 1.3 multitexturing.
    Using GL 1.3 texture combiners.
    Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
    Shaders are available because OpenGL 2.1 is supported.
    VBOs are available because OpenGL 1.5 is supported.

        Using VBOs: Yes
        Is Modded: Definitely; Client brand changed to 'fml,forge'
        Type: Client (map_client.txt)
        Resource Packs: 
        Current Language: English (US)
        Profiler Position: N/A (disabled)
        CPU: 12x AMD Ryzen 5 1600X Six-Core Processor 

    Any help would be appreciated.

  5. I did and that's why I sent that because it had to do with registering stuff, which I thought the error was talking about, as it was talking about the registry and registry events. If I didn't I would of just said: "My game crashed. Please help." and not even send anything other than the crash report. At least now that I know that it's more specifically targeted at the @ObjectHolder annotation.

     

    From that, all I can think of that might help is sending classes which contain the '@ObjectHolder' annotation.

    @ObjectHolder(Main.MODID)
    public class ModBlocks {
    	
    	// Blocks
    	public static final BlockBase IGRIAN_ORE = null;
    	public static final BlockBase SHARD_FUSER = null;
    }
    @ObjectHolder (Main.MODID)
    public class ModItems {
    	
    	// Creative Tabs
    	public static final CreativeTabs SOUL_FORGERY = new CreativeTabs("soul_forgery") {
    
    		@Override
    		public ItemStack createIcon() {
    			return new ItemStack(IGRIAN_INGOT);
    		}
    	};
    	
    	// Materials
    	public static final ToolMaterial MATERIAL_IGRIAN = EnumHelper.addToolMaterial("material_igrian", 4, 1600, 9.0F, 5.0F, 10);
    	
    	// Items
    	public static final ItemBase TAINTED_SOUL = null;
    	public static final ItemBase IGRIAN_SHARDS = null;
    	public static final ItemBase IGRIAN_INGOT = null;
    	
    	// Tools
    	public static final ItemSword IGRIAN_SWORD = new ToolSword(MATERIAL_IGRIAN);
    	
    }

     

  6. Ok, so I've done a few changes to my mod, and I no longer have errors for my classes. However, the problem now relates to the fact that when I run my Minecraft, it crashes and says this:

     

    java.lang.IllegalStateException: The ObjectHolder annotation cannot apply to a field that does not map to a registry. Ensure the registry was created during the RegistryEvent.NewRegistry event. (found : net.minecraft.creativetab.CreativeTabs at java.lang.reflect.Field.SOUL_FORGERY)

     

    Here's my ClientEventSubscriber if it helps:
     

    @Mod.EventBusSubscriber(modid = Main.MODID, value = CLIENT)
    public final class ClientEventSubscriber {
    	
    	private static final Logger LOGGER = LogManager.getLogger();
    	private static final String DEFAULT_VARIANT = "normal";
    	
    	@SubscribeEvent
    	public static void onRegisterModelsEvent(@Nonnull final ModelRegistryEvent event) {
    		
    		ForgeRegistries.BLOCKS.getValuesCollection().stream()
    						.filter(block -> block.getRegistryName().getNamespace().equals(Main.MODID))
    						.forEach(ClientEventSubscriber::registerItemBlockModel);
    		
    		registerItemBlockModel(ModBlocks.IGRIAN_ORE);
    		registerItemBlockModel(ModBlocks.SHARD_FUSER);
    		
    		registerItemModel(ModItems.IGRIAN_INGOT);
    		registerItemModel(ModItems.IGRIAN_SHARDS);
    		registerItemModel(ModItems.TAINTED_SOUL);
    		registerItemModel(ModItems.IGRIAN_SWORD);
    		
    		LOGGER.debug("Registered models");
    	}
    	
    	private static void registerItemModel(@Nonnull final Item item) {
    		Preconditions.checkNotNull(item, "Item cannot be null!");
    		final ResourceLocation registryName = item.getRegistryName();
    		Preconditions.checkNotNull(registryName, "Item Registry Name cannot be null!");
    		ModelLoader.setCustomModelResourceLocation(item, 0, new ModelResourceLocation(item.getRegistryName(), DEFAULT_VARIANT));
    	}
    
    	private static void registerItemBlockModel(@Nonnull final Block block) {
    		Preconditions.checkNotNull(block, "Block cannot be null!");
    		final ResourceLocation registryName = block.getRegistryName();
    		Preconditions.checkNotNull(registryName, "Block Registry Name cannot be null!");
    		ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), DEFAULT_VARIANT));
    	}
    	
    	@SubscribeEvent
    	public static void onTextureStitchEvent(@Nonnull final TextureStitchEvent event) {
    		// Register texture for Shard Fuser
    		final ResourceLocation registryName = ModBlocks.SHARD_FUSER.getRegistryName();
    		event.getMap().registerSprite(new ResourceLocation(registryName.getNamespace(), "block/" + registryName.getPath()));
    	}
    }

     

    I'm not really sure what other things to give to help solve this problem.

  7. Ah. I should probably update the forge that I'm using thinking about it. But also, are these new mappings still found on the most recommended release for Forge on 1.12? Or only later versions?

    Not to mention, 'ForgeDirectories' comes up with an error stating to import it. But when I do, I then get an error for MOD_ID.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.