Class Team
- All Implemented Interfaces:
Cloneable, Iterable<UUID>, net.kyori.adventure.audience.Audience, net.kyori.adventure.audience.ForwardingAudience, net.kyori.adventure.pointer.Pointered
This team implementation is required on Folia servers, because there the vanilla team system is disabled.
When creating a team instance, you can manually register it in a TeamManager.
E.g. via BuildMcAPI.getTeamManager().
When adding members to an unregistered team, nothing else (e.g. the server or the added members)
is informed that the team exists.
Once a team is registered, an uncancellable TeamMemberAddEvent is fired retroactively for each of its
current members.
A team is a collection of members.
A member is represented as a UUID, not a Player or
Entity directly - the UUID does not need to correspond to an existing entity.
Like Bukkit's own Team, this team is also an Adventure
Audience and ForwardingAudience.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.kyori.adventure.audience.ForwardingAudience
net.kyori.adventure.audience.ForwardingAudience.Single -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanAdds a member by hisUUIDto this team.booleanAdds a member by hisUUIDto this team.booleanaddMember(@NotNull org.bukkit.entity.Entity entity) Adds aEntityas a member to this team.@NonNull Iterable<? extends net.kyori.adventure.audience.Audience> clone()Creates a clone of this team.voidempty()Removes all members from this team.booleanvoidIterates over all members on this team, and apply an action on each member.@Nullable net.kyori.adventure.text.format.TextColorgetColor()@Nullable net.kyori.adventure.text.Component@NotNull StringgetName()@Nullable TeamManagerReturns theTeamManagerthis team is registered in.inthashCode()booleanisEmpty()Checks if there are any members on this team.booleanbooleanisMember(@NotNull org.bukkit.entity.Entity entity) iterator()Used to iterate over all members on this team.members()Gets aStreamof all members on the team.voidregister(@NotNull TeamManager manager, boolean persist) booleanremoveMember(@NotNull UUID uuid) Removes a member from this team by hisUUID.booleanremoveMember(@NotNull org.bukkit.entity.Entity entity) Removes anEntityfrom this team.voidsetColor(@Nullable net.kyori.adventure.text.format.TextColor color) voidsetDisplayName(@Nullable net.kyori.adventure.text.Component displayName) voidMethods inherited from class MetadataHolder
containsMetadataKey, getMetadata, mutableMetadata, putMetadata, removeMetadataMethods inherited from class Object
finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.kyori.adventure.audience.Audience
deleteMessage, openBook, openBook, removeResourcePacks, removeResourcePacks, removeResourcePacks, sendActionBar, sendMessage, sendMessage, sendPlayerListFooter, sendPlayerListHeader, sendPlayerListHeaderAndFooter, sendResourcePacks, sendResourcePacks, showTitle, stopSoundMethods inherited from interface net.kyori.adventure.audience.ForwardingAudience
clearResourcePacks, clearTitle, closeDialog, deleteMessage, filterAudience, forEachAudience, hideBossBar, openBook, playSound, playSound, playSound, pointers, removeResourcePacks, removeResourcePacks, resetTitle, sendActionBar, sendMessage, sendMessage, sendMessage, sendPlayerListFooter, sendPlayerListHeader, sendPlayerListHeaderAndFooter, sendResourcePacks, sendTitlePart, showBossBar, showDialog, stopSoundMethods inherited from interface net.kyori.adventure.pointer.Pointered
get, getOrDefault, getOrDefaultFrom
-
Constructor Details
-
Team
-
-
Method Details
-
getColor
@Nullable public @Nullable net.kyori.adventure.text.format.TextColor getColor() -
setColor
public void setColor(@Nullable @Nullable net.kyori.adventure.text.format.TextColor color) -
getDisplayName
@Nullable public @Nullable net.kyori.adventure.text.Component getDisplayName() -
setDisplayName
public void setDisplayName(@Nullable @Nullable net.kyori.adventure.text.Component displayName) -
getName
-
register
-
unregister
public void unregister() -
members
-
getTeamManager
Returns theTeamManagerthis team is registered in.- Returns:
- The
TeamManagerthis team is registered in, ornullif not registered.
-
isMember
@Contract(value="_ -> _", pure=true) public boolean isMember(@NotNull @NotNull org.bukkit.entity.Entity entity) -
isMember
-
addMember
public boolean addMember(@NotNull @NotNull org.bukkit.entity.Entity entity) Adds aEntityas a member to this team.- Returns:
trueif the entities UUID wasn't already present in this team.
-
addMember
Adds a member by hisUUIDto this team. (Optionally) Fires a cancellableTeamMemberAddEvent. Ifcancelledis set totrueand the event is cancelled, the member will not be added to the team.- Parameters:
uuid- TheUUIDof the member to try to addcancellable- Iftrue, this action can be cancelled by event handlers.fireEvent- If aTeamMemberAddEventshould be fired- Returns:
trueif theUUIDif the member wasn't added.- See Also:
-
isEmpty
public boolean isEmpty()Checks if there are any members on this team.- Returns:
trueif there is at least one member on this team.- See Also:
-
empty
public void empty()Removes all members from this team. This will fire aTeamMemberRemovedEventfor each member.- See Also:
-
equals
-
hashCode
-
addMember
Adds a member by hisUUIDto this team. Fires an uncancellableTeamMemberAddEvent. -
removeMember
public boolean removeMember(@NotNull @NotNull org.bukkit.entity.Entity entity) Removes anEntityfrom this team. This will fire aTeamMemberRemovedEventwhen the member was successfully removed.- Returns:
trueif the entities UUID was present and removed successfully.- See Also:
-
removeMember
Removes a member from this team by hisUUID. This will fire aTeamMemberRemovedEventwhen the member was successfully removed.- Returns:
trueif theUUIDwas present and removed successfully.- See Also:
-
iterator
-
forEach
-
spliterator
- Specified by:
spliteratorin interfaceIterable<UUID>
-
audiences
- Specified by:
audiencesin interfacenet.kyori.adventure.audience.ForwardingAudience
-
clone
Creates a clone of this team.A new clone will not be automatically registered inside a
TeamManager.
-