Posted October 16, 201213 yr I'm trying to make a block that gives out different drops depending on random and not so random criterions. Basically it drops different sorts of grubs, where the grub is an item with metadata so that 0 is a normal grub, 1 is a fat grub, 2 is a red grub and for now that's all. Here's the code for my block's harvesting: @Override public void harvestBlock(World world, EntityPlayer player, int x, int y, int z, int meta) { for(int i=0; i < meta; i++) { if (world.isBlockGettingPowered(x, y, z) && world.rand.nextInt(3) == 0) { world.spawnEntityInWorld(new EntityItem(world, x, y, z, new ItemStack(Mole.grub, 1, 2))); continue; } if (world.getBlockId(x, y, z) == Constants.MOLE_BLOCK_BAIT_PREMIUM && world.rand.nextInt(2) == 0) { world.spawnEntityInWorld(new EntityItem(world, x, y, z, new ItemStack(Mole.grub, 1, 1))); continue; } world.spawnEntityInWorld(new EntityItem(world, x, y, z, new ItemStack(Mole.grub, 1, 0))); } } The block can be of two types that behave pretty much the same. What happens, though is that every time I harvest one of these blocks(even if powered) I get only grubs with metadata 0. Any ideas? OOPS Okay, so I found out that getBlockID in that position is returning 0 because the block is already destroyed, but I can use blockID. Not sure about the redstone power, though, it always comes up false =/
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.