本帖最后由 DreamVoid 于 2021-12-25 17:14 编辑
我想获取一个事件被插件监听的流程,比如我想知道是什么插件监听了玩家的聊天事件并修改了聊天内容,又有哪些插件监听了聊天事件。
任何方式都可以,但请勿回答使用插件 whoRegEvent,请不要询问原因。
深夜发文,如有描述不清可追问
编辑:有混编程版的坛友可帮我代发编程版,同样采纳
我想获取一个事件被插件监听的流程,比如我想知道是什么插件监听了玩家的聊天事件并修改了聊天内容,又有哪些插件监听了聊天事件。
任何方式都可以,但请勿回答使用插件 whoRegEvent,请不要询问原因。
深夜发文,如有描述不清可追问
编辑:有混编程版的坛友可帮我代发编程版,同样采纳
那咱试试yum?
本帖最后由 紫乻? 于 2021-12-24 12:06 编辑
在Bukkit中注册事件 事件通常会实现一个 getHandlerList() 的静态方法(没有这个方法的事件不能被监听)
这个方法返回的就是 事件的处理程序列表
注册时 是将事件处理程序添加到这个列表中
只需要在所有的监听器注册之后便可以通过这个方法拿到所有的监听器
而需要拿到修改的内容 你可以自己注册一个监听器 设置一下优先级 拿到最后的结果
如果你真的想要每个插件的修改结果的话 可以在每个监听器后面都插入一个 自己的处理器
在Bukkit中注册事件 事件通常会实现一个 getHandlerList() 的静态方法(没有这个方法的事件不能被监听)
这个方法返回的就是 事件的处理程序列表
注册时 是将事件处理程序添加到这个列表中
只需要在所有的监听器注册之后便可以通过这个方法拿到所有的监听器

而需要拿到修改的内容 你可以自己注册一个监听器 设置一下优先级 拿到最后的结果

如果你真的想要每个插件的修改结果的话 可以在每个监听器后面都插入一个 自己的处理器
