diff options
author | jackowski626 <jf@wikiera.net> | 2020-04-19 14:07:16 +0200 |
---|---|---|
committer | jackowski626 <jf@wikiera.net> | 2020-04-19 14:07:16 +0200 |
commit | 76c7090220f83008b157eb4ae9e1541c9ac6c1ee (patch) | |
tree | 13bbc2211b84ff4a6701cecc79fdecdcff025d59 /src/main/java/gregtech/common/GT_Proxy.java | |
parent | fcc29fa66ffd1ce2880c6896730f8cc3fff37a9f (diff) | |
download | GT5-Unofficial-76c7090220f83008b157eb4ae9e1541c9ac6c1ee.tar.gz GT5-Unofficial-76c7090220f83008b157eb4ae9e1541c9ac6c1ee.tar.bz2 GT5-Unofficial-76c7090220f83008b157eb4ae9e1541c9ac6c1ee.zip |
CLS support
OpenGL is a bit of a pita, wants only to be used in main thread. The easiest solution was to trigger CLS screen updates from GT. It is a soft dependency, if CLS isn't present, nothing breaks. Second pr because cloned fresh repo or else it attributed not my changes to me
Diffstat (limited to 'src/main/java/gregtech/common/GT_Proxy.java')
-rw-r--r-- | src/main/java/gregtech/common/GT_Proxy.java | 62 |
1 files changed, 58 insertions, 4 deletions
diff --git a/src/main/java/gregtech/common/GT_Proxy.java b/src/main/java/gregtech/common/GT_Proxy.java index 3b668d805d..09399daceb 100644 --- a/src/main/java/gregtech/common/GT_Proxy.java +++ b/src/main/java/gregtech/common/GT_Proxy.java @@ -1933,19 +1933,73 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler { ProgressManager.ProgressBar progressBar = ProgressManager.push("Register materials", mEvents.size()); int sizeStep = mEvents.size()/20-1; int size = 5; + //CLS + boolean hasSetNice = false; + if (Loader.isModLoaded("betterloadingscreen")) { + try { + alexiil.mods.load.MinecraftDisplayer.isRegisteringGTmaterials = true; + } catch (Throwable e) { + e.printStackTrace(); + } + sizeStep = mEvents.size()/100-1; + size = 0; + hasSetNice = false; + } + //end CLS OreDictEventContainer tEvent; for (Iterator i$ = this.mEvents.iterator(); i$.hasNext(); registerRecipes(tEvent)) { tEvent = (OreDictEventContainer) i$.next(); sizeStep--; - progressBar.step(tEvent.mMaterial == null ? "" : tEvent.mMaterial.toString()); - if( sizeStep == 0 ) - { - GT_FML_LOGGER.info("Baking : " + size + "%", new Object[0]); + //CLS + if (Loader.isModLoaded("betterloadingscreen")) { + if (!(tEvent.mMaterial == null)) { + try { + alexiil.mods.load.ProgressDisplayer.displayProgress(tEvent.mMaterial.toString(), ((float)size)/100); + } catch (Throwable e) { + e.printStackTrace(); + } + if (size == 70 && !hasSetNice) { + hasSetNice = true; + try { + alexiil.mods.load.MinecraftDisplayer.isNice = true; + } catch (Throwable e) { + e.printStackTrace(); + } + GT_FML_LOGGER.info("nice"); + } else if (size != 70) { + try{ + alexiil.mods.load.MinecraftDisplayer.isNice = false; + } catch (Throwable e) { + e.printStackTrace(); + } + } + } + } + //end CLS + if( sizeStep == 0 ) { + GT_FML_LOGGER.info("Baking : " + size + "%", new Object[0]); + //CLS + if (Loader.isModLoaded("betterloadingscreen")) { + sizeStep = mEvents.size()/100-1; + size++; + } else { + //end CLS sizeStep = mEvents.size()/20-1; size += 5; } + } + progressBar.step(tEvent.mMaterial == null ? "" : tEvent.mMaterial.toString()); } ProgressManager.pop(progressBar); + //CLS + if (Loader.isModLoaded("betterloadingscreen")) { + try { + alexiil.mods.load.MinecraftDisplayer.isRegisteringGTmaterials = false; + } catch (Throwable e) { + e.printStackTrace(); + } + } + //end CLS } public static final HashMap<Integer,HashMap<ChunkCoordIntPair,int []>> dimensionWiseChunkData = new HashMap<>(16);//stores chunk data that is loaded/saved |