aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/preloader/asm/transformers
diff options
context:
space:
mode:
authorAlkalus <3060479+draknyte1@users.noreply.github.com>2018-09-15 04:13:53 +1000
committerAlkalus <3060479+draknyte1@users.noreply.github.com>2018-09-15 04:13:53 +1000
commit574e4b81f86a2929f04e685404d9b2fb9d82759b (patch)
treea7ab7fb8914e8432ff7650d58d5c7bccd080131c /src/Java/gtPlusPlus/preloader/asm/transformers
parent4fc2ffe7fb21a67f5827e0250ce1dd4f50155579 (diff)
downloadGT5-Unofficial-574e4b81f86a2929f04e685404d9b2fb9d82759b.tar.gz
GT5-Unofficial-574e4b81f86a2929f04e685404d9b2fb9d82759b.tar.bz2
GT5-Unofficial-574e4b81f86a2929f04e685404d9b2fb9d82759b.zip
+ Added IC2/Forestry Ferts to OB Sprinkler.
% Fixed Sprinkler handler to be more robust. $ Fixed issue with ASM Handler.
Diffstat (limited to 'src/Java/gtPlusPlus/preloader/asm/transformers')
-rw-r--r--src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_Transformer_Handler.java44
1 files changed, 29 insertions, 15 deletions
diff --git a/src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_Transformer_Handler.java b/src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_Transformer_Handler.java
index 1d2674f8c1..485599cef6 100644
--- a/src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_Transformer_Handler.java
+++ b/src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_Transformer_Handler.java
@@ -11,6 +11,7 @@ import cpw.mods.fml.relauncher.FMLRelaunchLog;
import cpw.mods.fml.relauncher.ReflectionHelper;
import net.minecraft.launchwrapper.IClassTransformer;
import net.minecraft.launchwrapper.Launch;
+import gtPlusPlus.core.util.reflect.ReflectionUtils;
import gtPlusPlus.preloader.asm.transformers.Preloader_ClassTransformer.OreDictionaryVisitor;
import gtPlusPlus.preloader.asm.transformers.Preloader_ClassTransformer2.GT_MetaTile_Visitor;
@@ -50,26 +51,30 @@ public class Preloader_Transformer_Handler implements IClassTransformer {
}
// Fix Tinkers Fluids
- if (transformedName.equals("tconstruct.smeltery.blocks.TConstructFluid")) {
- FMLRelaunchLog.log("[GT++ ASM] Bright Fluids", Level.INFO, "Transforming %s", transformedName);
- return new ClassTransformer_TiConFluids("getLightValue", obfuscated, basicClass).getWriter().toByteArray();
- }
+ if (doesPackageExist("tconstruct.smeltery"))
+ if (transformedName.equals("tconstruct.smeltery.blocks.TConstructFluid")) {
+ FMLRelaunchLog.log("[GT++ ASM] Bright Fluids", Level.INFO, "Transforming %s", transformedName);
+ return new ClassTransformer_TiConFluids("getLightValue", obfuscated, basicClass).getWriter().toByteArray();
+ }
//Fix GC stuff
- if (transformedName.equals("micdoodle8.mods.galacticraft.core.util.FluidUtil")) {
- FMLRelaunchLog.log("[GT++ ASM] Galacticraft FluidUtils Patch", Level.INFO, "Transforming %s", transformedName);
- return new ClassTransformer_GC_FluidUtil(basicClass).getWriter().toByteArray();
- }
- if (transformedName.equals("micdoodle8.mods.galacticraft.core.tile.TileEntityFuelLoader")) {
- FMLRelaunchLog.log("[GT++ ASM] Galacticraft Fuel_Loader Patch", Level.INFO, "Transforming %s", transformedName);
- return new ClassTransformer_GC_FuelLoader(basicClass).getWriter().toByteArray();
+ if (doesPackageExist("micdoodle8.mods.galacticraft")) {
+ if (transformedName.equals("micdoodle8.mods.galacticraft.core.util.FluidUtil")) {
+ FMLRelaunchLog.log("[GT++ ASM] Galacticraft FluidUtils Patch", Level.INFO, "Transforming %s", transformedName);
+ return new ClassTransformer_GC_FluidUtil(basicClass).getWriter().toByteArray();
+ }
+ if (transformedName.equals("micdoodle8.mods.galacticraft.core.tile.TileEntityFuelLoader")) {
+ FMLRelaunchLog.log("[GT++ ASM] Galacticraft Fuel_Loader Patch", Level.INFO, "Transforming %s", transformedName);
+ return new ClassTransformer_GC_FuelLoader(basicClass).getWriter().toByteArray();
+ }
}
//Improve OB Sprinklers
- if (transformedName.equals("openblocks.common.tileentity.TileEntitySprinkler")) {
- FMLRelaunchLog.log("[GT++ ASM] OpenBlocks Sprinkler Patch", Level.INFO, "Transforming %s", transformedName);
- return new ClassTransformer_OB_Sprinkler(obfuscated, basicClass).getWriter().toByteArray();
- }
+ if (doesPackageExist("openblocks.common"))
+ if (transformedName.equals("openblocks.common.tileentity.TileEntitySprinkler")) {
+ FMLRelaunchLog.log("[GT++ ASM] OpenBlocks Sprinkler Patch", Level.INFO, "Transforming %s", transformedName);
+ return new ClassTransformer_OB_Sprinkler(obfuscated, basicClass).getWriter().toByteArray();
+ }
if (mEnabled) {
if (transformedName.equals("gregtech.api.metatileentity.BaseMetaTileEntity")) {
@@ -89,5 +94,14 @@ public class Preloader_Transformer_Handler implements IClassTransformer {
}
return basicClass;
}
+
+ public static boolean doesPackageExist(final String packageName) {
+ boolean exists = false;
+ Package f = Package.getPackage(packageName);
+ if (f != null) {
+ exists = true;
+ }
+ return exists;
+ }
}