From 381b2b16acc428f4628d570027e9376ef9caf270 Mon Sep 17 00:00:00 2001 From: PandaNinjas Date: Sun, 29 Jan 2023 03:48:14 +0000 Subject: [PATCH 1/3] Add safety facts to the splash screen --- .../scc/gui/CustomSplashProgress.java | 35 +++++++++++++------ 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java b/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java index f608a8c..0440d4a 100644 --- a/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java +++ b/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java @@ -55,6 +55,7 @@ public class CustomSplashProgress { private static final IResourcePack fmlPack = createResourcePack(FMLSanityChecker.fmlLocation); private static final IntBuffer buf = BufferUtils.createIntBuffer(4 * 1024 * 1024); private static String funFact = null; + private static String safetyFact = null; private static Drawable d; private static volatile boolean pause = false; private static volatile boolean done = false; @@ -90,6 +91,16 @@ private static boolean getBool(String name, boolean def) { return Boolean.parseBoolean(getString(name, Boolean.toString(def))); } + private static String fetchOneLine(String source) { + String stringList = WebUtil.fetchString(source); + if (stringList != null) { + String[] lines = stringList.split("\n"); + int index = (int) (Math.random() * lines.length); + return lines[index]; + } + return null; + } + public static void start() { File configFile = new File(Minecraft.getMinecraft().mcDataDir, "config/splash.properties"); @@ -186,12 +197,8 @@ public void printStackTrace(final PrintStream s) { Multithreading.runAsync(() -> { try { - String text = WebUtil.fetchString("https://cdn.jsdelivr.net/gh/KTibow/Skyclient@main/docs/assets/funfacts.txt"); - if (text != null) { - String[] lines = text.split("\n"); - int index = (int) (Math.random() * lines.length); - funFact = lines[index]; - } + funFact = fetchOneLine("https://cdn.jsdelivr.net/gh/KTibow/Skyclient@main/docs/assets/funfacts.txt"); + safetyFact = fetchOneLine("https://cdn.jsdelivr.net/gh/KTibow/Skyclient@main/docs/assets/unfunfacts.txt"); } catch (Exception e) { e.printStackTrace(); } @@ -261,15 +268,23 @@ public void run() { glDisable(GL_TEXTURE_2D); glPopMatrix(); - if (funFact != null && !funFact.isEmpty()) { + if ((funFact != null && !funFact.isEmpty()) || (safetyFact != null && !safetyFact.isEmpty())) { glPushMatrix(); setColor(fontColor); glScalef(2, 2, 1); glEnable(GL_TEXTURE_2D); int offset = 0; - for (String segment : funFact.split("\\\\n")) { - fontRenderer.drawString(segment, 160 - (fontRenderer.getStringWidth(segment) / 2), 180 - textHeight2 + offset, 0x000000); - offset += 10; + if (funFact != null && !funFact.isEmpty()) { + for (String segment : funFact.split("\\\\n")) { + fontRenderer.drawString(segment, 160 - (fontRenderer.getStringWidth(segment) / 2), 180 - textHeight2 + offset, 0x000000); + offset += 10; + } + } + if (safetyFact != null && !safetyFact.isEmpty()) { + for (String segment : safetyFact.split("\\\\n")) { + fontRenderer.drawString(segment, 160 - (fontRenderer.getStringWidth(segment) / 2), 180 - textHeight2 + offset, 0x000000); + offset += 10; + } } glDisable(GL_TEXTURE_2D); glPopMatrix(); From 6a430a818083f43aee59495a3c5f52ccec6ed9b4 Mon Sep 17 00:00:00 2001 From: PandaNinjas Date: Sun, 29 Jan 2023 04:44:35 +0000 Subject: [PATCH 2/3] Make it not overlap --- src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java b/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java index 0440d4a..230d927 100644 --- a/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java +++ b/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java @@ -295,7 +295,7 @@ public void run() { if (first != null) { glPushMatrix(); int barOffset = 55; - glTranslatef(320 - (float) barWidth / 2, 310 + barOffset, 0); + glTranslatef(320 - (float) barWidth / 2, 320 + barOffset, 0); drawBar(first); if (penult != null) { glTranslatef(0, barOffset, 0); @@ -306,7 +306,7 @@ public void run() { } else { if (first != null) { glPushMatrix(); - glTranslatef(320 - (float) barWidth / 2, 310, 0); + glTranslatef(320 - (float) barWidth / 2, 320, 0); drawBar(first); int barOffset = 55; if (penult != null) { From 3f17634f57dd50460dfa1867acc668c300ab4fd5 Mon Sep 17 00:00:00 2001 From: PandaNinjas Date: Tue, 7 Feb 2023 02:19:39 +0000 Subject: [PATCH 3/3] Merge fact things --- .../scc/gui/CustomSplashProgress.java | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java b/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java index 230d927..2a79b76 100644 --- a/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java +++ b/src/main/java/co/skyclient/scc/gui/CustomSplashProgress.java @@ -55,7 +55,6 @@ public class CustomSplashProgress { private static final IResourcePack fmlPack = createResourcePack(FMLSanityChecker.fmlLocation); private static final IntBuffer buf = BufferUtils.createIntBuffer(4 * 1024 * 1024); private static String funFact = null; - private static String safetyFact = null; private static Drawable d; private static volatile boolean pause = false; private static volatile boolean done = false; @@ -197,8 +196,11 @@ public void printStackTrace(final PrintStream s) { Multithreading.runAsync(() -> { try { - funFact = fetchOneLine("https://cdn.jsdelivr.net/gh/KTibow/Skyclient@main/docs/assets/funfacts.txt"); - safetyFact = fetchOneLine("https://cdn.jsdelivr.net/gh/KTibow/Skyclient@main/docs/assets/unfunfacts.txt"); + if (Math.random() > 0.4) { + funFact = fetchOneLine("https://cdn.jsdelivr.net/gh/KTibow/Skyclient@main/docs/assets/funfacts.txt"); + } else { + funFact = fetchOneLine("https://cdn.jsdelivr.net/gh/KTibow/Skyclient@main/docs/assets/unfunfacts.txt"); + } } catch (Exception e) { e.printStackTrace(); } @@ -268,7 +270,7 @@ public void run() { glDisable(GL_TEXTURE_2D); glPopMatrix(); - if ((funFact != null && !funFact.isEmpty()) || (safetyFact != null && !safetyFact.isEmpty())) { + if (funFact != null && !funFact.isEmpty()) { glPushMatrix(); setColor(fontColor); glScalef(2, 2, 1); @@ -280,12 +282,6 @@ public void run() { offset += 10; } } - if (safetyFact != null && !safetyFact.isEmpty()) { - for (String segment : safetyFact.split("\\\\n")) { - fontRenderer.drawString(segment, 160 - (fontRenderer.getStringWidth(segment) / 2), 180 - textHeight2 + offset, 0x000000); - offset += 10; - } - } glDisable(GL_TEXTURE_2D); glPopMatrix(); } @@ -295,7 +291,7 @@ public void run() { if (first != null) { glPushMatrix(); int barOffset = 55; - glTranslatef(320 - (float) barWidth / 2, 320 + barOffset, 0); + glTranslatef(320 - (float) barWidth / 2, 310 + barOffset, 0); drawBar(first); if (penult != null) { glTranslatef(0, barOffset, 0);