Помощь с подтипами

Версия Minecraft
1.12.2
API
Forge
Как мне сделать регистрацию моделей(Способ из учебника по каким-то причинам не работает) и наименования их?

Код предмета:

Java:
package com.kaboomic.kaboomrpg.items.resources.plates;

import com.kaboomic.kaboomrpg.CreativeRegister;

import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;

public class DivinePlates extends Item {
    public static Object type;

    public DivinePlates(String name)
    {
        this.setRegistryName("divine_plate");
        this.setTranslationKey(name);
        this.setCreativeTab(CreativeRegister.RESOURCE_GROUP);
        this.setMaxStackSize(64);
        this.setHasSubtypes(true);
    }
    @Override
    public void getSubItems(CreativeTabs tab, NonNullList<ItemStack> items)
    {
        if (tab == CreativeRegister.RESOURCE_GROUP) {
            for (DivinePlatesType type : DivinePlatesType.values()) {
                items.add(new ItemStack(this, 1, type.ordinal()));
            }
        }
    }

    public enum DivinePlatesType {
        ARLEMITE, REALMITE, SHADOWSTEEL, RUPEE,;

        public static DivinePlatesType getByMeta(int index) {
            return values()[index % values().length];
        }
    }

    public String getTranslationName(ItemStack stack){
        return this.getTranslationName(stack) + "_" + DivinePlatesType.values()[stack.getItemDamage()].name();
    }
}

Когда пробовал через ModelRegistryEvent и

Java:
final Item DIVINE_PLATE = ItemsRegister.DIVINE_PLATES;

for (DivinePlatesType type : DivinePlatesType.values()) {
    ModelLoader.setCustomModelResourceLocation(APPLE, type.ordinal(), new ModelResourceLocation(DIVINE_PLATE.registryName() + "_" + type.name.toLowerCase(), "inventory"));
}
Выдало ошибку и постоянно требовало новые условия, зайдя в тупик.
 
Сверху