SnbtDatafixer.java
net.minecraft.data.structures.SnbtDatafixer
信息
- 全限定名:net.minecraft.data.structures.SnbtDatafixer
- 类型:public class
- 包:net.minecraft.data.structures
- 源码路径:src/main/java/net/minecraft/data/structures/SnbtDatafixer.java
- 起始行号:L16
- 职责:
TODO
字段/常量
- 无
内部类/嵌套类型
- 无
构造器
- 无
方法
下面的方法块按源码顺序生成。
public static void main(String[] args) @ L17
- 方法名:main
- 源码定位:L17
- 返回类型:void
- 修饰符:public static
参数:
- args: String[]
说明:
TODO
private static void updateInDirectory(String structureDir) @ L26
- 方法名:updateInDirectory
- 源码定位:L26
- 返回类型:void
- 修饰符:private static
参数:
- structureDir: String
说明:
TODO
代码
public class SnbtDatafixer {
public static void main(String[] args) throws IOException {
SharedConstants.setVersion(DetectedVersion.BUILT_IN);
Bootstrap.bootStrap();
for (String dir : args) {
updateInDirectory(dir);
}
}
private static void updateInDirectory(String structureDir) throws IOException {
try (Stream<Path> walk = Files.walk(Paths.get(structureDir))) {
walk.filter(path -> path.toString().endsWith(".snbt")).forEach(path -> {
try {
String snbt = Files.readString(path);
CompoundTag readSnbt = NbtUtils.snbtToStructure(snbt);
CompoundTag updatedTag = StructureUpdater.update(path.toString(), readSnbt);
NbtToSnbt.writeSnbt(CachedOutput.NO_CACHE, path, NbtUtils.structureToSnbt(updatedTag));
} catch (IOException | CommandSyntaxException var4) {
throw new RuntimeException(var4);
}
});
}
}
}引用的其他类
-
- 引用位置:
方法调用 - 关联成员:
SharedConstants.setVersion()
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
NbtToSnbt.writeSnbt()
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
StructureUpdater.update()
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
NbtUtils.snbtToStructure(), NbtUtils.structureToSnbt()
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
Bootstrap.bootStrap()
- 引用位置: