Войти или зарегистрироваться

Помогите Respawn.

  • Автор темы Автор темы qDeath
  • Дата начала Дата начала

qDeath

Активный участник
Пользователь
Баллы
66
Написал плагин на респавн, но есть проблема. Когда человек умер от поджога, после респауна огонь наносит дама, а также эффекты зелий остаются. как это решить?



Код:
    @EventHandler
    public void onEntityDamage(EntityDamageEvent e) {
       if(e.getEntity() instanceof Player) {
          Player p = (Player)e.getEntity();
          if(p.getHealth() - e.getFinalDamage() <= 0.0D) {
             e.setDamage(0.0D);
             p.setAllowFlight(false);
             p.setFlying(false);
             p.setSneaking(false);
             p.setSprinting(false);
             p.setFoodLevel(20);
             p.setHealth(20.0D);
             p.setFireTicks(0);
             p.setSaturation(20.0F);
             p.getActivePotionEffects().clear();
             p.teleport(p.getWorld().getSpawnLocation());
          }
       }
    }
 
Плагин InstResp не предлагать, он мне не нравится.
 
Попробуй посмотреть, как похожие плагины делали
 
Это очень странно это работает. По крайней мере так было на 1.7.*.
Лично я, помнится, использовал Player.setFireTicks(0) с задержкой в 1 тик.
Думаю, баккитовский шедулер подойдёт:
Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(...)
 
Назад
Верх