LocalPlayerResolver.java
net.minecraft.client.player.LocalPlayerResolver
信息
- 全限定名:net.minecraft.client.player.LocalPlayerResolver
- 类型:public class
- 包:net.minecraft.client.player
- 源码路径:src/main/java/net/minecraft/client/player/LocalPlayerResolver.java
- 起始行号:L14
- 实现:ProfileResolver
- 职责:
TODO
字段/常量
-
minecraft- 类型:
Minecraft - 修饰符:
private final - 源码定位:
L15 - 说明:
TODO
- 类型:
-
parentResolver- 类型:
ProfileResolver - 修饰符:
private final - 源码定位:
L16 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public LocalPlayerResolver(Minecraft minecraft, ProfileResolver parentResolver) @ L18
- 构造器名:LocalPlayerResolver
- 源码定位:L18
- 修饰符:public
参数:
- minecraft: Minecraft
- parentResolver: ProfileResolver
说明:
TODO
方法
下面的方法块按源码顺序生成。
public Optional<GameProfile> fetchByName(String name) @ L23
- 方法名:fetchByName
- 源码定位:L23
- 返回类型:Optional
- 修饰符:public
参数:
- name: String
说明:
TODO
public Optional<GameProfile> fetchById(UUID id) @ L36
- 方法名:fetchById
- 源码定位:L36
- 返回类型:Optional
- 修饰符:public
参数:
- id: UUID
说明:
TODO
代码
@OnlyIn(Dist.CLIENT)
public class LocalPlayerResolver implements ProfileResolver {
private final Minecraft minecraft;
private final ProfileResolver parentResolver;
public LocalPlayerResolver(Minecraft minecraft, ProfileResolver parentResolver) {
this.minecraft = minecraft;
this.parentResolver = parentResolver;
}
@Override
public Optional<GameProfile> fetchByName(String name) {
ClientPacketListener connection = this.minecraft.getConnection();
if (connection != null) {
PlayerInfo playerInfo = connection.getPlayerInfoIgnoreCase(name);
if (playerInfo != null) {
return Optional.of(playerInfo.getProfile());
}
}
return this.parentResolver.fetchByName(name);
}
@Override
public Optional<GameProfile> fetchById(UUID id) {
ClientPacketListener connection = this.minecraft.getConnection();
if (connection != null) {
PlayerInfo playerInfo = connection.getPlayerInfo(id);
if (playerInfo != null) {
return Optional.of(playerInfo.getProfile());
}
}
return this.parentResolver.fetchById(id);
}
}引用的其他类
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
参数/字段/实现
- 引用位置: