RabbitModel.java

net.minecraft.client.model.animal.rabbit.RabbitModel

信息

  • 全限定名:net.minecraft.client.model.animal.rabbit.RabbitModel
  • 类型:public abstract class
  • 包:net.minecraft.client.model.animal.rabbit
  • 源码路径:src/main/java/net/minecraft/client/model/animal/rabbit/RabbitModel.java
  • 起始行号:L12
  • 继承:EntityModel
  • 职责:

    TODO

字段/常量

  • FRONT_LEGS

    • 类型: String
    • 修饰符: protected static final
    • 源码定位: L13
    • 说明:

      TODO

  • BACK_LEGS

    • 类型: String
    • 修饰符: protected static final
    • 源码定位: L14
    • 说明:

      TODO

  • LEFT_HAUNCH

    • 类型: String
    • 修饰符: protected static final
    • 源码定位: L15
    • 说明:

      TODO

  • RIGHT_HAUNCH

    • 类型: String
    • 修饰符: protected static final
    • 源码定位: L16
    • 说明:

      TODO

  • hopAnimation

    • 类型: KeyframeAnimation
    • 修饰符: private final
    • 源码定位: L17
    • 说明:

      TODO

  • idleHeadTiltAnimation

    • 类型: KeyframeAnimation
    • 修饰符: private final
    • 源码定位: L18
    • 说明:

      TODO

  • head

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

      TODO

内部类/嵌套类型

构造器

public RabbitModel(ModelPart root, AnimationDefinition hop, AnimationDefinition idleHeadTilt) @ L21

  • 构造器名:RabbitModel
  • 源码定位:L21
  • 修饰符:public

参数:

  • root: ModelPart
  • hop: AnimationDefinition
  • idleHeadTilt: AnimationDefinition

说明:

TODO

方法

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

public void setupAnim(RabbitRenderState state) @ L28

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

参数:

  • state: RabbitRenderState

说明:

TODO

代码

@OnlyIn(Dist.CLIENT)
public abstract class RabbitModel extends EntityModel<RabbitRenderState> {
    protected static final String FRONT_LEGS = "frontlegs";
    protected static final String BACK_LEGS = "backlegs";
    protected static final String LEFT_HAUNCH = "left_haunch";
    protected static final String RIGHT_HAUNCH = "right_haunch";
    private final KeyframeAnimation hopAnimation;
    private final KeyframeAnimation idleHeadTiltAnimation;
    private final ModelPart head;
 
    public RabbitModel(ModelPart root, AnimationDefinition hop, AnimationDefinition idleHeadTilt) {
        super(root);
        this.head = root.getChild("body").getChild("head");
        this.hopAnimation = hop.bake(root);
        this.idleHeadTiltAnimation = idleHeadTilt.bake(root);
    }
 
    public void setupAnim(RabbitRenderState state) {
        super.setupAnim(state);
        if (!state.idleHeadTiltAnimationState.isStarted()) {
            this.head.yRot = state.yRot * (float) (Math.PI / 180.0);
            this.head.xRot = state.xRot * (float) (Math.PI / 180.0);
        }
 
        this.hopAnimation.apply(state.hopAnimationState, state.ageInTicks);
        this.idleHeadTiltAnimation.apply(state.idleHeadTiltAnimationState, state.ageInTicks);
    }
}

引用的其他类