Не могу создать CreativeTab

Версия Minecraft
1.12.2
48
1
Я начал новый проект, скачал последнюю версию "кузницы", и ничего не работает.
Использовал код из учебника (внутри скобок после public class testmod, в главном классе мода):

Java:
public static final CreativeTabs CTAB = new CreativeTabs("godtab")
{
    @Override
    public ItemStack getTabIconItem()
    {
        return new ItemStack(ItemsRegister.godsword);
    }
};
Эклипс просит конструктор, но если я его добавлю, в src/main выходят ошибки:
Eclipse написал(а):
ItemsRegister cannot be resolved to a variable testmod.java /.org.eclipse.jdt.core.external.folders/src/main/java/ru/test/testmod Java Problem
ItemsRegister cannot be resolved to a variable testmod.java /MDKExample/src/main/java/ru/test/testmod Java Problem
До этого он не знал что такое ItemsRegister, писало еще кучу ошибок + игра тупо крашилась.
CommonProxy и ClientProxy есть, ошибок в них не было, делал вкладку по своему, игра запускалась, но при переходе на вторую страницу вкладок CreativeTab происходила "Остановка внутреннего сервера" и игра закрывалась.
P.S. IDE жалуется на ItemsRegister
Что не так?
________________________
Вот код главного файла:

Java:
package ru.test.testmod;

import ru.test.testmod.proxy.CommonProxy;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.SidedProxy;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;

@Mod(modid = testmod.MODID /* имя мода */, version = testmod.VERSION /* его версия */)
public class testmod

{
    public static final String MODID = "testmod";
    public static final String VERSION = "1.0 Alpha";
    public static final String NAME = "Test";
    public static final boolean useMetadata = true;
    public static final CreativeTabs CTAB = new CreativeTabs("godtab");
    {
        @Override
        public ItemStack getTabIconItem()
        {
            return new ItemStack(ItemsRegister.godsword);
        }
    };
    @SidedProxy(clientSide = "ru.test.testmod.proxy.ClientProxy", serverSide = "ru.test.testmod.proxy.CommonProxy")
    public static CommonProxy proxy;

    @EventHandler
    public void preInit(FMLPreInitializationEvent event)
    {
        proxy.preInit(event);
    }

    @EventHandler
    public void init(FMLInitializationEvent event)
    {
        proxy.init(event);
    }
}
 
Последнее редактирование:
3,005
192
592
IDE жалуется на ItemsRegister
Что не так?
Наверное, потому что такого класса нету и его нужно сделать самостоятельно?
---
Вкладку он не может сделать, но он уже хочет донат магазин!!
 
48
1
Вкладку он не может сделать, но он уже хочет донат магазин!!
Донат магазин не я хочу, тем более реализация в игре мне не очень нравиться, я просто в теме спросил: в каком смысле нельзя на клиенте обращаться.
Наверное, потому что такого класса нету и его нужно сделать самостоятельно?
Возможно, но вроде нигде про ItemRegister не было сказано, а IDE предлагал только создание field.

В 1.7.10 работать легче
___
UPD: Про ItemsRegister класс было написано. Почему то не заметил
 
3,005
192
592
5,018
47
783
Я всегда делаю это в отдельном классе. Хз, может это и нерационально типо, но мне так нравится потому что:
1) Выглядит красивее и аккуратнее
2) Удобно юзать
Java:
public class MainTab extends CreativeTabs {
    public MainTab(String label) {
        super(label);
    }
    @Override
    public ItemStack getTabIconItem() {
        return new ItemStack(Item.getItemFromBlock(RegBlocks.tilled_block));
    }
}
 
Сверху