mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-28 18:11:16 +00:00
## About The Pull Request Partial revert of #86701 Implements a shared holder particle system, somewhat inspired by https://github.com/Baystation12/Baystation12/pull/34014 (thanks Kapu). Atoms can be assigned "shared" particles via add_shared_particles, with an optional "alternate" key passed as a second arg if you're planning to edit the returned particle holder (for example, color it like slimed status does). Removing is done via remove_shared_particles with an option to delete the shared holder if nothing is using it anymore (on by default). This system should be prioritized over normal particle holders when a lot of entities would be using a certain particle effect (like fires) as it conserves a lot of clientside performance. Burning, acid, decaying, firestacks and slimed status now use this system which should help with clientside performance and amount of atoms created/destroyed. ## Why It's Good For The Game Less clientside lag. ## Changelog 🆑 refactor: Firestacks, burning/acid/decaying effects and (brought back after being temporarily removed) slimed status effects now use a new "shared" particles system, which should considerably improve client performance when encountering a lot of burning/slimed entities. /🆑 --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>