aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerInteractionManagerMixin.java
diff options
context:
space:
mode:
authorGrayray75 <69988482+Grayray75@users.noreply.github.com>2023-09-28 16:03:00 +0200
committerGrayray75 <69988482+Grayray75@users.noreply.github.com>2023-09-28 16:03:00 +0200
commit0de355c3ccab5c66db9441d94d9eb84defb3fdb9 (patch)
treebe4e547e7680e3b18cb9a0f218cf24c17b7e132e /src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerInteractionManagerMixin.java
parentdbdb0598086a4d31018294f87026da517ceb0ce2 (diff)
downloadSkyblocker-0de355c3ccab5c66db9441d94d9eb84defb3fdb9.tar.gz
Skyblocker-0de355c3ccab5c66db9441d94d9eb84defb3fdb9.tar.bz2
Skyblocker-0de355c3ccab5c66db9441d94d9eb84defb3fdb9.zip
Implement item cooldown display
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerInteractionManagerMixin.java')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerInteractionManagerMixin.java24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerInteractionManagerMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerInteractionManagerMixin.java
new file mode 100644
index 00000000..4b343317
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerInteractionManagerMixin.java
@@ -0,0 +1,24 @@
+package me.xmrvizzy.skyblocker.mixin;
+
+import me.xmrvizzy.skyblocker.events.ClientPlayerBlockBreakEvent;
+import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.network.ClientPlayerInteractionManager;
+import net.minecraft.util.math.BlockPos;
+import org.spongepowered.asm.mixin.Final;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.Shadow;
+import org.spongepowered.asm.mixin.injection.At;
+import org.spongepowered.asm.mixin.injection.Inject;
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
+
+@Mixin(ClientPlayerInteractionManager.class)
+public class ClientPlayerInteractionManagerMixin {
+ @Shadow
+ @Final
+ private MinecraftClient client;
+
+ @Inject(method = "breakBlock", at = @At(value = "INVOKE", target = "Lnet/minecraft/block/Block;onBroken(Lnet/minecraft/world/WorldAccess;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)V"))
+ private void skyblocker$blockBreak(BlockPos pos, CallbackInfoReturnable<Boolean> cir) {
+ ClientPlayerBlockBreakEvent.AFTER.invoker().afterBlockBreak(pos, this.client.player);
+ }
+}