From 4019ce9acbe746b7de1f60f5dc970a23cb17b870 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 5a139e2..e182e48 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -234,4 +234,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 6e19244..1e33838 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -65,6 +65,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { this.viewDistance = viewDistance; } // Paper end + private int containerUpdateDelay; // Paper // CraftBukkit start public String displayName; @@ -210,7 +211,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.a((EntityHuman) this)) { this.closeInventory(); this.activeContainer = this.defaultContainer; -- 2.8.2.windows.1