mirror of
https://github.com/Samsuik/Sakura.git
synced 2025-12-22 08:19:26 +00:00
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@691d452 Fix bundled spark permission check (#11355) PaperMC/Paper@012c527 Update Velocity natives (#11347) PaperMC/Paper@953e6e9 Fire BlockExpEvent on grindstone use (#11346) PaperMC/Paper@10f5879 Change condition check order of entity tracking Y (#11348) PaperMC/Paper@805a974 Improve console completion with brig suggestions (#9251) PaperMC/Paper@e0021b1 Fix allowSpiderWorldBorderClimbing world config (#11321) PaperMC/Paper@3db4758 Check dead flag in isAlive() (#11330) PaperMC/Paper@21f125f Revert velocity natives to 3.1.2 (#11368) PaperMC/Paper@0e82527 Fix NPE while trying to respawn an already disconnected player (#11353) PaperMC/Paper@5d91bef Fix shulkerbox loot table replenish (#11366) PaperMC/Paper@a8e6a93 Deprecate for removal all OldEnum-related methods (#11371) PaperMC/Paper@925c3b9 Add FeatureFlag API (#8952) PaperMC/Paper@426f992 Enchantment is data-driven, so not FeatureDependant (#11377) PaperMC/Paper@1ba1be7 Update Velocity natives again PaperMC/Paper@7632de5 Tag Lifecycle Events (#10993) PaperMC/Paper@b09eaf2 Add Item serialization as json api (#11235) PaperMC/Paper@971a7a5 Add Decorated Pot Cracked API (#11365) PaperMC/Paper@61fe23c deprecate isEnabledByFeature in Item/BlockType PaperMC/Paper@e945cfe Fix PaperServerListPingEvent#getPlayerSample not being populated or used (#11387) PaperMC/Paper@4ff58c4 Update spark PaperMC/Paper@d1a72ea Updated Upstream (Bukkit/CraftBukkit/Spigot) (#11405) PaperMC/Paper@0a53f1d Set default drop behavior for player deaths (#11380) PaperMC/Paper@951e7dd Fix TrialSpawner forgetting assigned mob when placed by player (#11381) PaperMC/Paper@13a2395 Fix enable-player-collisions playing sounds when set to false (#11390) PaperMC/Paper@1348e44 Prevent NPE when serializing unresolved profile (#11407) PaperMC/Paper@2aaf436 Validate slot in PlayerInventory#setSlot (#11399) PaperMC/Paper@5c82955 Only mark decorations dirty if a removal actually occurs (#11413) PaperMC/Paper@c5a1066 Remove wall-time / unused skip tick protection (#11412)
This commit is contained in:
@@ -6,7 +6,7 @@ Subject: [PATCH] Local Config and Value Storage API
|
||||
|
||||
diff --git a/src/main/java/me/samsuik/sakura/local/config/LocalConfigManager.java b/src/main/java/me/samsuik/sakura/local/config/LocalConfigManager.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..00953ca239c677ece37715b759a1f02608e252be
|
||||
index 0000000000000000000000000000000000000000..58e2bada4d9120a4802def5caece906fd1628f67
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/me/samsuik/sakura/local/config/LocalConfigManager.java
|
||||
@@ -0,0 +1,141 @@
|
||||
@@ -113,7 +113,7 @@ index 0000000000000000000000000000000000000000..00953ca239c677ece37715b759a1f026
|
||||
+ long chunkKey = ChunkPos.asLong(position.getX() >> 4, position.getZ() >> 4);
|
||||
+
|
||||
+ LocalValueConfig local = this.configMap.computeIfAbsent(chunkKey, (key) -> {
|
||||
+ LocalValueConfig config = new LocalValueConfig(new Expiry(MinecraftServer.currentTickLong, 600));
|
||||
+ LocalValueConfig config = new LocalValueConfig(new Expiry(MinecraftServer.currentTick, 600));
|
||||
+
|
||||
+ // defaults from sakura config
|
||||
+ config.init(level);
|
||||
@@ -129,11 +129,11 @@ index 0000000000000000000000000000000000000000..00953ca239c677ece37715b759a1f026
|
||||
+ return config;
|
||||
+ });
|
||||
+
|
||||
+ local.expiry().refresh(MinecraftServer.currentTickLong);
|
||||
+ local.expiry().refresh(MinecraftServer.currentTick);
|
||||
+ return local;
|
||||
+ }
|
||||
+
|
||||
+ public synchronized void expire(long tick) {
|
||||
+ public synchronized void expire(int tick) {
|
||||
+ if (tick % 200 != 0) return;
|
||||
+
|
||||
+ // remove expired
|
||||
@@ -227,14 +227,14 @@ index 0000000000000000000000000000000000000000..5b3e2cca7ee16bc6ecfa0f29438fa658
|
||||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 741ca90ca91c77f3cc58a7020169165b20250225..39cc9aba054696c063133d529e79594a5ce2c0cd 100644
|
||||
index f7a636990d581ad0230317a716d2662ea25480e3..f0ba7597de6f1eb025639cbe0f35f51d839fe4c2 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1820,6 +1820,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1818,6 +1818,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
this.profiler.pop();
|
||||
this.profiler.pop();
|
||||
worldserver.explosionDensityCache.clear(); // Paper - Optimize explosions
|
||||
+ worldserver.localConfig().expire(currentTickLong); // Sakura - add local config
|
||||
+ worldserver.localConfig().expire(currentTick); // Sakura - add local config
|
||||
}
|
||||
this.isIteratingOverLevels = false; // Paper - Throw exception on world create while being ticked
|
||||
|
||||
@@ -256,7 +256,7 @@ index 7da2fc17f6e7bf888ef0c2a8eba0fc3b4c10436e..c811bc64d0686fdec58defb707d57e53
|
||||
public final com.destroystokyo.paper.antixray.ChunkPacketBlockController chunkPacketBlockController; // Paper - Anti-Xray
|
||||
public final co.aikar.timings.WorldTimingsHandler timings; // Paper
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 90d4834f97d3ba996d46493246b1947511553424..a132b4e10b0c6d0818bd406dcf93d317f0a0774a 100644
|
||||
index cd3381d8225e0322b3e285b3c4aa0a1265a91cc0..7d70fb7553a04bebf9300b0372afd36802b7045c 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -256,6 +256,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
Reference in New Issue
Block a user