Skip to content

Commit

Permalink
Use transformedName instead of name to find the class to transform
Browse files Browse the repository at this point in the history
Fixes the transformer not working on Minecraft 1.12.2
  • Loading branch information
ljfa-ag committed Dec 28, 2017
1 parent 06faed8 commit b362524
Showing 1 changed file with 10 additions and 7 deletions.
17 changes: 10 additions & 7 deletions src/main/java/ljfa/tntutils/asm/ExplosionTransformer.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,17 +26,20 @@ public class ExplosionTransformer implements IClassTransformer {

@Override
public byte[] transform(String name, String transformedName, byte[] basicClass) {
if(name.equals("net.minecraft.world.Explosion")) {
coreLogger.info("About to patch class %s", name);
return patchClassExplosion(name, basicClass, false);
} else if(name.equals("amn")) {
coreLogger.info("About to patch obfuscated class %s", name);
return patchClassExplosion(name, basicClass, true);
if(transformedName.equals("net.minecraft.world.Explosion")) {
if(name.equals(transformedName)) {
coreLogger.info("About to patch class %s", transformedName);
return patchClassExplosion(basicClass, false);
}
else {
coreLogger.info("About to patch obfuscated class %s (%s)", name, transformedName);
return patchClassExplosion(basicClass, true);
}
} else
return basicClass;
}

private byte[] patchClassExplosion(String name, byte[] basicClass, boolean obfuscated) {
private byte[] patchClassExplosion(byte[] basicClass, boolean obfuscated) {
//ASM manipulation stuff
ClassNode classNode = new ClassNode();
ClassReader classReader = new ClassReader(basicClass);
Expand Down

0 comments on commit b362524

Please sign in to comment.