-
Notifications
You must be signed in to change notification settings - Fork 72
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
iconoption can be set to either a player name, a player uuid or the name of an image file located in theBungeeTabListPlus/headsfolder.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 componentsThese components will be cycled through. intervalInterval 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 conditionThe expression to be evaluated. trueReplacement if the condition evaluates to true. falseReplacement 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> fillSlotsVertical: <true/false> 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 playerSetSelects which players will be added to the tab list. playerOrderDetermines the order of the players in the tab list. More info playerComponentDetermines 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.morePlayersComponentThis will be shown if there are more players than there is space in the tab list (or more players than max-size)fillSlotsVerticalOptional: If set to true the tab list slots are filled top-to-bottom first instead of left-to-right. minSizeOptional: Minimum slots this component should use maxSizeOptional: Maximum slots this component should use -
Players by Server Component
!players_by_server playerSet: <String> playerOrder: <String> serverOrder: <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" serverOrder: "playercount,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 playerSetSelects which players will be added to the tab list. playerOrderDetermines the order of the players in the tab list. More info serverOrderDetermines the order of the servers. Available options are alphabetically,playercountandonline. These can be chained by separating the with a comma, just the way it works with playerOrder.serverHeaderThe server header will appear once for each server above the players playing on that server. serverFooterOptional: The server footer will appear once for each server below the players playing on that server. serverSeparatorOptional: The server separator will appear between each two servers. includeEmptyServersWhether empty servers will show up too. playerComponentDetermines 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.morePlayersComponentThis will be shown if there are more players than there is space in the tab list (or more players than max-size)minSizePerServerOptional: Minimum slots to use for a single server maxSizePerServerOptional: Maximum slots to use for a single server minSizeOptional: Minimum slots this component should use maxSizeOptional: 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}