RandomMcSomethin / fallingleaves

MIT License
43 stars 20 forks source link

[Suggestion] Separate spawn-rate for decaying leaves #28

Closed UnklePhunkle closed 2 years ago

UnklePhunkle commented 2 years ago

Implement a control for particles from non-persistent distance-7 leaves. Ideally, this would be configurable so that the user could opt to have leave ONLY fall from decaying leaves; this could be a very nice effect where leaf blocks don't just vanish into thin air.

Fourmisain commented 2 years ago

We had that idea for a long time but the issue is that leaf decay happens on the server side so there's no easy way of detecting this on the client side. I haven't yet looked into this - it should be possible to check for block or render state changes, but I fear this might be very inefficient, so it may only really be doable for singleplayer mode.

UnklePhunkle commented 2 years ago

Understood, glad you've put the thought into it. Is it possible that the issue could be helped by a resource pack like this: https://www.planetminecraft.com/texture-pack/visual-leaf-decay/ ?

Fourmisain commented 2 years ago

Ah, I think I only just now understood what you meant. Increasing the leaf spawn rate of such blocks should be no issue (except that Terrestria/Traverse's ExtendedLeavesBlock might need special care).

I was thinking of spawning leaves when they actually decay/disappear/are broken so they don't turn to air but leave a few leaves behind (pun intended).

UnklePhunkle commented 2 years ago

Ha, no worries; I get that my wording was a bit unclear. I can totally see how it would be a nightmare to spawn something from a block as soon as the block is no longer there.

Fourmisain commented 2 years ago

Just released a new version (CurseForge should approve soon, Modrinth has it now), adding a "Decaying Leaf Spawn Rate Multiplier" setting among other things. I also added a version of the "decayed leaf blocks turn into a bunch of leaves" idea, though it only works in singleplayer.

And I just now realize it is kinda missing the option to spawn particles only from decaying leaves but you could turn down the general spawn rates and use a high multiplier to approximate this.

edit: Actually, the second feature is independent of spawn rates so if you're playing singleplayer you could set the spawn rates to 0 and only use "Decayed Leaf Max. Spawn Count" setting.