EnergySwirlLayer.java

net.minecraft.client.renderer.entity.layers.EnergySwirlLayer

信息

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

    TODO

字段/常量

内部类/嵌套类型

构造器

public EnergySwirlLayer(RenderLayerParent<S,M> renderer) @ L16

  • 构造器名:EnergySwirlLayer
  • 源码定位:L16
  • 修饰符:public

参数:

  • renderer: RenderLayerParent<S,M>

说明:

TODO

方法

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

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

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

参数:

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

说明:

TODO

protected abstract boolean isPowered(S state) @ L41

  • 方法名:isPowered
  • 源码定位:L41
  • 返回类型:boolean
  • 修饰符:protected abstract

参数:

  • state: S

说明:

TODO

protected abstract float xOffset(float t) @ L43

  • 方法名:xOffset
  • 源码定位:L43
  • 返回类型:float
  • 修饰符:protected abstract

参数:

  • t: float

说明:

TODO

protected abstract Identifier getTextureLocation() @ L45

  • 方法名:getTextureLocation
  • 源码定位:L45
  • 返回类型:Identifier
  • 修饰符:protected abstract

参数:

说明:

TODO

protected abstract M model() @ L47

  • 方法名:model
  • 源码定位:L47
  • 返回类型:M
  • 修饰符:protected abstract

参数:

说明:

TODO

代码

@OnlyIn(Dist.CLIENT)
public abstract class EnergySwirlLayer<S extends EntityRenderState, M extends EntityModel<S>> extends RenderLayer<S, M> {
    public EnergySwirlLayer(RenderLayerParent<S, M> renderer) {
        super(renderer);
    }
 
    @Override
    public void submit(PoseStack poseStack, SubmitNodeCollector submitNodeCollector, int lightCoords, S state, float yRot, float xRot) {
        if (this.isPowered(state)) {
            float t = state.ageInTicks;
            M model = this.model();
            submitNodeCollector.order(1)
                .submitModel(
                    model,
                    state,
                    poseStack,
                    RenderTypes.energySwirl(this.getTextureLocation(), this.xOffset(t) % 1.0F, t * 0.01F % 1.0F),
                    lightCoords,
                    OverlayTexture.NO_OVERLAY,
                    -8355712,
                    null,
                    state.outlineColor,
                    null
                );
        }
    }
 
    protected abstract boolean isPowered(S state);
 
    protected abstract float xOffset(final float t);
 
    protected abstract Identifier getTextureLocation();
 
    protected abstract M model();
}

引用的其他类