问题标签 [bukkit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 为什么“<= 1”没有按预期工作?
我有以下代码
当玩家离开时,它会检查他是否是最后一个,如果是,那么在 5 分钟后,它会再次检查,如果仍然没有人在它应该停止服务器。
在此行中:
我必须将它设置为 <=1 否则它根本不起作用,但如果我离开它也会停止服务器,然后重新加入,我是唯一的一个。当我在 =0 并且只有 <1 时它没有工作。
有任何想法吗?
这是我的更新代码(仍然不起作用):
java - onChat() 没有被调用
此代码应该等待.help
在聊天中输入,然后发送一条消息说"Help text."
。什么都没发生。
java - Bukkit 不会加载插件:名称未定义
这是我的代码:
每次我尝试加载它时,命令提示符都会显示:
java - 找不到 Clojure
编辑:在 Bukkit 论坛和Github上还有一些与此问题相关的其他讨论。
所以,我知道一两个人没有运气尝试过这个。但我想我快到了。
一个问题:我不懂Java,所以这对我来说有点陌生。反正..
于是,我在 Clojure 中做了一个简单的类,如下:
我使用clojure的compile
函数把它编译成Java类,如下..
然后我将它手动放入 jar 中,在 com/gdude2002/ClojurePlugin/mainclj.class 下(以及将 plugin.yml 放入根目录)。
到目前为止,一切都很好。这种方法不会让 bukkit 对我的代码(特别是)感到讨厌,我认为这是一件好事。现在,关于问题。
当我尝试使用这个手工制作的 jar 启动服务器时,我得到以下输出。
“所以,”我想,“这看起来很简单——它找不到 Clojure,对吧?” 所以,我把clojure jar放在各种地方,同样的错误。我还将 META-INF/MANIFEST.MF 添加到 jar 中,其中包含Class-Path: ../lib
. 依然没有。
所以,认为我很聪明,我将 clojure 文件夹从 Clojure jar 中拉出并推入我的,还将文件夹放在 ../lib 和其他我认为可能有帮助的地方。
现在,我得到这个错误..
问题是,就我所见,这两种东西都存在。
编辑:决定在这里显示反编译的类代码,以防万一。
编辑:评论中提到我应该发布我的 project.clj 文件。问题是,我没有!我直接在 mainclj.clj 上运行 compile.clj,并手动创建一个 jarfile。
在这一点上,我完全被难住了。有人对此有任何想法吗?
java - 使用 PlayerCommandPreprocessEvent 和 java.lang.reflect
我目前正在使用PlayerCommandPreprocessEvent
. 我使用这样的语法:
我想在 class 中使用单独的方法PlayerCommands
。由于这将是服务器上使用的唯一插件,我想捕获所有命令,评估它们是否具有PlayerCommands.cmd_<cmdname>()
并调用它。
我知道这可以通过java.lang.reflect
但现在我只是不知道如何在 Bukkit 服务器上实现它。
java - 使用 ObjectOutputStream 保存 HashMap
为了在命令中保存传送点,我有一个HashMap
:
可以这样访问:
由于这些设置应该在重启时保持,我实现了一个保存方法:
但它不起作用。它抛出NotSerializableException
。
我认为主要问题是Player
并且Location
不是可序列化类型,那么我应该怎么写HashMap
呢?
yaml - Bukkit 不接受好的 YAML 代码
所以我有我为PermissionsBukkit 1.6 制作的 YAML 代码。
但这不再适用于新的 Minecraft 更新。Online YAML Parser找不到任何问题。
java - AuthMe 如何在验证之前阻止 Minecraft 中的操作?
我想制作一个类似于 AuthMe 的插件,阻止所有操作——放置/破坏块、更改库存、聊天——当玩家刚刚加入时,直到他使用命令登录。
我不想使用 AuthMe 的原因是因为我希望它与我的网站进行通信,例如使用与网站上的帐户相同的密码。
java - 将 MySQL 数据库加载到 Java Swing 应用程序中
我有一个 MySQL 数据库,我正在尝试将其加载到我正在制作的 java 应用程序中。它是在我的世界服务器中显示当前在线玩家。我将它设置为当一个人离开或加入时服务器更新数据库的位置。我需要将它加载到显示在线播放器的控制面板中,并允许停止/启动/重新启动服务器。
谢谢
java - 扫描器 nextLine() NoSuchElementException
我已经编写 Bukkit 插件有一段时间了,这个问题让我很困惑。我正在尝试使用扫描仪从文件中读取一行,并将“:”之前的行中的所有内容添加到 HashSet。每次尝试时,我都会收到 NoSuchElementException,如下所示:
这是我尝试做我上面解释的课程。
我被告知我要调用 in.nextLine() 两次,当我询问如何修复它的建议时,他只是忽略了我。任何帮助是极大的赞赏。