geforkt von Mirrors/Paper
47 Zeilen
2.1 KiB
Diff
47 Zeilen
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 6b527d72309a38eec35de5d8d30a9def9f6df783..421e51892ca431409b9b52e7901ca42c44d9e6dd 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -232,4 +232,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 a2227d2b29f2f78d0b7fc8f0650f107b51ca97fc..948d42f77b7c284e53f9d90f8e51fbf2b906732a 100644
|
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
@@ -219,6 +219,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;
|