Posted September 1, 201411 yr Hey everyone, I have been searching around for a good hour now and I can't find this definitively answered. If I missed it please just point me to the correct post. So I am trying to call world.setBlock to replace a block with air and everything works on normal blocks However, on blocks that extend IContainer the inventory is dropped as well. Is there a way to prevent this? Looking at the source for setBlock it can take flags and it looks like 1 is what will update the block being replaced. But it seems like no matter what flag I pass in it still happens. I have tried 0 (which looking at the code and debugging through doesn't make a call to `notifyBlockChange` or `markBlockForUpdate` but it still happens. Anyway, am I overlooking something? Is there a way to make a block not drop its inventory when being "broken"? I am ok with just deleting the items that are in there but I don't see an obvious way of doing it.
September 1, 201411 yr Author I'm not seeing anything in EntityItem that would accomplish what I am trying to do. Maybe I overlooked something? Plus that is just for entities. Really I need to either just delete the inventory from anything that extends IInventory. ____ edit...oh wait Are you saying to get all entities AFTER they have been dropped and just set them to dead? hmm..sounds like that could be risky and I might accidentally delete any item that just happened to be on the ground around the block
September 2, 201411 yr Hi You could try world.removeTileEntity(wx, wy, wz); before your setBlock to air -TGG
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.