46 lines
2.1 KiB
Diff
46 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 74b38b853bd7a59f4cf42afed5ee7ca86b34a8c7..f222721c7bfa555a45c34b489a9e7af59a1f183c 100644
|
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
@@ -216,6 +216,7 @@ public class ServerPlayer extends Player {
|
|
private int containerCounter;
|
|
public int latency;
|
|
public boolean wonGame;
|
|
+ private int containerUpdateDelay; // Paper
|
|
|
|
// CraftBukkit start
|
|
public String displayName;
|
|
@@ -591,7 +592,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;
|