有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在我的Minecraft插件中的ID有问题

我想创建一个随机发生器插件。我需要我的Shuffeed ArrayList的ID。问题是无论出于什么原因,我都无法得到这个街区的ID

错误消息:

Could not pass event BlockBreakEvent to MyPlugin org.bukkit.event.EventException: null at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:319) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:589) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:576) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.PlayerInteractManager.breakBlock(PlayerInteractManager.java:309) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.PlayerInteractManager.a(PlayerInteractManager.java:268) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.PlayerInteractManager.a(PlayerInteractManager.java:213) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.PlayerConnection.a(PlayerConnection.java:1219) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.PacketPlayInBlockDig.a(SourceFile:40) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.PacketPlayInBlockDig.a(SourceFile:10) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:19) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.TickTask.run(SourceFile:18) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.IAsyncTaskHandler.executeTask(SourceFile:144) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.IAsyncTaskHandler.executeNext(SourceFile:118) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.MinecraftServer.ba(MinecraftServer.java:941) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.MinecraftServer.executeNext(MinecraftServer.java:934) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.IAsyncTaskHandler.awaitTasks(SourceFile:127) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.MinecraftServer.sleepForTick(MinecraftServer.java:918) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.MinecraftServer.w(MinecraftServer.java:850) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at net.minecraft.server.v1_16_R2.MinecraftServer.lambda$0(MinecraftServer.java:164) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at java.lang.Thread.run(Unknown Source) [?:1.8.0_271] Caused by: java.lang.IllegalArgumentException: Cannot get ID of Modern Material at org.apache.commons.lang.Validate.isTrue(Validate.java:136) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at org.bukkit.Material.getId(Material.java:3576) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] at en.me.myplugin.listeners.Listeners.onBlockBreakEvent(Listeners.java:100) ~[?:?] at sun.reflect.GeneratedMethodAccessor216.invoke(Unknown Source) ~[?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_271] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_271] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:315) ~[spigot-1.16.2.jar:git-Spigot-379750e-43c7ff9] ... 21 more

代码:

event.getBlock().getWorld().dropItemNaturally(event.getBlock().getLocation(), new ItemStack(randomizer.randomize.get(event.getBlock().getType().getId())));

getId()已被弃用


共 (1) 个答案

  1. # 1 楼答案

    我会评论,但因为我不能:

    只要读一下错误,它们都很直截了当。此外,你也许应该把这篇文章放在像spigot论坛这样的网站上,而不是放在这里。也仅仅因为它被弃用并不意味着它就不能工作

    你也应该给我们看看你的随机化工具。随机化类/数组/列表