AdultBeeModel.java
net.minecraft.client.model.animal.bee.AdultBeeModel
信息
- 全限定名:net.minecraft.client.model.animal.bee.AdultBeeModel
- 类型:public class
- 包:net.minecraft.client.model.animal.bee
- 源码路径:src/main/java/net/minecraft/client/model/animal/bee/AdultBeeModel.java
- 起始行号:L14
- 继承:BeeModel
- 职责:
TODO
字段/常量
-
LEFT_ANTENNA- 类型:
String - 修饰符:
private static final - 源码定位:
L15 - 说明:
TODO
- 类型:
-
RIGHT_ANTENNA- 类型:
String - 修饰符:
private static final - 源码定位:
L16 - 说明:
TODO
- 类型:
-
leftAntenna- 类型:
ModelPart - 修饰符:
private final - 源码定位:
L17 - 说明:
TODO
- 类型:
-
rightAntenna- 类型:
ModelPart - 修饰符:
private final - 源码定位:
L18 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public AdultBeeModel(ModelPart root) @ L20
- 构造器名:AdultBeeModel
- 源码定位:L20
- 修饰符:public
参数:
- root: ModelPart
说明:
TODO
方法
下面的方法块按源码顺序生成。
protected void bobUpAndDown(float speed, float ageInTicks) @ L27
- 方法名:bobUpAndDown
- 源码定位:L27
- 返回类型:void
- 修饰符:protected
参数:
- speed: float
- ageInTicks: float
说明:
TODO
public static LayerDefinition createBodyLayer() @ L34
- 方法名:createBodyLayer
- 源码定位:L34
- 返回类型:LayerDefinition
- 修饰符:public static
参数:
- 无
说明:
TODO
代码
@OnlyIn(Dist.CLIENT)
public class AdultBeeModel extends BeeModel {
private static final String LEFT_ANTENNA = "left_antenna";
private static final String RIGHT_ANTENNA = "right_antenna";
private final ModelPart leftAntenna;
private final ModelPart rightAntenna;
public AdultBeeModel(ModelPart root) {
super(root);
ModelPart body = this.bone.getChild("body");
this.leftAntenna = body.getChild("left_antenna");
this.rightAntenna = body.getChild("right_antenna");
}
@Override
protected void bobUpAndDown(float speed, float ageInTicks) {
super.bobUpAndDown(speed, ageInTicks);
this.leftAntenna.xRot = speed * (float) Math.PI * 0.03F;
this.rightAntenna.xRot = speed * (float) Math.PI * 0.03F;
}
public static LayerDefinition createBodyLayer() {
MeshDefinition mesh = new MeshDefinition();
PartDefinition root = mesh.getRoot();
PartDefinition bone = root.addOrReplaceChild("bone", CubeListBuilder.create(), PartPose.offset(0.0F, 19.0F, 0.0F));
PartDefinition body = bone.addOrReplaceChild(
"body", CubeListBuilder.create().texOffs(0, 0).addBox(-3.5F, -4.0F, -5.0F, 7.0F, 7.0F, 10.0F), PartPose.ZERO
);
body.addOrReplaceChild("stinger", CubeListBuilder.create().texOffs(26, 7).addBox(0.0F, -1.0F, 5.0F, 0.0F, 1.0F, 2.0F), PartPose.ZERO);
body.addOrReplaceChild(
"left_antenna", CubeListBuilder.create().texOffs(2, 0).addBox(1.5F, -2.0F, -3.0F, 1.0F, 2.0F, 3.0F), PartPose.offset(0.0F, -2.0F, -5.0F)
);
body.addOrReplaceChild(
"right_antenna", CubeListBuilder.create().texOffs(2, 3).addBox(-2.5F, -2.0F, -3.0F, 1.0F, 2.0F, 3.0F), PartPose.offset(0.0F, -2.0F, -5.0F)
);
CubeDeformation wingDeformation = new CubeDeformation(0.001F);
bone.addOrReplaceChild(
"right_wing",
CubeListBuilder.create().texOffs(0, 18).addBox(-9.0F, 0.0F, 0.0F, 9.0F, 0.0F, 6.0F, wingDeformation),
PartPose.offsetAndRotation(-1.5F, -4.0F, -3.0F, 0.0F, -0.2618F, 0.0F)
);
bone.addOrReplaceChild(
"left_wing",
CubeListBuilder.create().texOffs(0, 18).mirror().addBox(0.0F, 0.0F, 0.0F, 9.0F, 0.0F, 6.0F, wingDeformation),
PartPose.offsetAndRotation(1.5F, -4.0F, -3.0F, 0.0F, 0.2618F, 0.0F)
);
bone.addOrReplaceChild(
"front_legs", CubeListBuilder.create().addBox("front_legs", -5.0F, 0.0F, 0.0F, 7, 2, 0, 26, 1), PartPose.offset(1.5F, 3.0F, -2.0F)
);
bone.addOrReplaceChild(
"middle_legs", CubeListBuilder.create().addBox("middle_legs", -5.0F, 0.0F, 0.0F, 7, 2, 0, 26, 3), PartPose.offset(1.5F, 3.0F, 0.0F)
);
bone.addOrReplaceChild("back_legs", CubeListBuilder.create().addBox("back_legs", -5.0F, 0.0F, 0.0F, 7, 2, 0, 26, 5), PartPose.offset(1.5F, 3.0F, 2.0F));
return LayerDefinition.create(mesh, 64, 64);
}
}引用的其他类
-
- 引用位置:
继承
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
PartPose.offset(), PartPose.offsetAndRotation()
- 引用位置:
-
- 引用位置:
构造调用 - 关联成员:
CubeDeformation()
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
CubeListBuilder.create()
- 引用位置:
-
- 引用位置:
方法调用/返回值 - 关联成员:
LayerDefinition.create()
- 引用位置:
-
- 引用位置:
构造调用 - 关联成员:
MeshDefinition()
- 引用位置: