From 9744d1d6568e03e21dd29fb4ec29e9f759b21a8a Mon Sep 17 00:00:00 2001 From: Light_Quanta Date: Sat, 26 Apr 2025 01:40:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=92=93=E9=B1=BC=E7=AB=BF?= =?UTF-8?q?=E8=83=BD=E9=92=A9=E8=BD=BD=E5=85=B7=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mixins/FishingHookMixin.java | 21 +++++++++++++++++++ src/main/resources/mixins.superbwarfare.json | 1 + 2 files changed, 22 insertions(+) create mode 100644 src/main/java/com/atsuishio/superbwarfare/mixins/FishingHookMixin.java diff --git a/src/main/java/com/atsuishio/superbwarfare/mixins/FishingHookMixin.java b/src/main/java/com/atsuishio/superbwarfare/mixins/FishingHookMixin.java new file mode 100644 index 000000000..e4a903434 --- /dev/null +++ b/src/main/java/com/atsuishio/superbwarfare/mixins/FishingHookMixin.java @@ -0,0 +1,21 @@ +package com.atsuishio.superbwarfare.mixins; + +import com.atsuishio.superbwarfare.entity.vehicle.base.VehicleEntity; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.projectile.FishingHook; +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.CallbackInfoReturnable; + +@Mixin(FishingHook.class) +public class FishingHookMixin { + + @Inject(method = "canHitEntity(Lnet/minecraft/world/entity/Entity;)Z", at = @At("HEAD"), cancellable = true) + private void canHook(Entity entity, CallbackInfoReturnable cir) { + if (entity instanceof VehicleEntity) { + cir.setReturnValue(false); + cir.cancel(); + } + } +} diff --git a/src/main/resources/mixins.superbwarfare.json b/src/main/resources/mixins.superbwarfare.json index 5bfc77eb9..fa85e6a15 100644 --- a/src/main/resources/mixins.superbwarfare.json +++ b/src/main/resources/mixins.superbwarfare.json @@ -6,6 +6,7 @@ "mixins": [ "ClientboundSetPassengersPacketMixin", "EntityMixin", + "FishingHookMixin", "LivingEntityMixin", "PlayerMixin" ],