Skip to content

Commit 0d5ef9b

Browse files
committed
Merge branch 'gtnhlib-mutual-compat'
2 parents 230d0f7 + 2307585 commit 0d5ef9b

8 files changed

Lines changed: 20 additions & 38 deletions

File tree

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ dependencies {
7575

7676
compileOnly(deobf("optifine:optifine:1.7.10_hd_u_e7"))
7777

78-
compileOnly("com.github.GTNewHorizons:GTNHLib:0.5.19:dev")
78+
compileOnly("com.github.GTNewHorizons:GTNHLib:0.5.20:api")
7979

8080
implementation("org.joml:joml:1.10.5")
8181
implementation("it.unimi.dsi:fastutil:8.5.13")

src/main/java/com/falsepattern/falsetweaks/FalseTweaks.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,8 @@
4242
guiFactory = Tags.ROOT_PKG + ".config.FalseTweaksGuiFactory",
4343
acceptableRemoteVersions = "*",
4444
dependencies = "required-after:falsepatternlib@[1.4.2,);" +
45-
"after:neodymium@[0.3.2,);"
45+
"after:neodymium@[0.3.2,);" +
46+
"after:gtnhlib@[0.5.20,);"
4647
)
4748
public class FalseTweaks {
4849

src/main/java/com/falsepattern/falsetweaks/asm/CoreLoadingPlugin.java

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -77,15 +77,6 @@ private static void pleaseDontBreakMyThreadedRendering() {
7777

7878
@Override
7979
public String[] getASMTransformerClass() {
80-
if (ModuleConfig.THREADED_CHUNK_UPDATES()) {
81-
try {
82-
val f = LaunchClassLoader.class.getDeclaredField("transformerExceptions");
83-
f.setAccessible(true);
84-
@SuppressWarnings("unchecked") val s = (Set<String>) f.get(Launch.classLoader);
85-
s.remove("com.gtnewhorizon.gtnhlib.client.renderer.TessellatorManager");
86-
} catch (Throwable ignored) {
87-
}
88-
}
8980
return new String[]{Tags.ROOT_PKG + ".asm.FalseTweaksTransformer"};
9081
}
9182

src/main/java/com/falsepattern/falsetweaks/mixin/mixins/client/threadedupdates/gtnhlib/TessellatorManagerMixin.java

Lines changed: 0 additions & 19 deletions
This file was deleted.

src/main/java/com/falsepattern/falsetweaks/mixin/plugin/standard/Mixin.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -236,12 +236,6 @@ public enum Mixin implements IMixin {
236236
ThreadedUpdates_Automagy_RenderBlockGlowOverlayMixin(Side.CLIENT,
237237
THREADING.and(require(TargetedMod.AUTOMAGY)),
238238
"threadedupdates.automagy.RenderBlockGlowOverlayMixin"),
239-
240-
// GTNHLib
241-
ThreadedUpdates_GTNHLib_TessellatorManagerMixin(Side.CLIENT,
242-
THREADING.and(require(TargetedMod.GTNHLIB)),
243-
"threadedupdates.gtnhlib.TessellatorManagerMixin"),
244-
245239
//endregion Threaded Chunk Updates
246240

247241
//region Texture Optimizations Module

src/main/java/com/falsepattern/falsetweaks/mixin/plugin/standard/TargetedMod.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ public enum TargetedMod implements ITargetedMod {
5454
COMPUTRONICS("Computronics", false, contains("Computronics-")),
5555
EXTRA_CELLS("Extra Cells 2", false, contains("ExtraCells-")),
5656
AUTOMAGY("Automagy", false, contains("Automagy-")),
57-
GTNHLIB("GTNHLib", false, contains("gtnhlib-"))
5857
;
5958

6059
public static Predicate<List<ITargetedMod>> REQUIRE_OPTIFINE_WITHOUT_SHADERS = require(OPTIFINE_WITHOUT_SHADERS).or(require(OPTIFINE_WITH_DYNAMIC_LIGHTS));

src/main/java/com/falsepattern/falsetweaks/modules/threadedupdates/ThreadedChunkUpdateHelper.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import com.falsepattern.falsetweaks.modules.threadexec.ThreadedTask;
3434
import com.falsepattern.falsetweaks.modules.triangulator.ToggleableTessellatorManager;
3535
import com.google.common.base.Preconditions;
36+
import com.gtnewhorizon.gtnhlib.api.CapturingTesselator;
3637
import com.llamalad7.mixinextras.injector.wrapoperation.Operation;
3738
import cpw.mods.fml.client.event.ConfigChangedEvent;
3839
import cpw.mods.fml.common.FMLCommonHandler;
@@ -516,6 +517,16 @@ public Tessellator getThreadTessellator() {
516517
}
517518
}
518519

520+
public static class GTNHLibCompat extends ThreadedChunkUpdateHelper {
521+
@Override
522+
public Tessellator getThreadTessellator() {
523+
if (CapturingTesselator.isCapturing()) {
524+
return CapturingTesselator.getThreadTesselator();
525+
}
526+
return super.getThreadTessellator();
527+
}
528+
}
529+
519530
@RequiredArgsConstructor
520531
private static class PendingTaskUpdate {
521532
public final List<WorldRenderer> tasks;

src/main/java/com/falsepattern/falsetweaks/proxy/ClientProxy.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
import com.falsepattern.falsetweaks.modules.triangulator.calibration.Calibration;
4040
import com.falsepattern.falsetweaks.modules.voxelizer.loading.LayerMetadataSection;
4141
import com.falsepattern.falsetweaks.modules.voxelizer.loading.LayerMetadataSerializer;
42+
import cpw.mods.fml.common.Loader;
4243
import lombok.val;
4344

4445
import net.minecraft.client.Minecraft;
@@ -104,7 +105,11 @@ public String call() {
104105
public void init(FMLInitializationEvent e) {
105106
super.init(e);
106107
if (ModuleConfig.THREADED_CHUNK_UPDATES()) {
107-
ThreadedChunkUpdateHelper.instance = new ThreadedChunkUpdateHelper();
108+
if (Loader.isModLoaded("gtnhlib")) {
109+
ThreadedChunkUpdateHelper.instance = new ThreadedChunkUpdateHelper.GTNHLibCompat();
110+
} else {
111+
ThreadedChunkUpdateHelper.instance = new ThreadedChunkUpdateHelper();
112+
}
108113
ThreadedChunkUpdateHelper.instance.init();
109114
}
110115
}

0 commit comments

Comments
 (0)