forked from Upstream/Velocitab
Allow setting display name for servers (#30)
This commit is contained in:
parent
f14a92b432
commit
ef7e07c59d
@ -23,7 +23,7 @@ public enum Placeholder {
|
|||||||
CURRENT_DATE((plugin, player) -> DateTimeFormatter.ofPattern("dd MMM yyyy").format(LocalDateTime.now())),
|
CURRENT_DATE((plugin, player) -> DateTimeFormatter.ofPattern("dd MMM yyyy").format(LocalDateTime.now())),
|
||||||
CURRENT_TIME((plugin, player) -> DateTimeFormatter.ofPattern("HH:mm:ss").format(LocalDateTime.now())),
|
CURRENT_TIME((plugin, player) -> DateTimeFormatter.ofPattern("HH:mm:ss").format(LocalDateTime.now())),
|
||||||
USERNAME((plugin, player) -> plugin.getFormatter().escape(player.getPlayer().getUsername())),
|
USERNAME((plugin, player) -> plugin.getFormatter().escape(player.getPlayer().getUsername())),
|
||||||
SERVER((plugin, player) -> player.getServerName()),
|
SERVER((plugin, player) -> player.getServerDisplayName(plugin)),
|
||||||
PING((plugin, player) -> Long.toString(player.getPlayer().getPing())),
|
PING((plugin, player) -> Long.toString(player.getPlayer().getPing())),
|
||||||
PREFIX((plugin, player) -> player.getRole().getPrefix().orElse("")),
|
PREFIX((plugin, player) -> player.getRole().getPrefix().orElse("")),
|
||||||
SUFFIX((plugin, player) -> player.getRole().getSuffix().orElse("")),
|
SUFFIX((plugin, player) -> player.getRole().getSuffix().orElse("")),
|
||||||
|
@ -56,6 +56,12 @@ public class Settings {
|
|||||||
@YamlComment("Only show other players on a server that is part of the same server group as the player.")
|
@YamlComment("Only show other players on a server that is part of the same server group as the player.")
|
||||||
private boolean onlyListPlayersInSameGroup = true;
|
private boolean onlyListPlayersInSameGroup = true;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@YamlKey("server_display_names")
|
||||||
|
@YamlComment("Define custom names to be shown in the TAB list for specific server names.\n" +
|
||||||
|
"If no custom display name is provided for a server, its original name will be used.")
|
||||||
|
private Map<String, String> serverDisplayNames = Map.of("very-long-server-name", "VLSN");
|
||||||
|
|
||||||
@YamlKey("enable_papi_hook")
|
@YamlKey("enable_papi_hook")
|
||||||
private boolean enablePapiHook = true;
|
private boolean enablePapiHook = true;
|
||||||
|
|
||||||
@ -110,6 +116,17 @@ public class Settings {
|
|||||||
formats.getOrDefault(serverGroup, "%username%"));
|
formats.getOrDefault(serverGroup, "%username%"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get display name for the server
|
||||||
|
*
|
||||||
|
* @param serverName The server name
|
||||||
|
* @return The display name, or the server name if no display name is defined
|
||||||
|
*/
|
||||||
|
@NotNull
|
||||||
|
public String getServerDisplayName(@NotNull String serverName) {
|
||||||
|
return serverDisplayNames.getOrDefault(serverName, serverName);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the server group that a server is in
|
* Get the server group that a server is in
|
||||||
*
|
*
|
||||||
|
@ -34,6 +34,12 @@ public final class TabPlayer implements Comparable<TabPlayer> {
|
|||||||
return role;
|
return role;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the server name the player is currently on.
|
||||||
|
* Isn't affected by server aliases defined in the config.
|
||||||
|
*
|
||||||
|
* @return The server name
|
||||||
|
*/
|
||||||
@NotNull
|
@NotNull
|
||||||
public String getServerName() {
|
public String getServerName() {
|
||||||
return player.getCurrentServer()
|
return player.getCurrentServer()
|
||||||
@ -41,6 +47,18 @@ public final class TabPlayer implements Comparable<TabPlayer> {
|
|||||||
.orElse("unknown");
|
.orElse("unknown");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the display name of the server the player is currently on.
|
||||||
|
* Affected by server aliases defined in the config.
|
||||||
|
*
|
||||||
|
* @param plugin The plugin instance
|
||||||
|
* @return The display name of the server
|
||||||
|
*/
|
||||||
|
@NotNull
|
||||||
|
public String getServerDisplayName(@NotNull Velocitab plugin) {
|
||||||
|
return plugin.getSettings().getServerDisplayName(getServerName());
|
||||||
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
public CompletableFuture<Component> getDisplayName(@NotNull Velocitab plugin) {
|
public CompletableFuture<Component> getDisplayName(@NotNull Velocitab plugin) {
|
||||||
final String serverGroup = plugin.getSettings().getServerGroup(getServerName());
|
final String serverGroup = plugin.getSettings().getServerGroup(getServerName());
|
||||||
|
Loading…
Reference in New Issue
Block a user