下面是一个示例代码,可以实现在玩家开启飞行时显示 actionbar 文字消息,关闭飞行时文字消失:

import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerToggleFlightEvent;
import org.bukkit.plugin.java.JavaPlugin;

public class FlightActionBar extends JavaPlugin implements Listener {

    @Override
    public void onEnable() {
        Bukkit.getPluginManager().registerEvents(this, this);
    }

    @EventHandler
    public void onFlightToggle(PlayerToggleFlightEvent event) {
        Player player = event.getPlayer();
        if (player.getAllowFlight()) {
            if (event.isFlying()) {
                sendActionBar(player, '飞行已开启');
            } else {
                sendActionBar(player, '');
            }
        }
    }

    private void sendActionBar(Player player, String message) {
        player.sendActionBar(message);
    }
}

在这个示例代码中,我们创建了一个名为FlightActionBar的插件,并实现了Listener接口。在插件启用时,我们注册了事件监听器。当玩家切换飞行状态时,会触发PlayerToggleFlightEvent事件。我们在事件处理方法onFlightToggle中判断玩家是否允许飞行,如果允许飞行,则根据飞行状态发送相应的 actionbar 消息。当飞行状态为开启时,发送'飞行已开启'的消息;当飞行状态为关闭时,发送空字符串的消息,以使 actionbar 文字消失。

请注意,为了使插件正常工作,你需要将该代码编译成 jar 文件,并将其放置在 Bukkit 服务器的插件文件夹中。

Bukkit 1.20.1 玩家飞行状态 Actionbar 消息插件教程

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

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