Posted August 27, 201312 yr Hey everyone, So, as a side project to my regular mod, I've been making a "Simple Blocks" mod, which just adds bock to creative that have block textures. Have a free example! You'll notice my floating signs, telling me which block is which. The reason I have floaty signs is because of an "Invisible Block" I added, which works (to some description). You'll see what I mean by that here: My blocks are simply registered under the net.minecraft.block.Block.class. with this: invisibleBlock = new Block(invisibleBlockID, Material.iron) .setUnlocalizedName("invisibleblock").func_111022_d("invisibleblock") .setCreativeTab(CreativeTabs.tabBlock).setBlockUnbreakable(); My question is; is there a way to have my block completely invisible (except for the wireframe), without it making everything connected to it invisible too? That is all Thanks HydroBane
August 27, 201312 yr Override this method in your block: @SideOnly(Side.CLIENT) /** * Returns true if the given side of this block type should be rendered, if the adjacent block is at the given * coordinates. Args: blockAccess, x, y, z, side */ public boolean shouldSideBeRendered(IBlockAccess par1IBlockAccess, int par2, int par3, int par4, int par5) {
August 27, 201312 yr Author Okay, that relies on me making a class. Is it possible for me to do it without making a new class, or is this the only way?
August 27, 201312 yr Set opaqueCubeLookup[id]=true; and use Material.glass ? Not sure about this one.
August 27, 201312 yr When using BlockGlass the block will have glass-like properties you may don't want to have, like the loss of the block when you break it in survival. What's the problem with creating a class? Author of PneumaticCraft, MineChess, Minesweeper Mod and Sokoban Mod. Visit www.minemaarten.com to take a look at them.
August 27, 201312 yr That's a good point I didn't even think about. You'd probably be better off making a new class just like MineMaarten said.
August 28, 201312 yr Author I was given a challenge to use the least amount of classes as I possibly could. At the moment I have two, and I was trying to stick to that. My textures also don't work in new classes, but I believe that's a bug in the version of forge I have, as I'm not using latest.
August 28, 201312 yr You can extend block glass, and then when you declare the variable in your main mod file, just use = new BlockGlass(id, otherparamsifany?).setHardness(float f);
August 28, 201312 yr do they all have the same block class ? like is that a multiblock, because then i could understand why you would not want to create a new block... anyway you can always reimplement the method that gotolink talked about or if you're using the Block class withotu anything else you can always just override the method gotolink pointed dynamicly, you wouldnt need to create a new class. or ISimpleBlockRenderingHandler how to debug 101:http://www.minecraftforge.net/wiki/Debug_101 -hydroflame, author of the forge revolution-
August 28, 201312 yr I am afraid he is using only Block constructor, which means he probably uses 1 block id for each texture.
August 28, 201312 yr meh, he could still dynamicly override the method you stated above. how to debug 101:http://www.minecraftforge.net/wiki/Debug_101 -hydroflame, author of the forge revolution-
August 28, 201312 yr Author I am indeed using 1 block ID for each texture, and how would I go about dynamically overriding the method, without creating another class, or changing from using the Block constructor?
August 28, 201312 yr [lmgtfy]java dynamically override method[/lmgtfy] how to debug 101:http://www.minecraftforge.net/wiki/Debug_101 -hydroflame, author of the forge revolution-
August 28, 201312 yr It depends on your definition of "creating another class", but the easiest way would be an internal Block subclass overriding the method i gave.
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.