From 68af9d08a6acebf79c1d338629ac27f914b9f810 Mon Sep 17 00:00:00 2001 From: bartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com> Date: Tue, 16 Apr 2019 13:55:36 +0200 Subject: fixes https://github.com/bartimaeusnek/bartworks/issues/27 (#28) Signed-off-by: bartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com> Former-commit-id: 92cbb7880fcee5920d5180b02ab99866131dba21 --- .../bartimaeusnek/ASM/BWCoreTransformer.java | 23 +++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/bartimaeusnek/ASM/BWCoreTransformer.java b/src/main/java/com/github/bartimaeusnek/ASM/BWCoreTransformer.java index e56fd65c51..c40faa0c98 100644 --- a/src/main/java/com/github/bartimaeusnek/ASM/BWCoreTransformer.java +++ b/src/main/java/com/github/bartimaeusnek/ASM/BWCoreTransformer.java @@ -23,7 +23,6 @@ package com.github.bartimaeusnek.ASM; import net.minecraft.launchwrapper.IClassTransformer; -import org.apache.commons.lang3.ArrayUtils; import org.objectweb.asm.ClassReader; import org.objectweb.asm.ClassWriter; import org.objectweb.asm.tree.*; @@ -42,11 +41,29 @@ public class BWCoreTransformer implements IClassTransformer { public static final String[] CLASSESBEEINGTRANSFORMED = { "com.rwtema.extrautils.worldgen.endoftime.WorldProviderEndOfTime", "com.rwtema.extrautils.worldgen.endoftime.ChunkProviderEndOfTime", - //"micdoodle8.mods.galacticraft.core.client.SkyProviderOverworld", "net.minecraft.client.renderer.RenderGlobal", }; public static boolean obfs = false; - public static boolean[] shouldTransform = ArrayUtils.toPrimitive(new Boolean[BWCoreTransformer.CLASSESBEEINGTRANSFORMED.length], true); + + public static boolean[] shouldTransform = new boolean[CLASSESBEEINGTRANSFORMED.length]; + + static { + //hacky way to detect if the mods are loaded + try{ + Class.forName("com.rwtema.extrautils.worldgen.endoftime.WorldProviderEndOfTime"); + shouldTransform[0] = true; + shouldTransform[1] = true; + }catch (ClassNotFoundException e){ + shouldTransform[0] = false; + shouldTransform[1] = false; + } + try{ + Class.forName("micdoodle8.mods.galacticraft.core.client.SkyProviderOverworld"); + shouldTransform[2] = true; + }catch (ClassNotFoundException e){ + shouldTransform[2] = false; + } + } public static byte[] transform(int id, byte[] basicClass) { if (!BWCoreTransformer.shouldTransform[id]) { -- cgit