PlayerData.java
net.minecraft.util.filefix.access.PlayerData
信息
- 全限定名:net.minecraft.util.filefix.access.PlayerData
- 类型:public class
- 包:net.minecraft.util.filefix.access
- 源码路径:src/main/java/net/minecraft/util/filefix/access/PlayerData.java
- 起始行号:L12
- 继承:CompressedNbt
- 职责:
TODO
字段/常量
targetVersion- 类型:
int - 修饰符:
private final - 源码定位:
L13 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public PlayerData(Path path, int targetVersion) @ L15
- 构造器名:PlayerData
- 源码定位: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) @ L28
- 方法名:write
- 源码定位:L28
- 返回类型:
void - 修饰符:public
参数:
- data: Dynamic
说明:
TODO
代码
public class PlayerData extends CompressedNbt {
private final int targetVersion;
public PlayerData(Path path, int targetVersion) {
super(path, CompressedNbt.MissingSeverity.NEUTRAL);
this.targetVersion = targetVersion;
}
@Override
public Optional<Dynamic<Tag>> read() throws IOException {
return this.readFile().map(readData -> {
int version = NbtUtils.getDataVersion((Dynamic<?>)readData);
return DataFixers.getDataFixer().update(References.PLAYER, (Dynamic<Tag>)readData, version, this.targetVersion);
});
}
@Override
public <T> void write(Dynamic<T> data) {
Dynamic<T> withDataVersion = NbtUtils.addDataVersion(data, this.targetVersion);
this.writeFile(withDataVersion);
}
}引用的其他类
-
- 引用位置:
方法调用 - 关联成员:
NbtUtils.addDataVersion(), NbtUtils.getDataVersion()
- 引用位置:
-
- 引用位置:
返回值
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
DataFixers.getDataFixer()
- 引用位置:
-
- 引用位置:
继承
- 引用位置:
-
- 引用位置:
参数/返回值
- 引用位置: