2222
2323package ca .tirelesstraveler .fancywarpmenu ;
2424
25- import ca .tirelesstraveler .fancywarpmenu .data .Island ;
26- import ca .tirelesstraveler .fancywarpmenu .data .Layout ;
25+ import ca .tirelesstraveler .fancywarpmenu .data .layout . Island ;
26+ import ca .tirelesstraveler .fancywarpmenu .data .layout . Layout ;
2727import ca .tirelesstraveler .fancywarpmenu .data .Settings ;
28+ import ca .tirelesstraveler .fancywarpmenu .resourceloaders .LayoutLoader ;
29+ import ca .tirelesstraveler .fancywarpmenu .data .skyblockconstants .SkyBlockConstants ;
2830import ca .tirelesstraveler .fancywarpmenu .listeners .SkyBlockJoinListener ;
2931import ca .tirelesstraveler .fancywarpmenu .listeners .WarpMenuListener ;
32+ import ca .tirelesstraveler .fancywarpmenu .resourceloaders .SkyBlockConstantsLoader ;
3033import net .minecraft .client .Minecraft ;
3134import net .minecraft .client .renderer .texture .TextureManager ;
3235import net .minecraft .client .resources .IReloadableResourceManager ;
@@ -56,6 +59,7 @@ public class FancyWarpMenu {
5659 static Logger logger ;
5760 private static ForgeVersion .CheckResult updateCheckResult ;
5861 private static Layout layout ;
62+ private static SkyBlockConstants skyBlockConstants ;
5963 private static SkyBlockJoinListener skyblockJoinListener ;
6064 private static WarpMenuListener warpMenuListener ;
6165 private static KeyBinding keyBindingOpenWarpMenu ;
@@ -66,7 +70,7 @@ public static FancyWarpMenu getInstance() {
6670
6771 @ Mod .EventHandler
6872 public void preInit (FMLPreInitializationEvent event ) {
69- ProgressManager .ProgressBar bar = ProgressManager .push ("Pre-init" , 3 );
73+ ProgressManager .ProgressBar bar = ProgressManager .push ("Pre-init" , 4 );
7074 EnvironmentDetails .deobfuscatedEnvironment = (Boolean ) Launch .blackboard .get ("fml.deobfuscatedEnvironment" );
7175 modId = event .getModMetadata ().modId ;
7276 modContainer = Loader .instance ().activeModContainer ();
@@ -82,7 +86,9 @@ public void preInit(FMLPreInitializationEvent event) {
8286 Settings .syncConfig (true );
8387 logger = event .getModLog ();
8488 event .getModMetadata ().version = modContainer .getVersion ();
85- bar .step ("Loading Warp Configuration" );
89+ bar .step ("Loading SkyBlock Constants" );
90+ skyBlockConstants = SkyBlockConstantsLoader .loadSkyBlockConstants ();
91+ bar .step ("Loading Layout" );
8692 layout = LayoutLoader .loadLayout ();
8793 ProgressManager .pop (bar );
8894 }
@@ -137,13 +143,23 @@ public boolean isPlayerOnSkyBlock() {
137143
138144 public void reloadResources () {
139145 Minecraft .getMinecraft ().refreshResources ();
146+ reloadSkyBlockConstants ();
140147 reloadLayout ();
141148 }
142149
150+ public void reloadSkyBlockConstants () {
151+ SkyBlockConstants loadedSkyBlockConstants = SkyBlockConstantsLoader .loadSkyBlockConstants ();
152+
153+ // Will be null if json syntax is wrong or SkyBlock constants are invalid
154+ if (loadedSkyBlockConstants != null ) {
155+ FancyWarpMenu .skyBlockConstants = loadedSkyBlockConstants ;
156+ }
157+ }
158+
143159 public void reloadLayout () {
144160 Layout loadedLayout = LayoutLoader .loadLayout ();
145161
146- // Will be null if json syntax is wrong or config is invalid
162+ // Will be null if json syntax is wrong or layout is invalid
147163 if (loadedLayout != null ) {
148164 FancyWarpMenu .layout = loadedLayout ;
149165 }
@@ -163,4 +179,8 @@ public static KeyBinding getKeyBindingOpenWarpMenu() {
163179 public static Layout getLayout () {
164180 return layout ;
165181 }
182+
183+ public static SkyBlockConstants getSkyBlockConstants () {
184+ return skyBlockConstants ;
185+ }
166186}
0 commit comments