WrittenBookPagesStrictJsonFix.java
net.minecraft.util.datafix.fixes.WrittenBookPagesStrictJsonFix
信息
- 全限定名:net.minecraft.util.datafix.fixes.WrittenBookPagesStrictJsonFix
- 类型:public class
- 包:net.minecraft.util.datafix.fixes
- 源码路径:src/main/java/net/minecraft/util/datafix/fixes/WrittenBookPagesStrictJsonFix.java
- 起始行号:L11
- 继承:ItemStackTagFix
- 职责:
TODO
字段/常量
- 无
内部类/嵌套类型
- 无
构造器
public WrittenBookPagesStrictJsonFix(Schema outputSchema) @ L12
- 构造器名:WrittenBookPagesStrictJsonFix
- 源码定位:L12
- 修饰符:public
参数:
- outputSchema: Schema
说明:
TODO
方法
下面的方法块按源码顺序生成。
protected Typed<?> fixItemStackTag(Typed<?> tag) @ L16
- 方法名:fixItemStackTag
- 源码定位:L16
- 返回类型:Typed<?>
- 修饰符:protected
参数:
- tag: Typed<?>
说明:
TODO
代码
public class WrittenBookPagesStrictJsonFix extends ItemStackTagFix {
public WrittenBookPagesStrictJsonFix(Schema outputSchema) {
super(outputSchema, "WrittenBookPagesStrictJsonFix", id -> id.equals("minecraft:written_book"));
}
@Override
protected Typed<?> fixItemStackTag(Typed<?> tag) {
Type<Pair<String, String>> textComponentType = (Type<Pair<String, String>>)this.getInputSchema().getType(References.TEXT_COMPONENT);
Type<?> itemStackType = this.getInputSchema().getType(References.ITEM_STACK);
OpticFinder<?> tagF = itemStackType.findField("tag");
OpticFinder<?> pagesF = tagF.type().findField("pages");
OpticFinder<Pair<String, String>> pageF = DSL.typeFinder(textComponentType);
return tag.updateTyped(pagesF, pages -> pages.update(pageF, page -> page.mapSecond(LegacyComponentDataFixUtils::rewriteFromLenient)));
}
}引用的其他类
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
继承
- 引用位置: