From 0a0f77ff585f1c1b5cdda9fefeff3c0e1380a86b Mon Sep 17 00:00:00 2001 From: Julian Krings Date: Mon, 23 Jun 2025 12:20:43 +0200 Subject: [PATCH] fix splash being shown twice --- core/src/main/java/com/volmit/iris/Iris.java | 5 ++--- .../volmit/iris/core/safeguard/IrisSafeguard.java | 13 +++++++++---- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/core/src/main/java/com/volmit/iris/Iris.java b/core/src/main/java/com/volmit/iris/Iris.java index e472df55a..b38379d26 100644 --- a/core/src/main/java/com/volmit/iris/Iris.java +++ b/core/src/main/java/com/volmit/iris/Iris.java @@ -470,7 +470,7 @@ public class Iris extends VolmitPlugin implements Listener { ServerConfigurator.configure(); IrisSafeguard.IrisSafeguardSystem(); getSender().setTag(getTag()); - IrisSafeguard.earlySplash(); + IrisSafeguard.splash(true); linkMultiverseCore = new MultiverseCoreLink(); linkMythicMobs = new MythicMobsLink(); configWatcher = new FileWatcher(getDataFile("settings.json")); @@ -485,8 +485,7 @@ public class Iris extends VolmitPlugin implements Listener { J.sr(this::tickQueue, 0); J.s(this::setupPapi); J.a(ServerConfigurator::configure, 20); - splash(); - UtilsSFG.splash(); + IrisSafeguard.splash(false); autoStartStudio(); checkForBukkitWorlds(); diff --git a/core/src/main/java/com/volmit/iris/core/safeguard/IrisSafeguard.java b/core/src/main/java/com/volmit/iris/core/safeguard/IrisSafeguard.java index 2c9eb9be1..241bdd01f 100644 --- a/core/src/main/java/com/volmit/iris/core/safeguard/IrisSafeguard.java +++ b/core/src/main/java/com/volmit/iris/core/safeguard/IrisSafeguard.java @@ -3,7 +3,10 @@ package com.volmit.iris.core.safeguard; import com.volmit.iris.Iris; import com.volmit.iris.core.IrisSettings; +import java.util.concurrent.atomic.AtomicBoolean; + public class IrisSafeguard { + private static final AtomicBoolean sfg = new AtomicBoolean(false); public static boolean unstablemode = false; public static boolean warningmode = false; public static boolean stablemode = false; @@ -13,12 +16,14 @@ public class IrisSafeguard { ServerBootSFG.BootCheck(); } - public static void earlySplash() { - if (ServerBootSFG.safeguardPassed || IrisSettings.get().getGeneral().DoomsdayAnnihilationSelfDestructMode) + public static void splash(boolean early) { + if (early && (ServerBootSFG.safeguardPassed || IrisSettings.get().getGeneral().DoomsdayAnnihilationSelfDestructMode)) return; - Iris.instance.splash(); - UtilsSFG.splash(); + if (!sfg.getAndSet(true)) { + Iris.instance.splash(); + UtilsSFG.splash(); + } } public static String mode() {