Skip to content

Commit 846e82b

Browse files
committed
Call WorldInitEvent for Bukkit created world to support delayed configurate from plugin; for IzzelAliz#1641
1 parent 74c4777 commit 846e82b

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/server/MinecraftServerMixin.java

+10
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,16 @@ public void initWorld(ServerLevel serverWorld, ServerLevelData worldInfo, WorldD
365365
}
366366
WorldBorder worldborder = serverWorld.getWorldBorder();
367367
worldborder.applySettings(worldInfo.getWorldBorder());
368+
369+
// Call WorldInitEvent for Bukkit created world
370+
// Before any chunk is loaded/generated.
371+
// This makes delayed configurate possible.
372+
// Calling multiple times is OK since Spigot also do so.
373+
// See [PlotSquared] BukkitSetupUtils#setupWorld(PlotAreaBuilder).
374+
// See CraftServer.
375+
// CraftBukkit - SPIGOT-5569: Call WorldInitEvent before any chunks are generated
376+
this.server.getPluginManager().callEvent(new WorldInitEvent(serverWorld.bridge$getWorld()));
377+
368378
if (!worldInfo.isInitialized()) {
369379
try {
370380
setInitialSpawn(serverWorld, worldInfo, worldOptions.generateBonusChest(), flag);

0 commit comments

Comments
 (0)