BlockParticleOption.java
net.minecraft.core.particles.BlockParticleOption
信息
- 全限定名:net.minecraft.core.particles.BlockParticleOption
- 类型:public class
- 包:net.minecraft.core.particles
- 源码路径:src/main/java/net/minecraft/core/particles/BlockParticleOption.java
- 起始行号:L12
- 实现:ParticleOptions
- 职责:
TODO
字段/常量
-
BLOCK_STATE_CODEC- 类型:
Codec<BlockState> - 修饰符:
private static final - 源码定位:
L13 - 说明:
TODO
- 类型:
-
type- 类型:
ParticleType<BlockParticleOption> - 修饰符:
private final - 源码定位:
L16 - 说明:
TODO
- 类型:
-
state- 类型:
BlockState - 修饰符:
private final - 源码定位:
L17 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public BlockParticleOption(ParticleType<BlockParticleOption> type, BlockState state) @ L27
- 构造器名:BlockParticleOption
- 源码定位:L27
- 修饰符:public
参数:
- type: ParticleType
- state: BlockState
说明:
TODO
方法
下面的方法块按源码顺序生成。
public static MapCodec<BlockParticleOption> codec(ParticleType<BlockParticleOption> type) @ L19
- 方法名:codec
- 源码定位:L19
- 返回类型:MapCodec
- 修饰符:public static
参数:
- type: ParticleType
说明:
TODO
public static StreamCodec<?super RegistryFriendlyByteBuf,BlockParticleOption> streamCodec(ParticleType<BlockParticleOption> type) @ L23
- 方法名:streamCodec
- 源码定位:L23
- 返回类型:StreamCodec<?super RegistryFriendlyByteBuf,BlockParticleOption>
- 修饰符:public static
参数:
- type: ParticleType
说明:
TODO
public ParticleType<BlockParticleOption> getType() @ L32
- 方法名:getType
- 源码定位:L32
- 返回类型:ParticleType
- 修饰符:public
参数:
- 无
说明:
TODO
public BlockState getState() @ L37
- 方法名:getState
- 源码定位:L37
- 返回类型:BlockState
- 修饰符:public
参数:
- 无
说明:
TODO
代码
public class BlockParticleOption implements ParticleOptions {
private static final Codec<BlockState> BLOCK_STATE_CODEC = Codec.withAlternative(
BlockState.CODEC, BuiltInRegistries.BLOCK.byNameCodec(), Block::defaultBlockState
);
private final ParticleType<BlockParticleOption> type;
private final BlockState state;
public static MapCodec<BlockParticleOption> codec(ParticleType<BlockParticleOption> type) {
return BLOCK_STATE_CODEC.xmap(state -> new BlockParticleOption(type, state), o -> o.state).fieldOf("block_state");
}
public static StreamCodec<? super RegistryFriendlyByteBuf, BlockParticleOption> streamCodec(ParticleType<BlockParticleOption> type) {
return ByteBufCodecs.idMapper(Block.BLOCK_STATE_REGISTRY).map(state -> new BlockParticleOption(type, state), o -> o.state);
}
public BlockParticleOption(ParticleType<BlockParticleOption> type, BlockState state) {
this.type = type;
this.state = state;
}
@Override
public ParticleType<BlockParticleOption> getType() {
return this.type;
}
public BlockState getState() {
return this.state;
}
}引用的其他类
-
- 引用位置:
实现
- 引用位置:
-
- 引用位置:
参数/字段/返回值
- 引用位置:
-
- 引用位置:
返回值
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
ByteBufCodecs.idMapper()
- 引用位置:
-
- 引用位置:
返回值
- 引用位置:
-
- 引用位置:
参数/字段/返回值
- 引用位置: