package org.cfpa.i18nupdatemod.notice; import net.minecraft.client.Minecraft; import net.minecraft.util.text.TextComponentTranslation; import org.apache.commons.io.IOUtils; import org.cfpa.i18nupdatemod.I18nUpdateMod; import org.cfpa.i18nupdatemod.I18nConfig; import java.net.URL; import java.nio.charset.StandardCharsets; import java.util.List; public class NoticeShower { private static List<String> strings; public NoticeShower() { new Thread(() -> { try { URL url = new URL(I18nConfig.notice.noticeURL); strings = IOUtils.readLines(url.openStream(), StandardCharsets.UTF_8); Minecraft.getMinecraft().addScheduledTask(() -> Minecraft.getMinecraft().displayGuiScreen(new NoticeGui(strings))); } catch (Throwable e) { Minecraft.getMinecraft().player.sendMessage(new TextComponentTranslation("获取公告失败。")); I18nUpdateMod.logger.error("获取公告失败:", e); } }, "I18n_NOTICE_PENDING_THREAD").start(); } }