Не получается увеличить время поедания еды + ее добавление в свою креатив вкладку

Версия Minecraft
1.7.10
116
4
Всем привет, сделал палку с листьями, которая падает с листвы с некоторым шансом. Чтобы ее переделать в обычную палку игрок должен либо обглодать палку или более цивильным образом отесать ее ножом.
Проблема в том, что когда я попытался добавить ее в свой креатив таб, то вылезла ошибка(я добавил эту палку как еду)
Заметил, что такое только тогда, когда я добавляю предмет-еду(то есть еда не добавляется в свой креатив таб).
То есть моя палка работает как миска, после съедания дает новый предмет, ниже gif.
javaw 2019-03-14 14-03-03-609 (online-video-cutter.com).GIF
У меня вообще ничего не получается вписать с this. в мною созданном классе для этой палки(кроме this.maxStackSize)

Код:
    public static Item OvergrownStick;

    @EventHandler
    public void preload(FMLPreInitializationEvent event)
    {
        OvergrownStick = new ItemMaterialFood(1, 1.0F, false).setUnlocalizedName("OvergrownStick").setTextureName("ForFirstDays:OvergrownStick");
        GameRegistry.registerItem(OvergrownStick, "OvergrownStick");
    }

Код:
package mod.Starcry.ForFirstDays;

import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
import net.minecraft.item.ItemFood;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;

public class ItemMaterialFood extends ItemFood{

    public ItemMaterialFood(int healAmmount, float f, boolean isWolfsFavoriteMeat) {
        super(healAmmount, isWolfsFavoriteMeat);
        this.maxStackSize = 64;
        }
        @Override
        protected void onFoodEaten(ItemStack stack, World world, EntityPlayer player){
        player.inventory.addItemStackToInventory(new ItemStack(Items.stick));

        }

}


Код:
package mod.Starcry.ForFirstDays;

import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
import net.minecraft.item.ItemFood;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;

public class ItemMaterialFood extends ItemFood{

    public ItemMaterialFood(int healAmmount, float f, boolean isWolfsFavoriteMeat) {
        super(healAmmount, isWolfsFavoriteMeat);
        this.maxStackSize = 64;
        this.itemUseDuration = 64;
        //тут^
        }
        @Override
        protected void onFoodEaten(ItemStack stack, World world, EntityPlayer player){
        player.inventory.addItemStackToInventory(new ItemStack(Items.stick));

        }

}

В чем дело? Помогите, буду признателен!
 
116
4
Я ничего из этого добавить не могу в созданном классе.

Код:
        this.itemUseDuration = 32;
        this.healAmount = p_i45339_1_;
        this.isWolfsFavoriteMeat = p_i45339_3_;
        this.saturationModifier = p_i45339_2_;
        this.setCreativeTab(CreativeTabs.tabFood);

Только если в главном классе делать так
.setUnlocalizedName("OvergrownStick").setTextureName("ForFirstDays:OvergrownStick");
Java:
.setUnlocalizedName("OvergrownStick").setTextureName("ForFirstDays:OvergrownStick");
 
5,018
47
783
Ну так да, в классе еды можно, но она только там. У тебя нету к ней доступа. Ты видишь торт, но он за забором понимаешь? Если так надо юзай АТ(ладно это рофл)
Если переменная константой, то скорее всего для нее сделан геттер и сеттер. Так что посмотри повнимательней
 
5,018
47
783
В принципе я не знаю зачем ты пытаешься сетнуть еще раз, ведь эти переменные уже и так по дефолту есть в конструкторе если ты расширяешься от ItemFood
Java:
    public ItemFood(int amount, float saturation, boolean isWolfFood)
    {
        this.itemUseDuration = 32;
        this.healAmount = amount;
        this.isWolfsFavoriteMeat = isWolfFood;
        this.saturationModifier = saturation;
        this.setCreativeTab(CreativeTabs.FOOD);
    }
Просто в super(тут задаешь все три значения)
 

tox1cozZ

aka Agravaine
8,455
598
2,892
5,018
47
783
Ну не final а static. Бож, это вообще никакого значения то не имеет. Какая разница, константа... не константа, статик или финал. Все одно.

p.S
Если серьезно я подразумеваю, что учитывая существование АТ в майне констант не существует
 
Сверху