forked from Clones/Controlify
Update immediately fast compat and disable compat modules if they fail
This commit is contained in:
@ -17,7 +17,7 @@ hid4java = "0.7.0"
|
||||
quilt_json5 = "1.0.3"
|
||||
sodium = "mc1.20.1-0.5.0"
|
||||
iris = "1.6.5+1.20.1"
|
||||
immediately_fast = "1.1.25+1.20.1"
|
||||
immediately_fast = "1.2.0+1.20.1"
|
||||
simple_voice_chat = "fabric-1.20.1-2.4.18"
|
||||
sdl2_jni = "2.28.2-26"
|
||||
|
||||
|
@ -6,11 +6,14 @@ import dev.isxander.controlify.utils.Log;
|
||||
import net.fabricmc.loader.api.FabricLoader;
|
||||
import net.minecraft.Util;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
import java.util.function.Function;
|
||||
|
||||
public class ControlifyCompat {
|
||||
private static final Function<String, Boolean> modsLoaded = Util.memoize(modid ->
|
||||
FabricLoader.getInstance().isModLoaded(modid));
|
||||
private static final Set<String> disabledMods = new HashSet<>();
|
||||
|
||||
public static final String IMMEDIATELY_FAST = "immediatelyfast";
|
||||
public static final String SIMPLE_VOICE_CHAT = "voicechat";
|
||||
@ -28,11 +31,11 @@ public class ControlifyCompat {
|
||||
}
|
||||
|
||||
private static void wrapCompatCall(String modid, Runnable runnable) {
|
||||
if (modsLoaded.apply(modid)) {
|
||||
if (modsLoaded.apply(modid) && !disabledMods.contains(modid)) {
|
||||
try {
|
||||
runnable.run();
|
||||
} catch (Throwable t) {
|
||||
Log.LOGGER.error("Failed to run compatibility code for %s, potentially unsupported version?".formatted(modid), t);
|
||||
Log.LOGGER.error("Failed to run compatibility code for {}, potentially unsupported version? Disabling '{}' compat for this instance.", modid, modid, t);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,13 +1,13 @@
|
||||
package dev.isxander.controlify.compatibility.immediatelyfast;
|
||||
|
||||
import net.raphimc.immediatelyfast.feature.batching.BatchingBuffers;
|
||||
import net.raphimc.immediatelyfastapi.ImmediatelyFastApi;
|
||||
|
||||
public class ImmediatelyFastCompat {
|
||||
public static void beginHudBatching() {
|
||||
BatchingBuffers.beginHudBatching();
|
||||
ImmediatelyFastApi.getApiImpl().getBatching().beginHudBatching();
|
||||
}
|
||||
|
||||
public static void endHudBatching() {
|
||||
BatchingBuffers.endHudBatching();
|
||||
ImmediatelyFastApi.getApiImpl().getBatching().endHudBatching();
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user