本帖最后由 上杉夏相 于 2020-10-2 12:27 编辑
Individual Signs —— 告示牌显示玩家ID
转载授权
作者不理我了QAQ
插件简介
该插件可以在告示牌上自定义显示玩家的ID
同时包括一个API,供其他插件的开发人员轻松添加特定的标志内容。
例如,此插件可用于生成您的个人问候语。您的玩家会惊讶地看到自己的名字在告示牌上!
安装方法
注意!该插件需要安装前置插件[ProtocolLib](<a href="https://dev.bukkit.org/projects/protocollib/" target="_blank">https://dev.bukkit.org/projects/protocollib/</a>)才能起作用。
安装与游戏版本相应的ProtocolLib版本,然后安装此插件!
并且只要Minecraft或者bukkit开发组不更改与告示牌显示相关的内容,插件就可以运行[理论全版本!]
使用方法
在告示牌上使用[PLAYER]替换为放置告示牌的玩家ID,使用[DISPLAY]替换为查看它的玩家的ID
注意,这两个的使用权限分别为insigns.create.player 和insigns.create.display
开发API
这是一个针对开发者的介绍
一个易于使用的API [作者注]
楼主没有插件的开发经验,如果有错误请及时指正
现在有一点了
以下是一个简单的例子
- 首先将插件添加到您的构建路径中(就像使用bukkit.jar一样)
- 创建一个SignSendEvent的监视器(就像您为bukkit事件创建监视器一样)
- 这个事件提供了一些简单的方法来获取当前符号文本并进行更改
getPlayer() - 获取接收数据包的玩家
getLocation() - 获取正在更改文字的告示牌的位置。
getLine(int index) - 获取指定索引(0-3)行的文本。这些文件是json格式。
setLine(int index,String line) - 设置指定索引处的文本行。必须采用json格式。
isModified() - 此事件是否已被某些插件修改。
setCancelled(boolean cancelled) - 如果取消了该事件,则不会为受影响的玩家更新符号内容,而将其获取的内容保留为当前内容(如果所有SignSendEvents被取消,则为空白)。
isCancelled() - 检查某些插件是否已取消此事件。
该事件使用玩家id替换[PLAYER]的用法
public class SignSendListener implements Listener {
public SignSendListener(Plugin plugin) {
Bukkit.getServer().getPluginManager().registerEvents(this, plugin);
}
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onSignSend(SignSendEvent event) {
for (int i = 0; i < 4; i++) {
String line = event.getLine(i);
if (line.contains("[PLAYER]")) {
event.setLine(i, line.replace("[PLAYER]", event.getPlayer().getName()));
}
}
}
}
剩下的真的是看不懂了
别骂了别骂了在学了
下载地址
应原作者要求,暂不提供下载地址,请前往[原帖](<a href="https://dev.bukkit.org/projects/individual-signs/files" target="_blank">https://dev.bukkit.org/projects/individual-signs/files</a>)下载!
搬运不易,跪求支持 : - (

泥潭对Markdown的支持实在是太***了 来自群组: PluginsCDTribe |