Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Dismiss Notice

Помогите Консоль ругается на проверку числа.

Discussion in 'Разработка плагинов для новичков' started by konfyciu98, Mar 9, 2014.

Thread Status:
Not open for further replies.
  1. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Trophy Points:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Code:
    if(getConfig().getInt(killer.getName()+".kill") == -1)
    Вот именно на эту строчке ругается консоль. Разве тут что-то не так?
     
  2. Хостинг MineCraft
    <
  3. Larin

    Larin Старожил Пользователь

    Trophy Points:
    103
    == присваивание. Как я понял, получаем имя убийцы, добавляем .kill и приравниваем к 0. Лучше думаю .equals
     
  4. serega6531

    serega6531 Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    shkurovs
    == - присваивание?? :eek:
    На что ругается-то?
     
  5. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Trophy Points:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    В этой строке обычное число. Если оно равно -1, то надо заменить на другое рандомное число.[DOUBLEPOST=1394378968,1394378937][/DOUBLEPOST]Меня интересует только выше указанная строка!
     
  6. serega6531

    serega6531 Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    shkurovs
    Так а в чем ошибка? Попробуйте получать дефолтное значение.
    if(config.getInt(fff, -1) == -1){
     
  7. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Trophy Points:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    окей, сейчас попробую
     
  8. Ission

    Ission Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    lokivava
    До того, как получать число, нужно проверить его существование(getConfig().isInt(killer.getName()+".kill");), а потом уже проверять его значение. К тому же killer может быть null.
     
  9. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Trophy Points:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Ахах, это не нужно, у меня в onEnable по умолчанию становятся значения -1;)[DOUBLEPOST=1394381032,1394380924][/DOUBLEPOST]
    Неа. не робит
     
  10. serega6531

    serega6531 Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    shkurovs
    Вы не ответили, что за ошибка. NullPointerException?
     
  11. Larin

    Larin Старожил Пользователь

    Trophy Points:
    103
    Ну в C++ так, на java давно не кодил.
     
  12. serega6531

    serega6531 Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    shkurovs
    Странно, я всегда думал, что == - сравнение.
     
  13. Larin

    Larin Старожил Пользователь

    Trophy Points:
    103
    Нет, строго равно. Блин, ты прав, надо поспать, не сплю уже около 17 часов, голова болит.
     
  14. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Trophy Points:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Code:
    [SEVERE] Could not pass event PlayerDeathEvent to EnderBarStats v1.0
    org.bukkit.event.EventException
       at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427)
       at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
       at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30)
       at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478)
       at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463)
       at org.bukkit.craftbukkit.v1_6_R3.event.CraftEventFactory.callPlayerDeathEvent(CraftEventFactory.java:361)
       at net.minecraft.server.v1_6_R3.EntityPlayer.die(EntityPlayer.java:328)
       at net.minecraft.server.v1_6_R3.EntityLiving.damageEntity(EntityLiving.java:717)
       at net.minecraft.server.v1_6_R3.EntityHuman.damageEntity(EntityHuman.java:719)
       at net.minecraft.server.v1_6_R3.EntityPlayer.damageEntity(EntityPlayer.java:399)
       at net.minecraft.server.v1_6_R3.EntityMonster.m(EntityMonster.java:79)
       at net.minecraft.server.v1_6_R3.EntityMonster.a(EntityMonster.java:105)
       at net.minecraft.server.v1_6_R3.EntitySpider.a(EntitySpider.java:87)
       at net.minecraft.server.v1_6_R3.EntityCreature.bl(EntityCreature.java:67)
       at net.minecraft.server.v1_6_R3.EntityLiving.c(EntityLiving.java:1425)
       at net.minecraft.server.v1_6_R3.EntityInsentient.c(EntityInsentient.java:306)
       at net.minecraft.server.v1_6_R3.EntityMonster.c(EntityMonster.java:20)
       at net.minecraft.server.v1_6_R3.EntityLiving.l_(EntityLiving.java:1284)
       at net.minecraft.server.v1_6_R3.EntityInsentient.l_(EntityInsentient.java:150)
       at net.minecraft.server.v1_6_R3.EntityMonster.l_(EntityMonster.java:24)
       at net.minecraft.server.v1_6_R3.EntitySpider.l_(EntitySpider.java:18)
       at net.minecraft.server.v1_6_R3.World.entityJoinedWorld(World.java:1493)
       at net.minecraft.server.v1_6_R3.World.playerJoinedWorld(World.java:1468)
       at net.minecraft.server.v1_6_R3.World.tickEntities(World.java:1337)
       at net.minecraft.server.v1_6_R3.WorldServer.tickEntities(WorldServer.java:517)
       at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:573)
       at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:240)
       at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:483)
       at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:415)
       at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583)
    Caused by: java.lang.NullPointerException
       at me.konfyciu.EBS.EnderBarStats.onDeath(EnderBarStats.java:58)
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
       at java.lang.reflect.Method.invoke(Unknown Source)
       at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425)
       ... 29 more
     
  15. serega6531

    serega6531 Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    shkurovs
    Проверяйте killer на != null.
     
  16. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Trophy Points:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Кажется я знаю. Ошибка срабатывает, когда игрока убивает моб. Путь к проверке лежит через ник убийцы. У моба нет ника.
     
  17. serega6531

    serega6531 Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    shkurovs
    Именно.
     
  18. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Trophy Points:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Как думаешь, это сработает? if(killer.getType() == EntityType.PLAYER)
     
  19. serega6531

    serega6531 Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    shkurovs
    А вы попробуйте.
     
  20. Автор темы
    konfyciu98

    konfyciu98 Старожил Пользователь

    Trophy Points:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Не работает. Но я тут подумал, что это был бред, ибо event.getEntity().getKiller() имеет тип Player.[DOUBLEPOST=1394386780,1394383362][/DOUBLEPOST]Решение найдено, тема закрыта.
     
Thread Status:
Not open for further replies.

Share This Page