diff --git a/src/main/java/com/atsuishio/superbwarfare/event/LivingEventHandler.java b/src/main/java/com/atsuishio/superbwarfare/event/LivingEventHandler.java index 64fdb2a71..b0eb9a2cd 100644 --- a/src/main/java/com/atsuishio/superbwarfare/event/LivingEventHandler.java +++ b/src/main/java/com/atsuishio/superbwarfare/event/LivingEventHandler.java @@ -45,6 +45,7 @@ import net.neoforged.bus.api.SubscribeEvent; import net.neoforged.fml.common.EventBusSubscriber; import net.neoforged.neoforge.common.NeoForge; import net.neoforged.neoforge.common.util.TriState; +import net.neoforged.neoforge.event.entity.EntityMountEvent; import net.neoforged.neoforge.event.entity.living.*; import net.neoforged.neoforge.event.entity.player.ItemEntityPickupEvent; import net.neoforged.neoforge.network.PacketDistributor; @@ -652,4 +653,12 @@ public class LivingEventHandler { event.setResult(MobEffectEvent.Applicable.Result.DO_NOT_APPLY); } } + + @SubscribeEvent + public static void onMountEntity(EntityMountEvent event) { + var entity = event.getEntityMounting(); + if (entity instanceof Player player && player.getVehicle() instanceof VehicleEntity && !(event.getEntityBeingMounted() instanceof VehicleEntity)) { + event.setCanceled(true); + } + } }