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

Помогите Как запретить убивать прирученного волка?

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

AlexeiGL

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
MrAlexei
Как можно запретить убивать прирученного волка с 5 000ХП?

JavaScript:
public void onEnable()
  {
    getServer().getPluginManager().registerEvents(this, this);
  }

  @EventHandler
  public void onSpawn(CreatureSpawnEvent e) {
    if (e.isCancelled()) {
      return;
    }

    if ((e.getSpawnReason() == CreatureSpawnEvent.SpawnReason.EGG) || ((e.getSpawnReason() == CreatureSpawnEvent.SpawnReason.SPAWNER_EGG) && (e.getEntity().getType() == EntityType.WOLF) && (e.getEntity().getHealth() < 10))) {
      e.getEntity().setMaxHealth(10000);
      e.getEntity().setHealth(5000);
    }
  }
}
 
Приведи волка к типу Tameable. После проверь, приручен ли он при помощи метода isTamed().
 
Есть же событие урона, верно?
В нем проверяешь, что если моб instanceof волк и волк.isTamed(), то отменяешь событие.
 
Лучше:
Java:
e.getEntity().getType() == EntityType.WOLF

Java:
@EventHandler
    public void onDamage(EntityDamageByEntityEvent e) {
        if(e.getEntity().getType() == EntityType.WOLF) {
            Wolf w = (Wolf) e.getEntity();
           
            if(w.isTamed()) {
                e.setCancelled(true);
            }
        }
    }
 
Та я забыл, что тут мобы в энуме )
 
Статус
Закрыто для дальнейших ответов.

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

Назад
Верх