From 204949d02ddb9c5ba53f1cc68b11b1556793cd43 Mon Sep 17 00:00:00 2001 From: XFactHD Date: Thu, 20 Jun 2024 05:20:17 +0200 Subject: [PATCH] Fix duplicate registration error for empty loot table --- src/main/java/net/neoforged/neoforge/event/EventHooks.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/net/neoforged/neoforge/event/EventHooks.java b/src/main/java/net/neoforged/neoforge/event/EventHooks.java index 36a3023286..736d64cd31 100644 --- a/src/main/java/net/neoforged/neoforge/event/EventHooks.java +++ b/src/main/java/net/neoforged/neoforge/event/EventHooks.java @@ -680,12 +680,13 @@ public static boolean onProjectileImpact(Projectile projectile, HitResult ray) { return NeoForge.EVENT_BUS.post(new ProjectileImpactEvent(projectile, ray)).isCanceled(); } + @Nullable public static LootTable loadLootTable(ResourceLocation name, LootTable table) { if (table == LootTable.EMPTY) // Empty table has a null name, and shouldn't be modified anyway. - return table; + return null; LootTableLoadEvent event = new LootTableLoadEvent(name, table); - if (NeoForge.EVENT_BUS.post(event).isCanceled()) - return LootTable.EMPTY; + if (NeoForge.EVENT_BUS.post(event).isCanceled() || event.getTable() == LootTable.EMPTY) + return null; return event.getTable(); }