Posted July 23, 201411 yr Hey guys I was wondering, if there's a possibility to fasten the process of decaying leaves up, if they are not connected to log any more. I would be grateful, if you could help me to find a solution. Thanks in advance
July 23, 201411 yr The only gracefull way to do that is probably with a coremod. A very ungracefull way is to search for leaves and replace them with a custom version you created or do this on wolrd creation. Long time Bukkit & Forge Programmer Happy to try and help
July 24, 201411 yr Hi Leaves decay when updateTick is called. UpdateTick is called pseudo-randomly in WorldServer.tickBlocksAndAmbience under the "tickTiles" section. If you added your own Server Tick, and then perform your own random ticking in the same way (checking to see if the block is a leaf block before calling it) this will speed up the decay. -TGG
July 24, 201411 yr Yeah, I was going to suggest similar. The question is whether you want to speed up the decay (meaning still go through all the stages of decay) or just you want to remove them faster. But the trick seems to be that the decay level seems to be controlled by a package-private int array (called field_150128_a in 1.7.10). I can't quite understand how the array works (kinda hurt my head) but I would guess that it is a map to the decay levels. I'm not sure why they didn't use metadata, or maybe they did but my guess is wrong, but probably because they wanted breaking leaves and decaying leaves to be different. Anyway that field seems to hold the decay values in some sort of "map". So I think to speed up the decay you'd have to access that field. Because it is non-static I think you can use Java reflection to access it. Just some thoughts based on my quick look at the BlockLeaves class. Check out my tutorials here: http://jabelarminecraft.blogspot.com/
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.