OpenServerTask.java
com.mojang.realmsclient.util.task.OpenServerTask
信息
- 全限定名:com.mojang.realmsclient.util.task.OpenServerTask
- 类型:public class
- 包:com.mojang.realmsclient.util.task
- 源码路径:src/main/java/com/mojang/realmsclient/util/task/OpenServerTask.java
- 起始行号:L17
- 继承:LongRunningTask
- 职责:
TODO
字段/常量
-
LOGGER- 类型:
Logger - 修饰符:
private static final - 源码定位:
L18 - 说明:
TODO
- 类型:
-
TITLE- 类型:
Component - 修饰符:
private static final - 源码定位:
L19 - 说明:
TODO
- 类型:
-
serverData- 类型:
RealmsServer - 修饰符:
private final - 源码定位:
L20 - 说明:
TODO
- 类型:
-
returnScreen- 类型:
Screen - 修饰符:
private final - 源码定位:
L21 - 说明:
TODO
- 类型:
-
join- 类型:
boolean - 修饰符:
private final - 源码定位:
L22 - 说明:
TODO
- 类型:
-
minecraft- 类型:
Minecraft - 修饰符:
private final - 源码定位:
L23 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public OpenServerTask(RealmsServer realmsServer, Screen returnScreen, boolean join, Minecraft minecraft) @ L25
- 构造器名:OpenServerTask
- 源码定位:L25
- 修饰符:public
参数:
- realmsServer: RealmsServer
- returnScreen: Screen
- join: boolean
- minecraft: Minecraft
说明:
TODO
方法
下面的方法块按源码顺序生成。
public void run() @ L32
- 方法名:run
- 源码定位:L32
- 返回类型:void
- 修饰符:public
参数:
- 无
说明:
TODO
public Component getTitle() @ L75
- 方法名:getTitle
- 源码定位:L75
- 返回类型:Component
- 修饰符:public
参数:
- 无
说明:
TODO
代码
@OnlyIn(Dist.CLIENT)
public class OpenServerTask extends LongRunningTask {
private static final Logger LOGGER = LogUtils.getLogger();
private static final Component TITLE = Component.translatable("mco.configure.world.opening");
private final RealmsServer serverData;
private final Screen returnScreen;
private final boolean join;
private final Minecraft minecraft;
public OpenServerTask(RealmsServer realmsServer, Screen returnScreen, boolean join, Minecraft minecraft) {
this.serverData = realmsServer;
this.returnScreen = returnScreen;
this.join = join;
this.minecraft = minecraft;
}
@Override
public void run() {
RealmsClient client = RealmsClient.getOrCreate();
for (int i = 0; i < 25; i++) {
if (this.aborted()) {
return;
}
try {
boolean openResult = client.open(this.serverData.id);
if (openResult) {
this.minecraft.execute(() -> {
if (this.returnScreen instanceof RealmsConfigureWorldScreen screen) {
screen.stateChanged();
}
this.serverData.state = RealmsServer.State.OPEN;
if (this.join) {
RealmsMainScreen.play(this.serverData, this.returnScreen);
} else {
this.minecraft.setScreen(this.returnScreen);
}
});
break;
}
} catch (RetryCallException var4) {
if (this.aborted()) {
return;
}
pause(var4.delaySeconds);
} catch (Exception var5) {
if (this.aborted()) {
return;
}
LOGGER.error("Failed to open server", (Throwable)var5);
this.error(var5);
}
}
}
@Override
public Component getTitle() {
return TITLE;
}
}引用的其他类
-
- 引用位置:
方法调用 - 关联成员:
RealmsMainScreen.play()
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
RealmsClient.getOrCreate()
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
继承
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
字段/方法调用/返回值 - 关联成员:
Component.translatable()
- 引用位置: