From b8e78ccacc247ac547456ead079b6c1d44a26830 Mon Sep 17 00:00:00 2001 From: gsand Date: Tue, 1 Mar 2016 13:43:16 -0600 Subject: [PATCH] Player Exhaustion Multipliers diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java index 03a4fb4..6e82c3a 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -97,4 +97,13 @@ public class PaperWorldConfig { fishingMaxTicks = getInt("fishing-time-range.MaximumTicks", 900); log("Fishing time ranges are between " + fishingMinTicks +" and " + fishingMaxTicks + " ticks"); } + + public float blockBreakExhaustion; + public float playerSwimmingExhaustion; + public void exhaustionValues() { + blockBreakExhaustion = getFloat("player-exhaustion.block-break", 0.025F); + playerSwimmingExhaustion = getFloat("player-exhaustion.swimming", 0.015F); + log("Player exhaustion penalty for breaking blocks is " + blockBreakExhaustion); + log("Player exhaustion penalty for swimming is " + playerSwimmingExhaustion); + } } diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java index 1d2f580..bed5577 100644 --- a/src/main/java/net/minecraft/server/Block.java +++ b/src/main/java/net/minecraft/server/Block.java @@ -409,7 +409,7 @@ public class Block { public void a(World world, EntityHuman entityhuman, BlockPosition blockposition, IBlockData iblockdata, TileEntity tileentity, ItemStack itemstack) { entityhuman.b(StatisticList.a(this)); - entityhuman.applyExhaustion(0.025F); + entityhuman.applyExhaustion(world.paperConfig.blockBreakExhaustion); // Paper - Configurable block break exhaustion if (this.o() && EnchantmentManager.getEnchantmentLevel(Enchantments.SILK_TOUCH, itemstack) > 0) { ItemStack itemstack1 = this.u(iblockdata); diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java index ba32125..17fbc17 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -1449,13 +1449,13 @@ public abstract class EntityHuman extends EntityLiving { i = Math.round(MathHelper.sqrt(d0 * d0 + d1 * d1 + d2 * d2) * 100.0F); if (i > 0) { this.a(StatisticList.q, i); - this.applyExhaustion(0.015F * (float) i * 0.01F); + this.applyExhaustion(world.paperConfig.playerSwimmingExhaustion); // Paper - Configurable swimming exhaustion } } else if (this.isInWater()) { i = Math.round(MathHelper.sqrt(d0 * d0 + d2 * d2) * 100.0F); if (i > 0) { this.a(StatisticList.m, i); - this.applyExhaustion(0.015F * (float) i * 0.01F); + this.applyExhaustion(world.paperConfig.playerSwimmingExhaustion); // Paper - Configurable swimming exhaustion } } else if (this.n_()) { if (d1 > 0.0D) { -- 2.7.3