Posted July 30, 201510 yr Hello, I'm trying to have a fluid dry over time and get replaced by a block. How can I check how many ticks have passed since the fluid was placed ? I've found TickEvent, but I don't know what to do with it, how can I get all corresponding blocks ? Also, using the fluid's metadata seems to be a good idea to store the time since the block was placed, is World.setBlockMetadataWithNotify the right way to change it ? And how do I use it (in the doc the parameters are just four ints with random names) ? Thanks a lot
July 31, 201510 yr Hi Have a look in BlockDynamicLiquid. It's more complicated than you need but all the pieces are there. In particular look in updateTick() and at this line worldIn.scheduleUpdate(pos, this, j); -TGG
July 31, 201510 yr Author I looked into the BlockDynamicLiquid, but it doesn't use Fluids, so buckets wouldn't work (or it meant I had to rewrite half my mod). Then I noticed BlockFluidClassic had an updateTick() function I could use with world.scheduleBlockUpdate(). Then I realized I can't store the age of the block in the metadata because it's already used by flowing mechanics, so finally I had to use TileEntities by implementing ITileEntityProvider in my BlockFluid, and store the data in NBT tags. I uses the updateEntity() function to add to the age and check if the source is old to replace it with a block, and it works ! Thanks
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.