本帖最后由 Pan$brother 于 2022-5-22 12:02 编辑
求助,如何检测到玩家输入了其他插件的指令
如果有大佬帮帮,感激不尽
求助,如何检测到玩家输入了其他插件的指令
如果有大佬帮帮,感激不尽
PlayerCommandPreprocessEvent
.getMessage()
获取所发送的命令的所有字符串.
本帖最后由 结冰的离季 于 2022-5-20 22:12 编辑
PlayerCommandPreprocessEvent 的 getMessage() 返回的是完整的命令 比如玩家输入/spawn 返回的也是/spawn
而且你在控制台测试是没用的,这个事件只对玩家有效
要监听后台请用 ServerCommandEvent
PlayerCommandPreprocessEvent 的 getMessage() 返回的是完整的命令 比如玩家输入/spawn 返回的也是/spawn
而且你在控制台测试是没用的,这个事件只对玩家有效
要监听后台请用 ServerCommandEvent
结冰的离季 发表于 2022-5-20 22:08
PlayerCommandPreprocessEvent 的 getMessage() 返回的是完整的命令 比如玩家输入/spawn 返回的也是/spawn
...
是检测玩家,我进客户端测试输入pp除了弹出未知命令就没有给出提示了
Pan$brother 发表于 2022-5-20 22:20
是检测玩家,我进客户端测试输入pp除了弹出未知命令就没有给出提示了
只有输入的内容是一条可用的命令,才会触发这个事件,不存在的命令不会触发这个事件,如果你想自定义命令请用正常的方法
Pan$brother 发表于 2022-5-20 22:20
是检测玩家,我进客户端测试输入pp除了弹出未知命令就没有给出提示了
- @EventHandler
- public void event(PlayerCommandPreprocessEvent e) {
- Player p = e.getPlayer();
- String cmd = e.getMessage();
- p.sendMessage(cmd);
- p.sendMessage("" + (cmd == "/pp"));
- p.sendMessage("" + (cmd.equals("/pp")));
- p.sendMessage("" + (cmd.toLowerCase().startsWith("/pp")));
- }
可以了,今天晚上谢谢大佬们指点,谢谢
sasdsdsddd