1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Апгрейд кастомных предметов

Тема в разделе "Разработка плагинов для новичков", создана пользователем fx8320e, 24 апр 2021.

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

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

    Баллы:
    66
    Приветствую! Возникла такая проблема: в моем проекте есть кастомное оружие: косы, булавы, кинжалы и тд. Собственно, встал вопрос об их перековке в незеритовые версии. На данный момент есть такой код, однако, он хоть и переделывает сам предмет, не меняет его мету. Идей, что с ним не так нет, аналогичный код с PrepareCraftIvent работает без изъянов. Подскажите, пожалуйста, что можно сделать.
    PHP:
    @EventHandler
        
    public void PrepareSmithing(PrepareSmithingEvent e) {
            
    SmithingInventory inventory e.getInventory();
            
    ItemStack tool = new ItemStack(Material.DIAMOND_SWORD);
          
            
    ItemMeta a tool.getItemMeta();
            
    AttributeModifier modifier = new AttributeModifier(UUID.randomUUID(), "generic.attackDamage"4.5fAttributeModifier.Operation.ADD_NUMBEREquipmentSlot.HAND);
            
    a.addAttributeModifier(Attribute.GENERIC_ATTACK_DAMAGEmodifier);
            
    AttributeModifier modifier2 = new AttributeModifier(UUID.randomUUID(), "generic.attackSpeed"3AttributeModifier.Operation.ADD_NUMBEREquipmentSlot.HAND);
            
    a.addAttributeModifier(Attribute.GENERIC_ATTACK_SPEEDmodifier2);
            
    a.setDisplayName(ChatColor.WHITE "Алмазный кинжал");
            
    tool.setItemMeta(a);
              
            
    ItemStack me inventory.getItem(1);
            
    ItemStack y inventory.getItem(1);
          
            if(
    y.getType() == Material.DIAMOND_SWORD) {
            if(
    y.hasItemMeta()) {
            if(
    y.getItemMeta().equals(a)) {
            if(
    me.getType() == Material.NETHERITE_INGOT) {
            
            
    ItemStack diamonddaggere = new ItemStack(Material.NETHERITE_SWORD);
            
    ItemMeta meta diamonddaggere.getItemMeta();
            
    AttributeModifier modifier3 = new AttributeModifier(UUID.randomUUID(), "generic.attackDamage"6AttributeModifier.Operation.ADD_NUMBEREquipmentSlot.HAND);
            
    meta.addAttributeModifier(Attribute.GENERIC_ATTACK_DAMAGEmodifier3);
            
    AttributeModifier modifier4 = new AttributeModifier(UUID.randomUUID(), "generic.attackSpeed"3AttributeModifier.Operation.ADD_NUMBEREquipmentSlot.HAND);
            
    meta.addAttributeModifier(Attribute.GENERIC_ATTACK_SPEEDmodifier4);
                
    meta.setDisplayName(ChatColor.WHITE "Незеритовый кинжал");
                
    diamonddaggere.setItemMeta(meta);
              
                
    e.setResult(diamonddaggere);
            }
            }
            }
            }
     

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