47 lines
2.1 KiB
Diff
47 lines
2.1 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Sudzzy <originmc@outlook.com>
|
|
Date: Wed, 2 Mar 2016 23:34:44 -0600
|
|
Subject: [PATCH] Configurable container update tick rate
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
index 4de86b09c6bc3c1974ce61b550ccb73d37f6f170..5a4c3a8c511f22c8c3240c9c7cd83a65119c1054 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -181,4 +181,9 @@ public class PaperWorldConfig {
|
|
private void mobSpawnerTickRate() {
|
|
mobSpawnerTickRate = getInt("mob-spawner-tick-rate", 1);
|
|
}
|
|
+
|
|
+ public int containerUpdateTickRate;
|
|
+ private void containerUpdateTickRate() {
|
|
+ containerUpdateTickRate = getInt("container-update-tick-rate", 1);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
index 505cf31d1cc89d463c1b61fdf9b2247ce2743dc8..3f676bab4448de3658a4c631916740be7be6a193 100644
|
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
@@ -217,6 +217,7 @@ public class ServerPlayer extends Player {
|
|
private int containerCounter;
|
|
public int latency;
|
|
public boolean wonGame;
|
|
+ private int containerUpdateDelay; // Paper
|
|
|
|
// CraftBukkit start
|
|
public String displayName;
|
|
@@ -587,7 +588,12 @@ public class ServerPlayer extends Player {
|
|
--this.invulnerableTime;
|
|
}
|
|
|
|
- this.containerMenu.broadcastChanges();
|
|
+ // Paper start - Configurable container update tick rate
|
|
+ if (--containerUpdateDelay <= 0) {
|
|
+ this.containerMenu.broadcastChanges();
|
|
+ containerUpdateDelay = level.paperConfig.containerUpdateTickRate;
|
|
+ }
|
|
+ // Paper end
|
|
if (!this.level.isClientSide && !this.containerMenu.stillValid(this)) {
|
|
this.closeContainer();
|
|
this.containerMenu = this.inventoryMenu;
|