Надеюсь из за такого названия, люди которым нужна такая же помощь как я найдут этот топик
В общем. У меня есть модель шапочки, которую я хочу отрендерить через слой на игроке. Если кто то обладает временем и возможностью помочь мне, расписав это дело, то буду безумно благодарен. Если возникнет желание направить меня на сурсы майна или мода Hats, то я уже чекал и при всём этом вставал в тупик.
В общем. У меня есть модель шапочки, которую я хочу отрендерить через слой на игроке. Если кто то обладает временем и возможностью помочь мне, расписав это дело, то буду безумно благодарен. Если возникнет желание направить меня на сурсы майна или мода 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
}