Interface Team
-
public interface TeamA team on a scoreboard that has a common display theme and other properties.A team is comprised of different members, represented by
Componentobjects. While anyComponentcan be added to a team, certainComponents convey a special meaning.Examples of this include players, whose names gain the prefix and suffix of the team they are on.
With the exception of
nameTagVisibility()(which is handled client-side), all of the team options require players to have the same team object (and by extension, the same scoreboard). For example, consider two players who each have different scoreboards set. Each scoreboard has a team registered with identical names, each containing the same players. Both players would always be able to attack each other, regardless of the value ofallowFriendlyFire(). For it to work, both players must have the same scoreboard, and be on a team registered to said scoreboard.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceTeam.BuilderRepresents a builder tp createTeaminstances.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description voidaddMember(Component member)Adds the specifiedComponentto this team.booleanallowFriendlyFire()Gets whether friendly fire is enabled.static Team.Builderbuilder()Creates a newTeam.Builderto build aTeam.booleancanSeeFriendlyInvisibles()Gets whether invisible team members are shown.CollisionRulecollisionRule()Gets theCollisionRulefor entities on this team.NamedTextColorcolor()Gets the color of this team.VisibilitydeathMessageVisibility()Gets theVisibilitywhich controls who death Texts for players on this team are visible to.ComponentdisplayName()Gets the name displayed to users for this team.Set<Component>members()Gets theComponents representing the members of this team.Stringname()Gets the name of this team.VisibilitynameTagVisibility()Gets theVisibilitywhich controls to who nametags of players on this team are visible to.Componentprefix()Gets the prefix prepended to the display name of users on this team.booleanremoveMember(Component member)Removes the specifiedComponentfrom this team.Optional<Scoreboard>scoreboard()Returns the scoreboard this team is registered on, if available.voidsetAllowFriendlyFire(boolean enabled)Sets whether friendly fire is enabled.voidsetCanSeeFriendlyInvisibles(boolean enabled)Sets whether invisible team members are shown.default voidsetCollisionRule(Supplier<? extends CollisionRule> rule)Sets theCollisionRulefor entities on this team.voidsetCollisionRule(CollisionRule rule)Sets theCollisionRulefor entities on this team.voidsetColor(NamedTextColor color)Sets the color of this team.default voidsetDeathMessageVisibility(Supplier<? extends Visibility> visibility)Sets theVisibilitywhich controls who death Texts of players on this team are visible to.voidsetDeathMessageVisibility(Visibility visibility)Sets theVisibilitywhich controls who death Texts of players on this team are visible to.voidsetDisplayName(Component displayName)Sets the name displayed to users for this team.default voidsetNameTagVisibility(Supplier<? extends Visibility> visibility)Sets theVisibilitywhich controls to who nametags of players on this team are visible to.voidsetNameTagVisibility(Visibility visibility)Sets theVisibilitywhich controls to who nametags of players on this team are visible to.voidsetPrefix(Component prefix)Sets the prefix prepended to the display name of users on this team.voidsetSuffix(Component suffix)Sets the suffix appended to the display name of users on this team.Componentsuffix()Gets the suffix appended to the display name of users on this team.booleanunregister()Unregisters this team from itsScoreboard, if present.
-
-
-
Method Detail
-
builder
static Team.Builder builder()
Creates a newTeam.Builderto build aTeam.- Returns:
- The new builder
-
name
String name()
Gets the name of this team.- Returns:
- The name of this team
-
displayName
Component displayName()
Gets the name displayed to users for this team.- Returns:
- The display name for this team
-
setDisplayName
void setDisplayName(Component displayName) throws IllegalArgumentException
Sets the name displayed to users for this team.- Parameters:
displayName- TheComponentto use- Throws:
IllegalArgumentException
-
color
NamedTextColor color()
Gets the color of this team.The team's color is a distinct concept from its prefix or suffix. It is only used for colored sidebar display slots, and certain statistic criteria.
- Returns:
- The team color
-
setColor
void setColor(NamedTextColor color)
Sets the color of this team.The team's color is a distinct concept from its prefix or suffix. It is only used for colored sidebar display slots, and certain statistic criteria.
- Parameters:
color- The team color
-
prefix
Component prefix()
Gets the prefix prepended to the display name of users on this team.- Returns:
- The prefix for this team
-
setPrefix
void setPrefix(Component prefix) throws IllegalArgumentException
Sets the prefix prepended to the display name of users on this team.- Parameters:
prefix- The new prefix for this team- Throws:
IllegalArgumentException
-
suffix
Component suffix()
Gets the suffix appended to the display name of users on this team.- Returns:
- The team's current suffix
-
setSuffix
void setSuffix(Component suffix) throws IllegalArgumentException
Sets the suffix appended to the display name of users on this team.- Parameters:
suffix- The new suffix for this team.- Throws:
IllegalArgumentException
-
allowFriendlyFire
boolean allowFriendlyFire()
Gets whether friendly fire is enabled.This option only controls players attacking other players. It has no affect other entities attacking other entities, or players attacking other entities (or vice-versa).
- Returns:
- Whether friendly fire is enabled
-
setAllowFriendlyFire
void setAllowFriendlyFire(boolean enabled)
Sets whether friendly fire is enabled.- Parameters:
enabled- Whether friendly fire is enabled
-
canSeeFriendlyInvisibles
boolean canSeeFriendlyInvisibles()
Gets whether invisible team members are shown.- Returns:
- Whether to show invisible team members
-
setCanSeeFriendlyInvisibles
void setCanSeeFriendlyInvisibles(boolean enabled)
Sets whether invisible team members are shown.- Parameters:
enabled- Whether to show invisible teammates
-
nameTagVisibility
Visibility nameTagVisibility()
Gets theVisibilitywhich controls to who nametags of players on this team are visible to.- Returns:
- The
Visibilityfor this team's nametags
-
setNameTagVisibility
default void setNameTagVisibility(Supplier<? extends Visibility> visibility)
Sets theVisibilitywhich controls to who nametags of players on this team are visible to.- Parameters:
visibility- TheVisibilityfor this team's nametags
-
setNameTagVisibility
void setNameTagVisibility(Visibility visibility)
Sets theVisibilitywhich controls to who nametags of players on this team are visible to.- Parameters:
visibility- TheVisibilityfor this team's nametags
-
deathMessageVisibility
Visibility deathMessageVisibility()
Gets theVisibilitywhich controls who death Texts for players on this team are visible to.- Returns:
- The
Visibilityfor this team's death Texts
-
setDeathMessageVisibility
default void setDeathMessageVisibility(Supplier<? extends Visibility> visibility)
Sets theVisibilitywhich controls who death Texts of players on this team are visible to.- Parameters:
visibility- TheVisibilityfor this team's death Texts
-
setDeathMessageVisibility
void setDeathMessageVisibility(Visibility visibility)
Sets theVisibilitywhich controls who death Texts of players on this team are visible to.- Parameters:
visibility- TheVisibilityfor this team's death Texts
-
collisionRule
CollisionRule collisionRule()
Gets theCollisionRulefor entities on this team.- Returns:
- The
CollisionRulefor entities on this team
-
setCollisionRule
default void setCollisionRule(Supplier<? extends CollisionRule> rule)
Sets theCollisionRulefor entities on this team.- Parameters:
rule- TheCollisionRulefor entities on this team
-
setCollisionRule
void setCollisionRule(CollisionRule rule)
Sets theCollisionRulefor entities on this team.- Parameters:
rule- TheCollisionRulefor entities on this team
-
members
Set<Component> members()
Gets theComponents representing the members of this team.- Returns:
- the
Components for this team's members
-
addMember
void addMember(Component member)
Adds the specifiedComponentto this team.While any
Componentmay be added, theComponentto use should normally be obtained by callingTeamMember.teamRepresentation()on aTeamMember, such as aPlayer.- Parameters:
member- theComponentto add
-
removeMember
boolean removeMember(Component member)
Removes the specifiedComponentfrom this team.While any
Componentmay be removed, theComponentto use should normally be obtained by callingTeamMember.teamRepresentation()on aTeamMember, such as aPlayer.
-
scoreboard
Optional<Scoreboard> scoreboard()
Returns the scoreboard this team is registered on, if available.This will return
Optional.empty()when a team has been removed from itsScoreboard, or has been created but not yet registered.- Returns:
- The scoreboard this team is registered on, if available.
-
unregister
boolean unregister()
Unregisters this team from itsScoreboard, if present.A team can still be fully used after being unregistered. However, it will not affect the game in any way until registered to a
Scoreboardagain, throughScoreboard.registerTeam(Team).- Returns:
- Whether this team was registered to a
Scoreboard.
-
-