aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/preloader
diff options
context:
space:
mode:
authorAlkalus <3060479+draknyte1@users.noreply.github.com>2019-03-04 23:03:46 +0000
committerAlkalus <3060479+draknyte1@users.noreply.github.com>2019-03-04 23:03:46 +0000
commit0e8070f3eb5149c7223049f93b4df86adb63ea57 (patch)
treeb09614abbc567e338dd6ee5f423d3da5436ae961 /src/Java/gtPlusPlus/preloader
parenta3ad39894856101326b5e6a9273d33a1ccaeb921 (diff)
downloadGT5-Unofficial-0e8070f3eb5149c7223049f93b4df86adb63ea57.tar.gz
GT5-Unofficial-0e8070f3eb5149c7223049f93b4df86adb63ea57.tar.bz2
GT5-Unofficial-0e8070f3eb5149c7223049f93b4df86adb63ea57.zip
- Removing some logging.
$ Fixed Bed Height > 128 not working as intended. $ Fixed IC2 ASM for wrench harvesting. $ Fixed TC4 ASM. $ Fixed Invalid Giant Chicken Texture handling.
Diffstat (limited to 'src/Java/gtPlusPlus/preloader')
-rw-r--r--src/Java/gtPlusPlus/preloader/asm/transformers/ClassTransformer_IC2_GetHarvestTool.java40
-rw-r--r--src/Java/gtPlusPlus/preloader/asm/transformers/ClassTransformer_TC_ItemWispEssence.java2
-rw-r--r--src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_Transformer_Handler.java6
3 files changed, 30 insertions, 18 deletions
diff --git a/src/Java/gtPlusPlus/preloader/asm/transformers/ClassTransformer_IC2_GetHarvestTool.java b/src/Java/gtPlusPlus/preloader/asm/transformers/ClassTransformer_IC2_GetHarvestTool.java
index 1e67619337..7c3d376de8 100644
--- a/src/Java/gtPlusPlus/preloader/asm/transformers/ClassTransformer_IC2_GetHarvestTool.java
+++ b/src/Java/gtPlusPlus/preloader/asm/transformers/ClassTransformer_IC2_GetHarvestTool.java
@@ -22,6 +22,9 @@ public class ClassTransformer_IC2_GetHarvestTool {
private final ClassWriter writer;
private final String className;
+ private final String aName_getItemDropped;
+ private final String aName_damageDropped;
+
public static String getHarvestTool(int aMeta) {
return "wrench";
}
@@ -37,7 +40,10 @@ public class ClassTransformer_IC2_GetHarvestTool {
public ClassTransformer_IC2_GetHarvestTool(byte[] basicClass, boolean obfuscated, String aClassName) {
className = aClassName;
ClassReader aTempReader = null;
- ClassWriter aTempWriter = null;
+ ClassWriter aTempWriter = null;
+
+ aName_getItemDropped = obfuscated ? "func_149650_a" : "getItemDropped";
+ aName_damageDropped = obfuscated ? "func_149692_a" : "damageDropped";
FMLRelaunchLog.log("[GT++ ASM] IC2 getHarvestTool Patch", Level.INFO,
"Attempting to patch in mode " + className + ".");
@@ -51,6 +57,7 @@ public class ClassTransformer_IC2_GetHarvestTool {
} else {
isValid = false;
}
+
FMLRelaunchLog.log("[GT++ ASM] IC2 getHarvestTool Patch", Level.INFO, "Valid patch? " + isValid + ".");
reader = aTempReader;
writer = aTempWriter;
@@ -58,15 +65,15 @@ public class ClassTransformer_IC2_GetHarvestTool {
if (reader != null && writer != null) {
FMLRelaunchLog.log("[GT++ ASM] IC2 getHarvestTool Patch", Level.INFO, "Attempting Method Injection.");
injectMethod("getHarvestTool");
-
if (aClassName.equals("ic2.core.block.machine.BlockMachine2")
- || aClassName.equals("ic2.core.block.machine.BlockMachine3")) {
- injectMethod("getItemDropped");
- injectMethod("damageDropped");
+ || aClassName.equals("ic2.core.block.machine.BlockMachine3")
+ || aClassName.equals("ic2.core.block.wiring.BlockElectric")) {
+ injectMethod(aName_getItemDropped);
+ injectMethod(aName_damageDropped);
}
else if (aClassName.equals("ic2.core.block.generator.block.BlockGenerator")
|| aClassName.equals("ic2.core.block.machine.BlockMachine")) {
- injectMethod("damageDropped");
+ injectMethod(aName_damageDropped);
}
}
@@ -111,8 +118,8 @@ public class ClassTransformer_IC2_GetHarvestTool {
mv.visitEnd();
didInject = true;
}
- else if (aMethodName.equals("getItemDropped")) {
- mv = cw.visitMethod(ACC_PUBLIC, "getItemDropped", "(ILjava/util/Random;I)Lnet/minecraft/item/Item;", null, null);
+ else if (aMethodName.equals(aName_getItemDropped)) {
+ mv = cw.visitMethod(ACC_PUBLIC, aName_getItemDropped, "(ILjava/util/Random;I)Lnet/minecraft/item/Item;", null, null);
mv.visitCode();
Label l0 = new Label();
mv.visitLabel(l0);
@@ -121,7 +128,7 @@ public class ClassTransformer_IC2_GetHarvestTool {
mv.visitVarInsn(ILOAD, 1);
mv.visitVarInsn(ALOAD, 2);
mv.visitVarInsn(ILOAD, 3);
- mv.visitMethodInsn(INVOKESTATIC, "gtPlusPlus/preloader/asm/transformers/ClassTransformer_IC2_GetHarvestTool", "getItemDropped", "(Lnet/minecraft/block/Block;ILjava/util/Random;I)Lnet/minecraft/item/Item;", false);
+ mv.visitMethodInsn(INVOKESTATIC, "gtPlusPlus/preloader/asm/transformers/ClassTransformer_IC2_GetHarvestTool", aName_getItemDropped, "(Lnet/minecraft/block/Block;ILjava/util/Random;I)Lnet/minecraft/item/Item;", false);
mv.visitInsn(ARETURN);
Label l1 = new Label();
mv.visitLabel(l1);
@@ -133,14 +140,14 @@ public class ClassTransformer_IC2_GetHarvestTool {
mv.visitEnd();
didInject = true;
}
- else if (aMethodName.equals("damageDropped")) {
- mv = cw.visitMethod(ACC_PUBLIC, "damageDropped", "(I)I", null, null);
+ else if (aMethodName.equals(aName_damageDropped)) {
+ mv = cw.visitMethod(ACC_PUBLIC, aName_damageDropped, "(I)I", null, null);
mv.visitCode();
Label l0 = new Label();
mv.visitLabel(l0);
mv.visitLineNumber(48, l0);
mv.visitVarInsn(ILOAD, 1);
- mv.visitMethodInsn(INVOKESTATIC, "gtPlusPlus/preloader/asm/transformers/ClassTransformer_IC2_GetHarvestTool", "damageDropped", "(I)I", false);
+ mv.visitMethodInsn(INVOKESTATIC, "gtPlusPlus/preloader/asm/transformers/ClassTransformer_IC2_GetHarvestTool", aName_damageDropped, "(I)I", false);
mv.visitInsn(IRETURN);
Label l1 = new Label();
mv.visitLabel(l1);
@@ -167,10 +174,11 @@ public class ClassTransformer_IC2_GetHarvestTool {
public MethodVisitor visitMethod(int access, String name, String desc, String signature, String[] exceptions) {
MethodVisitor methodVisitor;
if (aClassName.equals("ic2.core.block.machine.BlockMachine2")
- || aClassName.equals("ic2.core.block.machine.BlockMachine3")) {
- if (name.equals("getItemDropped")) {
+ || aClassName.equals("ic2.core.block.machine.BlockMachine3")
+ || aClassName.equals("ic2.core.block.wiring.BlockElectric")) {
+ if (name.equals(aName_getItemDropped)) {
methodVisitor = null;
- } else if (name.equals("damageDropped")) {
+ } else if (name.equals(aName_damageDropped)) {
methodVisitor = null;
} else if (name.equals("getHarvestTool")) {
methodVisitor = null;
@@ -180,7 +188,7 @@ public class ClassTransformer_IC2_GetHarvestTool {
}
else if (aClassName.equals("ic2.core.block.generator.block.BlockGenerator")
|| aClassName.equals("ic2.core.block.machine.BlockMachine")) {
- if (name.equals("damageDropped")) {
+ if (name.equals(aName_damageDropped)) {
methodVisitor = null;
} else if (name.equals("getHarvestTool")) {
methodVisitor = null;
diff --git a/src/Java/gtPlusPlus/preloader/asm/transformers/ClassTransformer_TC_ItemWispEssence.java b/src/Java/gtPlusPlus/preloader/asm/transformers/ClassTransformer_TC_ItemWispEssence.java
index 993559115c..5c8547e3d6 100644
--- a/src/Java/gtPlusPlus/preloader/asm/transformers/ClassTransformer_TC_ItemWispEssence.java
+++ b/src/Java/gtPlusPlus/preloader/asm/transformers/ClassTransformer_TC_ItemWispEssence.java
@@ -29,7 +29,7 @@ public class ClassTransformer_TC_ItemWispEssence {
ClassWriter aTempWriter = null;
boolean obfuscated = obfuscated2;
FMLRelaunchLog.log("[GT++ ASM] Thaumcraft WispEssence_Patch", Level.INFO, "Are we patching obfuscated methods? "+obfuscated);
- String aGetColour = obfuscated ? DevHelper.getSRG("getColorFromItemStack") : DevHelper.getForge("getColorFromItemStack");
+ String aGetColour = obfuscated ? DevHelper.getSRG("getColorFromItemStack") : "getColorFromItemStack";
aTempReader = new ClassReader(basicClass);
aTempWriter = new ClassWriter(aTempReader, ClassWriter.COMPUTE_FRAMES);
aTempReader.accept(new AddAdapter(aTempWriter, new String[] {"getAspects", aGetColour}), 0);
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 38fd1e0508..d3b59c753d 100644
--- a/src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_Transformer_Handler.java
+++ b/src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_Transformer_Handler.java
@@ -188,13 +188,17 @@ public class Preloader_Transformer_Handler implements IClassTransformer {
"ic2.core.block.reactor.block.BlockReactorFluidPort",
"ic2.core.block.reactor.block.BlockReactorRedstonePort",
"ic2.core.block.reactor.block.BlockReactorVessel",
+ "ic2.core.block.personal.BlockPersonal.class",
+ "ic2.core.block.wiring.BlockChargepad.class",
+ "ic2.core.block.wiring.BlockElectric.class",
+ "ic2.core.block.wiring.BlockLuminator.class",
};
//Fix IC2 Shit
for (String y : aIC2ClassNames) {
if (transformedName.equals(y)) {
FMLRelaunchLog.log("[GT++ ASM] IC2 getHarvestTool Patch", Level.INFO, "Transforming %s", transformedName);
- return new ClassTransformer_IC2_GetHarvestTool(basicClass, probablyShouldBeFalse, transformedName).getWriter().toByteArray();
+ return new ClassTransformer_IC2_GetHarvestTool(basicClass, obfuscated, transformedName).getWriter().toByteArray();
}
}