Отсутствие текстурки предмета у блока (на самом блоке текстурка есть)

Версия Minecraft
1.12.2
198
1
24
Стал делать блок, на основе вот этого туториала: Создание блока - MC Modding Учебник
По нему я когда-то делал самый первый мод на блок, и столкнулся с той же проблемой (блок в мире отображается а в инвентаре нет), потом нашёл решение, но уже забыл что и как надо было исправить. Вот как выглядит то что получается:
2020-10-29_06.07.13.png

Код - почти полностью копипаста из туториала, JSON моделек скопирован из ванильных досок и изменён под мой блок.

SoulScales.java:
import com.madalchemist.godsanddemons.GodsAndDemons;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;

public class SoulScales extends Block
{
    public SoulScales(String name)
    {
        super(Material.ROCK);
        this.setRegistryName(name);
        this.setUnlocalizedName(name);
        this.setCreativeTab(GodsAndDemons.CTAB);
    }

    @Override
    public boolean isOpaqueCube(IBlockState state)
    {
        return false;
    }

    @Override
    public boolean isFullCube(IBlockState state)
    {
        return false;
    }
}

BlocksRegister.java:
import com.madalchemist.godsanddemons.blocks.SoulScales;

import net.minecraft.block.Block;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock;
import net.minecraftforge.fml.common.registry.ForgeRegistries;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;

public class BlocksRegister
{
    public static Block SOUL_SCALES = new SoulScales("soul_scales");

    public static void register()
    {
        setRegister(SOUL_SCALES);
    }

    @SideOnly(Side.CLIENT)
    public static void registerRender()
    {
        setRender(SOUL_SCALES);
    }

    private static void setRegister(Block block)
    {
        ForgeRegistries.BLOCKS.register(block);
        ForgeRegistries.ITEMS.register(new ItemBlock(block).setRegistryName(block.getRegistryName()));
    }

    @SideOnly(Side.CLIENT)
    private static void setRender(Block block)
    {
        Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), "inventory"));
    }
}
Как и написано в туториале, добавил это в CommonProxy.java:
BlocksRegister.register();

assets/godsanddemons/blockstates/soul_scales.json:
{
    "variants": {
        "normal": { "model": "godsanddemons:soul_scales" }
    }
}

assets/godsanddemons/models/block/soul_scales.json:
{
    "parent": "block/cube_all",
    "textures": {
        "all": "godsanddemons:blocks/soul_scales_top"
    }
}

assets/godsanddemons/models/item/soul_scales.json:
{
    "parent": "godsanddemons:block/soul_scales"
}

Текстурка, лежащая в assets/godsanddemons/textures/blocks/soul_scales_top.png:
soul_scales_top.png
(Изначально блок задумывался на основе модельки стола зачарований, JSON взял сначала от него, но решив что не работает из-за того что неполный блок делается как-то по-другому, сделал просто кубик. Оказалось, неполный блок ни при чём, но тогда в чём дело?!)
 
Сверху