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

Помогите Чекнуть урон игрока (только если он не отменен)

Тема в разделе "Разработка плагинов для новичков", создана пользователем Studenikin, 22 май 2015.

  1. Автор темы
    Studenikin

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

    Баллы:
    123
    Skype:
    vanya.studenikin
    Имя в Minecraft:
    stuvanya
    Каким образом, можно определить, бы ли нанесен игроку реальный урон? (Т.е. урон не был отменен каким-нибудь плагином, например pvp deny регион WorldGuard или /god из Essentials)
     
  2. Хостинг MineCraft
    <
  3. baksovic111

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

    Баллы:
    88
    Skype:
    Baksovic2
    Имя в Minecraft:
    Baksovic
    Проверять
    event.isCancelled();
    Не?)
     
  4. serega6531

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

    Баллы:
    173
    Skype:
    shkurovs
    Проще.
    @EventHandler(ignoreCancelled = true)
     
  5. Автор темы
    Studenikin

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

    Баллы:
    123
    Skype:
    vanya.studenikin
    Имя в Minecraft:
    stuvanya
    Не всегда работает, так как некоторые плагины не отменяет его, а делают event.setDamage(0)[DOUBLEPOST=1432362563,1432362484][/DOUBLEPOST]
    Может можно как- то проверить хп игрока до удара, и после?
     
  6. CraftCoder

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

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Если его не отменяют, а делают setDamage(0), то что мешает проверить на getDamage == 0?
     
  7. baksovic111

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

    Баллы:
    88
    Skype:
    Baksovic2
    Имя в Minecraft:
    Baksovic
    Да легко)
    Записываешь жизни игрока до удара игрока и запускаешь шедуллер

    System.out.print("Жизни до: " + entity.getHealth());

    Bukkit.getScheduler().runTaskLater(this, new Runnable() {

    @Override
    public void run()
    {
    System.out.print("Жизни после: " + entity.getHealth());
    }},2);
     
  8. saharin94

    saharin94 Старожил Пользователь Заблокирован

    Баллы:
    173
    Skype:
    RikkiLooh
    Имя в Minecraft:
    RubukkitDniwe
    Сделать два обработчика событий с разными приоритетами.
     

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