Class AbstractArmorBakedModel

java.lang.Object
com.hbm_m.client.model.AbstractMultipartBakedModel
com.hbm_m.powerarmor.render.AbstractArmorBakedModel
All Implemented Interfaces:
AbstractMultipartBakedModel.PartNamesProvider, net.minecraft.client.resources.model.BakedModel, net.minecraftforge.client.extensions.IForgeBakedModel
Direct Known Subclasses:
AJRArmorBakedModel, BismuthArmorBakedModel, DNTArmorBakedModel, T51ArmorBakedModel

public abstract class AbstractArmorBakedModel extends AbstractMultipartBakedModel implements AbstractMultipartBakedModel.PartNamesProvider
Абстрактный базовый класс для рендеринга иконок брони в GUI. Forge-only: использует ModelData/RenderType overloads и Forge OBJ pipeline. Для Fabric позже будет отдельная реализация.
  • Field Details

    • config

      protected final IArmorModelConfig config
    • itemArmorType

      @Nullable protected final net.minecraft.world.item.ArmorItem.Type itemArmorType
      Тип предмета брони, определяется при bake по имени item-модели (t51_helmet → HELMET).
  • Constructor Details

    • AbstractArmorBakedModel

      protected AbstractArmorBakedModel(Map<String,net.minecraft.client.resources.model.BakedModel> parts, net.minecraft.client.renderer.block.model.ItemTransforms transforms, IArmorModelConfig config, @Nullable net.minecraft.world.item.ArmorItem.Type itemArmorType)
  • Method Details

    • resolveItemArmorType

      @Nullable protected static net.minecraft.world.item.ArmorItem.Type resolveItemArmorType(@Nullable net.minecraft.resources.ResourceLocation modelName)
      Определяет тип брони по пути item-модели при bake. Для общих моделей вроде t51_armor возвращает null (рендер всех частей — entity layer).
    • withTransforms

      public abstract AbstractArmorBakedModel withTransforms(net.minecraft.client.renderer.block.model.ItemTransforms newTransforms)
      Создаёт новую модель с теми же частями, но другими трансформациями.
    • getPartNames

      public String[] getPartNames()
      Specified by:
      getPartNames in interface AbstractMultipartBakedModel.PartNamesProvider
    • shouldSkipWorldRendering

      protected boolean shouldSkipWorldRendering(@Nullable net.minecraft.world.level.block.state.BlockState state)
      Specified by:
      shouldSkipWorldRendering in class AbstractMultipartBakedModel
    • getOverrides

      public net.minecraft.client.renderer.block.model.ItemOverrides getOverrides()
      Specified by:
      getOverrides in interface net.minecraft.client.resources.model.BakedModel
      Overrides:
      getOverrides in class AbstractMultipartBakedModel
    • getQuads

      public List<net.minecraft.client.renderer.block.model.BakedQuad> getQuads(@Nullable net.minecraft.world.level.block.state.BlockState state, @Nullable net.minecraft.core.Direction side, net.minecraft.util.RandomSource rand, net.minecraftforge.client.model.data.ModelData modelData, @Nullable net.minecraft.client.renderer.RenderType renderType)
      Specified by:
      getQuads in interface net.minecraftforge.client.extensions.IForgeBakedModel
      Overrides:
      getQuads in class AbstractMultipartBakedModel
    • getQuads

      @Deprecated public List<net.minecraft.client.renderer.block.model.BakedQuad> getQuads(@Nullable net.minecraft.world.level.block.state.BlockState state, @Nullable net.minecraft.core.Direction side, net.minecraft.util.RandomSource rand)
      Deprecated.
      Description copied from class: AbstractMultipartBakedModel
      Vanilla BakedModel legacy methods (still required by the interface). Delegate to Forge's extended overloads.
      Specified by:
      getQuads in interface net.minecraft.client.resources.model.BakedModel
      Overrides:
      getQuads in class AbstractMultipartBakedModel