UpdateDisplayName

更新玩家显示名称和标签列表名称为指定的格式。 支持 MiniMessage、Luckperms、Vault、PlaceholderAPI。 提供开发者 API。

资源图片
# 更新显示名称 ## 概述 UpdateDisplayNames 是一个 Paper 插件,它可以自动更新玩家的显示名称和标签列表名称为指定的格式。 ## 功能 - 支持 LuckPerms、Vault 和 PlaceholderAPI - 支持占位符中的 MiniMessage 和传统颜色代码 - 具有 API,允许排除特定玩家来自显示名称更新 ## 安装方法 要安装此插件,请从发布页面下载适用于正确 Minecraft 版本的插件,并将其放入您的插件目录中。 ## 命令 | 命令 | 描述 | 权限 | |--|--|--| | `/updatedisplayname reload` | 重新加载配置 | `updatedisplayname.command` | | `/updatedisplayname update` | 更新所有玩家的名称 | `updatedisplayname.command` | | `/updatedisplayname enable [true\|false]` | 启用/禁用插件的功能 | `updatedisplayname.command` | | `/updatedisplayname playerlist` | 显示排除列表 | `updatedisplayname.command` | ## 配置 插件应该无需任何配置即可正常工作。 但是,如果您想更改某些内容,以下是配置值: | 选项 | 默认值 | 描述 | |--|--|--| | `displayname --> enable` | `true` | 插件是否应更新玩家的显示名称。 | | `displayname --> format` | `` | 玩家显示名称格式。 | | `tablist --> enable` | `true` | 插件是否应更新玩家的标签列表名称。 | | `tablist --> format` | `` | 玩家标签列表名称格式。 | | `update_interval` | `60` | 名称应更新的秒数间隔。 | ## 使用 API ### 导入 使用 Gradle: ```kotlin repositories { maven("https://maven.chaossquad.net/releases") } dependencies { compileOnly("net.jandie1505:UpdateDisplayName:1.0-RELEASE") } ``` 使用 Maven: ```xml ChaosSquad-Repository-releases ChaosSquad Repository https://maven.chaossquad.net/releases ``` ```xml net.jandie1505 UpdateDisplayName 1.0-RELEASE provided ``` ### 用法 ```java // General features public void ApiExample() { UDNApi api = UpdateDisplayName.getApi(); Player player = Bukkit.getPlayer("playername") boolean updatesEnabled = this.updatesEnabled; // 获取插件功能状态 api.setUpdatesEnabled(false); // 禁用插件功能 api.updatePlayers(); // 更新所有玩家的显示名称 api.updatePlayer(player); // 更新指定玩家的显示名称 Set excludedPlayers = api.getExcludedPlayers(); // 获取排除的玩家 boolean excluded = api.isPlayerExcluded(player); // 检查玩家是否被排除 DataStorage config = api.getPluginConfig(); // 获取插件配置 // 获取配置值 boolean enableDisplaynameUpdate = config.optBoolean(UpdateDisplayname.CONFIG_ENABLE_DISPLAYNAME, false); String displayNameFormat = config.optString(UpdateDisplayName.CONFIG_FORMAT_DISPLAYNAME, null); boolean enableTablistName = config.optString(UpdateDisplayName.CONFIG_ENABLE_TABLIST_NAME, false); String tablistFormat = config.optString(UpdateDisplayName.CONFIG_TABLIST_FORMAT, null); int updateInterval = config.optInt(UpdateDisplayName.CONFIG_UPDATE_INTERVAL, 60); // 设置配置值 config.set(UpdateDisplayname.CONFIG_ENABLE_DISPLAYNAME, true); config.set(UpdateDisplayname.CONFIG_FORMAT_DISPLAYNAME, ""); config.set(UpdateDisplayname.CONFIG_ENABLE_TABLIST_NAME, true); config.set(UpdateDisplayname.CONFIG_TABLIST_FORMAT, ""); config.set(UpdateDisplayname.CONFIG_UPDATE_INTERVAL, 60); } // 事件:更新显示名称 @EventHandler public void onDisplayNameUpdated(DisplayNameUpdatedEvent event) { if (event.getPlayer().getName().equals("forbiddenName")) { event.setCancelled(true) return; } if (event.getUpdatedDisplayName() == null) { Bukkit.broadcast(Component.text("玩家 " + event.getPlayer().getName() + " 的显示名称已重置")) return; ] Bukkit.broadcast(Component.empty() .append(Component.text("更新玩家 " + event.getPlayer().getName() + " 的显示名称: ")) .append(event.getUpdatedDisplayName()) ); } // 事件:更新标签列表名称 @EventHandler public void onDisplayNameUpdated(TablistNameUpdatedEvent event) { if (event.getPlayer().getName().equals("PleaseDontGiveMeATablistName")) { event.setCancelled(true) return; } if (event.getUpdatedTablistName() == null) { Bukkit.broadcast(Component.text("玩家 " + event.getPlayer().getName() + " 的标签列表名称已重置")) return; ] Bukkit.broadcast(Component.empty() .append(Component.text("更新玩家 " + event.getPlayer().getName() + " 的标签列表名称: ")) .append(event.getUpdatedTablistName()) ); } ``` ### JavaDocs 点击[这里](https://jandie1505.github.io/UpdateDisplayName/) 获取 JavaDocs。