From ad5a57826bb72f193f38d159b7370ce59a6c7d67 Mon Sep 17 00:00:00 2001 From: Sudzzy 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 40766d81c7..71af3fcfed 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -170,4 +170,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/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java index 95ab3d2cda..a279bf9383 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -71,6 +71,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { public boolean f; public int ping; public boolean viewingCredits; + private int containerUpdateDelay; // Paper // CraftBukkit start public String displayName; @@ -334,7 +335,12 @@ public class EntityPlayer extends EntityHuman implements ICrafting { --this.noDamageTicks; } - this.activeContainer.b(); + // Paper start - Configurable container update tick rate + if (--containerUpdateDelay <= 0) { + this.activeContainer.b(); + containerUpdateDelay = world.paperConfig.containerUpdateTickRate; + } + // Paper end if (!this.world.isClientSide && !this.activeContainer.canUse(this)) { this.closeInventory(); this.activeContainer = this.defaultContainer; -- 2.19.0