- Баллы
- 61
- Имя в Minecraft
- Aviloo
Всем привет . У меня возникла проблема . Мне нужно получить предмет из руки игрока , но постоянно возникает ошибка - NullPointerExeption . Хотя я держу этот предмет в руках и почему он возвращает null , ума не приложу Вот фрагмент кода:
Вот возникающая ошибка :
Прошу вашей помощи .Заранее ,спасибо.
Код:
public class BookSecond implements Listener {
private static final ConcurrentHashMap<UUID, Integer> BookSecondHash = new ConcurrentHashMap<>();
public static int addValue(UUID uuid, Integer value){
BookSecondHash.put(uuid, BookSecondHash.getOrDefault(uuid, 0) + value);
return value;
}
public static int getValue(UUID uuid){
return BookSecondHash.getOrDefault(uuid, 0);
}
@EventHandler
public void useBook(PlayerInteractEvent e){
Player p = e.getPlayer();
UUID uuid = p.getUniqueId();
ItemStack usageItem = p.getInventory().getItemInMainHand();
if( Objects.requireNonNull(usageItem.getItemMeta()).hasEnchant(Enchantment.PROTECTION_FALL) ){
if(e.getAction() == Action.RIGHT_CLICK_BLOCK || e.getAction() == Action.RIGHT_CLICK_AIR){
if(getValue(uuid) != 1) {
p.getInventory().removeItem(usageItem);
p.sendMessage(ChatColor.YELLOW + "Вы изучили " + ChatColor.YELLOW + usageItem.getItemMeta().getDisplayName());
Integer IntValue = 1;
addValue(uuid, IntValue);
}
if(getValue(uuid) == 1){
p.sendMessage("Вы уже изучили !");
}
}
}
if(usageItem.getItemMeta() == null){
return;
}
}
}
Вот возникающая ошибка :
Код:
[19:58:11 ERROR]: Could not pass event PlayerInteractEvent to crafts v1.0
java.lang.NullPointerException: null
at java.util.Objects.requireNonNull(Objects.java:208) ~[?:?]
at hi.aviloo.сrafts.permissonBook.BookFirst.useBook(BookFirst.java:38) ~[crafts-1.0.jar:?]
at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor35.execute(Unknown Source) ~[?:?]
at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:75) ~[pufferfish-api-1.19-R0.1-SNAPSHOT.jar:?]
at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:76) ~[pufferfish-api-1.19-R0.1-SNAPSHOT.jar:git-Pufferfish-5]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[pufferfish-api-1.19-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:666) ~[pufferfish-api-1.19-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.v1_19_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:544) ~[pufferfish-1.19.jar:git-Pufferfish-5]
at net.minecraft.server.level.ServerPlayerGameMode.useItemOn(ServerPlayerGameMode.java:527) ~[?:?]
at net.minecraft.server.network.ServerGamePacketListenerImpl.handleUseItemOn(ServerGamePacketListenerImpl.java:1873) ~[?:?]
at net.minecraft.network.protocol.game.ServerboundUseItemOnPacket.handle(ServerboundUseItemOnPacket.java:37) ~[?:?]
at net.minecraft.network.protocol.game.ServerboundUseItemOnPacket.a(ServerboundUseItemOnPacket.java:9) ~[?:?]
at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$1(PacketUtils.java:51) ~[?:?]
at net.minecraft.server.TickTask.run(TickTask.java:18) ~[pufferfish-1.19.jar:git-Pufferfish-5]
at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153) ~[?:?]
at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[?:?]
at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1360) ~[pufferfish-1.19.jar:git-Pufferfish-5]
at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:183) ~[pufferfish-1.19.jar:git-Pufferfish-5]
at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126) ~[?:?]
at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1337) ~[pufferfish-1.19.jar:git-Pufferfish-5]
at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1330) ~[pufferfish-1.19.jar:git-Pufferfish-5]
at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:136) ~[?:?]
at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1408) ~[pufferfish-1.19.jar:git-Pufferfish-5]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1189) ~[pufferfish-1.19.jar:git-Pufferfish-5]
at net.minecraft.server.MinecraftServer.lambda$spin$1(MinecraftServer.java:304) ~[pufferfish-1.19.jar:git-Pufferfish-5]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
Прошу вашей помощи .Заранее ,спасибо.