February 21, 20178 yr Well, there is shadow facts, but if you want GUIs I don't think there is any. Basically there is no IInventory anymore, you use a ItemStackHandler field in your tile entity class a use capabilities to save it. Edited February 21, 20178 yr by Awesome_Spider
February 21, 20178 yr Author Saw a few and read a few tutorials, outdated and unclear(due to out dating) I have learned everything like items,blocks, tools, armor ore gen, armor with potion effects
February 21, 20178 yr Create a block class the overrides hasTileEntity and getTileEntity and make the getTileEntity method return a new instance of your tile entity class (create one if you haven't already). In your tile entity expose a capability for an ItemStackHandler (read this). Then if you want a gui, they are basically the same as 1.8. Edit: I hope that was easy to understand. If it wasn't, I can explain a little more. Edited February 21, 20178 yr by Awesome_Spider
February 21, 20178 yr Author is this what you mean for starters package com.clowcadia.tutorial.blocks; import com.clowcadia.tutorial.tileentity.TileEntityBlockTutorial; import net.minecraft.block.BlockContainer; import net.minecraft.block.material.Material; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; public class BlockContainerTutorial extends BlockContainer{ public BlockContainerTutorial() { super(Material.ROCK); // TODO Auto-generated constructor stub } @Override public TileEntity createNewTileEntity(World worldIn, int meta) { // TODO Auto-generated method stub return new TileEntityBlockTutorial(); } }
February 21, 20178 yr Author I couldnt not find a way to use ItemStackHandler Capability package com.clowcadia.tutorial.tileentity; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumFacing; import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.items.CapabilityItemHandler; public class TileEntityBlockTutorial extends TileEntity { @Override public boolean hasCapability(Capability<?> capability, EnumFacing facing) { if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { return true; } return super.hasCapability(capability, facing); } }
February 21, 20178 yr Ok, you're close. You need to override both hasCapability and getCapability. Also, who'll need to have an ItemStackHandler field in your class and write and read it to and from NBT by overriding writeToNBT and readFromNBT. I'll check my code to make sure it's correct though.
February 21, 20178 yr Here's how you use ItemStackHandler capability: private ItemStackHandler inventory; public ModTileEntity() { this.inventory = new ItemStackHandler(<number of slots needed>); } Then you can use the methods in ItemStackHandler to manipulate your inventory.
February 21, 20178 yr Hey clowcadia check out the GreyGhosts MinecraftByExample it has lots of good examples of items and blocks. https://github.com/TheGreyGhost/MinecraftByExample Edited February 21, 20178 yr by Leomelonseeds Apparently I'm addicted to these forums and can't help but read all the posts. So if I somehow help you, please click the "Like This" button, it helps.
February 21, 20178 yr 36 minutes ago, clowcadia said: What about custom machines like furnace with out copy and paste You'll also have to implement ITickable I believe.
February 21, 20178 yr Author 5 minutes ago, Leomelonseeds said: Hey clowcadia check out the GreyGhosts MinecraftByExample it has lots of good examples of items. https://github.com/TheGreyGhost/MinecraftByExample Always come through for me man^^ even though already suggested it, still its right there thank you
February 21, 20178 yr If you need more examples/help, I implemented a fully functional furnace and crafting table in one of my mods, and made a thread to get help for each. The mod is 1.11.2 Crafting table thread: Furnace thread: All the related code is here: https://github.com/SocraticPhoenix/Randores/tree/master/src/main/java/com/gmail/socraticphoenix/forge/randore/crafting Developer of Randores (adds 256^3 ores to the game) and Arcane Bags (adds ridiculous storage with ridiculous crafting recipes). I know Java pretty well... So yeah... Quote This is where I'd put an inspirational and/or clever quote, but I can't think of one right now... This is the output of the totally, 100% working compiler for my programming language, Planet9: Beginning Compilation... Failed compilation! planet9.compiler.error.CompilationException: Compiler not yet implemented at planet9.compiler.Compiler.compile(Compiler.java:39) at planet9.compiler.app.CompilerApp.main(CompilerApp.java:147)
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.