1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Не выполняется EntityDeathEvent.

Тема в разделе "Разработка плагинов для новичков", создана пользователем ElitGO, 10 июн 2019.

Статус темы:
Закрыта.
  1. Автор темы
    ElitGO

    ElitGO Активный участник

    Баллы:
    61
    Имя в Minecraft:
    ElitGO
    [13:08:43]
    [13:08:46] [Server thread/ERROR]: Could not pass event EntityDeathEvent to Business v0.1
    org.bukkit.event.EventException: null
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:309) ~[Core.jar:git-Spigot-518206a-a5b9c7b]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[Core.jar:git-Spigot-518206a-a5b9c7b]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:500) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:485) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at org.bukkit.craftbukkit.v1_13_R2.event.CraftEventFactory.callEntityDeathEvent(CraftEventFactory.java:568) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.EntityLiving.die(EntityLiving.java:1205) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.EntityLiving.damageEntity(EntityLiving.java:1055) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.EntityBat.damageEntity(EntityBat.java:169) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.Entity.W(Entity.java:450) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.EntityLiving.W(EntityLiving.java:210) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.EntityInsentient.W(EntityInsentient.java:188) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.Entity.tick(Entity.java:331) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.EntityLiving.tick(EntityLiving.java:2026) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.EntityInsentient.tick(EntityInsentient.java:248) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.EntityBat.tick(EntityBat.java:74) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.World.entityJoinedWorld(World.java:1326) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.World.g(World.java:1293) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.World.tickEntities(World.java:1127) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.WorldServer.tickEntities(WorldServer.java:583) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.MinecraftServer.b(MinecraftServer.java:967) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.DedicatedServer.b(DedicatedServer.java:417) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.MinecraftServer.a(MinecraftServer.java:830) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at net.minecraft.server.v1_13_R2.MinecraftServer.run(MinecraftServer.java:728) [Core.jar:git-Spigot-518206a-a5b9c7b]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_211]
    Caused by: java.lang.NullPointerException
    at by.femto.Events.onDie(Events.java:20) ~[?:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_211]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_211]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_211]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_211]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:305) ~[Core.jar:git-Spigot-518206a-a5b9c7b]
    ... 23 more

    Код:
        @EventHandler
        public void onDie(EntityDeathEvent e) {
            
            if(Perks.zombiespawn.get(e.getEntity().getName())) {
            e.getEntity().sendMessage("test");
            }
        }
     
  2. LuckyZeeRo

    LuckyZeeRo Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    i0xHeX
  3. Автор темы
    ElitGO

    ElitGO Активный участник

    Баллы:
    61
    Имя в Minecraft:
    ElitGO
    Код:
        @EventHandler
        public void onJoin(PlayerJoinEvent e) {
            Player p = e.getPlayer();
            if (!Main.instance.playersConfig.contains(String.valueOf(p.getName()) + ".zombiespawn")) {
                Perks.zombiespawn.put(p.getName(), Boolean.FALSE);
            } else {
                Perks.zombiespawn.put(p.getName(), Main.instance.playersConfig.getBoolean(String.valueOf(p.getName()) + ".zombiespawn"));
            }
        }
    Он не null.
     
  4. Автор темы
    ElitGO

    ElitGO Активный участник

    Баллы:
    61
    Имя в Minecraft:
    ElitGO
    Так и не понял в чем проблема.
     
  5. Lemar98

    Lemar98 Активный участник Пользователь

    Баллы:
    76
    Тяжелый случай
     
  6. MurlikMurlik

    MurlikMurlik Активный участник Пользователь

    Баллы:
    96
    Конечно будет нулл.
    Ты когда заходишь, в карту добавляешь НИК игрока.
    А при смерти энтити, получаешь название типа энтити.
    Сделай каст энтити в игрока и там уже получай ник и получай обьект.
     
  7. Автор темы
    ElitGO

    ElitGO Активный участник

    Баллы:
    61
    Имя в Minecraft:
    ElitGO
    Код:
        @EventHandler
        public void onDie(EntityDeathEvent e) {
            Player p = (Player) e.getEntity();
            if(Perks.zombiespawn.get(p.getName())) {
             Bukkit.broadcastMessage("sad");
            }
        }
    Ничего не изменилось.
     
  8. MurlikMurlik

    MurlikMurlik Активный участник Пользователь

    Баллы:
    96
    Пробуй это. Тебе бы не мешало все чекать на нулл и на instanceof
    if (e.getEntity() instanceof Player) {
    Player pl = (Player) e.getEntity();
    Boolean perks = Perks.zombiespawn.get(p.getName());
    if (perks != null) {
    if (perks.booleanValue()) {
    Bukkit.broadcastMessage("sad");
    }
    }
    }
     
  9. Автор темы
    ElitGO

    ElitGO Активный участник

    Баллы:
    61
    Имя в Minecraft:
    ElitGO
    Спасибо помогло. Тему закрываю.
     
Статус темы:
Закрыта.

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