aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build.gradle8
-rw-r--r--dependencies.gradle5
-rw-r--r--gradle/wrapper/gradle-wrapper.jarbin61574 -> 61608 bytes
-rw-r--r--gradle/wrapper/gradle-wrapper.properties2
-rwxr-xr-xgradlew4
-rw-r--r--src/main/java/kubatech/ClientProxy.java9
-rw-r--r--src/main/java/kubatech/CommonProxy.java5
-rw-r--r--src/main/java/kubatech/api/LoaderReference.java3
-rw-r--r--src/main/java/kubatech/api/helpers/ProgressBarWrapper.java55
-rw-r--r--src/main/java/kubatech/kubatech.java5
-rw-r--r--src/main/java/kubatech/loaders/MobRecipeLoader.java25
-rw-r--r--src/main/java/kubatech/loaders/RecipeLoader.java1
12 files changed, 93 insertions, 29 deletions
diff --git a/build.gradle b/build.gradle
index 927ed20fdb..7b1f6c4507 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,4 +1,4 @@
-//version: 1678003329
+//version: 1679040806
/*
DO NOT CHANGE THIS FILE!
Also, you may replace this file at any time if there is an update available.
@@ -695,13 +695,13 @@ ext.java17PatchDependenciesCfg = configurations.create("java17PatchDependencies"
}
dependencies {
- def lwjgl3ifyVersion = '1.1.35'
+ def lwjgl3ifyVersion = '1.2.2'
def asmVersion = '9.4'
if (modId != 'lwjgl3ify') {
java17Dependencies("com.github.GTNewHorizons:lwjgl3ify:${lwjgl3ifyVersion}")
}
if (modId != 'hodgepodge') {
- java17Dependencies('com.github.GTNewHorizons:Hodgepodge:2.0.40')
+ java17Dependencies('com.github.GTNewHorizons:Hodgepodge:2.1.0')
}
java17PatchDependencies('net.minecraft:launchwrapper:1.15') {transitive = false}
@@ -1204,7 +1204,7 @@ def addCurseForgeRelation(String type, String name) {
// Updating
-def buildscriptGradleVersion = "8.0.1"
+def buildscriptGradleVersion = "8.0.2"
tasks.named('wrapper', Wrapper).configure {
gradleVersion = buildscriptGradleVersion
diff --git a/dependencies.gradle b/dependencies.gradle
index d553177825..30db070943 100644
--- a/dependencies.gradle
+++ b/dependencies.gradle
@@ -34,6 +34,10 @@ dependencies {
{
transitive = false
}
+ compileOnly("com.github.GTNewHorizons:BetterLoadingScreen:1.3.39-GTNH:dev")
+ {
+ transitive = false
+ }
runtimeOnly("com.github.GTNewHorizons:Baubles:1.0.1.14:dev")
runtimeOnly("curse.maven:cofh-core-69162:2388751")
/*
@@ -44,6 +48,7 @@ dependencies {
*/
// For testing
+ //runtimeOnly("com.github.GTNewHorizons:BetterLoadingScreen:1.3.39-GTNH:dev")
//runtimeOnly("com.github.GTNewHorizons:GTplusplus:1.7.134:dev")
//runtimeOnly("com.github.GTNewHorizons:harvestcraft:1.0.18-GTNH:dev")
//runtimeOnly("com.github.GTNewHorizons:NewHorizonsCoreMod:1.9.103:dev")
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index 943f0cbfa7..ccebba7710 100644
--- a/gradle/wrapper/gradle-wrapper.jar
+++ b/gradle/wrapper/gradle-wrapper.jar
Binary files differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index fc10b601f7..bdc9a83b1e 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-bin.zip
networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/gradlew b/gradlew
index 65dcd68d65..79a61d421c 100755
--- a/gradlew
+++ b/gradlew
@@ -144,7 +144,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
case $MAX_FD in #(
max*)
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
- # shellcheck disable=SC3045
+ # shellcheck disable=SC3045
MAX_FD=$( ulimit -H -n ) ||
warn "Could not query maximum file descriptor limit"
esac
@@ -152,7 +152,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
'' | soft) :;; #(
*)
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
- # shellcheck disable=SC3045
+ # shellcheck disable=SC3045
ulimit -n "$MAX_FD" ||
warn "Could not set maximum file descriptor limit to $MAX_FD"
esac
diff --git a/src/main/java/kubatech/ClientProxy.java b/src/main/java/kubatech/ClientProxy.java
index 618518a016..f14ce56e74 100644
--- a/src/main/java/kubatech/ClientProxy.java
+++ b/src/main/java/kubatech/ClientProxy.java
@@ -11,11 +11,7 @@
package kubatech;
import kubatech.api.utils.ModUtils;
-import kubatech.loaders.MobRecipeLoader;
import kubatech.nei.IMCForNEI;
-
-import net.minecraftforge.common.MinecraftForge;
-
import cpw.mods.fml.common.event.*;
@SuppressWarnings("unused")
@@ -29,7 +25,6 @@ public class ClientProxy extends CommonProxy {
public void init(FMLInitializationEvent event) {
super.init(event);
IMCForNEI.IMCSender();
- MinecraftForge.EVENT_BUS.register(MobRecipeLoader.instance);
}
public void postInit(FMLPostInitializationEvent event) {
@@ -55,4 +50,8 @@ public class ClientProxy extends CommonProxy {
public void serverStopped(FMLServerStoppedEvent event) {
super.serverStopped(event);
}
+
+ public void loadComplete(FMLLoadCompleteEvent event) {
+ super.loadComplete(event);
+ }
}
diff --git a/src/main/java/kubatech/CommonProxy.java b/src/main/java/kubatech/CommonProxy.java
index b2297b5105..db62bf7c97 100644
--- a/src/main/java/kubatech/CommonProxy.java
+++ b/src/main/java/kubatech/CommonProxy.java
@@ -17,6 +17,7 @@ import kubatech.api.LoaderReference;
import kubatech.commands.*;
import kubatech.config.Config;
import kubatech.loaders.MTLoader;
+import kubatech.loaders.MobRecipeLoader;
import kubatech.loaders.RecipeLoader;
import kubatech.loaders.TCLoader;
import kubatech.savedata.PlayerDataManager;
@@ -65,4 +66,8 @@ public class CommonProxy {
public void serverStopping(FMLServerStoppingEvent event) {}
public void serverStopped(FMLServerStoppedEvent event) {}
+
+ public void loadComplete(FMLLoadCompleteEvent event) {
+ MobRecipeLoader.generateMobRecipeMap();
+ }
}
diff --git a/src/main/java/kubatech/api/LoaderReference.java b/src/main/java/kubatech/api/LoaderReference.java
index 5d6545adae..192a7158a4 100644
--- a/src/main/java/kubatech/api/LoaderReference.java
+++ b/src/main/java/kubatech/api/LoaderReference.java
@@ -19,5 +19,6 @@ public class LoaderReference {
public static final boolean DraconicEvolution = Loader.isModLoaded("DraconicEvolution");
public static final boolean Avaritia = Loader.isModLoaded("Avaritia");
public static final boolean ProjRedIllumination = Loader.isModLoaded("ProjRed|Illumination");
- public static final boolean RandomThings = Loader.isModLoaded("RandomThings");
+ public static final boolean RandomThings = Loader.isModLoaded("RandomThings")
+ public static final boolean BetterLoadingScreen = Loader.isModLoaded("betterloadingscreen");
}
diff --git a/src/main/java/kubatech/api/helpers/ProgressBarWrapper.java b/src/main/java/kubatech/api/helpers/ProgressBarWrapper.java
new file mode 100644
index 0000000000..f1243c4d46
--- /dev/null
+++ b/src/main/java/kubatech/api/helpers/ProgressBarWrapper.java
@@ -0,0 +1,55 @@
+package kubatech.api.helpers;
+
+import static kubatech.api.utils.ModUtils.isClientSided;
+
+import java.io.IOException;
+
+import kubatech.Tags;
+import kubatech.api.LoaderReference;
+import alexiil.mods.load.ProgressDisplayer;
+import cpw.mods.fml.common.FMLCommonHandler;
+import cpw.mods.fml.common.ProgressManager;
+
+@SuppressWarnings("deprecation")
+public class ProgressBarWrapper {
+
+ ProgressManager.ProgressBar internalFMLBar;
+ boolean isFMLBar;
+ String name;
+ int maxSteps;
+ int steps = 0;
+
+ public ProgressBarWrapper(String name, int steps) {
+ if (!isClientSided) return;
+ maxSteps = steps;
+ this.name = name;
+ if (!LoaderReference.BetterLoadingScreen) {
+ internalFMLBar = ProgressManager.push(name, steps);
+ isFMLBar = true;
+ return;
+ }
+ isFMLBar = false;
+ }
+
+ public void step(String message) {
+ if (!isClientSided) return;
+ if (isFMLBar) internalFMLBar.step(message);
+ else {
+ steps++;
+ try {
+ ProgressDisplayer.displayProgress(
+ Tags.MODNAME + ": " + name + " -> " + message,
+ (float) steps / (float) maxSteps);
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ // Prevent game freeze
+ FMLCommonHandler.instance().processWindowMessages();
+ }
+ }
+
+ public void end() {
+ if (!isClientSided) return;
+ if (isFMLBar) ProgressManager.pop(internalFMLBar);
+ }
+}
diff --git a/src/main/java/kubatech/kubatech.java b/src/main/java/kubatech/kubatech.java
index a459116d83..b0868a3f30 100644
--- a/src/main/java/kubatech/kubatech.java
+++ b/src/main/java/kubatech/kubatech.java
@@ -135,6 +135,11 @@ public class kubatech {
proxy.serverStopped(event);
}
+ @Mod.EventHandler
+ public void loadComplete(FMLLoadCompleteEvent event) {
+ proxy.loadComplete(event);
+ }
+
public static void debug(String message) {
LOG.debug(message);
}
diff --git a/src/main/java/kubatech/loaders/MobRecipeLoader.java b/src/main/java/kubatech/loaders/MobRecipeLoader.java
index a63f3dad13..bfa94eb632 100644
--- a/src/main/java/kubatech/loaders/MobRecipeLoader.java
+++ b/src/main/java/kubatech/loaders/MobRecipeLoader.java
@@ -28,6 +28,7 @@ import kubatech.Tags;
import kubatech.api.LoaderReference;
import kubatech.api.helpers.EnderIOHelper;
import kubatech.api.helpers.InfernalHelper;
+import kubatech.api.helpers.ProgressBarWrapper;
import kubatech.api.mobhandler.MobDrop;
import kubatech.api.network.LoadConfigPacket;
import kubatech.api.utils.GSONUtils;
@@ -59,8 +60,6 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
-import net.minecraftforge.client.event.GuiOpenEvent;
-import net.minecraftforge.common.MinecraftForge;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -74,7 +73,6 @@ import atomicstryker.infernalmobs.common.mods.api.ModifierLoader;
import com.google.common.io.Files;
import com.google.gson.Gson;
-import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import gregtech.api.util.GT_Utility;
@@ -84,15 +82,6 @@ public class MobRecipeLoader {
private static final Logger LOG = LogManager.getLogger(Tags.MODID + "[Mob Recipe Loader]");
- public static final MobRecipeLoader instance = new MobRecipeLoader();
-
- @SuppressWarnings("unused")
- @SubscribeEvent
- public void onOpenGui(GuiOpenEvent event) {
- MobRecipeLoader.generateMobRecipeMap();
- MinecraftForge.EVENT_BUS.unregister(instance);
- }
-
private static final String dropFewItemsName = isDeobfuscatedEnvironment ? "dropFewItems" : "func_70628_a";
private static final String dropRareDropName = isDeobfuscatedEnvironment ? "dropRareDrop" : "func_70600_l";
private static final String setSlimeSizeName = isDeobfuscatedEnvironment ? "setSlimeSize" : "func_70799_a";
@@ -620,7 +609,9 @@ public class MobRecipeLoader {
MobRecipeLoaderCacheStructure s = gson.fromJson(reader, MobRecipeLoaderCacheStructure.class);
if (Config.MobHandler.regenerationTrigger == Config.MobHandler._CacheRegenerationTrigger.Never
|| s.version.equals(modlistversion)) {
+ ProgressBarWrapper bar = new ProgressBarWrapper("Parsing cached Mob Recipe Map", s.moblist.size());
for (Map.Entry<String, ArrayList<MobDrop>> entry : s.moblist.entrySet()) {
+ bar.step(entry.getKey());
try {
EntityLiving e;
String mobName = entry.getKey();
@@ -637,6 +628,7 @@ public class MobRecipeLoader {
new GeneralMappedMob(e, MobRecipe.generateMobRecipe(e, mobName, drops), drops));
} catch (Exception ignored) {}
}
+ bar.end();
LOG.info("Parsed cached map, skipping generation");
return;
} else {
@@ -691,8 +683,9 @@ public class MobRecipeLoader {
Map<String, Class<? extends Entity>> stringToClassMapping = (Map<String, Class<? extends Entity>>) EntityList.stringToClassMapping;
boolean registeringWitherSkeleton = !stringToClassMapping.containsKey("witherSkeleton");
if (registeringWitherSkeleton) stringToClassMapping.put("witherSkeleton", EntitySkeleton.class);
-
+ ProgressBarWrapper bar = new ProgressBarWrapper("Generating Mob Recipe Map", stringToClassMapping.size());
stringToClassMapping.forEach((k, v) -> {
+ bar.step(k);
if (v == null) return;
if (Modifier.isAbstract(v.getModifiers())) {
@@ -727,10 +720,10 @@ public class MobRecipeLoader {
return;
}
- e.captureDrops = true;
-
// POWERFULL GENERATION
+ e.captureDrops = true;
+
if (e instanceof EntitySlime) try {
setSlimeSize.invoke(e, 1);
} catch (Exception ex) {
@@ -1101,6 +1094,8 @@ public class MobRecipeLoader {
LOG.info("Recipe map generated ! It took " + time + "ms");
+ bar.end();
+
isInGenerationProcess = false;
LOG.info("Saving generated map to file");
diff --git a/src/main/java/kubatech/loaders/RecipeLoader.java b/src/main/java/kubatech/loaders/RecipeLoader.java
index cf8c0e0163..9437b965a3 100644
--- a/src/main/java/kubatech/loaders/RecipeLoader.java
+++ b/src/main/java/kubatech/loaders/RecipeLoader.java
@@ -161,7 +161,6 @@ public class RecipeLoader {
if (lateRecipesInitialized) return;
lateRecipesInitialized = true;
- MobRecipeLoader.generateMobRecipeMap();
MobRecipeLoader.processMobRecipeMap();
}