Jump to content

[1.11.2] Block not being textured?


xXJamie_Xx

Recommended Posts

1 minute ago, xXJamie_Xx said:

 

I have changed the file names to "blocktowncentre.json", I have noticed that the texture now shows when the block is placed in the world but not in the players inventory. The latest log file or console do not show any errors.

Are you sure there are no errors? Post the latest log and updated file structure.

Link to comment
Share on other sites

  • Replies 58
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

1 hour ago, diesieben07 said:

This is pointless, the game is not even trying to load the model or there would be a message in the log.

 

@xXJamie_Xx Show where you register your models.

Well I have ModBlocks.java:

package init;

import com.xXJamie_Xx.myTweaks.blocks.BlocktownCentre;

import items.ItemObsidianingot;
import net.minecraft.block.Block;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.fml.common.registry.GameRegistry;

public class ModBlocks {

	
	
	public static Block townCentre;
	
	public static void init() {
		townCentre = new BlocktownCentre(); 
	}
	
	public static void register() {
		registerBlock(townCentre);
	}
	
	private static void registerBlock(Block block) {
		GameRegistry.register(townCentre);
		ItemBlock item = new ItemBlock(block);
		item.setRegistryName(block.getRegistryName());
		GameRegistry.register(item);
	}
	
	public static void registerRenders() {
		registerRender(townCentre);
	}
	
	private static void registerRender(Block block) {
		ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), "inventory"));
	}
}

 

Link to comment
Share on other sites

1 hour ago, diesieben07 said:

You cannot use the ModelLoader class from common code like that, since it is client-only. You must use it from your client-proxy or other client-only classes only, or you will crash a server.

Oh ok, its just that another user suggested I used it in replace of another piece of code I was using previously. (no offence to that user)

BTW, how would I implement that code into the client-proxy and then refer to it in my ModBlocks file.

Edited by xXJamie_Xx
Link to comment
Share on other sites

Just now, xXJamie_Xx said:

Oh ok, its just that another user suggested I used it in replace of another piece of code I was using previously. (no offence to that user)

The same would go for your previous code - modelling/rendering code is almost all client-side only and would crash a dedicated server.

Link to comment
Share on other sites

1 hour ago, Jay Avery said:

The same would go for your previous code - modelling/rendering code is almost all client-side only and would crash a dedicated server.

I actually do see how that would make sense now. A server wouldn't do the rendering, the client would.

Link to comment
Share on other sites

1 hour ago, diesieben07 said:

ModelLoader must be used in preInit.

I've used this code:

	public void preInit() {
		ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), "inventory"));
	}

But its giving me an error saying that "block" cannot be resolved.

Link to comment
Share on other sites

12 hours ago, Jay Avery said:

What is the error now? We aren't looking at your environment, you need to give every detail of what you change and what happens, every time, if you want more help.

Sorry! The error I have is with the code I'm using.

	public void preInit() {
		ModItems.registerRenders();
		ModBlocks.registerRenders();
		ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), "inventory"));
	}

But, on the longest line, it's saying that "block" cannot be resolved & also cannot be resolved to a variable.

Link to comment
Share on other sites

1 hour ago, Kokkie said:

For items, do


ModelLoader.setCustomModelResourceLocation(ModItems.youritem, 0, new ModelResourceLocation(ModItems.youritem.getRegistryName(), "inventory"));

 

After moving my ModelLoader code, the texture for my old item that used to work, now doesn't work. Do I need to reference this in my ModBlocks.java and ModItems.java files?

 

Latest Log: https://pastebin.com/yaQSSftv

Edited by xXJamie_Xx
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements




×
×
  • Create New...

Important Information

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