Skip to content

Player Lifecycle

Use this pattern to avoid leaked tasks/viewers.

On Join

kotlin
manager.assign(player, lobbySidebar, buildReplacers(player))
java
manager.assign(player, lobbySidebar, buildReplacers(player));

On Data Change

kotlin
manager.addReplacers(player, mapOf("{online}" to onlinePlayerCount().toString()))
java
manager.addReplacers(player, Map.of("{online}", Integer.toString(onlinePlayerCount())));

On Quit

kotlin
manager.remove(player)
java
manager.remove(player);

remove(player) detaches the sidebar and stops active animation tasks.

Released under the MIT License.