diff --git a/patches/minecraft/net/minecraft/tags/NetworkTagManager.java.patch b/patches/minecraft/net/minecraft/tags/NetworkTagManager.java.patch index d46b98378..563dda411 100644 --- a/patches/minecraft/net/minecraft/tags/NetworkTagManager.java.patch +++ b/patches/minecraft/net/minecraft/tags/NetworkTagManager.java.patch @@ -4,7 +4,7 @@ ItemTags.func_199902_a(this.field_199720_b); FluidTags.func_206953_a(this.field_205705_c); EntityTypeTags.func_219759_a(this.field_215299_d); -+ net.minecraftforge.fml.DeferredWorkQueue.runLater(() -> net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(new net.minecraftforge.event.TagsUpdatedEvent(this))); ++ net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(new net.minecraftforge.event.TagsUpdatedEvent(this)); }, p_215226_6_); } diff --git a/src/main/java/net/minecraftforge/common/ForgeInternalHandler.java b/src/main/java/net/minecraftforge/common/ForgeInternalHandler.java index d4e0a986f..e4bd7a393 100644 --- a/src/main/java/net/minecraftforge/common/ForgeInternalHandler.java +++ b/src/main/java/net/minecraftforge/common/ForgeInternalHandler.java @@ -104,7 +104,7 @@ public class ForgeInternalHandler } @SubscribeEvent - public void tagsUpdated(TagsUpdatedEvent event) + public synchronized void tagsUpdated(TagsUpdatedEvent event) { ForgeHooks.updateBurns(); } diff --git a/src/main/java/net/minecraftforge/event/TagsUpdatedEvent.java b/src/main/java/net/minecraftforge/event/TagsUpdatedEvent.java index 3379c8700..e1e430387 100644 --- a/src/main/java/net/minecraftforge/event/TagsUpdatedEvent.java +++ b/src/main/java/net/minecraftforge/event/TagsUpdatedEvent.java @@ -25,6 +25,9 @@ import net.minecraftforge.eventbus.api.Event; /** * Fired on the client when {@link NetworkTagManager} has all of its tags synced from the server to the client (just after a client has connected). * Fired on the server when {@link NetworkTagManager} has read all tags from disk (during a data reload). + * This event is fired on the {@link MinecraftForge#EVENT_BUS} + * On the client, this event fires on the Client Thread. + * On the server, this event may be fired on the Server Thread, or an async reloader thread. */ public class TagsUpdatedEvent extends Event {