Allow fully disabling farmland trampling

This commit is contained in:
BillyGalbreath
2021-03-15 15:33:16 -05:00
parent 3aa4f68535
commit a99a83bdf3
17 changed files with 53 additions and 43 deletions

View File

@@ -3,22 +3,30 @@ From: Mariell Hoversholm <proximyst@proximyst.com>
Date: Sat, 9 Jan 2021 16:06:40 +0100
Subject: [PATCH] Farmland trampling changes
This lets us choose if only players may trample farmland.
This lets us choose if farmland trampling is fully disabled or only
players may trample farmland.
This lets us choose if entities can stop trampling if they fall a
distance equal to their feather falling level, plus the extra block
necessary to trample in the first place. Feather Falling 1 requires you
to fall over 3+ blocks to trample. FF 2 requires 4+, etc.
necessary to trample in the first place. Feather Falling 1 requires
you to fall over 3+ blocks to trample. FF 2 requires 4+, etc.
diff --git a/src/main/java/net/minecraft/server/BlockSoil.java b/src/main/java/net/minecraft/server/BlockSoil.java
index 73dc0f499c456c21d298013fbab8c79ebcdecd6b..6b65a4b1845c6770f92ceebd04827595725632b5 100644
index 73dc0f499c456c21d298013fbab8c79ebcdecd6b..383a6fa1cbc913c492fea341132bfabf412115c6 100644
--- a/src/main/java/net/minecraft/server/BlockSoil.java
+++ b/src/main/java/net/minecraft/server/BlockSoil.java
@@ -97,6 +97,12 @@ public class BlockSoil extends Block {
@@ -91,12 +91,19 @@ public class BlockSoil extends Block {
}
// Purpur start
+ if (world.purpurConfig.farmlandTramplingDisabled) return;
+ if (world.purpurConfig.farmlandTramplingOnlyPlayers && !(entity instanceof EntityPlayer)) return;
if (world.purpurConfig.farmlandAlpha) {
Block block = world.getType(blockposition.down()).getBlock();
if (block instanceof BlockFence || block instanceof BlockCobbleWall) {
return;
}
}
+ if (world.purpurConfig.farmlandTramplingOnlyPlayers && !(entity instanceof EntityPlayer)) return;
+ if (world.purpurConfig.farmlandTramplingFeatherFalling) {
+ Iterator<ItemStack> armor = entity.getArmorItems().iterator();
+ if (armor.hasNext() && EnchantmentManager.getEnchantmentLevel(Enchantments.PROTECTION_FALL, armor.next()) >= (int) entity.fallDistance)
@@ -28,19 +36,21 @@ index 73dc0f499c456c21d298013fbab8c79ebcdecd6b..6b65a4b1845c6770f92ceebd04827595
if (CraftEventFactory.callEntityChangeBlockEvent(entity, blockposition, Blocks.DIRT.getBlockData()).isCancelled()) {
return;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 2391e1ddbe062dde5cb9a240b0a6a85ed793e569..e248681fc8d1c91077e2135a70347bf4c5282686 100644
index 2391e1ddbe062dde5cb9a240b0a6a85ed793e569..16e95a3c6edd65d943ebab5d894dc4c6a84623e3 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -413,10 +413,14 @@ public class PurpurWorldConfig {
@@ -413,10 +413,16 @@ public class PurpurWorldConfig {
public boolean farmlandBypassMobGriefing = false;
public boolean farmlandGetsMoistFromBelow = false;
public boolean farmlandAlpha = false;
+ public boolean farmlandTramplingDisabled = false;
+ public boolean farmlandTramplingOnlyPlayers = false;
+ public boolean farmlandTramplingFeatherFalling = false;
private void farmlandSettings() {
farmlandBypassMobGriefing = getBoolean("blocks.farmland.bypass-mob-griefing", farmlandBypassMobGriefing);
farmlandGetsMoistFromBelow = getBoolean("blocks.farmland.gets-moist-from-below", farmlandGetsMoistFromBelow);
farmlandAlpha = getBoolean("blocks.farmland.use-alpha-farmland", farmlandAlpha);
+ farmlandTramplingDisabled = getBoolean("blocks.farmland.disable-trampling", farmlandTramplingDisabled);
+ farmlandTramplingOnlyPlayers = getBoolean("blocks.farmland.only-players-trample", farmlandTramplingOnlyPlayers);
+ farmlandTramplingFeatherFalling = getBoolean("blocks.farmland.feather-fall-distance-affects-trampling", farmlandTramplingFeatherFalling);
}

View File

@@ -66,7 +66,7 @@ index 759a8f95038778aead2f33a65a2d8f2d6b26a765..74fda434ed7beb6612f46ed75fdccad5
+ // Purpur end
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index e248681fc8d1c91077e2135a70347bf4c5282686..a494a9e15456cf684c62957e8563ef06627695f9 100644
index 16e95a3c6edd65d943ebab5d894dc4c6a84623e3..b2770122e67123a3a30feafd24d959b6035d65ae 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -111,10 +111,16 @@ public class PurpurWorldConfig {

View File

@@ -37,7 +37,7 @@ index 5a602de5b9ff436e7cfb70c39475be34beddfb8d..5cf4a2b41d7f088eeb7c8003b8b889f3
// CraftBukkit end
this.spawnIn(worldserver);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index a494a9e15456cf684c62957e8563ef06627695f9..c268ec1b3b3e558283d869629079049343b2f15d 100644
index b2770122e67123a3a30feafd24d959b6035d65ae..fef64804d1e4f1de852ec209e0d7ac524896e43e 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -350,6 +350,11 @@ public class PurpurWorldConfig {

View File

@@ -20,7 +20,7 @@ index 8241f3dafa5852bed7a3967e7260b36f47198dba..edfb09fe673a9a7fe4e0410c0c0eeeda
} else {
entityhuman.c(enumhand);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index c268ec1b3b3e558283d869629079049343b2f15d..2db8241602382927ae9365a5026451e199f48d36 100644
index fef64804d1e4f1de852ec209e0d7ac524896e43e..bc5c90b21045ed8b405cd7c489b7c8a8d9226cd8 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -209,10 +209,12 @@ public class PurpurWorldConfig {

View File

@@ -83,10 +83,10 @@ index 964956a0027bf0941ff75d658be760b754772fa0..7c5472a5138011a3376b7b6ec2467bdf
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 2db8241602382927ae9365a5026451e199f48d36..9973677fb2ebce985b25efddc1015c6d5f0758a8 100644
index bc5c90b21045ed8b405cd7c489b7c8a8d9226cd8..82ec9e47dd7fa4008098ca9bb892c79f30b5fa0a 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -569,6 +569,7 @@ public class PurpurWorldConfig {
@@ -571,6 +571,7 @@ public class PurpurWorldConfig {
public boolean blazeRidableInWater = false;
public double blazeMaxY = 256D;
public double blazeMaxHealth = 20.0D;
@@ -94,7 +94,7 @@ index 2db8241602382927ae9365a5026451e199f48d36..9973677fb2ebce985b25efddc1015c6d
private void blazeSettings() {
blazeRidable = getBoolean("mobs.blaze.ridable", blazeRidable);
blazeRidableInWater = getBoolean("mobs.blaze.ridable-in-water", blazeRidableInWater);
@@ -579,6 +580,7 @@ public class PurpurWorldConfig {
@@ -581,6 +582,7 @@ public class PurpurWorldConfig {
set("mobs.blaze.attributes.max_health", oldValue);
}
blazeMaxHealth = getDouble("mobs.blaze.attributes.max_health", blazeMaxHealth);
@@ -102,7 +102,7 @@ index 2db8241602382927ae9365a5026451e199f48d36..9973677fb2ebce985b25efddc1015c6d
}
public boolean catRidable = false;
@@ -793,6 +795,7 @@ public class PurpurWorldConfig {
@@ -795,6 +797,7 @@ public class PurpurWorldConfig {
public boolean endermanBypassMobGriefing = false;
public boolean endermanDespawnEvenWithBlock = false;
public double endermanMaxHealth = 40.0D;
@@ -110,7 +110,7 @@ index 2db8241602382927ae9365a5026451e199f48d36..9973677fb2ebce985b25efddc1015c6d
private void endermanSettings() {
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
@@ -805,6 +808,7 @@ public class PurpurWorldConfig {
@@ -807,6 +810,7 @@ public class PurpurWorldConfig {
set("mobs.enderman.attributes.max_health", oldValue);
}
endermanMaxHealth = getDouble("mobs.enderman.attributes.max_health", endermanMaxHealth);
@@ -118,7 +118,7 @@ index 2db8241602382927ae9365a5026451e199f48d36..9973677fb2ebce985b25efddc1015c6d
}
public boolean endermiteRidable = false;
@@ -1492,6 +1496,7 @@ public class PurpurWorldConfig {
@@ -1494,6 +1498,7 @@ public class PurpurWorldConfig {
public float snowGolemSnowBallModifier = 10.0F;
public double snowGolemAttackDistance = 1.25D;
public double snowGolemMaxHealth = 4.0D;
@@ -126,7 +126,7 @@ index 2db8241602382927ae9365a5026451e199f48d36..9973677fb2ebce985b25efddc1015c6d
private void snowGolemSettings() {
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
@@ -1509,6 +1514,7 @@ public class PurpurWorldConfig {
@@ -1511,6 +1516,7 @@ public class PurpurWorldConfig {
set("mobs.snow_golem.attributes.max_health", oldValue);
}
snowGolemMaxHealth = getDouble("mobs.snow_golem.attributes.max_health", snowGolemMaxHealth);
@@ -134,7 +134,7 @@ index 2db8241602382927ae9365a5026451e199f48d36..9973677fb2ebce985b25efddc1015c6d
}
public boolean squidRidable = false;
@@ -1562,6 +1568,7 @@ public class PurpurWorldConfig {
@@ -1564,6 +1570,7 @@ public class PurpurWorldConfig {
public int striderBreedingTicks = 6000;
public boolean striderGiveSaddleBack = false;
public double striderMaxHealth = 20.0D;
@@ -142,7 +142,7 @@ index 2db8241602382927ae9365a5026451e199f48d36..9973677fb2ebce985b25efddc1015c6d
private void striderSettings() {
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
@@ -1573,6 +1580,7 @@ public class PurpurWorldConfig {
@@ -1575,6 +1582,7 @@ public class PurpurWorldConfig {
set("mobs.strider.attributes.max_health", oldValue);
}
striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth);

View File

@@ -59,7 +59,7 @@ index 8757c6487a433b1fa5c46b50c559aeca82f84b8d..b841f87f9d6b7c9c67e2497607cbd927
return;
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 9973677fb2ebce985b25efddc1015c6d5f0758a8..6481f8a964846ee835c2196197bd765d013377a4 100644
index 82ec9e47dd7fa4008098ca9bb892c79f30b5fa0a..8c25e08dfa7f141a6e1616b96625376f3fa10c5f 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -255,6 +255,7 @@ public class PurpurWorldConfig {

View File

@@ -52,10 +52,10 @@ index 1942fae27051af79b6eb1d790a219da100bf889e..0e2f9777fe1b62f8da20bf7559150e1d
this.a(damagesource);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 6481f8a964846ee835c2196197bd765d013377a4..20c4cd5ffe4d132012f1e55401e08cb894b80294 100644
index 8c25e08dfa7f141a6e1616b96625376f3fa10c5f..5a48219c214c062fee5a1915227923265febc698 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1913,4 +1913,33 @@ public class PurpurWorldConfig {
@@ -1915,4 +1915,33 @@ public class PurpurWorldConfig {
private void imposeTeleportRestrictionsOnGateways() {
imposeTeleportRestrictionsOnGateways = getBoolean("gameplay-mechanics.impose-teleport-restrictions-on-gateways", imposeTeleportRestrictionsOnGateways);
}

View File

@@ -38,10 +38,10 @@ index 3f3be1b2ded6ad118ae7860c1231c7affc0715b6..48174610518af8d053149e609c1b140e
// CraftBukkit start - fire ExplosionPrimeEvent
ExplosionPrimeEvent event = new ExplosionPrimeEvent((org.bukkit.entity.Explosive) this.getBukkitEntity());
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 20c4cd5ffe4d132012f1e55401e08cb894b80294..64657c3c9250d8767702a54bb0ee3a23f43da04a 100644
index 5a48219c214c062fee5a1915227923265febc698..514bcc4af3b9695c17d6e6c1e01e758eb027ab69 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -866,6 +866,7 @@ public class PurpurWorldConfig {
@@ -868,6 +868,7 @@ public class PurpurWorldConfig {
public boolean ghastRidable = false;
public boolean ghastRidableInWater = false;
public double ghastMaxY = 256D;
@@ -49,7 +49,7 @@ index 20c4cd5ffe4d132012f1e55401e08cb894b80294..64657c3c9250d8767702a54bb0ee3a23
public double ghastMaxHealth = 10.0D;
private void ghastSettings() {
ghastRidable = getBoolean("mobs.ghast.ridable", ghastRidable);
@@ -876,6 +877,7 @@ public class PurpurWorldConfig {
@@ -878,6 +879,7 @@ public class PurpurWorldConfig {
set("mobs.ghast.attributes.max-health", null);
set("mobs.ghast.attributes.max_health", oldValue);
}

View File

@@ -42,10 +42,10 @@ index 27bfef57cfa1386e81c6409be49ea6898057e631..a8cda33da336f7c24a341f67a8868169
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 64657c3c9250d8767702a54bb0ee3a23f43da04a..958b0ee8af21e4176e9d35af88294919c509a2c1 100644
index 514bcc4af3b9695c17d6e6c1e01e758eb027ab69..25e5105361a6615da80fe09224f30e14f0e8057b 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -773,6 +773,7 @@ public class PurpurWorldConfig {
@@ -775,6 +775,7 @@ public class PurpurWorldConfig {
public boolean enderDragonAlwaysDropsFullExp = false;
public boolean enderDragonBypassMobGriefing = false;
public double enderDragonMaxHealth = 200.0D;
@@ -53,7 +53,7 @@ index 64657c3c9250d8767702a54bb0ee3a23f43da04a..958b0ee8af21e4176e9d35af88294919
private void enderDragonSettings() {
enderDragonRidable = getBoolean("mobs.ender_dragon.ridable", enderDragonRidable);
enderDragonRidableInWater = getBoolean("mobs.ender_dragon.ridable-in-water", enderDragonRidableInWater);
@@ -789,6 +790,7 @@ public class PurpurWorldConfig {
@@ -791,6 +792,7 @@ public class PurpurWorldConfig {
set("mobs.ender_dragon.attributes.max_health", oldValue);
}
enderDragonMaxHealth = getDouble("mobs.ender_dragon.attributes.max_health", enderDragonMaxHealth);
@@ -61,7 +61,7 @@ index 64657c3c9250d8767702a54bb0ee3a23f43da04a..958b0ee8af21e4176e9d35af88294919
}
public boolean endermanRidable = false;
@@ -1731,6 +1733,7 @@ public class PurpurWorldConfig {
@@ -1733,6 +1735,7 @@ public class PurpurWorldConfig {
public float witherHealthRegenAmount = 1.0f;
public int witherHealthRegenDelay = 20;
public double witherMaxHealth = 300.0D;
@@ -69,7 +69,7 @@ index 64657c3c9250d8767702a54bb0ee3a23f43da04a..958b0ee8af21e4176e9d35af88294919
private void witherSettings() {
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
@@ -1748,6 +1751,7 @@ public class PurpurWorldConfig {
@@ -1750,6 +1753,7 @@ public class PurpurWorldConfig {
set("mobs.wither.attributes.max_health", oldValue);
}
witherMaxHealth = getDouble("mobs.wither.attributes.max_health", witherMaxHealth);

View File

@@ -22,7 +22,7 @@ index f7a031920c68d5d5d505d86ab1b513ac53f5bf84..100ab4ae37a0d71a0d9bc3202802f705
this.o = this.player.locX();
this.p = this.player.locY();
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 958b0ee8af21e4176e9d35af88294919c509a2c1..5f14c6c0e62ce5bece342b850e201357314061b2 100644
index 25e5105361a6615da80fe09224f30e14f0e8057b..4930af515f7bb3b1bbc067e26d1b33027ccfcf17 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -168,6 +168,8 @@ public class PurpurWorldConfig {

View File

@@ -45,7 +45,7 @@ index 3f9062d8eca3ce53c0fb9e9e40330aa4e3296c9a..47e3ac6bcebacd9c424ddcc49774e06e
Object object;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 5f14c6c0e62ce5bece342b850e201357314061b2..1e7c75c1f8830b5c2660c2cf8aab0167916ff501 100644
index 4930af515f7bb3b1bbc067e26d1b33027ccfcf17..9fb065d077cc4282ba44059e8364e99c0238f9c5 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -274,6 +274,7 @@ public class PurpurWorldConfig {

View File

@@ -29,7 +29,7 @@ index 66f188c9eb6431eedfd655a1dd4a35b5141e7196..21fd6689e1e6e837debc3c39d155402b
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 1e7c75c1f8830b5c2660c2cf8aab0167916ff501..bf8a842e7c43946c87c8f27afdf364b1475cf44e 100644
index 9fb065d077cc4282ba44059e8364e99c0238f9c5..05a041c740c5464d348323064af1a1198c9f6a0e 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -419,6 +419,11 @@ public class PurpurWorldConfig {

View File

@@ -43,7 +43,7 @@ index 0e154ee2976694dacf8d41fcd831f21fbbda13af..f2cafb9f9365a3428f8fa0c35e9b6045
// Paper end
if (entityhuman instanceof EntityPlayer) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index bf8a842e7c43946c87c8f27afdf364b1475cf44e..9b7c1b16ad191f58fea0625ebf547431a6e8ddad 100644
index 05a041c740c5464d348323064af1a1198c9f6a0e..83941fca744b9d044078029614d59d48af7ce382 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -170,6 +170,10 @@ public class PurpurWorldConfig {

View File

@@ -18,7 +18,7 @@ index 5cf4a2b41d7f088eeb7c8003b8b889f370a4d214..c3833ea72c34efc9357706dac7afa2db
}
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 9b7c1b16ad191f58fea0625ebf547431a6e8ddad..839b76e406d9374c1b3aff7adee82acaa7d89dc9 100644
index 83941fca744b9d044078029614d59d48af7ce382..0e004e67fb625035ab1db458f74beef9a20efc8f 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -283,6 +283,7 @@ public class PurpurWorldConfig {

View File

@@ -19,10 +19,10 @@ index e20b91b36587d1191f8f9e8dd501607bf085e76d..c9fd8c8e7e36cbab2dcf4b0f5e6d84ed
private int br = Integer.MIN_VALUE;
private int bs;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 839b76e406d9374c1b3aff7adee82acaa7d89dc9..28814c8b5ecab56fca113e741305ac5dc4f49e8c 100644
index 0e004e67fb625035ab1db458f74beef9a20efc8f..9a41f45d0ccc019b44c289af16eacfe7960a2053 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -821,6 +821,7 @@ public class PurpurWorldConfig {
@@ -823,6 +823,7 @@ public class PurpurWorldConfig {
public boolean endermanDespawnEvenWithBlock = false;
public double endermanMaxHealth = 40.0D;
public boolean endermanTakeDamageFromWater = true;
@@ -30,7 +30,7 @@ index 839b76e406d9374c1b3aff7adee82acaa7d89dc9..28814c8b5ecab56fca113e741305ac5d
private void endermanSettings() {
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
@@ -834,6 +835,7 @@ public class PurpurWorldConfig {
@@ -836,6 +837,7 @@ public class PurpurWorldConfig {
}
endermanMaxHealth = getDouble("mobs.enderman.attributes.max_health", endermanMaxHealth);
endermanTakeDamageFromWater = getBoolean("mobs.enderman.takes-damage-from-water", endermanTakeDamageFromWater);

View File

@@ -20,10 +20,10 @@ index c9fd8c8e7e36cbab2dcf4b0f5e6d84ede5851a12..e7568e3df10bc07e9b3b05caa9d41398
} else {
Vec3D vec3d = entityhuman.f(1.0F).d();
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 28814c8b5ecab56fca113e741305ac5dc4f49e8c..45c5b7b9e7b207e25d80c008a87b06b91e81668b 100644
index 9a41f45d0ccc019b44c289af16eacfe7960a2053..6c7afd40d1bde770424216f01e78a07d05077670 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -822,6 +822,8 @@ public class PurpurWorldConfig {
@@ -824,6 +824,8 @@ public class PurpurWorldConfig {
public double endermanMaxHealth = 40.0D;
public boolean endermanTakeDamageFromWater = true;
public boolean endermanAggroSpawnedEndermites = false;
@@ -32,7 +32,7 @@ index 28814c8b5ecab56fca113e741305ac5dc4f49e8c..45c5b7b9e7b207e25d80c008a87b06b9
private void endermanSettings() {
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
@@ -836,6 +838,8 @@ public class PurpurWorldConfig {
@@ -838,6 +840,8 @@ public class PurpurWorldConfig {
endermanMaxHealth = getDouble("mobs.enderman.attributes.max_health", endermanMaxHealth);
endermanTakeDamageFromWater = getBoolean("mobs.enderman.takes-damage-from-water", endermanTakeDamageFromWater);
endermanAggroSpawnedEndermites = getBoolean("mobs.enderman.aggressive-towards-spawned-endermites", endermanAggroSpawnedEndermites);

View File

@@ -36,7 +36,7 @@ index 07a9d462abad9a432dd5a153277839feeabad4bf..e470551fd4078924c3269714e7c60449
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 45c5b7b9e7b207e25d80c008a87b06b91e81668b..2736ac2270e5fbe04bd8e0176f1c779029b890a1 100644
index 6c7afd40d1bde770424216f01e78a07d05077670..e3dccf08a9b931f83e0c0a218f5db60e643f7674 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -261,6 +261,11 @@ public class PurpurWorldConfig {