CatCollarLayer.java

net.minecraft.client.renderer.entity.layers.CatCollarLayer

信息

  • 全限定名:net.minecraft.client.renderer.entity.layers.CatCollarLayer
  • 类型:public class
  • 包:net.minecraft.client.renderer.entity.layers
  • 源码路径:src/main/java/net/minecraft/client/renderer/entity/layers/CatCollarLayer.java
  • 起始行号:L18
  • 继承:RenderLayer<CatRenderState,AbstractFelineModel>
  • 职责:

    TODO

字段/常量

  • CAT_COLLAR_LOCATION

    • 类型: Identifier
    • 修饰符: private static final
    • 源码定位: L19
    • 说明:

      TODO

  • CAT_BABY_COLLAR_LOCATION

    • 类型: Identifier
    • 修饰符: private static final
    • 源码定位: L20
    • 说明:

      TODO

  • adultModel

    • 类型: AdultCatModel
    • 修饰符: private final
    • 源码定位: L21
    • 说明:

      TODO

  • babyModel

    • 类型: BabyCatModel
    • 修饰符: private final
    • 源码定位: L22
    • 说明:

      TODO

内部类/嵌套类型

构造器

public CatCollarLayer(RenderLayerParent<CatRenderState,AbstractFelineModel<CatRenderState>> renderer, EntityModelSet modelSet) @ L24

  • 构造器名:CatCollarLayer
  • 源码定位:L24
  • 修饰符:public

参数:

  • renderer: RenderLayerParent<CatRenderState,AbstractFelineModel>
  • modelSet: EntityModelSet

说明:

TODO

方法

下面的方法块按源码顺序生成。

public void submit(PoseStack poseStack, SubmitNodeCollector submitNodeCollector, int lightCoords, CatRenderState state, float yRot, float xRot) @ L30

  • 方法名:submit
  • 源码定位:L30
  • 返回类型:void
  • 修饰符:public

参数:

  • poseStack: PoseStack
  • submitNodeCollector: SubmitNodeCollector
  • lightCoords: int
  • state: CatRenderState
  • yRot: float
  • xRot: float

说明:

TODO

代码

@OnlyIn(Dist.CLIENT)
public class CatCollarLayer extends RenderLayer<CatRenderState, AbstractFelineModel<CatRenderState>> {
    private static final Identifier CAT_COLLAR_LOCATION = Identifier.withDefaultNamespace("textures/entity/cat/cat_collar.png");
    private static final Identifier CAT_BABY_COLLAR_LOCATION = Identifier.withDefaultNamespace("textures/entity/cat/cat_collar_baby.png");
    private final AdultCatModel adultModel;
    private final BabyCatModel babyModel;
 
    public CatCollarLayer(RenderLayerParent<CatRenderState, AbstractFelineModel<CatRenderState>> renderer, EntityModelSet modelSet) {
        super(renderer);
        this.adultModel = new AdultCatModel(modelSet.bakeLayer(ModelLayers.CAT_COLLAR));
        this.babyModel = new BabyCatModel(modelSet.bakeLayer(ModelLayers.CAT_BABY_COLLAR));
    }
 
    public void submit(PoseStack poseStack, SubmitNodeCollector submitNodeCollector, int lightCoords, CatRenderState state, float yRot, float xRot) {
        DyeColor collarColor = state.collarColor;
        if (collarColor != null) {
            int color = collarColor.getTextureDiffuseColor();
            AbstractFelineModel<CatRenderState> model = (AbstractFelineModel<CatRenderState>)(state.isBaby ? this.babyModel : this.adultModel);
            Identifier texture = state.isBaby ? CAT_BABY_COLLAR_LOCATION : CAT_COLLAR_LOCATION;
            coloredCutoutModelCopyLayerRender(model, texture, poseStack, submitNodeCollector, lightCoords, state, color, 1);
        }
    }
}

引用的其他类