Java 如何让我的侦听器使用插口插件?

Java 如何让我的侦听器使用插口插件?,java,plugins,minecraft,bukkit,Java,Plugins,Minecraft,Bukkit,最近,我编写了这个插件,当你点击一个播放器时,它会打开一个目录,但是由于某种原因,目录没有打开 主要内容: Plugin.yml: name: Utils version: 1.4.1 description: Staff mode plugin for servers author: SickNation main: me.jacobsscoots.main.Main database: false commands: admin: description: Default toggle co

最近,我编写了这个插件,当你点击一个播放器时,它会打开一个目录,但是由于某种原因,目录没有打开

主要内容:

Plugin.yml:

name: Utils
version: 1.4.1
description: Staff mode plugin for servers
author: SickNation
main: me.jacobsscoots.main.Main
database: false
commands:
admin:
description: Default toggle command for staff mode.
usage: Syntax error! Simply type /<command> to go into staff mode.

PlayerInteractEntityEvent
方法的最后一条语句中的比较:

p.getInventory().getItemInMainHand().equals(Material.PAPER)
将始终为
false
,因为
getItemInMainHand()
返回一个
ItemStack
材质。PAPER
是一个枚举器,
ItemStack
接口中的
equals
方法包含以下行:

if (!(obj instanceof ItemStack)) {
    return false;
}
我猜你是想写信

getItemInMainHand().getType().equals(Material.PAPER)

。。。比较两个
材质
枚举数。当我测试您的代码并更改该行时,GUI打开。

请使用命名约定
banMeta2
,而不是
banMeta2
if (!(obj instanceof ItemStack)) {
    return false;
}
getItemInMainHand().getType().equals(Material.PAPER)