diff --git a/forge/src/main/java/dev/architectury/event/forge/EventHandlerImplCommon.java b/forge/src/main/java/dev/architectury/event/forge/EventHandlerImplCommon.java index f0ded37f..52052178 100644 --- a/forge/src/main/java/dev/architectury/event/forge/EventHandlerImplCommon.java +++ b/forge/src/main/java/dev/architectury/event/forge/EventHandlerImplCommon.java @@ -272,10 +272,11 @@ public class EventHandlerImplCommon { public static void event(LivingSpawnEvent.CheckSpawn event) { EventResult result = EntityEvent.LIVING_CHECK_SPAWN.invoker().canSpawn(event.getEntityLiving(), event.getWorld(), event.getX(), event.getY(), event.getZ(), event.getSpawnReason(), event.getSpawner()); if (result.interruptsFurtherEvaluation()) { - if (result.value() != null) { - event.setResult(result.value() == Boolean.TRUE ? Event.Result.ALLOW : Event.Result.DENY); + if (result.isEmpty()) { + event.setResult(Event.Result.DEFAULT); + } else { + event.setResult(result.value() ? Event.Result.ALLOW : Event.Result.DENY); } - event.setCanceled(true); } }