-
Notifications
You must be signed in to change notification settings - Fork 69
Components
The following components are available:
-
Basic Component
{text: "...", icon: "image.png", ping: 0}
The basic component represents the content of one slot in the tab list. The
icon
option can be set to either a player name, a player uuid or the name of an image file located in theBungeeTabListPlus/heads
folder.The basic component also has an option for text alignment:
{text: "Centered text", icon: "image.png", ping: 0, alignment: CENTER}
Or to do right bound text:
{text: "At the right", icon: "image.png", ping: 0, alignment: RIGHT}
-
Animated Component
!animated components: <List of Compopnents> interval: <Number>
Example:
!animated components: - {text: "&7Hello &a${player name}", icon: "${player skin}", ping: 0} - {text: "&7Hello &b${player name}", icon: "${player skin}", ping: 0} - {text: "&7Hello &c${player name}", icon: "${player skin}", ping: 0} - {text: "&7Hello &d${player name}", icon: "${player skin}", ping: 0} interval: 0.4
This component makes it possible to create animated slots.
Option Description components
These components will be cycled through. interval
Interval in seconds at which to switch the active Component. -
Conditional Component
!conditional condition: <Expression> true: <Replacement if the condition evaluates to true> false: <Replacement if the condition evaluates to false>
Example:
!conditional condition: |- ${server:survival online} == true true: {text: "&bSurvival: &aONLINE", icon: "colors/green.png", ping: 0} false: {text: "&bSurvival: &cOFFLINE", icon: "colors/red.png", ping: 0}
This component can dynamically change the content of the tab list. The example shows how this could replace the {onlineState} variable.
Option Description condition
The expression to be evaluated. true
Replacement if the condition evaluates to true. false
Replacement if the condition evaluates to false. Additional info: Expression Syntax
-
Players Component
!players playerSet: <String> playerOrder: <String> playerComponent: <Component or list of components> morePlayersComponent: <Component or list of components> minSize: <Number> maxSize: <Number>
Example:
!players playerSet: global playerOrder: "vaultGroupInfo,alphabetically" playerComponent: {text: "${player name}", icon: "${player skin}", ping: "${player ping}"} morePlayersComponent: {text: "... and ${other_count} others", icon: "default/players.png", ping: 0} minSize: 0 maxSize: 6
This component provides a simple way of adding players to the tab list.
Option Description playerSet
Selects which players will be added to the tab list. playerOrder
Determines the order of the players in the tab list. More info playerComponent
Determines how a player will be presented in the tab list. Usually you will want to set this to {text: "${player name}", icon: "${player skin}", ping: "${player ping}"}
, eventually adding a prefix. This can be set to a list of basic components to use more than one slot per player.morePlayersComponent
This will be shown if there are more players than there is space in the tab list (or more players than max-size
)minSize
Optional: Minimum slots this component should use maxSize
Optional: Maximum slots this component should use -
Players by Server Component
!players_by_server playerSet: <String> playerOrder: <String> serverHeader: <List of Components> serverFooter: <List of Components> serverSeparator: <List of Components> includeEmptyServers: <Boolean> playerComponent: <Component or list of components> morePlayersComponent: <Component or list of components> minSizePerServer: <Number> maxSizePerServer: <Number> minSize: <Number> maxSize: <Number>
Example:
!players_by_server playerSet: global playerOrder: "vaultGroupInfo,alphabetically" serverHeader: - {text: "&e&n${server}&f&o (${server_player_count}):", icon: "colors/yellow.png", ping: 0} includeEmptyServers: false playerComponent: {text: "${player name}", icon: "${player skin}", ping: "${player ping}"} morePlayersComponent: {text: "&7... and &e${other_count} &7others", icon: "colors/gray.png", ping: 0}
This component adds players to the tab list grouping them by server as seen in the default config.
Option Description playerSet
Selects which players will be added to the tab list. playerOrder
Determines the order of the players in the tab list. More info serverHeader
The server header will appear once for each server above the players playing on that server. serverFooter
Optional: The server footer will appear once for each server below the players playing on that server. serverSeparator
Optional: The server separator will appear between each two servers. includeEmptyServers
Whether empty servers will show up too. playerComponent
Determines how a player will be presented in the tab list. Usually you will want to set this to {text: "${player name}", icon: "${player skin}", ping: "${player ping}"}
, eventually adding a prefix. This can be set to a list of basic components to use more than one slot per player.morePlayersComponent
This will be shown if there are more players than there is space in the tab list (or more players than max-size
)minSizePerServer
Optional: Minimum slots to use for a single server maxSizePerServer
Optional: Maximum slots to use for a single server minSize
Optional: Minimum slots this component should use maxSize
Optional: Maximum slots this component should use -
Table
!table columns: <Column number(s)>: <List of Components>
Example:
!table columns: 0-1: - {text: "Survival"} - {text: ""} - !players playerSet: survival playerComponent: {text: "${player name}", icon: "${player skin}", ping: "${player ping}"} morePlayersComponent: {text: "... and ${other_count} others", skin: "default/players.png", ping: 0} 2: - {text: "Stats:"} - {text: "Playtime:"} - {text: " Total: ${viewer bungeeonlinetime}"} # just an example, these placeholders don't exist (yet) - {text: " Session: ${viewer onlinetime}"} - {text: ""} - {text: "Balance: ${viewer vault_balance}"} - {text: ""} - {text: "Faction: ${viewer faction}"}
Allows setting the content for the columns independently. This makes layouts possible where one column is used per server.
-
Spacer
!spacer {}
Example:
size: 20 components: - {text: "Top-most slot", icon: "colors/gold.png", ping: 0} - !spacer {} - {text: "Slot at the very bottom", icon: "colors/gold.png", ping: 0}