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

Помогите Как получить item которым ударили

Мне и MaxDurability изменить надо, просто будет удобней если с классом сделать, хочу еще классы деревянного каменного и золотого мечей переписать(под щиты(они уже работают но с durability проблемы)).
Тогда тебе прямиком в NMS
 
Мне и MaxDurability изменить надо, просто будет удобней если с классом сделать, хочу еще классы деревянного каменного и золотого мечей переписать(под щиты(они уже работают но с durability проблемы)).
Если версия 1.6-, то могу помочь, в 1.7 на данную тематику ещё не копался.
Лучше сделать так:

PHP:
@EventHandler
public void onClick3(EntityDamageByEntityEvent e){
if(e.getDamager() instanceof Player){
Player player = (Player) e.getDamager();
player.getItemInHand(); //Предмет которым кого-то ударили
}
    }
Чтобы ошибок в консоле не было :)
Лучше не использовать instanceof, чтобы просадок не было. Для этого существует e.getDamager().getType()==EntityType.PLAYER;
Код:
    @EventHandler
    public void onClick(PlayerInteractEvent e){
        e.getPlayer().getItemInHand(); //Предмет которым что-то ударили.
    }
Ловлю лойсы :3
Код:
e.getItem();
Есть для этого.
Т.е предлагаете делать в лоб, ну хорошо, просто думал может есть стандартный event'ы возвращающие этот предмет.
По факту такой способ не всегда успевает сработать(несколько раз накалывался). А вообще bukkit'овцы недалёкие. Большая часть полезных функций не имеет API, хотя уже давно пора(с 1.4 уже сколько прошло, а нормального API спавнеров всё ещё нет).
 
Назад
Верх