diff options
| author | Roman / Linnea Gräf <nea@nea.moe> | 2023-06-24 19:03:52 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-06-24 19:03:52 +0200 |
| commit | 847100cb50dea171d494e541bc3a19bf8438ba3d (patch) | |
| tree | c5f3064dc3c4beeab793c7e78eab36bf1ce655ea /src/main/java/at/hannibal2/skyhanni/mixins | |
| parent | 105bc5ee1593a8c16842026c600fc9ffcd2977e5 (diff) | |
| download | skyhanni-847100cb50dea171d494e541bc3a19bf8438ba3d.tar.gz skyhanni-847100cb50dea171d494e541bc3a19bf8438ba3d.tar.bz2 skyhanni-847100cb50dea171d494e541bc3a19bf8438ba3d.zip | |
Merge pull request #256
* Remove old update data after each update
* VoltHighlighter
* VoltHighlighter
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/mixins')
| -rw-r--r-- | src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetHandlerPlayClient.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetHandlerPlayClient.java b/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetHandlerPlayClient.java index bd4107369..8d2f6c5d3 100644 --- a/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetHandlerPlayClient.java +++ b/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetHandlerPlayClient.java @@ -1,15 +1,19 @@ package at.hannibal2.skyhanni.mixins.transformers; +import at.hannibal2.skyhanni.events.EntityEquipmentChangeEvent; import at.hannibal2.skyhanni.mixins.hooks.NetHandlerPlayClientHookKt; import net.minecraft.client.multiplayer.WorldClient; import net.minecraft.client.network.NetHandlerPlayClient; +import net.minecraft.entity.Entity; import net.minecraft.network.Packet; import net.minecraft.network.play.INetHandlerPlayClient; +import net.minecraft.network.play.server.S04PacketEntityEquipment; 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.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.LocalCapture; @Mixin(value = NetHandlerPlayClient.class, priority = 1001) public abstract class MixinNetHandlerPlayClient implements INetHandlerPlayClient { @@ -21,4 +25,10 @@ public abstract class MixinNetHandlerPlayClient implements INetHandlerPlayClient private void onSendPacket(Packet<?> packet, CallbackInfo ci) { NetHandlerPlayClientHookKt.onSendPacket(packet, ci); } + + @Inject(method = "handleEntityEquipment", at = @At(value = "INVOKE", target = "Lnet/minecraft/entity/Entity;setCurrentItemOrArmor(ILnet/minecraft/item/ItemStack;)V", shift = At.Shift.AFTER), locals = LocalCapture.CAPTURE_FAILHARD) + public void onEntityEquipment(S04PacketEntityEquipment packetIn, CallbackInfo ci, Entity entity) { + new EntityEquipmentChangeEvent(entity, packetIn.getEquipmentSlot(), packetIn.getItemStack()).postAndCatch(); + } + } |
