Jump to content

Recommended Posts

Posted

I cant get the item and also can place them with setblock, it seems they arent registered

 

Thats my code for the slab

  Reveal hidden contents

thats for half

  Reveal hidden contents

 

and thats for full

  Reveal hidden contents

 

i also put it in the class of my blocks that are all registered like that

 

public static final Block ASHBRICK_SLAB_HALF = new HalfSlab(Material.ROCK, "ashbrick_slab_half");
public static final Block ASHBRICK_SLAB_DOUBLE = new DoubleSlab(Material.ROCK, "ashbrick_slab_double");

 

and thats how all blocks get registered excluding my slabs in the same list

 

@SubscribeEvent
    public static void onBlockRegister(RegistryEvent.Register<Block> e) {
        e.getRegistry().registerAll(Modblocks.BLOCKS.toArray(new Block[0]));
    }

 

do i need to register slabs special? or is there a mistake in the slab itself

 

 

 

Posted
  On 9/26/2019 at 8:04 PM, Brbcode said:

What means Modblocks.BLOCKS.toArray(new Block[0])?

Expand  

I already fixed my slabs with an extra class so thats fine

 

To array converts a list to an array of a list, the new Block[0] means it converts the list to an blockarray

an array is very similar to a list, for example you create  a new array with

Blocks[] = new Blocks[]{block1, block2}

 

and if you do Block[1] you will get block2 from it because it counts from 0

Posted
  On 9/26/2019 at 8:40 PM, Schleim_time said:

it gives an error now that block air dont have a model

Expand  

That happens when the block in question was not correctly registered. The game attempts to get the registry key for the object it has, but it isn't in the registry, so it doesn't know what it's name is.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Posted (edited)
  On 9/26/2019 at 8:56 PM, Draco18s said:

That happens when the block in question was not correctly registered. The game attempts to get the registry key for the object it has, but it isn't in the registry, so it doesn't know what it's name is.

Expand  

Oh so i made a registering mistake, what is my mistake here?

 

public static final HalfSlab ASHBRICK_SLAB_HALF = new HalfSlab(Material.ROCK, "ashbrick_slab_half");
    public static final DoubleSlab ASHBRICK_SLAB_DOUBLE = new DoubleSlab(Material.ROCK, "ashbrick_slab_double");
    
    public static final ArrayList<Slab> SLABS = Lists.newArrayList(
            ASHBRICK_SLAB_DOUBLE,
            ASHBRICK_SLAB_HALF
            );
    
    public ModHalfSlab() {
        registerSlabs(ASHBRICK_SLAB_HALF, ASHBRICK_SLAB_DOUBLE);
    }
    
    
    private void registerSlabs(HalfSlab halfSlab, DoubleSlab doubleSlab) {
        final ItemSlab itemSlab = new ItemSlab(halfSlab, halfSlab, doubleSlab);
        final ResourceLocation name = halfSlab.getRegistryName();
        itemSlab.setRegistryName(name);
        itemSlab.setCreativeTab(CreativeTabs.BUILDING_BLOCKS);
        ForgeRegistries.BLOCKS.register(halfSlab);
        ForgeRegistries.BLOCKS.register(doubleSlab);
        ForgeRegistries.ITEMS.register(itemSlab);
    }
}

 

i get the slabs working corectly but dont owning a model :/ even if i manuelly set them a modellocation that exists

 

I tried to put it all in one class, i got my block now but its not in the inventory also

 

also it will be executed from the main class Init method

Edited by Schleim_time
Posted (edited)
  On 9/26/2019 at 8:56 PM, Draco18s said:

That happens when the block in question was not correctly registered. The game attempts to get the registry key for the object it has, but it isn't in the registry, so it doesn't know what it's name is.

Expand  

i saw a toturial about it and see someboday making it a static void

 

private static void registerSlabs(HalfSlab halfSlab, DoubleSlab doubleSlab) {
        ForgeRegistries.BLOCKS.register(halfSlab);
        halfSlab.setCreativeTab(CreativeTabs.BUILDING_BLOCKS);
        ItemSlab itemSlab = new ItemSlab(halfSlab, halfSlab, doubleSlab);
        itemSlab.setRegistryName(halfSlab.getRegistryName());
        ForgeRegistries.ITEMS.register(itemSlab);
        
        ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(halfSlab), 0, new ModelResourceLocation(halfSlab.getRegistryName(), "inventory"));
    }

 

the air error is gone but the models still dont exist

i also added my modell directly into it but it still have the notexture model

Edited by Schleim_time
Posted
  On 9/26/2019 at 9:22 PM, Schleim_time said:

i saw a toturial about it and see someboday making it a static void

Expand  

I mean, that is a solution, assuming that other factors are true.

 

You haven't posted enough code for us to determine if those factors are true or not. The best way for us to help you is if you post your entire project as a working git repo and include a full error log. Not just "but don't have a model."

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Posted
  On 9/26/2019 at 9:55 PM, Draco18s said:

I mean, that is a solution, assuming that other factors are true.

 

You haven't posted enough code for us to determine if those factors are true or not. The best way for us to help you is if you post your entire project as a working git repo and include a full error log. Not just "but don't have a model."

Expand  

Yeah you are alright "but don't have a model." isnt really a good information xD

 

Double Slab

  Reveal hidden contents

 

HalfSlab

  Reveal hidden contents

 

SlabClass

  Reveal hidden contents

Model Registery

  Reveal hidden contents

 

ClientProxy

  Reveal hidden contents

 

that are all classes have to do with my slab block and the model is a missing moddel the error i got is

  Reveal hidden contents

 

i also register all other blocks with the same interface but they have a model, my slabs doesnt have one

Posted (edited)

I fixed all my slabs :D ist working fine now, i did a lot of mistakes also the models have whrong names and some of my coed didnt make sence. Its always helpful to look on it after a break, but i dont know i still get the air exeption and it came from the slab even if my new models in game works fine

 

I also fixed that i registered the blocks as item oof xD

Edited by Schleim_time

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.