From 6f33b4aa5d3da5e27d5fce06d660608e28f0ea22 Mon Sep 17 00:00:00 2001 From: 17146 <1714673995@qq.com> Date: Sun, 10 Nov 2024 02:27:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dcannon=E8=83=BD=E8=A2=AB?= =?UTF-8?q?=E5=87=BB=E9=A3=9E=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../superbwarfare/entity/Mk42Entity.java | 24 ++++++++++++++----- .../superbwarfare/entity/Mle1934Entity.java | 24 ++++++++++++++----- 2 files changed, 36 insertions(+), 12 deletions(-) diff --git a/src/main/java/net/mcreator/superbwarfare/entity/Mk42Entity.java b/src/main/java/net/mcreator/superbwarfare/entity/Mk42Entity.java index ba5d917bd..1fd6a56e9 100644 --- a/src/main/java/net/mcreator/superbwarfare/entity/Mk42Entity.java +++ b/src/main/java/net/mcreator/superbwarfare/entity/Mk42Entity.java @@ -154,15 +154,27 @@ public class Mk42Entity extends Entity implements GeoEntity, ICannonEntity { @Override public InteractionResult interact(Player player, InteractionHand hand) { - if (player.isShiftKeyDown() && player.getMainHandItem().getItem() == ModItems.CROWBAR.get() && this.getFirstPassenger() == null) { - this.discard(); + if (player.isShiftKeyDown()) { + if (player.getMainHandItem().getItem() == ModItems.CROWBAR.get() && this.getFirstPassenger() == null) { + this.discard(); + return InteractionResult.sidedSuccess(this.level().isClientSide()); + } + return InteractionResult.PASS; } else { - player.setXRot(this.getXRot()); - player.setYRot(this.getYRot()); - player.startRiding(this); + if (this.getFirstPassenger() == null) { + player.setXRot(this.getXRot()); + player.setYRot(this.getYRot()); + player.startRiding(this); + return InteractionResult.sidedSuccess(this.level().isClientSide()); + } } - return InteractionResult.sidedSuccess(this.level().isClientSide()); + return InteractionResult.PASS; + } + + @Override + public Vec3 getDeltaMovement() { + return new Vec3(0, Math.min(super.getDeltaMovement().y, 0), 0); } @Override diff --git a/src/main/java/net/mcreator/superbwarfare/entity/Mle1934Entity.java b/src/main/java/net/mcreator/superbwarfare/entity/Mle1934Entity.java index 0b0b8c2c6..85e97512e 100644 --- a/src/main/java/net/mcreator/superbwarfare/entity/Mle1934Entity.java +++ b/src/main/java/net/mcreator/superbwarfare/entity/Mle1934Entity.java @@ -160,15 +160,27 @@ public class Mle1934Entity extends Entity implements GeoEntity, ICannonEntity { @Override public InteractionResult interact(Player player, InteractionHand hand) { - if (player.isShiftKeyDown() && player.getMainHandItem().getItem() == ModItems.CROWBAR.get() && this.getFirstPassenger() == null) { - this.discard(); + if (player.isShiftKeyDown()) { + if (player.getMainHandItem().getItem() == ModItems.CROWBAR.get() && this.getFirstPassenger() == null) { + this.discard(); + return InteractionResult.sidedSuccess(this.level().isClientSide()); + } + return InteractionResult.PASS; } else { - player.setXRot(this.getXRot()); - player.setYRot(this.getYRot()); - player.startRiding(this); + if (this.getFirstPassenger() == null) { + player.setXRot(this.getXRot()); + player.setYRot(this.getYRot()); + player.startRiding(this); + return InteractionResult.sidedSuccess(this.level().isClientSide()); + } } - return InteractionResult.sidedSuccess(this.level().isClientSide()); + return InteractionResult.PASS; + } + + @Override + public Vec3 getDeltaMovement() { + return new Vec3(0, Math.min(super.getDeltaMovement().y, 0), 0); } @Override