TrimPredicate.java
net.minecraft.core.component.predicates.TrimPredicate
信息
- 全限定名:net.minecraft.core.component.predicates.TrimPredicate
- 类型:public record
- 包:net.minecraft.core.component.predicates
- 源码路径:src/main/java/net/minecraft/core/component/predicates/TrimPredicate.java
- 起始行号:L16
- 实现:SingleComponentItemPredicate
- 职责:
TODO
字段/常量
CODEC- 类型:
Codec<TrimPredicate> - 修饰符:
public static final - 源码定位:
L18 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
- 无
方法
下面的方法块按源码顺序生成。
public DataComponentType<ArmorTrim> componentType() @ L26
- 方法名:componentType
- 源码定位:L26
- 返回类型:DataComponentType
- 修饰符:public
参数:
- 无
说明:
TODO
public boolean matches(ArmorTrim value) @ L31
- 方法名:matches
- 源码定位:L31
- 返回类型:boolean
- 修饰符:public
参数:
- value: ArmorTrim
说明:
TODO
代码
public record TrimPredicate(Optional<HolderSet<TrimMaterial>> material, Optional<HolderSet<TrimPattern>> pattern)
implements SingleComponentItemPredicate<ArmorTrim> {
public static final Codec<TrimPredicate> CODEC = RecordCodecBuilder.create(
i -> i.group(
RegistryCodecs.homogeneousList(Registries.TRIM_MATERIAL).optionalFieldOf("material").forGetter(TrimPredicate::material),
RegistryCodecs.homogeneousList(Registries.TRIM_PATTERN).optionalFieldOf("pattern").forGetter(TrimPredicate::pattern)
)
.apply(i, TrimPredicate::new)
);
@Override
public DataComponentType<ArmorTrim> componentType() {
return DataComponents.TRIM;
}
public boolean matches(ArmorTrim value) {
return this.material.isPresent() && !this.material.get().contains(value.material())
? false
: !this.pattern.isPresent() || this.pattern.get().contains(value.pattern());
}
}引用的其他类
-
- 引用位置:
实现
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
RegistryCodecs.homogeneousList()
- 引用位置:
-
- 引用位置:
返回值
- 引用位置:
-
- 引用位置:
参数/返回值
- 引用位置: