Создание слоя Forge 1.16.5

Версия Minecraft
1.16.5
29
2
0
Надеюсь из за такого названия, люди которым нужна такая же помощь как я найдут этот топик

В общем. У меня есть модель шапочки, которую я хочу отрендерить через слой на игроке. Если кто то обладает временем и возможностью помочь мне, расписав это дело, то буду безумно благодарен. Если возникнет желание направить меня на сурсы майна или мода Hats, то я уже чекал и при всём этом вставал в тупик.


Моделька:
public class HauntedPumpkinHeadModel extends ArmorBaseModel{
    // Наследуется от вспомогательного класса, который я использовал когда тестировал модельки как броню

    public HauntedPumpkinHeadModel() {
        super(32, 32, new ResourceLocation("infcust:item/haunted_pumpkin_head"));
    }

    @Override
    public void setupArmorParts() {

        armorHead.setPos(0.0F,0.0F,0.0F);
        armorHead.texOffs(0, 0).addBox(-11.0F, -1.0F, 5.0F, 5.0F, 1.0F, 6.0F, 0.0F, false);
        armorHead.texOffs(0, 8).addBox(-10.0F, -4.0F, 6.0F, 3.0F, 4.0F, 4.0F, 0.0F, false);

    }



ItemsLayer (Слой мой):
public class ItemsLayer <T extends LivingEntity, M extends EntityModel<T>> extends LayerRenderer<T, M> {

   
    private final HauntedPumpkinHeadModel hatmodel = new HauntedPumpkinHeadModel();

    public ItemsLayer(IEntityRenderer<T, M> rendererIn) {
        super(rendererIn);
        //super((IEntityRenderer<T, M>)Minecraft.getInstance().getEntityRenderDispatcher().);

        InfCust.LOGGER.error("[INFCUST] ITEMSLAYER READY");
    }



    @Override
    public void render(MatrixStack mstack, IRenderTypeBuffer p_225628_2_, int p_225628_3_, T p_225628_4_, float p_225628_5_, float p_225628_6_, float p_225628_7_, float p_225628_8_, float p_225628_9_, float p_225628_10_) {

        InfCust.LOGGER.error("[INFCUST] ITEMSLAYER READY");

        mstack.pushPose();
        // Тут будет что то весёлое
        mstack.popPose();
    }
}



Базовый класс мода:
private void setup(final FMLCommonSetupEvent event) {

        LOGGER.error("[INFCUST] SETUP EVENT INIT");

        Minecraft.getInstance().getEntityRenderDispatcher().getSkinMap().get("default").addLayer(new ItemsLayer<AbstractClientPlayerEntity, PlayerModel<AbstractClientPlayerEntity>>(NewPlayerRenderer.instance));
        Minecraft.getInstance().getEntityRenderDispatcher().getSkinMap().get("slim").addLayer(new ItemsLayer<AbstractClientPlayerEntity, PlayerModel<AbstractClientPlayerEntity>>(NewPlayerRenderer.instance));

        // Я тут чё то пытался
        // NewPlayerRenderer ваще ничего не имеет кроме переменной instance
    }
 
Сверху