diff --git a/luminol-server/paper-patches/needupdate/0003-Add-config-to-disable-async-catchers.patch b/luminol-server/paper-patches/features/0003-Add-config-to-disable-async-catchers.patch similarity index 97% rename from luminol-server/paper-patches/needupdate/0003-Add-config-to-disable-async-catchers.patch rename to luminol-server/paper-patches/features/0003-Add-config-to-disable-async-catchers.patch index bf8d4d1..5364de5 100644 --- a/luminol-server/paper-patches/needupdate/0003-Add-config-to-disable-async-catchers.patch +++ b/luminol-server/paper-patches/features/0003-Add-config-to-disable-async-catchers.patch @@ -80,11 +80,11 @@ index c95769a4e64fabd7acdff6c5f6f349107e1cf5c0..4efa1c057ae6cfdea7889c372bd62dc1 reason + ", context=" + getThreadContext() + ", world=" + WorldUtil.getWorldName(world) + ", block_pos=" + new Vec3(blockX, 0.0, blockZ); LOGGER.error(ex, new Throwable()); diff --git a/src/main/java/org/spigotmc/AsyncCatcher.java b/src/main/java/org/spigotmc/AsyncCatcher.java -index 50f01faa88c8c658252fade3748f20e48e9c8432..36fa1f83c3286e10cc7c208a2a2f1a718d525ad8 100644 +index 7e7a0ed944961af5ab7a49bc659da2862d2e2c82..f2867e3758ebfc5ea1066b0d5d2fe6f2dfab8248 100644 --- a/src/main/java/org/spigotmc/AsyncCatcher.java +++ b/src/main/java/org/spigotmc/AsyncCatcher.java -@@ -7,7 +7,7 @@ public class AsyncCatcher { - public static boolean enabled = true; +@@ -5,7 +5,7 @@ import net.minecraft.server.MinecraftServer; + public class AsyncCatcher { public static void catchOp(String reason) { - if (!ca.spottedleaf.moonrise.common.util.TickThread.isTickThread()) { // Paper - chunk system diff --git a/luminol-server/paper-patches/needupdate/0004-Add-tpsbar-with-chunkhot-membar-and-region-bar.patch b/luminol-server/paper-patches/features/0004-Add-tpsbar-with-chunkhot-membar-and-region-bar.patch similarity index 67% rename from luminol-server/paper-patches/needupdate/0004-Add-tpsbar-with-chunkhot-membar-and-region-bar.patch rename to luminol-server/paper-patches/features/0004-Add-tpsbar-with-chunkhot-membar-and-region-bar.patch index 160476e..50cca4a 100644 --- a/luminol-server/paper-patches/needupdate/0004-Add-tpsbar-with-chunkhot-membar-and-region-bar.patch +++ b/luminol-server/paper-patches/features/0004-Add-tpsbar-with-chunkhot-membar-and-region-bar.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add tpsbar with chunkhot membar and region bar diff --git a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java -index de8b9048c8395c05b8688bc9d984b8ad680f15b3..f42692cd4f0154705c3d5b030d281cfc333803ed 100644 +index 400e632208d133a3f49fc7f14bceb48a1026769b..631bec0adee5b01bfb931c25195b949eaf2efd27 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java -@@ -437,4 +437,12 @@ public class CraftChunk implements Chunk { +@@ -422,4 +422,12 @@ public class CraftChunk implements Chunk { static { Arrays.fill(FULL_LIGHT, (byte) 0xFF); } @@ -16,32 +16,32 @@ index de8b9048c8395c05b8688bc9d984b8ad680f15b3..f42692cd4f0154705c3d5b030d281cfc + // KioCG start - ChunkHot + @Override + public long getChunkHotAvg() { -+ final net.minecraft.world.level.chunk.LevelChunk target = this.worldServer.getChunkIfLoaded(this.x,this.z); ++ final net.minecraft.world.level.chunk.LevelChunk target = this.level.getChunkIfLoaded(this.x,this.z); + return target == null ? -1 : target.getChunkHot().getAverage(); + } + // KioCG end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index f7ceb89d9b908f02fc9e90e426e8e14e330ac041..b6e451c8a41a1d25bac679d18156d6e813efda2a 100644 +index 00abfbfc0c75434b18e89334a35b657519b51abc..7e5627c5b09a4fb7b923121355b351b5518fea50 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2400,6 +2400,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { - handle.expToDrop = data.getInt("expToDrop"); - handle.keepLevel = data.getBoolean("keepLevel"); - } +@@ -2365,6 +2365,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { + handle.newLevel = data.getIntOr("newLevel", 0); + handle.expToDrop = data.getIntOr("expToDrop", 0); + handle.keepLevel = data.getBooleanOr("keepLevel", false); + //Luminol start - Tpsbar -+ getHandle().isTpsBarVisible = data.getBoolean("tpsbarVisible"); ++ getHandle().isTpsBarVisible = data.getBooleanOr("tpsbarVisible", false); + //Luminol end + //Luminol start - Membar -+ getHandle().isMemBarVisible = data.getBoolean("membarVisible"); ++ getHandle().isMemBarVisible = data.getBooleanOr("membarVisible", false); + //Luminol end + //Luminol start - Regionbar -+ getHandle().isRegionBarVisible = data.getBoolean("regionbarVisible"); ++ getHandle().isRegionBarVisible = data.getBooleanOr("regionbarVisible", false); + //Luminol end - } + }); } -@@ -2421,6 +2430,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2386,6 +2395,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { data.putLong("lastPlayed", System.currentTimeMillis()); data.putString("lastKnownName", handle.getScoreboardName()); @@ -55,9 +55,9 @@ index f7ceb89d9b908f02fc9e90e426e8e14e330ac041..b6e451c8a41a1d25bac679d18156d6e8 + data.putBoolean("regionbarVisible", handle.isRegionBarVisible); + //Luminol end // Paper start - persist for use in offline save data - if (!nbttagcompound.contains("Paper")) { - nbttagcompound.put("Paper", new CompoundTag()); -@@ -3614,4 +3632,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { + if (!tag.contains("Paper")) { + tag.put("Paper", new CompoundTag()); +@@ -3571,4 +3589,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void setDeathScreenScore(final int score) { getHandle().setScore(score); } diff --git a/luminol-server/paper-patches/needupdate/0005-Purpur-Lobotomize-stuck-villagers.patch b/luminol-server/paper-patches/features/0005-Purpur-Lobotomize-stuck-villagers.patch similarity index 85% rename from luminol-server/paper-patches/needupdate/0005-Purpur-Lobotomize-stuck-villagers.patch rename to luminol-server/paper-patches/features/0005-Purpur-Lobotomize-stuck-villagers.patch index 1af255d..a5dbd63 100644 --- a/luminol-server/paper-patches/needupdate/0005-Purpur-Lobotomize-stuck-villagers.patch +++ b/luminol-server/paper-patches/features/0005-Purpur-Lobotomize-stuck-villagers.patch @@ -5,13 +5,13 @@ Subject: [PATCH] Purpur Lobotomize stuck villagers diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java -index bd515cdfbcc6fb0d17f70150d8b0bab60949db49..b6038fedea6251226b3b3db0f4b7a1f3d2276ab0 100644 +index e86f69f75d406b81d9ca32f9cad5e31cb8c55b54..9ca1d60cb7f3e65cdf491bd65c1c0c38cd2c73e8 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java @@ -381,4 +381,11 @@ public class CraftVillager extends CraftAbstractVillager implements Villager { + public void clearReputations() { getHandle().getGossips().gossips.clear(); } - // Paper end + + // Purpur start + @Override diff --git a/luminol-server/paper-patches/needupdate/0006-Force-disable-builtin-spark-plugin.patch b/luminol-server/paper-patches/features/0006-Force-disable-builtin-spark-plugin.patch similarity index 82% rename from luminol-server/paper-patches/needupdate/0006-Force-disable-builtin-spark-plugin.patch rename to luminol-server/paper-patches/features/0006-Force-disable-builtin-spark-plugin.patch index ddc2e3c..98df2bb 100644 --- a/luminol-server/paper-patches/needupdate/0006-Force-disable-builtin-spark-plugin.patch +++ b/luminol-server/paper-patches/features/0006-Force-disable-builtin-spark-plugin.patch @@ -18,19 +18,19 @@ index a0b84535a9d3833d4df692b85b272f145559dd80..c2ba46408b5ad727d7a17f21d47b2898 return; } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index a60e6ed437764ebeaab64e9ae7b87a177119e436..7ffdc9a50c41adcac5d2b8ac84036aacc789ece6 100644 +index 1091d2747c04166447540b37d86f51fe2591adc8..e0cee79b949fd2a4684bdfe7aa257c2ea96914b0 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -315,7 +315,7 @@ public final class CraftServer implements Server { - public static Exception excessiveVelEx; // Paper - Velocity warnings - private final io.papermc.paper.logging.SysoutCatcher sysoutCatcher = new io.papermc.paper.logging.SysoutCatcher(); // Paper - private final io.papermc.paper.potion.PaperPotionBrewer potionBrewer; // Paper - Custom Potion Mixes -- public final io.papermc.paper.SparksFly spark; // Paper - spark +@@ -314,7 +314,7 @@ public final class CraftServer implements Server { + public static Exception excessiveVelEx; + private final io.papermc.paper.logging.SysoutCatcher sysoutCatcher = new io.papermc.paper.logging.SysoutCatcher(); + private final io.papermc.paper.potion.PaperPotionBrewer potionBrewer; +- public final io.papermc.paper.SparksFly spark; + public io.papermc.paper.SparksFly spark; // Paper - spark // Luminol - Force disable builtin spark + private final ServerConfiguration serverConfig = new PaperServerConfiguration(); // Paper start - Folia region threading API - private final io.papermc.paper.threadedregions.scheduler.FoliaRegionScheduler regionizedScheduler = new io.papermc.paper.threadedregions.scheduler.FoliaRegionScheduler(); // Folia - region threading -@@ -493,7 +493,7 @@ public final class CraftServer implements Server { +@@ -496,7 +496,7 @@ public final class CraftServer implements Server { } this.potionBrewer = new io.papermc.paper.potion.PaperPotionBrewer(console); // Paper - custom potion mixes datapackManager = new io.papermc.paper.datapack.PaperDatapackManager(console.getPackRepository()); // Paper @@ -39,7 +39,7 @@ index a60e6ed437764ebeaab64e9ae7b87a177119e436..7ffdc9a50c41adcac5d2b8ac84036aac } public boolean getCommandBlockOverride(String command) { -@@ -1157,7 +1157,7 @@ public final class CraftServer implements Server { +@@ -1141,7 +1141,7 @@ public final class CraftServer implements Server { this.reloadData(); org.spigotmc.SpigotConfig.registerCommands(); // Spigot io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper @@ -48,7 +48,7 @@ index a60e6ed437764ebeaab64e9ae7b87a177119e436..7ffdc9a50c41adcac5d2b8ac84036aac this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*"); this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions"); -@@ -1186,7 +1186,7 @@ public final class CraftServer implements Server { +@@ -1170,7 +1170,7 @@ public final class CraftServer implements Server { this.loadPlugins(); this.enablePlugins(PluginLoadOrder.STARTUP); this.enablePlugins(PluginLoadOrder.POSTWORLD); diff --git a/luminol-server/paper-patches/needupdate/0007-SparklyPaper-Optimize-canSee-checks.patch b/luminol-server/paper-patches/features/0007-SparklyPaper-Optimize-canSee-checks.patch similarity index 94% rename from luminol-server/paper-patches/needupdate/0007-SparklyPaper-Optimize-canSee-checks.patch rename to luminol-server/paper-patches/features/0007-SparklyPaper-Optimize-canSee-checks.patch index 90df988..f3ece48 100644 --- a/luminol-server/paper-patches/needupdate/0007-SparklyPaper-Optimize-canSee-checks.patch +++ b/luminol-server/paper-patches/features/0007-SparklyPaper-Optimize-canSee-checks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] SparklyPaper Optimize canSee checks diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 3819c748473f2cbf53890867e552985eeb8ee35f..8cb02f08ccddd69ad3ea868e848c61dfb4fa5fe7 100644 +index 7e5627c5b09a4fb7b923121355b351b5518fea50..21d5b328c7fc254c711ea0c4444bdbe3dd9b4a1f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -210,7 +210,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -213,7 +213,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { private boolean hasPlayedBefore = false; private final ConversationTracker conversationTracker = new ConversationTracker(); private final Set channels = new HashSet(); diff --git a/luminol-server/paper-patches/needupdate/0008-Leaf-Skip-event-if-no-listeners.patch b/luminol-server/paper-patches/features/0008-Leaf-Skip-event-if-no-listeners.patch similarity index 100% rename from luminol-server/paper-patches/needupdate/0008-Leaf-Skip-event-if-no-listeners.patch rename to luminol-server/paper-patches/features/0008-Leaf-Skip-event-if-no-listeners.patch diff --git a/luminol-server/paper-patches/needupdate/0009-Leaf-Secure-seed-and-matter-seed-command.patch b/luminol-server/paper-patches/features/0009-Leaf-Secure-seed-and-matter-seed-command.patch similarity index 65% rename from luminol-server/paper-patches/needupdate/0009-Leaf-Secure-seed-and-matter-seed-command.patch rename to luminol-server/paper-patches/features/0009-Leaf-Secure-seed-and-matter-seed-command.patch index 3303e14..d040835 100644 --- a/luminol-server/paper-patches/needupdate/0009-Leaf-Secure-seed-and-matter-seed-command.patch +++ b/luminol-server/paper-patches/features/0009-Leaf-Secure-seed-and-matter-seed-command.patch @@ -5,36 +5,36 @@ Subject: [PATCH] Leaf Secure seed and matter seed command diff --git a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java -index f42692cd4f0154705c3d5b030d281cfc333803ed..39cc976f65f826a00e2e637c139f9134c5e74715 100644 +index 631bec0adee5b01bfb931c25195b949eaf2efd27..05d364bcadb137af4e1a8c955643b7dc3440b299 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java -@@ -206,7 +206,12 @@ public class CraftChunk implements Chunk { +@@ -196,7 +196,12 @@ public class CraftChunk implements Chunk { @Override public boolean isSlimeChunk() { - // 987234911L is deterimined in EntitySlime when seeing if a slime can spawn in a chunk -- return this.worldServer.paperConfig().entities.spawning.allChunksAreSlimeChunks || WorldgenRandom.seedSlimeChunk(this.getX(), this.getZ(), this.getWorld().getSeed(), worldServer.spigotConfig.slimeSeed).nextInt(10) == 0; // Paper + // 987234911L is taken from Slime when seeing if a slime can spawn in a chunk +- return this.level.paperConfig().entities.spawning.allChunksAreSlimeChunks || WorldgenRandom.seedSlimeChunk(this.getX(), this.getZ(), this.getWorld().getSeed(), level.spigotConfig.slimeSeed).nextInt(10) == 0; // Paper + // Leaf start - Matter - Secure Seed + boolean isSlimeChunk = me.earthme.luminol.config.modules.misc.SecureSeedConfig.enabled -+ ? worldServer.getChunk(this.getX(), this.getZ()).isSlimeChunk() -+ : WorldgenRandom.seedSlimeChunk(this.getX(), this.getZ(), this.getWorld().getSeed(), worldServer.spigotConfig.slimeSeed).nextInt(10) == 0; // Paper -+ return this.worldServer.paperConfig().entities.spawning.allChunksAreSlimeChunks || isSlimeChunk; ++ ? level.getChunk(this.getX(), this.getZ()).isSlimeChunk() ++ : WorldgenRandom.seedSlimeChunk(this.getX(), this.getZ(), this.getWorld().getSeed(), level.spigotConfig.slimeSeed).nextInt(10) == 0; // Paper ++ return this.level.paperConfig().entities.spawning.allChunksAreSlimeChunks || isSlimeChunk; + // Leaf end - Matter - Secure Seed } @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 7ffdc9a50c41adcac5d2b8ac84036aacc789ece6..292f32c935767b54098290eea8a512b82f962caf 100644 +index e0cee79b949fd2a4684bdfe7aa257c2ea96914b0..047369190b8d03c5765595ba898da3a5c463a6c0 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1424,7 +1424,11 @@ public final class CraftServer implements Server { +@@ -1392,7 +1392,11 @@ public final class CraftServer implements Server { registryAccess = levelDataAndDimensions.dimensions().dimensionsRegistryAccess(); } else { LevelSettings levelSettings; -- WorldOptions worldOptions = new WorldOptions(creator.seed(), creator.generateStructures(), false); +- WorldOptions worldOptions = new WorldOptions(creator.seed(), creator.generateStructures(), creator.bonusChest()); + // Leaf start - Matter - Secure Seed + WorldOptions worldOptions = me.earthme.luminol.config.modules.misc.SecureSeedConfig.enabled + ? new WorldOptions(creator.seed(), su.plo.matter.Globals.createRandomWorldSeed(), creator.generateStructures(), false) -+ : new WorldOptions(creator.seed(), creator.generateStructures(), false); ++ : new WorldOptions(creator.seed(), creator.generateStructures(), creator.bonusChest()); + // Leaf end - Matter - Secure Seed WorldDimensions worldDimensions; diff --git a/luminol-server/paper-patches/needupdate/0010-Tick-regions-api.patch b/luminol-server/paper-patches/features/0010-Tick-regions-api.patch similarity index 82% rename from luminol-server/paper-patches/needupdate/0010-Tick-regions-api.patch rename to luminol-server/paper-patches/features/0010-Tick-regions-api.patch index 9674544..1eb2b95 100644 --- a/luminol-server/paper-patches/needupdate/0010-Tick-regions-api.patch +++ b/luminol-server/paper-patches/features/0010-Tick-regions-api.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Tick regions api diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index cd6e46fa68c009deb8dfebcecb88e058dfede0b0..f0c8e76efaf897a81283edbf9a9c2a71bc28c9a9 100644 +index 85953b02763b4dfddfc00c095f1ec4a019a1a30f..a301a6824e68a9a18a42f16f7c47d66e9ee66c9a 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -2517,4 +2517,11 @@ public class CraftWorld extends CraftRegionAccessor implements World { +@@ -2519,4 +2519,11 @@ public class CraftWorld extends CraftRegionAccessor implements World { return this.adventure$pointers; } // Paper end diff --git a/luminol-server/paper-patches/needupdate/0011-Purpur-Barrels-and-enderchests-6-rows.patch b/luminol-server/paper-patches/features/0011-Purpur-Barrels-and-enderchests-6-rows.patch similarity index 92% rename from luminol-server/paper-patches/needupdate/0011-Purpur-Barrels-and-enderchests-6-rows.patch rename to luminol-server/paper-patches/features/0011-Purpur-Barrels-and-enderchests-6-rows.patch index aed6593..ec2128c 100644 --- a/luminol-server/paper-patches/needupdate/0011-Purpur-Barrels-and-enderchests-6-rows.patch +++ b/luminol-server/paper-patches/features/0011-Purpur-Barrels-and-enderchests-6-rows.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Purpur-Barrels-and-enderchests-6-rows diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java -index 1ce328bed5cf3d087a3f7dc9236153381d758493..20f2b9945eaa58e05b417d9cca7c30dd0496cf72 100644 +index c00ddfe41439954fa0fd87c0933f274c8a752eb6..f60e3896411ff8342639e3f3422d551c84d5871e 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java -@@ -145,9 +145,26 @@ public class CraftContainer extends AbstractContainerMenu { +@@ -150,9 +150,26 @@ public class CraftContainer extends AbstractContainerMenu { case PLAYER: case CHEST: case ENDER_CHEST: @@ -38,7 +38,7 @@ index 1ce328bed5cf3d087a3f7dc9236153381d758493..20f2b9945eaa58e05b417d9cca7c30dd case DROPPER: this.delegate = new DispenserMenu(windowId, bottom, top); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java -index c6159c70f7a37b9bffe268b91905ce848d1d2927..1ae08daecb7f072e0afaae327bad64e43c3ae027 100644 +index f850e6cea92edc87ed54cf54488b5ebb606913ed..f4db38de4348fb03db0b769bd5b5993184dd4abb 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java @@ -84,7 +84,7 @@ public class CraftInventory implements Inventory { diff --git a/luminol-server/paper-patches/needupdate/0012-Leaves-Fix-SculkCatalyst-exp-skip.patch b/luminol-server/paper-patches/features/0012-Leaves-Fix-SculkCatalyst-exp-skip.patch similarity index 83% rename from luminol-server/paper-patches/needupdate/0012-Leaves-Fix-SculkCatalyst-exp-skip.patch rename to luminol-server/paper-patches/features/0012-Leaves-Fix-SculkCatalyst-exp-skip.patch index bb8dff8..c11b1e6 100644 --- a/luminol-server/paper-patches/needupdate/0012-Leaves-Fix-SculkCatalyst-exp-skip.patch +++ b/luminol-server/paper-patches/features/0012-Leaves-Fix-SculkCatalyst-exp-skip.patch @@ -1,14 +1,14 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: violetc <58360096+s-yh-china@users.noreply.github.com> -Date: Sun, 6 Apr 2025 10:42:46 +0800 +From: Helvetica Volubi +Date: Sat, 24 May 2025 02:26:33 +0800 Subject: [PATCH] Leaves Fix SculkCatalyst exp skip diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index bef7a026676ab59a84fc33c8af50ad2b9447fd8c..0a678458bcee4ced98d2880821dbff302f59b7f6 100644 +index ee8fcf73665de82fa3968e0998b3221d9088647b..7bb22db40f18be2dbc3ca33a0cb864cf8389ac1e 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -991,7 +991,7 @@ public class CraftEventFactory { +@@ -851,7 +851,7 @@ public class CraftEventFactory { CraftLivingEntity entity = (CraftLivingEntity) victim.getBukkitEntity(); CraftDamageSource bukkitDamageSource = new CraftDamageSource(damageSource); CraftWorld world = (CraftWorld) entity.getWorld(); @@ -17,15 +17,15 @@ index bef7a026676ab59a84fc33c8af50ad2b9447fd8c..0a678458bcee4ced98d2880821dbff30 populateFields(victim, event); // Paper - make cancellable Bukkit.getServer().getPluginManager().callEvent(event); -@@ -1002,6 +1002,7 @@ public class CraftEventFactory { - playDeathSound(victim, event); +@@ -862,6 +862,7 @@ public class CraftEventFactory { + playDeathSound(victim, event, damageSource); // Paper end victim.expToDrop = event.getDroppedExp(); + victim.expToReward = event.getRewardExp(); // Leaves - exp fix lootCheck.run(); // Paper - advancement triggers before destroying items // Paper start - Restore vanilla drops behavior -@@ -1037,6 +1038,7 @@ public class CraftEventFactory { +@@ -897,6 +898,7 @@ public class CraftEventFactory { victim.newLevel = event.getNewLevel(); victim.newTotalExp = event.getNewTotalExp(); victim.expToDrop = event.getDroppedExp();