Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

[SOLVED] Ошибка в PlayerInteractEvent

Статус
Закрыто для дальнейших ответов.

TheEfwio

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
TheEfwio
PlayerInteractEvent выбивает ошибку:
Код:
    @EventHandler
    public void onInteract(PlayerInteractEvent e){
        Player p = e.getPlayer();
        if(e.getAction() == Action.RIGHT_CLICK_AIR || e.getAction() == Action.RIGHT_CLICK_BLOCK){
            if(p.getItemInHand() == null){ return; }
                    if(p.getItemInHand().getType() == Material.ENCHANTED_BOOK && p.getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§aДыхание под водой(5:00)") ){
                        p.getInventory().removeItem(e.getItem());
                        p.removePotionEffect(PotionEffectType.WATER_BREATHING);
                        p.addPotionEffect(new PotionEffect(PotionEffectType.WATER_BREATHING, 6000, 0));
                        p.sendMessage(ChatColor.GREEN + "Книга активирована!");
                    }
                   
                    else if(p.getItemInHand().getType() == Material.ENCHANTED_BOOK && p.getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§aВосстановление III(2:00)")){
                        p.getInventory().removeItem(e.getItem());
                        p.removePotionEffect(PotionEffectType.REGENERATION);
                        p.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 2400, 2));
                        p.sendMessage(ChatColor.GREEN + "Книга активирована!");
                    }
                   
                    else if(p.getItemInHand().getType() == Material.ENCHANTED_BOOK && p.getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§aСкорость III(4:00)")){
                        p.getInventory().removeItem(e.getItem());
                        p.removePotionEffect(PotionEffectType.SPEED);
                        p.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 4800, 2));
                        p.sendMessage(ChatColor.GREEN + "Книга активирована!");
                    }
                   
                    else if(p.getItemInHand().getType() == Material.ENCHANTED_BOOK && p.getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§aСила II(2:00)")){
                        p.getInventory().removeItem(e.getItem());
                        p.removePotionEffect(PotionEffectType.INCREASE_DAMAGE);
                        p.addPotionEffect(new PotionEffect(PotionEffectType.INCREASE_DAMAGE, 2400, 1));
                        p.sendMessage(ChatColor.GREEN + "Книга активирована!");
                    }
                   
                    else if(p.getItemInHand().getType() == Material.ENCHANTED_BOOK && p.getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§aПрыгучесть II(2:00)")){
                        p.getInventory().removeItem(e.getItem());
                        premovePotionEffect(PotionEffectType.JUMP);
                        p.addPotionEffect(new PotionEffect(PotionEffectType.JUMP, 2400, 1));
                        p.sendMessage(ChatColor.GREEN + "Книга активирована!");
                    }else { return; }
                }
    }

Ошибка:
Код:
[21:53:57] [Server thread/ERROR]: Could not pass event PlayerInteractEvent to Effects v1.0
org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[Spigot.jar:git-Spigot-044d928-e8c6403]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[Spigot.jar:git-Spigot-044d928-e8c6403]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at org.bukkit.craftbukkit.v1_8_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:227) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at net.minecraft.server.v1_8_R3.PlayerInteractManager.interact(PlayerInteractManager.java:463) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:736) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at net.minecraft.server.v1_8_R3.PacketPlayInBlockPlace.a(PacketPlayInBlockPlace.java:52) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at net.minecraft.server.v1_8_R3.PacketPlayInBlockPlace.a(PacketPlayInBlockPlace.java:1) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:13) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_45]
    at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_45]
    at net.minecraft.server.v1_8_R3.SystemUtils.a(SystemUtils.java:19) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:718) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:367) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:657) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:560) [Spigot.jar:git-Spigot-044d928-e8c6403]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_45]
Caused by: java.lang.NullPointerException
    at ru.theefwio.effects.Effects.onInteract(Effects.java:177) ~[?:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_45]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_45]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_45]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_45]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[Spigot.jar:git-Spigot-044d928-e8c6403]
    ... 17 more

177 строка:
Код:
if(p.getItemInHand().getType() == Material.ENCHANTED_BOOK && p.getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§aДыхание под водой(5:00)") ){
 
Сработало! Огромное спасибо)
 
Статус
Закрыто для дальнейших ответов.

Поделиться этой страницей

Назад
Верх