Помогите Выполнить действие при убийстве и воскресить

Феня

Старожил
Пользователь
Баллы
123
Имя в Minecraft
eblan_tupoj
Здравствуйте. Появилась у меня проблема. Мне нужно заспавнить, допустим, овцу, дать ей, допустим, 100 жизни. Если игрок убивает эту овцу (а она привязана поводком к забору) нужно выполнить какое-либо действие и воскресить её так же привязанной к забору. Пытался через EntityDeathEvent: при убийстве задает корове обратно 100 хп, но сервер уже её видит убитой. (у entitydeathevent нет setcancelled). Как это сделать?
 
EntityDamageEvent, отменять урон, если он приведет к смерти.
 
If (e.getDamage()>=entity.getHealth()){
e.setCancelled (true);
//и что-то делаем
}
 
If (e.getDamage()>=entity.getHealth()){
e.setCancelled (true);
//и что-то делаем
}
У EntityDamagebyEntityEvent нет .getHealth()
А у EntityDeathEvent нет getDamage() ;(
EntityDamageEvent, отменять урон, если он приведет к смерти.
Давно бы сделал, но как чекнуть через EntityDamageByEntityEvent жизнь моба?
 
Java:
        if(event.getEntity().getType() == EntityType.Cow) {
            Cow cow = (Cow)event.getEntity();
            if (event.getDamage() >= cow.getHealth()) {
                ///
            }
 
Ни у EntityDamageByEntityEvent, ни у EntityDamageEvent нет этого метода

X2R3Wfh.png

a5a79U0.png
 
Гхм, можете скинуть либу ядра?
 
Нужно наверное cow кастовать в livingentity
 
Ещё можно попробовать вот так:
Java:
    @EventHandler
    public void onEntity(EntityDamageByEntityEvent event){
       
   
        if(event.getEntity().getType() == EntityType.COW) {
          
            Cow cow = (Cow)event.getEntity();
            Damageable d = (Damageable) cow;
            if (event.getDamage() >= d.getHealth()) {
                ///
            }
    }
    }
Но это если тебе именно с Cow надо, а не с LivingEntity!
 
Опять проблема. Иногда они все таки могут убить корову. Как это фиксить?
 
Назад
Верх