ArmedEntityRenderState.java
net.minecraft.client.renderer.entity.state.ArmedEntityRenderState
信息
- 全限定名:net.minecraft.client.renderer.entity.state.ArmedEntityRenderState
- 类型:public class
- 包:net.minecraft.client.renderer.entity.state
- 源码路径:src/main/java/net/minecraft/client/renderer/entity/state/ArmedEntityRenderState.java
- 起始行号:L16
- 继承:LivingEntityRenderState
- 职责:
TODO
字段/常量
-
mainArm- 类型:
HumanoidArm - 修饰符:
public - 源码定位:
L17 - 说明:
TODO
- 类型:
-
attackArm- 类型:
HumanoidArm - 修饰符:
public - 源码定位:
L18 - 说明:
TODO
- 类型:
-
rightArmPose- 类型:
HumanoidModel.ArmPose - 修饰符:
public - 源码定位:
L19 - 说明:
TODO
- 类型:
-
rightHandItemState- 类型:
ItemStackRenderState - 修饰符:
public final - 源码定位:
L20 - 说明:
TODO
- 类型:
-
rightHandItemStack- 类型:
ItemStack - 修饰符:
public - 源码定位:
L21 - 说明:
TODO
- 类型:
-
leftArmPose- 类型:
HumanoidModel.ArmPose - 修饰符:
public - 源码定位:
L22 - 说明:
TODO
- 类型:
-
leftHandItemState- 类型:
ItemStackRenderState - 修饰符:
public final - 源码定位:
L23 - 说明:
TODO
- 类型:
-
leftHandItemStack- 类型:
ItemStack - 修饰符:
public - 源码定位:
L24 - 说明:
TODO
- 类型:
-
swingAnimationType- 类型:
SwingAnimationType - 修饰符:
public - 源码定位:
L25 - 说明:
TODO
- 类型:
-
attackTime- 类型:
float - 修饰符:
public - 源码定位:
L26 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
- 无
方法
下面的方法块按源码顺序生成。
public ItemStackRenderState getMainHandItemState() @ L28
- 方法名:getMainHandItemState
- 源码定位:L28
- 返回类型:ItemStackRenderState
- 修饰符:public
参数:
- 无
说明:
TODO
public ItemStack getMainHandItemStack() @ L32
- 方法名:getMainHandItemStack
- 源码定位:L32
- 返回类型:ItemStack
- 修饰符:public
参数:
- 无
说明:
TODO
public ItemStack getUseItemStackForArm(HumanoidArm arm) @ L36
- 方法名:getUseItemStackForArm
- 源码定位:L36
- 返回类型:ItemStack
- 修饰符:public
参数:
- arm: HumanoidArm
说明:
TODO
public float ticksUsingItem(HumanoidArm arm) @ L40
- 方法名:ticksUsingItem
- 源码定位:L40
- 返回类型:float
- 修饰符:public
参数:
- arm: HumanoidArm
说明:
TODO
public static void extractArmedEntityRenderState(LivingEntity entity, ArmedEntityRenderState state, ItemModelResolver itemModelResolver, float partialTicks) @ L44
- 方法名:extractArmedEntityRenderState
- 源码定位:L44
- 返回类型:void
- 修饰符:public static
参数:
- entity: LivingEntity
- state: ArmedEntityRenderState
- itemModelResolver: ItemModelResolver
- partialTicks: float
说明:
TODO
代码
@OnlyIn(Dist.CLIENT)
public class ArmedEntityRenderState extends LivingEntityRenderState {
public HumanoidArm mainArm = HumanoidArm.RIGHT;
public HumanoidArm attackArm = HumanoidArm.RIGHT;
public HumanoidModel.ArmPose rightArmPose = HumanoidModel.ArmPose.EMPTY;
public final ItemStackRenderState rightHandItemState = new ItemStackRenderState();
public ItemStack rightHandItemStack = ItemStack.EMPTY;
public HumanoidModel.ArmPose leftArmPose = HumanoidModel.ArmPose.EMPTY;
public final ItemStackRenderState leftHandItemState = new ItemStackRenderState();
public ItemStack leftHandItemStack = ItemStack.EMPTY;
public SwingAnimationType swingAnimationType = SwingAnimationType.WHACK;
public float attackTime;
public ItemStackRenderState getMainHandItemState() {
return this.mainArm == HumanoidArm.RIGHT ? this.rightHandItemState : this.leftHandItemState;
}
public ItemStack getMainHandItemStack() {
return this.mainArm == HumanoidArm.RIGHT ? this.rightHandItemStack : this.leftHandItemStack;
}
public ItemStack getUseItemStackForArm(HumanoidArm arm) {
return arm == HumanoidArm.RIGHT ? this.rightHandItemStack : this.leftHandItemStack;
}
public float ticksUsingItem(HumanoidArm arm) {
return 0.0F;
}
public static void extractArmedEntityRenderState(LivingEntity entity, ArmedEntityRenderState state, ItemModelResolver itemModelResolver, float partialTicks) {
state.mainArm = entity.getMainArm();
state.attackArm = entity.swingingArm != InteractionHand.OFF_HAND ? state.mainArm : state.mainArm.getOpposite();
ItemStack itemStack = entity.getItemHeldByArm(state.attackArm);
state.swingAnimationType = itemStack.getSwingAnimation().type();
state.attackTime = entity.getAttackAnim(partialTicks);
itemModelResolver.updateForLiving(
state.rightHandItemState, entity.getItemHeldByArm(HumanoidArm.RIGHT), ItemDisplayContext.THIRD_PERSON_RIGHT_HAND, entity
);
itemModelResolver.updateForLiving(state.leftHandItemState, entity.getItemHeldByArm(HumanoidArm.LEFT), ItemDisplayContext.THIRD_PERSON_LEFT_HAND, entity);
state.leftHandItemStack = entity.getItemHeldByArm(HumanoidArm.LEFT).copy();
state.rightHandItemStack = entity.getItemHeldByArm(HumanoidArm.RIGHT).copy();
}
}引用的其他类
-
- 引用位置:
字段
- 引用位置:
-
- 引用位置:
继承
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
字段/构造调用/返回值 - 关联成员:
ItemStackRenderState()
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
字段/返回值
- 引用位置:
-
- 引用位置:
字段
- 引用位置: