Новая броня

Версия Minecraft
1.7.10
516
11
39
Всем привет.Добавил наплечники,когда кладу в кастомный слот он не добавляет броню.Помогите пж

Java:
public class ItemBaubleArmor extends ItemBauble implements IProtectableBauble{

    public ItemBaubleArmor(String itemName, EnumBaubleType baubleType, String... itemNames){
        super(itemName, baubleType, itemNames);
    }

    public int getProtection(EntityPlayer player, ItemStack itemStack, DamageSource source, double damage){
        return getBaubleProtection(itemStack);
    }

    public int getDisplayProtection(EntityPlayer player, ItemStack itemStack){
        return getBaubleProtection(itemStack);
    }

    public int getBaubleProtection(ItemStack itemStack){
        switch(itemStack.getItemDamage()){
        case 0:
            return 1;
        case 1:
            return 2;
        case 2:
            return 3;
        case 3:
            return 4;
        default:
            return 0;
        }
    }
}
Java:
public interface IProtectableBauble extends IBauble{

    public int getProtection(EntityPlayer player, ItemStack itemStack, DamageSource source, double damage);

    public int getDisplayProtection(EntityPlayer player, ItemStack itemStack);
}
 
3 часа и не прошло, он апает .. :f_facepalm::f_facepalm::m_faceplam:
~
Ты сделал такой код:
public int getProtection(EntityPlayer player, ItemStack itemStack, DamageSource source, double damage);
public int getDisplayProtection(EntityPlayer player, ItemStack itemStack);
Молодец.
Потом ты его переопределил у себя в классе.
Молодец.
А ты его подключил к майну?
Что бы майн понимал, "А если вещь наследует IProtectableBauble, то нужно вызывать методы из этого интерфейса" ?
По идеи, что бы это сделать надо наследовать еще ISpecialArmor и в его методы возвращать методы из IProtectableBauble.
 
  • Like
Реакции: lnti
добавить 2 слова и переопределить методы
Вот так?
Java:
public class ISpecialArmor extends ItemBaubleArmor{

    public ISpecialArmor(String itemName, EnumBaubleType baubleType,String[] itemNames) {
        super(itemName, baubleType, itemNames);

    }
@Override
    public int getProtection(EntityPlayer player, ItemStack itemStack, DamageSource source, double damage){
        return getBaubleProtection(itemStack);
    }
@Override
    public int getDisplayProtection(EntityPlayer player, ItemStack itemStack){
        return getBaubleProtection(itemStack);
    }
@Override
    public int getBaubleProtection(ItemStack itemStack){
        switch(itemStack.getItemDamage()){
        case 0:
            return 1;
        case 1:
            return 2;
        case 2:
            return 3;
        case 3:
            return 4;
        default:
            return 0;
        }
    }
}
 
Назад
Сверху