[Fix] Crash due to client code in Command execution
This commit is contained in:
parent
e06bee11e9
commit
d48f6db59f
2 changed files with 13 additions and 8 deletions
|
@ -10,6 +10,8 @@ import org.betterx.bclib.BCLib;
|
|||
import org.betterx.bclib.config.Configs;
|
||||
import org.betterx.bclib.networking.VersionChecker;
|
||||
|
||||
import com.mojang.blaze3d.systems.RenderSystem;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.GuiGraphics;
|
||||
import net.minecraft.client.gui.screens.Screen;
|
||||
import net.minecraft.network.chat.CommonComponents;
|
||||
|
@ -32,6 +34,15 @@ public class UpdatesScreen extends BCLibLayoutScreen {
|
|||
super(parent, Component.translatable("bclib.updates.title"), 10, 10, 10);
|
||||
}
|
||||
|
||||
public static void showUpdateUI() {
|
||||
if (!RenderSystem.isOnRenderThread()) {
|
||||
RenderSystem.recordRenderCall(() -> Minecraft.getInstance()
|
||||
.setScreen(new UpdatesScreen(Minecraft.getInstance().screen)));
|
||||
} else {
|
||||
Minecraft.getInstance().setScreen(new UpdatesScreen(Minecraft.getInstance().screen));
|
||||
}
|
||||
}
|
||||
|
||||
public ResourceLocation getUpdaterIcon(String modID) {
|
||||
if (modID.equals(BCLib.MOD_ID)) {
|
||||
return UPDATE_LOGO_LOCATION;
|
||||
|
|
|
@ -5,12 +5,10 @@ import org.betterx.bclib.client.gui.screens.UpdatesScreen;
|
|||
import org.betterx.bclib.config.Configs;
|
||||
import org.betterx.bclib.networking.VersionChecker;
|
||||
|
||||
import com.mojang.blaze3d.systems.RenderSystem;
|
||||
import com.mojang.brigadier.Command;
|
||||
import com.mojang.brigadier.builder.LiteralArgumentBuilder;
|
||||
import com.mojang.brigadier.context.CommandContext;
|
||||
import net.minecraft.ChatFormatting;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.commands.CommandSourceStack;
|
||||
import net.minecraft.commands.Commands;
|
||||
import net.minecraft.network.chat.ClickEvent;
|
||||
|
@ -126,13 +124,9 @@ public class PrintInfo {
|
|||
ctx.getSource().sendSuccess(() -> footer, false);
|
||||
|
||||
if (withUI && BCLib.isClient() && Configs.CLIENT_CONFIG.showUpdateInfo() && !VersionChecker.isEmpty()) {
|
||||
if (!RenderSystem.isOnRenderThread()) {
|
||||
RenderSystem.recordRenderCall(() -> Minecraft.getInstance()
|
||||
.setScreen(new UpdatesScreen(Minecraft.getInstance().screen)));
|
||||
} else {
|
||||
Minecraft.getInstance().setScreen(new UpdatesScreen(Minecraft.getInstance().screen));
|
||||
}
|
||||
UpdatesScreen.showUpdateUI();
|
||||
}
|
||||
return Command.SINGLE_SUCCESS;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue