Как обойти отключение видимости слоя брони?

Версия Minecraft
1.12.2
API
Forge
Делаю я значит модельку. Пытаюсь через модель предназначенную для слота нагрудника (тип брони - EntityEquipmentSlot.CHEST) привязать часть модельки к голове игрока (так должно было быть по моей задумке). Запустив и посмотрев, оказалось, что та часть в броне нагрудника, что должна была быть привязана к голове игрока просто не отображается. Отладив код, я увидел, что что-то в фордже меняет видимость частей модельки. В итоге я нашёл злодея - net.minecraft.client.renderer.entity.layers.LayerBipedArmor. После получения модельки брони, Фордж вызывает метод данной гадины setModelSlotVisible, который убирает видимость всех частей модельки не соответствующей типу брони. Кому интересно - вот тот самый метод + его побочный
Java:
    protected void setModelSlotVisible(ModelBiped p_188359_1_, EntityEquipmentSlot slotIn)
    {
        this.setModelVisible(p_188359_1_);

        switch (slotIn)
        {
            case HEAD:
                p_188359_1_.bipedHead.showModel = true;
                p_188359_1_.bipedHeadwear.showModel = true;
                break;
            case CHEST:
                p_188359_1_.bipedBody.showModel = true;
                p_188359_1_.bipedRightArm.showModel = true;
                p_188359_1_.bipedLeftArm.showModel = true;
                break;
            case LEGS:
                p_188359_1_.bipedBody.showModel = true;
                p_188359_1_.bipedRightLeg.showModel = true;
                p_188359_1_.bipedLeftLeg.showModel = true;
                break;
            case FEET:
                p_188359_1_.bipedRightLeg.showModel = true;
                p_188359_1_.bipedLeftLeg.showModel = true;
        }
    }

    protected void setModelVisible(ModelBiped model)
    {
        model.setVisible(false);
    }
Как мне обойти эту проверку? Есть-ли другие способы вместе с броней тела рендерить часть модельки, привязанной к голове?
 
Решение
ак мне его переопределить, если данного метода нету в ModelBiped?
Сделай свой слой

Где можно установить видимость брони перед рендером?
В своей модели переопредели метод render. RenderLayer#setModelSlotVisible должен вызывать перед ModelBiped#render

Это два варианта решения, если идешь по второму пути, то слой можно оставить оригинальный
7,099
324
1,510
Очевидно, переопределить этот метод в своей модели брони, исправив логику на подходящую
~~~
Если не использовать кастомный слой, то можно установить параметры видимости частей непосредственно перед рендером
 
Как мне его переопределить, если данного метода нету в ModelBiped? Где можно установить видимость брони перед рендером? В момент получения модельки брони я уже устанавливаю видимость слоя головыmodel.bipedHead.showModel = true. Но данный метод вызывается откуда-то уже после моего определения видимости и убирает её.
 
7,099
324
1,510
ак мне его переопределить, если данного метода нету в ModelBiped?
Сделай свой слой

Где можно установить видимость брони перед рендером?
В своей модели переопредели метод render. RenderLayer#setModelSlotVisible должен вызывать перед ModelBiped#render

Это два варианта решения, если идешь по второму пути, то слой можно оставить оригинальный
 
Сверху