Jump to content

Recommended Posts

Posted

I had a block I made that had solid and transparent parts, and was rendering all kinds of crazy. Thanks to the folks in here I was able to get it working correctly using the forge multi-layer blockstate.  My question is this...can the same method/principle be applied to a door? My goal is to make a door with a window inside it that has a texture similar to stained glass, rather than just be clear (cutout).  Using a texture with some transparent parts on the regular door model gives much the same result as I had with my previous block--choppy textures, parts look like they are gone, etc. Using a custom model made with cubes that have a transparent texture applied to them gives even worse results.  So is it possible to fix this using the forge multi-layer blockstate, like it fixed the other block? 

Posted
  On 8/15/2018 at 4:31 PM, Maideniles said:

So is it possible to fix this using the forge multi-layer blockstate, like it fixed the other block? 

Expand  

Wouldn't it have just been faster to attempt this than to make a forum post and ask. My answer would be yes, it should work when done correctly.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Posted

Forgive me, i am new to the json scene. When i learned java it was 20 years ago and back then json wasn't a thing yet, neither was minecraft, of course. Lol. I did make a couple of attempts at it already,  but i obviously didn't do it right because my json code wouldnt validate.  

 

After several failed attempts and consulting with a couple of other modders i know, I thought perhaps it isn't feasible. Which brought me here. How would you recommend doing this? 

Posted
  On 8/16/2018 at 1:15 AM, Maideniles said:

How would you recommend doing this? 

Expand  

I would look at my previous multilayer model and see what was different as well as explain what

  On 8/16/2018 at 1:15 AM, Maideniles said:

my json code wouldnt validate.  

Expand  

means, preferably with the log.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Posted
  On 8/16/2018 at 1:15 AM, Maideniles said:

When i learned java it was 20 years ago and back then json wasn't a thing yet

Expand  

Data was though. Data has always been a thing. JSON is just a format for data that's a blend of easy for a human to read and easy for computers to deal with.

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 8/16/2018 at 1:53 AM, Draco18s said:

Data was though. Data has always been a thing. JSON is just a format for data that's a blend of easy for a human to read and easy for computers to deal with.

Expand  

True, true. But as someone who is still trying to figure out how JSON works, I'm unsure where I call the data for each of the multiple models that make up the door blockstate.    Do they get added in the layer values, or in the referenced types? 

Posted

Your logs should be telling you exactly whats wrong with your JSON, can you post them?

About Me

  Reveal hidden contents

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted
  On 8/16/2018 at 3:29 AM, Maideniles said:

True, true. But as someone who is still trying to figure out how JSON works, I'm unsure where I call the data for each of the multiple models that make up the door blockstate.    Do they get added in the layer values, or in the referenced types? 

Expand  

You don't.

 

Blockstates work like this:

 

1) You, in your block class, tell Minecraft what properties (and possible values) your block has

2) You, in a blockstate file, map these property-value keys to model and texture definitions (or other such values)

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.

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



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Managed to solve the issue myself. Solved by a fresh modpack instance.
    • Hello, so straight to the problem. Today i wanted to startup Enigmatica as usual and it just wont startup. Last night everything worked fine, i didnt even turn off my pc. Crash log: https://mclo.gs/GJ6Kcy1
    • Rubidium and Embeddium are versions of the same mod, you can only have one. I believe Embeddium is the one that's actively maintained.
    • Hello, New to modding, but have a solid CS foundation. I've created multiple custom BlockEntities that all have the same issue, which is that the inventory only updates on right click (overriding the useItemOn method). I've seen multiple posts on here outlining a similar issue to mine, but I've already implemented the solution of: overriding the correct methods in the BlockEntity class and calling setChanged(). I've tried every different place for setChanged() to no success. I'm wondering if I'm missing something else or if there was some change to sending data to the client in 1.21.5? Or will I have to use a custom packet sender? Here is the code for one of my BlockEntity classes with a single inventory slot: public class MyCustomBlockEntity extends BlockEntity { public final ItemStackHandler inventory = new ItemStackHandler(1) { @Override protected int getStackLimit(int slot, @NotNull ItemStack stack) { return 1; } @Override protected void onContentsChanged(int slot) { setChanged(); if (!level.isClientSide()) { level.setBlockAndUpdate(getBlockPos(), getBlockState()); } } }; public MyCustomBlockEntity(BlockPos pPos, BlockState pBlockState) { super(ModBlockEntities.MY_CUSTOM_BE.get(), pPos, pBlockState); } public void clearContents() { inventory.setStackInSlot(0, ItemStack.EMPTY); } public void dropItem() { SimpleContainer inv = new SimpleContainer(inventory.getSlots()); inv.setItem(0, inventory.getStackInSlot(0)); Containers.dropContents(this.level, this.worldPosition, inv); } @Override public void setRemoved() { dropItem(); super.setRemoved(); } @Override protected void saveAdditional(CompoundTag pTag, HolderLookup.Provider pRegistries) { super.saveAdditional(pTag, pRegistries); pTag.put("inventory", inventory.serializeNBT(pRegistries)); } @Override protected void loadAdditional(CompoundTag pTag, HolderLookup.Provider pRegistries) { super.loadAdditional(pTag, pRegistries); inventory.deserializeNBT(pRegistries, pTag.getCompound("inventory").get()); } @Override public Packet<ClientGamePacketListener> getUpdatePacket() { return ClientboundBlockEntityDataPacket.create(this); } @Override public CompoundTag getUpdateTag(HolderLookup.Provider pRegistries) { return saveWithoutMetadata(pRegistries); } } Mostly encountering the issue when calling the clearContents() method anywhere outside of useItemOn() in the Block class. I've also tried overriding both the handleUpdateTag() and onDataPacket() methods, calling their super along with loadAdditional(), but neither changed the outcome. Thanks in advance for any replies.
    • Hi all! I’m working on a Jurassic Park-themed mod for Minecraft 1.20.1, aiming to include dinosaurs, fossils, DNA extraction, and cool machines. This is a free project, mainly passion-driven, and I’ll give full credit to everyone involved. this is the perfect opportunity for beginners of modeling and coding. This project will give you experience and a creative freedom If you love dinosaurs and Minecraft modding, hit me up! Thanks! Add Me ogfrost. <--- Discord
  • Topics

×
×
  • Create New...

Important Information

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