diff options
| author | Roman / Linnea Gräf <nea@nea.moe> | 2023-04-27 12:41:20 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-04-27 12:41:20 +0200 |
| commit | 361ac65d7c3559884af9c400560218fed10b09f6 (patch) | |
| tree | 72b51842f38d66e0d66535ea61775aa6c7e26f37 /src/main/java/at/hannibal2/skyhanni/mixins | |
| parent | 2dd1970d6d31ea1e2bbfa30b57141ea9a4720834 (diff) | |
| download | skyhanni-361ac65d7c3559884af9c400560218fed10b09f6.tar.gz skyhanni-361ac65d7c3559884af9c400560218fed10b09f6.tar.bz2 skyhanni-361ac65d7c3559884af9c400560218fed10b09f6.zip | |
The mixinification of custom keybinds (#62)
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/mixins')
| -rw-r--r-- | src/main/java/at/hannibal2/skyhanni/mixins/transformers/AccessorKeyBinding.java | 9 | ||||
| -rw-r--r-- | src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinKeyBinding.java | 22 |
2 files changed, 30 insertions, 1 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/mixins/transformers/AccessorKeyBinding.java b/src/main/java/at/hannibal2/skyhanni/mixins/transformers/AccessorKeyBinding.java index f19859468..53abc49dc 100644 --- a/src/main/java/at/hannibal2/skyhanni/mixins/transformers/AccessorKeyBinding.java +++ b/src/main/java/at/hannibal2/skyhanni/mixins/transformers/AccessorKeyBinding.java @@ -2,11 +2,18 @@ package at.hannibal2.skyhanni.mixins.transformers; import net.minecraft.client.settings.KeyBinding; import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; import org.spongepowered.asm.mixin.gen.Invoker; @Mixin(KeyBinding.class) public interface AccessorKeyBinding { + @Accessor("pressTime") + int getPressTime_skyhanni(); + + @Accessor("pressTime") + void setPressTime_skyhanni(int pressTime); + @Invoker("unpressKey") - void skyhanni_unpressKey(); + void skyhanni_unpressKey(); } diff --git a/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinKeyBinding.java b/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinKeyBinding.java new file mode 100644 index 000000000..35a9bc780 --- /dev/null +++ b/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinKeyBinding.java @@ -0,0 +1,22 @@ +package at.hannibal2.skyhanni.mixins.transformers; + +import at.hannibal2.skyhanni.features.garden.farming.GardenCustomKeybinds; +import net.minecraft.client.settings.KeyBinding; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(KeyBinding.class) +public class MixinKeyBinding { + @Inject(method = "onTick", at = @At("HEAD"), cancellable = true) + private static void noOnTick(int keyCode, CallbackInfo ci) { + GardenCustomKeybinds.onTick(keyCode, ci); + } + + @Inject(method = "isKeyDown", at = @At("HEAD"), cancellable = true) + public void noIsKeyDown(CallbackInfoReturnable<Boolean> cir) { + GardenCustomKeybinds.isKeyDown((KeyBinding) (Object) this, cir); + } +} |
