package coloredlightscore.src.asm.transformer; import coloredlightscore.src.asm.transformer.core.HelperMethodTransformer; import coloredlightscore.src.asm.transformer.core.NameMapper; import org.objectweb.asm.tree.ClassNode; import org.objectweb.asm.tree.MethodNode; public class TransformEntityRenderer extends HelperMethodTransformer { // These methods will be replaced by statics in CLRenderBlocksHelper String methodsToReplace[] = { "updateLightmap (F)V" }; public TransformEntityRenderer() { super("net.minecraft.client.renderer.EntityRenderer"); } @Override protected Class<?> getHelperClass() { return coloredlightscore.src.helper.CLEntityRendererHelper.class; } @Override protected boolean transforms(ClassNode classNode, MethodNode methodNode) { for (String name : methodsToReplace) { if (NameMapper.getInstance().isMethod(methodNode, super.className, name)) return true; } return false; } @Override protected boolean transform(ClassNode classNode, MethodNode methodNode) { for (String name : methodsToReplace) { if (NameMapper.getInstance().isMethod(methodNode, super.className, name)) { return redefineMethod(classNode, methodNode, name); } } return false; } }