aboutsummaryrefslogtreecommitdiff
path: root/src
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
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')
-rw-r--r--src/Java/gtPlusPlus/GTplusplus.java2
-rw-r--r--src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_Transformer_Handler.java44
-rw-r--r--src/Java/gtPlusPlus/xmod/ob/SprinklerHandler.java25
3 files changed, 54 insertions, 17 deletions
diff --git a/src/Java/gtPlusPlus/GTplusplus.java b/src/Java/gtPlusPlus/GTplusplus.java
index e1b1a37c7c..9b8cbceea6 100644
--- a/src/Java/gtPlusPlus/GTplusplus.java
+++ b/src/Java/gtPlusPlus/GTplusplus.java
@@ -45,6 +45,7 @@ import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtTools;
import gtPlusPlus.xmod.gregtech.loaders.GT_Material_Loader;
import gtPlusPlus.xmod.gregtech.loaders.RecipeGen_BlastSmelterGT_GTNH;
import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechMiniRaFusion;
+import gtPlusPlus.xmod.ob.SprinklerHandler;
import gtPlusPlus.xmod.thaumcraft.commands.CommandDumpAspects;
import net.minecraft.launchwrapper.Launch;
import net.minecraft.util.IIcon;
@@ -156,6 +157,7 @@ public class GTplusplus implements ActionListener {
proxy.postInit(event);
BookHandler.runLater();
Core_Manager.postInit();
+ SprinklerHandler.registerModFerts();
Logger.INFO("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
Logger.INFO("| Recipes succesfully Loaded: " + RegistrationHandler.recipesSuccess + " | Failed: "
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;
+ }
}
diff --git a/src/Java/gtPlusPlus/xmod/ob/SprinklerHandler.java b/src/Java/gtPlusPlus/xmod/ob/SprinklerHandler.java
index 8981a828e4..b6b9428005 100644
--- a/src/Java/gtPlusPlus/xmod/ob/SprinklerHandler.java
+++ b/src/Java/gtPlusPlus/xmod/ob/SprinklerHandler.java
@@ -4,9 +4,9 @@ import java.util.HashMap;
import com.google.common.base.Objects;
+import gtPlusPlus.core.lib.LoadedMods;
+import gtPlusPlus.core.util.minecraft.ItemUtils;
import net.minecraft.item.ItemStack;
-import openmods.inventory.GenericInventory;
-import openmods.inventory.TileEntityInventory;
/**
* Wrapper Class to assist in handling the OB Sprinkler.
@@ -35,4 +35,25 @@ public class SprinklerHandler {
}
}
+ public static void registerModFerts() {
+ ItemStack f;
+ if (LoadedMods.Forestry) {
+ f = ItemUtils.getCorrectStacktype("Forestry:fertilizerBio", 1);
+ if (f != null) {
+ registerSprinklerFertilizer(f);
+ }
+ f = ItemUtils.getCorrectStacktype("Forestry:fertilizerCompound", 1);
+ if (f != null) {
+ registerSprinklerFertilizer(f);
+ }
+ }
+ if (LoadedMods.IndustrialCraft2) {
+ f = ItemUtils.getCorrectStacktype("IC2:itemFertilizer", 1);
+ if (f != null) {
+ registerSprinklerFertilizer(f);
+ }
+
+ }
+ }
+
}