mirror of
https://github.com/LeavesMC/Leaves.git
synced 2025-12-29 03:49:10 +00:00
Don't trigger lootable refresh for non-player interaction
This commit is contained in:
@@ -128,10 +128,10 @@ index 35d2da9d91dcdd89de7c0f4af028fd182376ea8d..d73482fb1e71fe2951e96ae0593de268
|
||||
.withRequiredArg()
|
||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..a1ed0e61e230d56f8f2b327a0f2c5129c00b8b23
|
||||
index 0000000000000000000000000000000000000000..415b726132f549495b5bff09bed2ca4eaf2e01fe
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||
@@ -0,0 +1,831 @@
|
||||
@@ -0,0 +1,836 @@
|
||||
+package top.leavesmc.leaves;
|
||||
+
|
||||
+import com.destroystokyo.paper.util.SneakyThrow;
|
||||
@@ -788,6 +788,11 @@ index 0000000000000000000000000000000000000000..a1ed0e61e230d56f8f2b327a0f2c5129
|
||||
+ useFastItemMergeRaytracing = getBoolean("settings.performance.use-fast-item-merge-raytracing", useFastItemMergeRaytracing);
|
||||
+ }
|
||||
+
|
||||
+ public static boolean dontTriggerLootableRefreshNonPlayer = true;
|
||||
+ private static void dontTriggerLootableRefreshNonPlayer() {
|
||||
+ dontTriggerLootableRefreshNonPlayer = getBoolean("settings.performance.dont-trigger-lootable-refresh-for-non-player", dontTriggerLootableRefreshNonPlayer);
|
||||
+ }
|
||||
+
|
||||
+ public static final class WorldConfig {
|
||||
+
|
||||
+ public final String worldName;
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: violetc <58360096+s-yh-china@users.noreply.github.com>
|
||||
Date: Mon, 17 Jul 2023 22:51:31 +0800
|
||||
Subject: [PATCH] Don't trigger lootable refresh for non-player interaction
|
||||
|
||||
This patch is Powered by Gale(https://github.com/GaleMC/Gale)
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java
|
||||
index 081691f9710ff1115e4308f79ed49fbc38941193..b9f4e2df35a12f6aebd7ef9fca94dd456a34682b 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java
|
||||
@@ -70,6 +70,7 @@ public abstract class RandomizableContainerBlockEntity extends BaseContainerBloc
|
||||
}
|
||||
|
||||
public void unpackLootTable(@Nullable Player player) {
|
||||
+ if (top.leavesmc.leaves.LeavesConfig.dontTriggerLootableRefreshNonPlayer && player == null) return; // Leaves - don't trigger lootable refresh for non-player interaction
|
||||
if (this.lootableData.shouldReplenish(player) && this.level.getServer() != null) { // Paper
|
||||
LootTable lootTable = this.level.getServer().getLootData().getLootTable(this.lootTable);
|
||||
if (player instanceof ServerPlayer) {
|
||||
Reference in New Issue
Block a user