【问题标题】:Wrong block type read - Minecraft Spigot 1.16.3 Plugin读取错误的块类型 - Minecraft Spigot 1.16.3 插件
【发布时间】:2022-01-02 15:09:56
【问题描述】:

我正在制作一个使用 fetch 和 save 块类型的插件 getBlockData().getAsString().

我在检索“潜影盒”和“紫色潜影盒”的方块类型时遇到问题。


引擎是 1.16.3-R0.1-SNAPSHOT。

为 1.16.3 编写的插件。


当我将Location.getBlock().getType() 用于“Shulker Box”时,它返回“LEGACY_PURPLE_SHULKER_BOX”和“Purple Shulker Box”是“LEGACY_AIR”。

但是,Location..getBlock().getBlockData().getAsString() 已经可以正常工作了。对于“Shulker Box”,它返回“minecraft:shulker_box[face=up]”,对于“Purple Shulker Box” >”它是“minecraft:purple_shulker_box[face=up]

在我的插件中保存块类型之前,我使用了 IF - 检查块是否为空气 (Location.getBlock().getType() != Material.AIR),如果不是空气,则保存 BLOCK DATA。 不幸的是,在这种情况下它不起作用,因为该块被检测为空气。

请帮我解决这个问题?

我检查了一些其他的 SHULKER BOX 类型,这个问题只与“Shulker Box”有关,

【问题讨论】:

  • 我知道我可以在 IF 中将此检查更改为“Location..getBlock().getBlockData().getAsString()”,但我该如何以另一种方式进行,为什么会这样?是引擎错误还是我做错了什么?
  • 你能出示你的plugin.yml文件吗?
  • @Elikill58 in plygin.yml 对于我的插件我只有关于名称、主要、版本和我的命令和权限列表的信息

标签: java minecraft bukkit


【解决方案1】:

当插件未指明 api-version 时,旧项目在 1.13+ 服务器上使用。

spigotmc doc 中所述,您应该在您的plugin.yml 文件中添加:

api-version: 1.16

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多