LevelDat.java
net.minecraft.util.filefix.access.LevelDat
信息
- 全限定名:net.minecraft.util.filefix.access.LevelDat
- 类型:public class
- 包:net.minecraft.util.filefix.access
- 源码路径:src/main/java/net/minecraft/util/filefix/access/LevelDat.java
- 起始行号:L12
- 继承:CompressedNbt
- 职责:
TODO
字段/常量
targetVersion- 类型:
int - 修饰符:
private final - 源码定位:
L13 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public LevelDat(Path path, int targetVersion) @ L15
- 构造器名:LevelDat
- 源码定位:L15
- 修饰符:public
参数:
- path: Path
- targetVersion: int
说明:
TODO
方法
下面的方法块按源码顺序生成。
public Optional<Dynamic<Tag>> read() @ L20
- 方法名:read
- 源码定位:L20
- 返回类型:Optional<Dynamic
> - 修饰符:public
参数:
- 无
说明:
TODO
public <T> void write(Dynamic<T> data) @ L29
- 方法名:write
- 源码定位:L29
- 返回类型:
void - 修饰符:public
参数:
- data: Dynamic
说明:
TODO
代码
public class LevelDat extends CompressedNbt {
private final int targetVersion;
public LevelDat(Path path, int targetVersion) {
super(path, CompressedNbt.MissingSeverity.IMPORTANT);
this.targetVersion = targetVersion;
}
@Override
public Optional<Dynamic<Tag>> read() throws IOException {
return this.readFile().map(readData -> {
Dynamic<Tag> content = readData.get("Data").orElseEmptyMap();
int dataVersion = NbtUtils.getDataVersion(content);
return DataFixers.getDataFixer().update(References.LEVEL, content, dataVersion, this.targetVersion);
});
}
@Override
public <T> void write(Dynamic<T> data) {
this.writeFile(data.emptyMap().set("Data", NbtUtils.addDataVersion(data, this.targetVersion)));
}
}引用的其他类
-
- 引用位置:
方法调用 - 关联成员:
NbtUtils.addDataVersion(), NbtUtils.getDataVersion()
- 引用位置:
-
- 引用位置:
返回值
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
DataFixers.getDataFixer()
- 引用位置:
-
- 引用位置:
继承
- 引用位置:
-
- 引用位置:
参数/返回值
- 引用位置: