如何在Spigot 1.13.2的消息中返回块类型

时间:2019-03-26 04:56:25

标签: java minecraft bukkit

我试图获取玩家右键单击的方块类型,并将其作为消息发送回游戏中并返回给玩家。目前我什么也没得到。

public class BlockIdentifier extends JavaPlugin {
    public void onEnable(){
        getLogger().info("BlockIdentifier started!");
    }

    @EventHandler
    public void onInteract(PlayerInteractEvent event){
        Action action = event.getAction();
        Player player = event.getPlayer();
        Block block = event.getClickedBlock();

        if(action.equals(Action.LEFT_CLICK_BLOCK)){
            player.sendMessage(block.getType().toString());
        }

    }

    public void onDisable(){
        getLogger().info("BlockIdentifier stopped!");
    }
}

2 个答案:

答案 0 :(得分:2)

除了进行Darkilen suggested(实现侦听器)操作外,还需要使用以下方法在onEnable中注册事件/侦听器:

getServer().getPluginManager().registerEvents​(Listener listener, Plugin plugin)

对于您来说,这看起来像:

public void onEnable(){
    getLogger().info("BlockIdentifier started!");
    getServer().getPluginManager().registerEvents(this, this);
}

答案 1 :(得分:1)

您忘记实现barbase

foobase