你可以使用HolographicDisplays插件来实现这个功能。下面是一个示例代码:

首先,你需要在你的项目中导入HolographicDisplays插件的API库。

import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scheduler.BukkitRunnable;

import com.gmail.filoghost.holographicdisplays.api.Hologram;
import com.gmail.filoghost.holographicdisplays.api.HologramsAPI;

public class Main extends JavaPlugin {

    @Override
    public void onEnable() {
        // 注册事件监听器
        getServer().getPluginManager().registerEvents(new PlayerMoveListener(), this);
    }

    private class PlayerMoveListener implements Listener {

        @EventHandler
        public void onPlayerMove(PlayerMoveEvent event) {
            Player player = event.getPlayer();

            // 创建一个 Hologram
            Hologram hologram = HologramsAPI.createHologram(Main.this, player.getLocation().add(0, 2, 0));

            // 设置 Hologram 的文本消息
            hologram.appendTextLine("你已经很久没有行动了!");

            // 使用 BukkitRunnable 执行计时器,延迟 30 秒后删除 Hologram
            new BukkitRunnable() {
                @Override
                public void run() {
                    hologram.delete();
                }
            }.runTaskLater(Main.this, 20 * 30);
        }

        @EventHandler
        public void onPlayerQuit(PlayerQuitEvent event) {
            Player player = event.getPlayer();

            // 获取玩家的所有 Hologram
            for (Hologram hologram : HologramsAPI.getHolograms(Main.this)) {
                // 如果 Hologram 的位置和玩家的位置相同,删除 Hologram
                if (hologram.getLocation().equals(player.getLocation().add(0, 2, 0))) {
                    hologram.delete();
                }
            }
        }
    }
}

这个示例代码中,我们创建了一个事件监听器 PlayerMoveListener,在玩家移动时触发。当玩家移动时,我们会在玩家头顶创建一个 Hologram,并在其中添加一行文本消息。然后,我们使用 BukkitRunnable 来设置一个延迟计时器,在 30 秒后删除 Hologram。

另外,我们还创建了一个 PlayerQuitListener 来处理玩家退出事件。在玩家退出时,我们会检查所有 Hologram,并删除与该玩家位置相同的 Hologram。

请确保你已经正确安装了 HolographicDisplays 插件,并将上述代码放入你的插件主类中。记得在 plugin.yml 中添加必要的依赖项和事件监听器


原文地址: https://www.cveoy.top/t/topic/iojF 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录