Не работают собственные предметы, как материалы

Версия Minecraft
1.7.10
116
4
Всем привет!
Решил добавить предметам собственные материалы, добавил, теперь решил добавить предметы, которые будут относиться к этому материалу.
То есть к алмазу - алмаз.
Пишу:
Java:
public static final Item.ToolMaterial ToolMaterialFlintLeatherBound = EnumHelper.addToolMaterial("ToolMaterialFlintLeatherBound", 1, 131, 4.0F, 1.0F, 10).setRepairItem(new ItemStack((ForFirstDays.OvergrownStick)));

То есть я создал материал - ToolMaterialFlintLeatherBound, хочу чтобы к этому материалу относился такой предмет, как ForFirstDays.OvergrownStick.
Все без ошибок, запускаю игру, на наковальне починить не могу. Меняю для теста предмет на ванильный(то есть вот так
Java:
public static final Item.ToolMaterial ToolMaterialFlintLeatherBound = EnumHelper.addToolMaterial("ToolMaterialFlintLeatherBound", 1, 131, 4.0F, 1.0F, 10).setRepairItem(new ItemStack((Items.flint)))
) - начинает работать...
Что делать? Помогите, буду признателен!
 

timaxa007

Модератор
5,831
409
672
Java:
public static final Item.ToolMaterial ToolMaterialFlintLeatherBound = EnumHelper.addToolMaterial("ToolMaterialFlintLeatherBound", 1, 131, 4.0F, 1.0F, 10).setRepairItem(new ItemStack((ForFirstDays.OvergrownStick)));
Типа поменять на:
Java:
public static final Item.ToolMaterial ToolMaterialFlintLeatherBound = EnumHelper.addToolMaterial("ToolMaterialFlintLeatherBound", 1, 131, 4.0F, 1.0F, 10);
А в init'е:
Java:
ToolMaterialFlintLeatherBound.setRepairItem(new ItemStack(ForFirstDays.OvergrownStick))
 
116
4
Спасибо, я как раз в init пихал, только полностью. Кстати, сейчас попытался засунуть все ToolMaterials в отдельный класс, а в init прописать ToolMaterials.init();, но выдает ошибку, это обязательно в главном классе держать?
 

timaxa007

Модератор
5,831
409
672
Держать в главном классе не обязательно, главное правильно писать код, а не как попало и надеться что это заработает.
ToolMaterials там у тебя должен быть метод init.
 
116
4
Я вот так написал в классе ToolMaterials
Java:
import net.minecraft.item.ItemStack;
import net.minecraftforge.oredict.OreDictionary;

public class ToolMaterials {
    
    public static void init() {
        
        ToolMaterialFlintLeatherBound.setRepairItem(new ItemStack(ForFirstDays.sharpedflint0, 1, OreDictionary.WILDCARD_VALUE));
        ToolMaterialBone.setRepairItem(new ItemStack(ForFirstDays.SharpedBone));
        ToolMaterialShell.setRepairItem(new ItemStack(ForFirstDays.Shell));
        
    }

}
И так в Главном
ToolMaterials.init();

И выдавало ошибку, вот такую:
1553965390984.png
 
Сверху