-
Notifications
You must be signed in to change notification settings - Fork 3
编写Transformer
zl930 edited this page Aug 5, 2024
·
3 revisions
新建一个class
Note
若你想在dev.zl930.lepton.core.injection.transformer.asm
包外编写,请你在dev.zl930.lepton.util.Constants
中的
public static final String[] TRANSFORMER_PACKAGES = {
MAIN_PACKAGE + ".core.injection.transformer.asm"
};
添加你的包名,这样就可以检测到你的Transformer了
package dev.zl930.lepton.core.injection.transformer.asm;
@CTransformer(Minecraft.class)
public class MixinMinecraft {
@CInline
@CInject(method = "runTick", target = @CTarget(value = "INVOKE", target = "Lnet/minecraft/profiler/Profiler;startSection(Ljava/lang/String;)V", ordinal = 0, shift = CTarget.Shift.AFTER))
private void preRunTick() {
Lepton.getINSTANCE().getEventBus().call(new EventPreTick());
}
}
语法请查看ClassTransform
Important
在此声明的任何方法都需要添加@CInline
注解,否则无法进行热注入