Interface ObjectiveManager
public interface ObjectiveManager
Represents a group of
ScoreboardObjectives.
To get an instance of this interface, use ScoreboardLibrary.createObjectiveManager()
Note: this interface is not thread-safe, meaning you can only use it from one thread at a time,
although it does not have to be the main thread.-
Method Summary
Modifier and TypeMethodDescriptionbooleanaddPlayer(@NotNull org.bukkit.entity.Player player) Adds a viewer to this ObjectiveManager.default voidaddPlayers(@NotNull Collection<org.bukkit.entity.Player> players) Adds multiple viewers to this ObjectiveManager.voidclose()Closes this ObjectiveManager.booleanclosed()@NotNull ScoreboardObjectiveCreates an objective with a name if one doesn't already exist and returns it.voiddisplay(@NotNull ObjectiveDisplaySlot displaySlot, @NotNull ScoreboardObjective objective) Updates which objective is shown in a display slot.@NotNull Collection<org.bukkit.entity.Player>players()voidremove(@NotNull ScoreboardObjective objective) Removes an objective.booleanremovePlayer(@NotNull org.bukkit.entity.Player player) Removes a viewer from this ObjectiveManager.default voidremovePlayers(@NotNull Collection<org.bukkit.entity.Player> players) Removes multiple viewers from this ObjectiveManager
-
Method Details
-
create
Creates an objective with a name if one doesn't already exist and returns it.- Parameters:
name- name of the objective- Returns:
- objective
-
remove
Removes an objective.- Parameters:
objective- objective to remove
-
display
void display(@NotNull @NotNull ObjectiveDisplaySlot displaySlot, @NotNull @NotNull ScoreboardObjective objective) Updates which objective is shown in a display slot.- Parameters:
displaySlot- display slot value to show objective inobjective- objective to display in that display slot
-
players
- Returns:
- unmodifiable collection of viewers in this ObjectiveManager
- See Also:
-
addPlayer
boolean addPlayer(@NotNull @NotNull org.bukkit.entity.Player player) Adds a viewer to this ObjectiveManager. Note that a player can only see a single ObjectiveManager at a time. The ObjectiveManager will internally be added to a queue for this player who will start seeing it once they are removed from all previous ObjectiveManagers.- Parameters:
player- player to add- Returns:
- whether the player was added
-
addPlayers
Adds multiple viewers to this ObjectiveManager.- Parameters:
players- viewers to add- See Also:
-
removePlayer
boolean removePlayer(@NotNull @NotNull org.bukkit.entity.Player player) Removes a viewer from this ObjectiveManager.- Parameters:
player- viewer to remove- Returns:
- whether the viewer was removed
-
removePlayers
Removes multiple viewers from this ObjectiveManager- Parameters:
players- viewers to remove
-
close
void close()Closes this ObjectiveManager. This must be called once you no longer need this ObjectiveManager to prevent a memory leak. -
closed
boolean closed()- Returns:
- whether this ObjectiveManager is closed
- See Also:
-