RabbitRenderer.java
net.minecraft.client.renderer.entity.RabbitRenderer
信息
- 全限定名:net.minecraft.client.renderer.entity.RabbitRenderer
- 类型:public class
- 包:net.minecraft.client.renderer.entity
- 源码路径:src/main/java/net/minecraft/client/renderer/entity/RabbitRenderer.java
- 起始行号:L16
- 继承:AgeableMobRenderer<Rabbit,RabbitRenderState,RabbitModel>
- 职责:
TODO
字段/常量
-
TOAST- 类型:
Identifier - 修饰符:
private static final - 源码定位:
L17 - 说明:
TODO
- 类型:
-
TOAST_BABY- 类型:
Identifier - 修饰符:
private static final - 源码定位:
L18 - 说明:
TODO
- 类型:
-
RABBIT_LOCATIONS- 类型:
Map<Rabbit.Variant,Identifier> - 修饰符:
private static final - 源码定位:
L19 - 说明:
TODO
- 类型:
-
BABY_RABBIT_LOCATIONS- 类型:
Map<Rabbit.Variant,Identifier> - 修饰符:
private static final - 源码定位:
L37 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public RabbitRenderer(EntityRendererProvider.Context context) @ L56
- 构造器名:RabbitRenderer
- 源码定位:L56
- 修饰符:public
参数:
- context: EntityRendererProvider.Context
说明:
TODO
方法
下面的方法块按源码顺序生成。
public Identifier getTextureLocation(RabbitRenderState state) @ L60
- 方法名:getTextureLocation
- 源码定位:L60
- 返回类型:Identifier
- 修饰符:public
参数:
- state: RabbitRenderState
说明:
TODO
public RabbitRenderState createRenderState() @ L69
- 方法名:createRenderState
- 源码定位:L69
- 返回类型:RabbitRenderState
- 修饰符:public
参数:
- 无
说明:
TODO
public void extractRenderState(Rabbit entity, RabbitRenderState state, float partialTicks) @ L73
- 方法名:extractRenderState
- 源码定位:L73
- 返回类型:void
- 修饰符:public
参数:
- entity: Rabbit
- state: RabbitRenderState
- partialTicks: float
说明:
TODO
代码
@OnlyIn(Dist.CLIENT)
public class RabbitRenderer extends AgeableMobRenderer<Rabbit, RabbitRenderState, RabbitModel> {
private static final Identifier TOAST = Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_toast.png");
private static final Identifier TOAST_BABY = Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_toast_baby.png");
private static final Map<Rabbit.Variant, Identifier> RABBIT_LOCATIONS = Maps.newEnumMap(
Map.of(
Rabbit.Variant.BROWN,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_brown.png"),
Rabbit.Variant.WHITE_SPLOTCHED,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_white_splotched.png"),
Rabbit.Variant.EVIL,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_caerbannog.png"),
Rabbit.Variant.WHITE,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_white.png"),
Rabbit.Variant.GOLD,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_gold.png"),
Rabbit.Variant.BLACK,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_black.png"),
Rabbit.Variant.SALT,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_salt.png")
)
);
private static final Map<Rabbit.Variant, Identifier> BABY_RABBIT_LOCATIONS = Maps.newEnumMap(
Map.of(
Rabbit.Variant.BROWN,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_brown_baby.png"),
Rabbit.Variant.WHITE_SPLOTCHED,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_white_splotched_baby.png"),
Rabbit.Variant.EVIL,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_caerbannog_baby.png"),
Rabbit.Variant.WHITE,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_white_baby.png"),
Rabbit.Variant.GOLD,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_gold_baby.png"),
Rabbit.Variant.BLACK,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_black_baby.png"),
Rabbit.Variant.SALT,
Identifier.withDefaultNamespace("textures/entity/rabbit/rabbit_salt_baby.png")
)
);
public RabbitRenderer(EntityRendererProvider.Context context) {
super(context, new AdultRabbitModel(context.bakeLayer(ModelLayers.RABBIT)), new BabyRabbitModel(context.bakeLayer(ModelLayers.RABBIT_BABY)), 0.3F);
}
public Identifier getTextureLocation(RabbitRenderState state) {
if (state.isToast) {
return state.isBaby ? TOAST_BABY : TOAST;
} else {
Map<Rabbit.Variant, Identifier> locations = state.isBaby ? BABY_RABBIT_LOCATIONS : RABBIT_LOCATIONS;
return locations.get(state.variant);
}
}
public RabbitRenderState createRenderState() {
return new RabbitRenderState();
}
public void extractRenderState(Rabbit entity, RabbitRenderState state, float partialTicks) {
super.extractRenderState(entity, state, partialTicks);
state.jumpCompletion = entity.getJumpCompletion(partialTicks);
state.isToast = checkMagicName(entity, "Toast");
state.variant = entity.getVariant();
state.hopAnimationState.copyFrom(entity.hopAnimationState);
state.idleHeadTiltAnimationState.copyFrom(entity.idleHeadTiltAnimationState);
}
}引用的其他类
-
- 引用位置:
构造调用 - 关联成员:
AdultRabbitModel()
- 引用位置:
-
- 引用位置:
构造调用 - 关联成员:
BabyRabbitModel()
- 引用位置:
-
- 引用位置:
继承
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数/构造调用/返回值 - 关联成员:
RabbitRenderState()
- 引用位置:
-
- 引用位置:
字段/方法调用/返回值 - 关联成员:
Identifier.withDefaultNamespace()
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置: