用Java写一个Bukkit1201 基于DecentHolograms的插件玩家头顶显示一条随意文字
以下是一个简单的Java代码示例,用于创建一个基于DecentHolograms的Bukkit插件,在玩家头顶显示一条随意文字:
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
import xyz.upperlevel.decenthologram.DecentHologram;
import xyz.upperlevel.decenthologram.HologramBuilder;
public class HeadDisplayPlugin extends JavaPlugin {
private DecentHologram hologram;
@Override
public void onEnable() {
// 注册命令,用于创建玩家头顶文字
getCommand("headdisplay").setExecutor((sender, command, label, args) -> {
if (sender instanceof Player) {
Player player = (Player) sender;
String text = String.join(" ", args); // 将参数合并为单个字符串
displayHeadText(player, text);
} else {
sender.sendMessage(ChatColor.RED + "只有玩家可以使用此命令!");
}
return true;
});
}
private void displayHeadText(Player player, String text) {
if (hologram != null) {
hologram.destroy(); // 移除之前的头顶文字
}
Location location = player.getLocation().add(0, 2.5, 0); // 设置文字显示位置
hologram = HologramBuilder.createHologram()
.location(location)
.text(text)
.build();
for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
hologram.show(onlinePlayer); // 对所有在线玩家显示头顶文字
}
}
}
这个插件注册了一个/headdisplay命令,允许玩家在命令后输入任意文字,然后在自己头顶显示这段文字。如果玩家再次使用命令,之前显示的文字将被替换
原文地址: http://www.cveoy.top/t/topic/iof0 著作权归作者所有。请勿转载和采集!