Add item immunities option for cactus

This commit is contained in:
BillyGalbreath
2021-01-15 10:18:43 -06:00
parent 7356e48485
commit adcd1d2847
65 changed files with 239 additions and 215 deletions

View File

@@ -5,16 +5,23 @@ Subject: [PATCH] Item entity immunities
diff --git a/src/main/java/org/bukkit/entity/Item.java b/src/main/java/org/bukkit/entity/Item.java
index 0ee072645ecf1bf5feb74de6960947ef76db366e..bc1f3f1c6f7be2e478576740d119c8a36b032912 100644
index 0ee072645ecf1bf5feb74de6960947ef76db366e..b96d2d8c9129b1a0363951fbb637815be3ce8d72 100644
--- a/src/main/java/org/bukkit/entity/Item.java
+++ b/src/main/java/org/bukkit/entity/Item.java
@@ -120,4 +120,34 @@ public interface Item extends Entity {
@@ -120,4 +120,41 @@ public interface Item extends Entity {
*/
public void setWillAge(boolean willAge);
// Paper end
+
+ // Purpur start
+ /**
+ * Check if item is immune to cactus
+ *
+ * @return True if immune to cactus
+ */
+ boolean isImmuneToCactus();
+
+ /**
+ * Set whether or not this item is immune to explosions
+ *
+ * @param immuneToExplosion True to make immune to explosions

View File

@@ -17,41 +17,47 @@ index 982b00049149bba1c49bb2a0ecaed38ad4c4a267..929b909f05fa226ea3305671a7932475
return this.O == tag;
}
diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java
index d99cecc4075338d7b8f154ab94d8ac04190ba371..cbe03923d468bf75adc10245ebd9f63ff10987f9 100644
index d99cecc4075338d7b8f154ab94d8ac04190ba371..ec37d2c3b0393c43097bdfc6064ebe3ab8bc28ce 100644
--- a/src/main/java/net/minecraft/server/EntityItem.java
+++ b/src/main/java/net/minecraft/server/EntityItem.java
@@ -23,6 +23,8 @@ public class EntityItem extends Entity {
@@ -23,6 +23,9 @@ public class EntityItem extends Entity {
public final float b;
private int lastTick = MinecraftServer.currentTick - 1; // CraftBukkit
public boolean canMobPickup = true; // Paper
+ public boolean immuneToCactus = false; // Purpur
+ public boolean immuneToExplosion = false; // Purpur
+ public boolean immuneToFire = false; // Purpur
public EntityItem(EntityTypes<? extends EntityItem> entitytypes, World world) {
super(entitytypes, world);
@@ -274,6 +276,12 @@ public class EntityItem extends Entity {
@@ -274,6 +277,16 @@ public class EntityItem extends Entity {
return false;
} else if (!this.getItemStack().getItem().a(damagesource)) {
return false;
+ // Purpur start
+ } else if (immuneToCactus && damagesource == DamageSource.CACTUS) {
+ respawnOnClient();
+ return false;
+ } else if (immuneToFire && (damagesource.isFire() || damagesource == DamageSource.FIRE)) {
+ return false;
+ } else if (immuneToExplosion && damagesource.isExplosion()) {
+ respawnOnClient(); return false;
+ respawnOnClient();
+ return false;
+ // Purpur end
} else {
// CraftBukkit start
if (org.bukkit.craftbukkit.event.CraftEventFactory.handleNonLivingEntityDamageEvent(this, damagesource, f)) {
@@ -454,6 +462,8 @@ public class EntityItem extends Entity {
@@ -454,6 +467,9 @@ public class EntityItem extends Entity {
com.google.common.base.Preconditions.checkArgument(!itemstack.isEmpty(), "Cannot drop air"); // CraftBukkit
this.getDataWatcher().set(EntityItem.ITEM, itemstack);
this.getDataWatcher().markDirty(EntityItem.ITEM); // CraftBukkit - SPIGOT-4591, must mark dirty
+ if (world.purpurConfig.itemImmuneToCactus.contains(itemstack.getItem())) immuneToCactus = true; // Purpur
+ if (world.purpurConfig.itemImmuneToExplosion.contains(itemstack.getItem())) immuneToExplosion = true; // Purpur
+ if (world.purpurConfig.itemImmuneToFire.contains(itemstack.getItem())) immuneToFire = true; // Purpur
}
@Override
@@ -535,4 +545,15 @@ public class EntityItem extends Entity {
@@ -535,4 +551,15 @@ public class EntityItem extends Entity {
super.setPositionRaw(x, y, z);
}
// Paper end - fix MC-4
@@ -88,16 +94,22 @@ index 228236bce14bfdf930570b453862dcfaae9e4823..ad06bd81eded5d60f16c2d0ad1a4390f
int i;
int j;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 886c3b98d6bff04a93cd963a092654ef1c9729d1..793c43299e71526cca01dba3badf06dca52333c6 100644
index 886c3b98d6bff04a93cd963a092654ef1c9729d1..75250392135f416e766e44ffdad7eecd06a89ae5 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -101,6 +101,21 @@ public class PurpurWorldConfig {
@@ -101,6 +101,27 @@ public class PurpurWorldConfig {
}
}
+ public List<Item> itemImmuneToCactus = new ArrayList<>();
+ public List<Item> itemImmuneToExplosion = new ArrayList<>();
+ public List<Item> itemImmuneToFire = new ArrayList<>();
+ private void itemSettings() {
+ itemImmuneToCactus.clear();
+ getList("gameplay-mechanics.item.immune.cactus", new ArrayList<>()).forEach(key -> {
+ Item item = IRegistry.ITEM.get(new MinecraftKey(key.toString()));
+ if (item != Items.AIR) itemImmuneToCactus.add(item);
+ });
+ itemImmuneToExplosion.clear();
+ getList("gameplay-mechanics.item.immune.explosion", new ArrayList<>()).forEach(key -> {
+ Item item = IRegistry.ITEM.get(new MinecraftKey(key.toString()));
@@ -114,16 +126,21 @@ index 886c3b98d6bff04a93cd963a092654ef1c9729d1..793c43299e71526cca01dba3badf06dc
public boolean idleTimeoutTickNearbyEntities = true;
public boolean idleTimeoutCountAsSleeping = false;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
index bcbaad11852a51436a00c8e172bdd841ba93ec3c..96628c39e315d57b0153266cee48ee85ee3a0841 100644
index bcbaad11852a51436a00c8e172bdd841ba93ec3c..8e8eaa2df20773948ec160b94798fb8ca74c326a 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
@@ -114,4 +114,26 @@ public class CraftItem extends CraftEntity implements Item {
@@ -114,4 +114,31 @@ public class CraftItem extends CraftEntity implements Item {
public EntityType getType() {
return EntityType.DROPPED_ITEM;
}
+
+ // Purpur start
+ @Override
+ public boolean isImmuneToCactus() {
+ return item.immuneToCactus;
+ }
+
+ @Override
+ public void setImmuneToExplosion(boolean immuneToExplosion) {
+ item.immuneToExplosion = immuneToExplosion;
+ }

View File

@@ -193,10 +193,10 @@ index e021c43b43839c00f81a01bfbec59c546d61ba50..505c83f3e3ad61c2d4d40c4df017e1f7
protected void initDatawatcher() {
super.initDatawatcher();
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 793c43299e71526cca01dba3badf06dca52333c6..b3deaaea159546509fc7cff2d843455461520dfa 100644
index 75250392135f416e766e44ffdad7eecd06a89ae5..54afa5afa20f317d55b36df0aa325e0ac3e814a7 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -257,6 +257,15 @@ public class PurpurWorldConfig {
@@ -263,6 +263,15 @@ public class PurpurWorldConfig {
creeperChargedChance = getDouble("mobs.creeper.naturally-charged-chance", creeperChargedChance);
}
@@ -212,7 +212,7 @@ index 793c43299e71526cca01dba3badf06dca52333c6..b3deaaea159546509fc7cff2d8434554
public boolean enderDragonAlwaysDropsEggBlock = false;
public boolean enderDragonAlwaysDropsFullExp = false;
private void enderDragonSettings() {
@@ -296,6 +305,15 @@ public class PurpurWorldConfig {
@@ -302,6 +311,15 @@ public class PurpurWorldConfig {
giantMaxHealth = getDouble("mobs.giant.attributes.max-health", giantMaxHealth);
}
@@ -228,7 +228,7 @@ index 793c43299e71526cca01dba3badf06dca52333c6..b3deaaea159546509fc7cff2d8434554
public double illusionerMovementSpeed = 0.5D;
public double illusionerFollowRange = 18.0D;
public double illusionerMaxHealth = 32.0D;
@@ -371,8 +389,35 @@ public class PurpurWorldConfig {
@@ -377,8 +395,35 @@ public class PurpurWorldConfig {
witherSkeletonTakesWitherDamage = getBoolean("mobs.wither_skeleton.takes-wither-damage", witherSkeletonTakesWitherDamage);
}

View File

@@ -321,10 +321,10 @@ index 3a70900c73e3a6c4f40cf74406534f4bfd3eb67b..dfce36368da9bdd9285c490a802f7a0c
return entityliving != null ? EntityPhantom.this.a(EntityPhantom.this.getGoalTarget(), PathfinderTargetCondition.a) : false;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index b3deaaea159546509fc7cff2d843455461520dfa..74aee0687cb8aa7e4b7efbf34d6374a516d873c0 100644
index 54afa5afa20f317d55b36df0aa325e0ac3e814a7..4d12719b4b695328e364d4c39f5d54cd00522f09 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -333,6 +333,15 @@ public class PurpurWorldConfig {
@@ -339,6 +339,15 @@ public class PurpurWorldConfig {
ironGolemCanSwim = getBoolean("mobs.iron_golem.can-swim", ironGolemCanSwim);
}

View File

@@ -245,10 +245,10 @@ index fb650c09dbcefa0ff021f7c508ff6811a48bee7a..68cce071c740c90149225b4a28af8492
public int c() {
return this.d;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 74aee0687cb8aa7e4b7efbf34d6374a516d873c0..f60bc17cf25211bf0c9007307c54821aecc7bb96 100644
index 4d12719b4b695328e364d4c39f5d54cd00522f09..7b3714ff8b7e6dafe1475c9fc176a69d60e8eef7 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -336,10 +336,34 @@ public class PurpurWorldConfig {
@@ -342,10 +342,34 @@ public class PurpurWorldConfig {
public double phantomAttackedByCrystalRadius = 0.0D;
public float phantomAttackedByCrystalDamage = 1.0F;
public double phantomOrbitCrystalRadius = 0.0D;

View File

@@ -18,7 +18,7 @@ index 24a5c64b65f0098b1395d352cc2f99bbbbaf9c94..738535d01adf8bfd895b5057e5950422
}
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index f60bc17cf25211bf0c9007307c54821aecc7bb96..3b8d35ef70703f47f554cbbe6637924103595f6f 100644
index 7b3714ff8b7e6dafe1475c9fc176a69d60e8eef7..240f1592b04848fc0c45c5ffe4c59145e043c16a 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -2,6 +2,7 @@ package net.pl3x.purpur;
@@ -37,7 +37,7 @@ index f60bc17cf25211bf0c9007307c54821aecc7bb96..3b8d35ef70703f47f554cbbe66379241
import static net.pl3x.purpur.PurpurConfig.log;
@@ -194,6 +196,22 @@ public class PurpurWorldConfig {
@@ -200,6 +202,22 @@ public class PurpurWorldConfig {
});
}

View File

@@ -30,10 +30,10 @@ index 21c5ad83a95bcd23071423c0e8336656b760fcde..521d161a3d015b641b61de21401c79ac
public static boolean a(World world) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 3b8d35ef70703f47f554cbbe6637924103595f6f..6a8b0cb12c9465e5047a4b5e4c2ee667c9a6c12f 100644
index 240f1592b04848fc0c45c5ffe4c59145e043c16a..3d6f4de01409c70c5f4d2fcd7a52d158aa0fdf80 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -233,6 +233,22 @@ public class PurpurWorldConfig {
@@ -239,6 +239,22 @@ public class PurpurWorldConfig {
lavaSpeedNotNether = getInt("blocks.lava.speed.not-nether", lavaSpeedNotNether);
}

View File

@@ -104,7 +104,7 @@ index 9b05adc3a834ce1f063c3b00505faed5e4ff66ba..5db09c913d7a0c6feef4e3fa22b22235
event = new PlayerInteractEntityEvent((Player) this.getPlayer(), entity.getBukkitEntity(), (packetplayinuseentity.c() == EnumHand.OFF_HAND) ? EquipmentSlot.OFF_HAND : EquipmentSlot.HAND);
} else {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 6a8b0cb12c9465e5047a4b5e4c2ee667c9a6c12f..681400a7010444019440ffaa98de1a50e2662485 100644
index 3d6f4de01409c70c5f4d2fcd7a52d158aa0fdf80..d7635a3b2abb15407f55119bc29a5ee583ea714a 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -103,6 +103,11 @@ public class PurpurWorldConfig {
@@ -116,6 +116,6 @@ index 6a8b0cb12c9465e5047a4b5e4c2ee667c9a6c12f..681400a7010444019440ffaa98de1a50
+ entityLifeSpan = getInt("gameplay-mechanics.entity-lifespan", entityLifeSpan);
+ }
+
public List<Item> itemImmuneToCactus = new ArrayList<>();
public List<Item> itemImmuneToExplosion = new ArrayList<>();
public List<Item> itemImmuneToFire = new ArrayList<>();
private void itemSettings() {

View File

@@ -48,10 +48,10 @@ index a86e29ff086a4fe8aa4e8395ba420c0aff8f0be0..4134d9a1e649c70164a28df615bb43e8
+ // Purpur end
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 681400a7010444019440ffaa98de1a50e2662485..4c878b65a271b0a014408034b0137b8d98f118ca 100644
index d7635a3b2abb15407f55119bc29a5ee583ea714a..876aaf4fcfef01427a898dcf8c8db334334814b0 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -178,6 +178,11 @@ public class PurpurWorldConfig {
@@ -184,6 +184,11 @@ public class PurpurWorldConfig {
playerInvulnerableWhileAcceptingResourcePack = getBoolean("gameplay-mechanics.player.invulnerable-while-accepting-resource-pack", playerInvulnerableWhileAcceptingResourcePack);
}

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Squid EAR immunity
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 4c878b65a271b0a014408034b0137b8d98f118ca..c66aa809024cc351d68693c899f7741516555f4e 100644
index 876aaf4fcfef01427a898dcf8c8db334334814b0..5c22c9166c6f6d65e89325653b7ee959ebff6939 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -437,6 +437,11 @@ public class PurpurWorldConfig {
@@ -443,6 +443,11 @@ public class PurpurWorldConfig {
snowGolemPutPumpkinBack = getBoolean("mobs.snow_golem.pumpkin-can-be-added-back", snowGolemPutPumpkinBack);
}

View File

@@ -70,10 +70,10 @@ index 4c379916d8d7797038d2980761c49f44c010dea8..ea6b61c9b88f33d29f7266d7614c8037
public static final Item dr = a(Blocks.JACK_O_LANTERN, CreativeModeTab.b);
public static final Item ds = a(Blocks.OAK_TRAPDOOR, CreativeModeTab.d);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index c66aa809024cc351d68693c899f7741516555f4e..3ce43e93f07cf728c9b0cf6f717d9ec7342bcb9e 100644
index 5c22c9166c6f6d65e89325653b7ee959ebff6939..42399ce5b19f4e96087bde3c6902a5c8e78d6c50 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -392,6 +392,9 @@ public class PurpurWorldConfig {
@@ -398,6 +398,9 @@ public class PurpurWorldConfig {
public int phantomSpawnOverheadRadius = 10;
public int phantomSpawnMinPerAttempt = 1;
public int phantomSpawnMaxPerAttempt = -1;
@@ -83,7 +83,7 @@ index c66aa809024cc351d68693c899f7741516555f4e..3ce43e93f07cf728c9b0cf6f717d9ec7
private void phantomSettings() {
phantomAttackedByCrystalRadius = getDouble("mobs.phantom.attacked-by-crystal-range", phantomAttackedByCrystalRadius);
phantomAttackedByCrystalDamage = (float) getDouble("mobs.phantom.attacked-by-crystal-damage", phantomAttackedByCrystalDamage);
@@ -408,6 +411,9 @@ public class PurpurWorldConfig {
@@ -414,6 +417,9 @@ public class PurpurWorldConfig {
phantomSpawnOverheadRadius = getInt("mobs.phantom.spawn.overhead.radius", phantomSpawnOverheadRadius);
phantomSpawnMinPerAttempt = getInt("mobs.phantom.spawn.per-attempt.min", phantomSpawnMinPerAttempt);
phantomSpawnMaxPerAttempt = getInt("mobs.phantom.spawn.per-attempt.max", phantomSpawnMaxPerAttempt);

View File

@@ -18,10 +18,10 @@ index 894089d665e97da31c04c82aaae344b22f83de89..5d37cb14f9cb7e3a1491a3dbcf212926
private boolean fr() {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 3ce43e93f07cf728c9b0cf6f717d9ec7342bcb9e..bf56ba540159525634309cfdf40842c0ebdaa517 100644
index 42399ce5b19f4e96087bde3c6902a5c8e78d6c50..8c730d1ec0eebde4210f5c8eab55eb1b71f9584d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -455,6 +455,7 @@ public class PurpurWorldConfig {
@@ -461,6 +461,7 @@ public class PurpurWorldConfig {
public boolean villagerFollowEmeraldBlock = false;
public int villagerSpawnIronGolemRadius = 0;
public int villagerSpawnIronGolemLimit = 0;
@@ -29,7 +29,7 @@ index 3ce43e93f07cf728c9b0cf6f717d9ec7342bcb9e..bf56ba540159525634309cfdf40842c0
private void villagerSettings() {
villagerBrainTicks = getInt("mobs.villager.brain-ticks", villagerBrainTicks);
villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging);
@@ -463,6 +464,7 @@ public class PurpurWorldConfig {
@@ -469,6 +470,7 @@ public class PurpurWorldConfig {
villagerFollowEmeraldBlock = getBoolean("mobs.villager.follow-emerald-blocks", villagerFollowEmeraldBlock);
villagerSpawnIronGolemRadius = getInt("mobs.villager.spawn-iron-golem.radius", villagerSpawnIronGolemRadius);
villagerSpawnIronGolemLimit = getInt("mobs.villager.spawn-iron-golem.limit", villagerSpawnIronGolemLimit);

View File

@@ -26,10 +26,10 @@ index c2e830db7aa2944a477624e149a3ba66d112b68a..3b4cc9871c123cfd134783745145c407
public abstract BlockPosition b();
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index bf56ba540159525634309cfdf40842c0ebdaa517..be2ea6897e74440307561a81dd8ad4f74dd71a60 100644
index 8c730d1ec0eebde4210f5c8eab55eb1b71f9584d..03de0b6385193b3ba571fd0f8f0bb316a7f158d0 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -266,6 +266,11 @@ public class PurpurWorldConfig {
@@ -272,6 +272,11 @@ public class PurpurWorldConfig {
signRightClickEdit = getBoolean("blocks.sign.right-click-edit", signRightClickEdit);
}

View File

@@ -29,10 +29,10 @@ index 699afb9759083b42fd0608a3417fd3d17ce8f560..f1e1db97d611192ff2d4b635ef81cf59
event.setCancelled(itemstack == null);
this.world.getServer().getPluginManager().callEvent(event);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index be2ea6897e74440307561a81dd8ad4f74dd71a60..9a9d56db381af4d99ebd0bfff54ce5ac04e2d768 100644
index 03de0b6385193b3ba571fd0f8f0bb316a7f158d0..97bace9aac1d907730e991beb3fcd9aa7bbe480c 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -183,6 +183,11 @@ public class PurpurWorldConfig {
@@ -189,6 +189,11 @@ public class PurpurWorldConfig {
teleportIfOutsideBorder = getBoolean("gameplay-mechanics.player.teleport-if-outside-border", teleportIfOutsideBorder);
}

View File

@@ -22,7 +22,7 @@ index 4761ddfedeed54e79788a6f60f06a805efd60ab1..23b350f793539672b6990327ed52e9bb
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 9a9d56db381af4d99ebd0bfff54ce5ac04e2d768..affab8e21b8643e9965959561d4f125f75b845b9 100644
index 97bace9aac1d907730e991beb3fcd9aa7bbe480c..a2aa975ce17ceebee97afb9594ac9f403f162fce 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -40,6 +40,11 @@ public class PurpurWorldConfig {

View File

@@ -61,10 +61,10 @@ index 7b8a470d97ccf0fdcdb8eef9368195486e09913b..d1f9d2884d055efbe72b01f86b0bdaf1
static void a(ISourceBlock isourceblock, Entity entity, EnumDirection enumdirection) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index affab8e21b8643e9965959561d4f125f75b845b9..73b96f608f4e388081f4d7372a0abaed537bf006 100644
index a2aa975ce17ceebee97afb9594ac9f403f162fce..2d426d35a328ad3d5ce11615dc300bfacfef6df4 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -233,8 +233,10 @@ public class PurpurWorldConfig {
@@ -239,8 +239,10 @@ public class PurpurWorldConfig {
}
public boolean dispenserApplyCursedArmor = true;

View File

@@ -35,10 +35,10 @@ index 4aa6b035a6a8ea39401c6566cd286de39f60e942..5e4e59e5c8478b76078fdda14e5ced76
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 73b96f608f4e388081f4d7372a0abaed537bf006..40be126a94a56d2b8a6e8101bff9c74aae563c7d 100644
index 2d426d35a328ad3d5ce11615dc300bfacfef6df4..a1da26acfc1aa6f367206223222bdeb877241ba3 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -216,6 +216,11 @@ public class PurpurWorldConfig {
@@ -222,6 +222,11 @@ public class PurpurWorldConfig {
});
}

View File

@@ -43,7 +43,7 @@ index 689504bb79de406c783a0fb926ed1366cbd213e1..437ab11826d12d743d74f0161ba796b0
this.nextTickListFluid = new TickListServer<>(this, (fluidtype) -> {
return fluidtype == null || fluidtype == FluidTypes.EMPTY;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 40be126a94a56d2b8a6e8101bff9c74aae563c7d..a9fc19ea44e2a46c1f116632e208c57e54077ad8 100644
index a1da26acfc1aa6f367206223222bdeb877241ba3..8c1842e38a617416040ad1c6776a84252004ff90 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -11,8 +11,10 @@ import org.bukkit.configuration.ConfigurationSection;
@@ -57,7 +57,7 @@ index 40be126a94a56d2b8a6e8101bff9c74aae563c7d..a9fc19ea44e2a46c1f116632e208c57e
import java.util.logging.Level;
import static net.pl3x.purpur.PurpurConfig.log;
@@ -183,6 +185,16 @@ public class PurpurWorldConfig {
@@ -189,6 +191,16 @@ public class PurpurWorldConfig {
playerInvulnerableWhileAcceptingResourcePack = getBoolean("gameplay-mechanics.player.invulnerable-while-accepting-resource-pack", playerInvulnerableWhileAcceptingResourcePack);
}

View File

@@ -17,10 +17,10 @@ index 2916ee89ef7a14619703dfbe7efd5c78a2f34337..664f9693368852bfb06a7a3bd0862a10
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index a9fc19ea44e2a46c1f116632e208c57e54077ad8..b17b839af84c475a2141af5168ff5dd2de3c3c5d 100644
index 8c1842e38a617416040ad1c6776a84252004ff90..5fe074cab7afdcb1a30801f2f59b5a3080d93759 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -335,6 +335,11 @@ public class PurpurWorldConfig {
@@ -341,6 +341,11 @@ public class PurpurWorldConfig {
creeperChargedChance = getDouble("mobs.creeper.naturally-charged-chance", creeperChargedChance);
}

View File

@@ -43,10 +43,10 @@ index b21605a62365fe24f315f35bd840b4740fc80f0e..148e4b158734f136832e5c17bdc69634
protected void initPathfinder() {
this.goalSelector.a(0, new EntitySquid.PathfinderGoalSquid(this));
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index b17b839af84c475a2141af5168ff5dd2de3c3c5d..3502db47aa65fb2be8e83ce64b4eb8914cf17554 100644
index 5fe074cab7afdcb1a30801f2f59b5a3080d93759..2a997302e1df398f9ca546a1acfa3a9cf70c7d54 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -483,8 +483,10 @@ public class PurpurWorldConfig {
@@ -489,8 +489,10 @@ public class PurpurWorldConfig {
}
public boolean squidImmuneToEAR = true;

View File

@@ -5071,7 +5071,7 @@ index c314a8c9a921a95cea43b748e2037521d948e1e7..59f3122aab9940cb3c3c1efb2664ab08
public static int dungeonSeed = -1;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 3502db47aa65fb2be8e83ce64b4eb8914cf17554..7ca7888d5e69c860f21ba51054ca1504e82bf216 100644
index 2a997302e1df398f9ca546a1acfa3a9cf70c7d54..2644fbcaa8be55b0c09b79baa0727d04d87a70e2 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -42,11 +42,6 @@ public class PurpurWorldConfig {
@@ -5086,7 +5086,7 @@ index 3502db47aa65fb2be8e83ce64b4eb8914cf17554..7ca7888d5e69c860f21ba51054ca1504
private ConfigurationSection getConfigurationSection(String path) {
ConfigurationSection section = PurpurConfig.config.getConfigurationSection("world-settings." + worldName + "." + path);
return section != null ? section : PurpurConfig.config.getConfigurationSection("world-settings.default." + path);
@@ -309,63 +304,188 @@ public class PurpurWorldConfig {
@@ -315,63 +310,188 @@ public class PurpurWorldConfig {
turtleEggsBreakFromMinecarts = getBoolean("blocks.turtle_egg.break-from-minecarts", turtleEggsBreakFromMinecarts);
}
@@ -5275,7 +5275,7 @@ index 3502db47aa65fb2be8e83ce64b4eb8914cf17554..7ca7888d5e69c860f21ba51054ca1504
public float giantStepHeight = 2.0F;
public float giantJumpHeight = 1.0F;
public double giantMovementSpeed = 0.5D;
@@ -374,6 +494,8 @@ public class PurpurWorldConfig {
@@ -380,6 +500,8 @@ public class PurpurWorldConfig {
public boolean giantHaveHostileAI = false;
public double giantMaxHealth = 100.0D;
private void giantSettings() {
@@ -5284,7 +5284,7 @@ index 3502db47aa65fb2be8e83ce64b4eb8914cf17554..7ca7888d5e69c860f21ba51054ca1504
giantStepHeight = (float) getDouble("mobs.giant.step-height", giantStepHeight);
giantJumpHeight = (float) getDouble("mobs.giant.jump-height", giantJumpHeight);
giantMovementSpeed = getDouble("mobs.giant.movement-speed", giantMovementSpeed);
@@ -388,19 +510,44 @@ public class PurpurWorldConfig {
@@ -394,19 +516,44 @@ public class PurpurWorldConfig {
giantMaxHealth = getDouble("mobs.giant.attributes.max-health", giantMaxHealth);
}
@@ -5329,7 +5329,7 @@ index 3502db47aa65fb2be8e83ce64b4eb8914cf17554..7ca7888d5e69c860f21ba51054ca1504
illusionerMovementSpeed = getDouble("mobs.illusioner.movement-speed", illusionerMovementSpeed);
illusionerFollowRange = getDouble("mobs.illusioner.follow-range", illusionerFollowRange);
if (PurpurConfig.version < 8) {
@@ -411,11 +558,76 @@ public class PurpurWorldConfig {
@@ -417,11 +564,76 @@ public class PurpurWorldConfig {
illusionerMaxHealth = getDouble("mobs.illusioner.attributes.max-health", illusionerMaxHealth);
}
@@ -5406,7 +5406,7 @@ index 3502db47aa65fb2be8e83ce64b4eb8914cf17554..7ca7888d5e69c860f21ba51054ca1504
public double phantomAttackedByCrystalRadius = 0.0D;
public float phantomAttackedByCrystalDamage = 1.0F;
public double phantomOrbitCrystalRadius = 0.0D;
@@ -435,6 +647,11 @@ public class PurpurWorldConfig {
@@ -441,6 +653,11 @@ public class PurpurWorldConfig {
public boolean phantomIgnorePlayersWithTorch = false;
public boolean phantomBurnInDaylight = true;
private void phantomSettings() {
@@ -5418,7 +5418,7 @@ index 3502db47aa65fb2be8e83ce64b4eb8914cf17554..7ca7888d5e69c860f21ba51054ca1504
phantomAttackedByCrystalRadius = getDouble("mobs.phantom.attacked-by-crystal-range", phantomAttackedByCrystalRadius);
phantomAttackedByCrystalDamage = (float) getDouble("mobs.phantom.attacked-by-crystal-damage", phantomAttackedByCrystalDamage);
phantomOrbitCrystalRadius = getDouble("mobs.phantom.orbit-crystal-radius", phantomOrbitCrystalRadius);
@@ -455,40 +672,184 @@ public class PurpurWorldConfig {
@@ -461,40 +678,184 @@ public class PurpurWorldConfig {
phantomIgnorePlayersWithTorch = getBoolean("mobs.phantom.ignore-players-with-torch", phantomIgnorePlayersWithTorch);
}
@@ -5603,7 +5603,7 @@ index 3502db47aa65fb2be8e83ce64b4eb8914cf17554..7ca7888d5e69c860f21ba51054ca1504
public int villagerBrainTicks = 1;
public boolean villagerUseBrainTicksOnlyWhenLagging = true;
public boolean villagerCanBeLeashed = false;
@@ -498,6 +859,8 @@ public class PurpurWorldConfig {
@@ -504,6 +865,8 @@ public class PurpurWorldConfig {
public int villagerSpawnIronGolemLimit = 0;
public boolean villagerCanBreed = true;
private void villagerSettings() {
@@ -5612,7 +5612,7 @@ index 3502db47aa65fb2be8e83ce64b4eb8914cf17554..7ca7888d5e69c860f21ba51054ca1504
villagerBrainTicks = getInt("mobs.villager.brain-ticks", villagerBrainTicks);
villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging);
villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed);
@@ -508,45 +871,108 @@ public class PurpurWorldConfig {
@@ -514,45 +877,108 @@ public class PurpurWorldConfig {
villagerCanBreed = getBoolean("mobs.villager.can-breed", villagerCanBreed);
}

View File

@@ -27,10 +27,10 @@ index 52325b6f212455dd19c7ee5b2d85a85f2d077418..d75d34700e7017b3d09f01f2e05ac1aa
public float a(Explosion explosion, IBlockAccess iblockaccess, BlockPosition blockposition, IBlockData iblockdata, Fluid fluid, float f) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 7ca7888d5e69c860f21ba51054ca1504e82bf216..bda0d06dd8d0fc07a313285d714eab55815310d1 100644
index 2644fbcaa8be55b0c09b79baa0727d04d87a70e2..012246fa0dc596ce13819a33438940c52672e97a 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -140,6 +140,7 @@ public class PurpurWorldConfig {
@@ -146,6 +146,7 @@ public class PurpurWorldConfig {
public boolean boatEjectPlayersOnLand = false;
public boolean disableDropsOnCrammingDeath = false;
public boolean entitiesPickUpLootBypassMobGriefing = false;
@@ -38,7 +38,7 @@ index 7ca7888d5e69c860f21ba51054ca1504e82bf216..bda0d06dd8d0fc07a313285d714eab55
public boolean milkCuresBadOmen = true;
public double tridentLoyaltyVoidReturnHeight = 0.0D;
public double voidDamageHeight = -64.0D;
@@ -148,6 +149,7 @@ public class PurpurWorldConfig {
@@ -154,6 +155,7 @@ public class PurpurWorldConfig {
boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand);
disableDropsOnCrammingDeath = getBoolean("gameplay-mechanics.disable-drops-on-cramming-death", disableDropsOnCrammingDeath);
entitiesPickUpLootBypassMobGriefing = getBoolean("gameplay-mechanics.entities-pick-up-loot-bypass-mob-griefing", entitiesPickUpLootBypassMobGriefing);

View File

@@ -44,10 +44,10 @@ index f68cf834aa65cc4bbb1eb9901586395d41770955..71b6fc480617f040029b2201f24d05af
//this.bossBattle.setProgress(this.getHealth() / this.getMaxHealth()); // Paper - Moved down
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index bda0d06dd8d0fc07a313285d714eab55815310d1..6c50bcc45a4208b1709290944d57793e6f47dcd4 100644
index 012246fa0dc596ce13819a33438940c52672e97a..8d7afc65bf8b399fa49944fb11d14168a351bb2e 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -903,10 +903,21 @@ public class PurpurWorldConfig {
@@ -909,10 +909,21 @@ public class PurpurWorldConfig {
public boolean witherRidable = false;
public boolean witherRidableInWater = false;
public double witherMaxY = 256D;

View File

@@ -72,7 +72,7 @@ index d06c47484ea073695f8135a42c7985bfbafd6b9c..4fa3d50b4f9f2623ca9265db9afb9a36
this.worldDataServer = (WorldDataServer) iworlddataserver;
worldDataServer.world = this;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 6c50bcc45a4208b1709290944d57793e6f47dcd4..b0a0c6cc6b781130cbfd02edc6c5b511090099c0 100644
index 8d7afc65bf8b399fa49944fb11d14168a351bb2e..853f55b91609df363d92cf403eb76e2353d377b1 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -7,6 +7,8 @@ import net.minecraft.server.IRegistry;
@@ -118,7 +118,7 @@ index 6c50bcc45a4208b1709290944d57793e6f47dcd4..b0a0c6cc6b781130cbfd02edc6c5b511
private double getDouble(String path, double def) {
PurpurConfig.config.addDefault("world-settings.default." + path, def);
return PurpurConfig.config.getDouble("world-settings." + worldName + "." + path, PurpurConfig.config.getDouble("world-settings.default." + path));
@@ -155,6 +166,21 @@ public class PurpurWorldConfig {
@@ -161,6 +172,21 @@ public class PurpurWorldConfig {
voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight);
}

View File

@@ -52,10 +52,10 @@ index 826dcf9f7eedc3664d66170b97b2a19552a0dc60..807910c60e6cad58b91474b0477e6fc1
if (!this.raids.containsKey(raid.getId())) {
this.raids.put(raid.getId(), raid);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index b0a0c6cc6b781130cbfd02edc6c5b511090099c0..8a2724489df13cf04200b1f34b3a76e0cdd679d3 100644
index 853f55b91609df363d92cf403eb76e2353d377b1..649b1efbb8f637e91f554e6bbb92fd06c26683ae 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -155,6 +155,7 @@ public class PurpurWorldConfig {
@@ -161,6 +161,7 @@ public class PurpurWorldConfig {
public boolean milkCuresBadOmen = true;
public double tridentLoyaltyVoidReturnHeight = 0.0D;
public double voidDamageHeight = -64.0D;
@@ -63,7 +63,7 @@ index b0a0c6cc6b781130cbfd02edc6c5b511090099c0..8a2724489df13cf04200b1f34b3a76e0
private void miscGameplayMechanicsSettings() {
useBetterMending = getBoolean("gameplay-mechanics.use-better-mending", useBetterMending);
boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand);
@@ -164,6 +165,7 @@ public class PurpurWorldConfig {
@@ -170,6 +171,7 @@ public class PurpurWorldConfig {
milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen);
tridentLoyaltyVoidReturnHeight = getDouble("gameplay-mechanics.trident-loyalty-void-return-height", tridentLoyaltyVoidReturnHeight);
voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight);

View File

@@ -300,10 +300,10 @@ index b9f8ed355421f24306e0cc2bb976589f4b72b548..58f03f1d2e2f9e4c072c727ae202a9e3
public boolean checkIfLeftOwner() { return this.h(); } // Purpur - OBFHELPER
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 8a2724489df13cf04200b1f34b3a76e0cdd679d3..843c57d41106d31ae81f7e926c186db48462cf52 100644
index 649b1efbb8f637e91f554e6bbb92fd06c26683ae..4e75bad4bb9cce557868152b9f2bc3e8cda4d826 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -147,6 +147,35 @@ public class PurpurWorldConfig {
@@ -153,6 +153,35 @@ public class PurpurWorldConfig {
idleTimeoutUpdateTabList = getBoolean("gameplay-mechanics.player.idle-timeout.update-tab-list", idleTimeoutUpdateTabList);
}

View File

@@ -69,10 +69,10 @@ index d835ce3fe7c71333efeed5b9cf2a827bebae97f2..556f7a3ebb5c58a87471b2d098f29ffb
this.targetSelector.a(5, new PathfinderGoalNearestAttackableTarget<>(this, EntityTurtle.class, 10, true, false, EntityTurtle.bo));
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 843c57d41106d31ae81f7e926c186db48462cf52..c6a09b44b5f7289d81a2fd82f91135a8c2932e1f 100644
index 4e75bad4bb9cce557868152b9f2bc3e8cda4d826..d98ddaf02456ff5204a498bb6827bfad08cbc8d6 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1005,12 +1005,14 @@ public class PurpurWorldConfig {
@@ -1011,12 +1011,14 @@ public class PurpurWorldConfig {
public boolean zombieJockeyOnlyBaby = true;
public double zombieJockeyChance = 0.05D;
public boolean zombieJockeyTryExistingChickens = true;

View File

@@ -165,10 +165,10 @@ index 58d958a88ac5af5b889d719d9f1ea90ce45cf184..8e8749095427b44e04582593114cae8c
+ // Purpur end
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index c6a09b44b5f7289d81a2fd82f91135a8c2932e1f..9f26c73dc6685ede1681a6b2ede8c35ccb2580f4 100644
index d98ddaf02456ff5204a498bb6827bfad08cbc8d6..72a16f70bd5be8232b2bc6caf489c64e34a6694c 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -182,6 +182,7 @@ public class PurpurWorldConfig {
@@ -188,6 +188,7 @@ public class PurpurWorldConfig {
public boolean entitiesPickUpLootBypassMobGriefing = false;
public boolean entitiesCanUsePortals = true;
public boolean milkCuresBadOmen = true;
@@ -176,7 +176,7 @@ index c6a09b44b5f7289d81a2fd82f91135a8c2932e1f..9f26c73dc6685ede1681a6b2ede8c35c
public double tridentLoyaltyVoidReturnHeight = 0.0D;
public double voidDamageHeight = -64.0D;
public int raidCooldownSeconds = 0;
@@ -192,6 +193,7 @@ public class PurpurWorldConfig {
@@ -198,6 +199,7 @@ public class PurpurWorldConfig {
entitiesPickUpLootBypassMobGriefing = getBoolean("gameplay-mechanics.entities-pick-up-loot-bypass-mob-griefing", entitiesPickUpLootBypassMobGriefing);
entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals);
milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen);

View File

@@ -38,10 +38,10 @@ index 70b952f10a2af547f58069977ee135469d02f84d..cee226501690e1c00983a01ac82bc738
float f1 = MathHelper.cos(f) * 0.2F;
float f2 = -0.1F + this.b.getRandom().nextFloat() * 0.2F;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 9f26c73dc6685ede1681a6b2ede8c35ccb2580f4..de6b4d078c1b41300bf570d7b6fb0b02e979049c 100644
index 72a16f70bd5be8232b2bc6caf489c64e34a6694c..ae2702c69620c5f30651bb0d52c1694a0dca22a3 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -861,10 +861,12 @@ public class PurpurWorldConfig {
@@ -867,10 +867,12 @@ public class PurpurWorldConfig {
public boolean squidRidable = false;
public boolean squidImmuneToEAR = true;
public double squidOffsetWaterCheck = 0.0D;

View File

@@ -26,10 +26,10 @@ index dd6a93dc78a4589f2c65d1738c432def1285f3e2..8241f3dafa5852bed7a3967e7260b36f
entityhuman.b(StatisticList.ITEM_USED.b(this));
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index de6b4d078c1b41300bf570d7b6fb0b02e979049c..aa648cc1e1d05d38ce81d201e31541c49e9a05bb 100644
index ae2702c69620c5f30651bb0d52c1694a0dca22a3..f2276203d15ab97af87d7bd235eabd84124c2ef3 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -147,6 +147,15 @@ public class PurpurWorldConfig {
@@ -153,6 +153,15 @@ public class PurpurWorldConfig {
idleTimeoutUpdateTabList = getBoolean("gameplay-mechanics.player.idle-timeout.update-tab-list", idleTimeoutUpdateTabList);
}

View File

@@ -39,10 +39,10 @@ index 33804e68931e8b4145b896eedeab79bde78779f2..fabadcd7a21b0e4ad0e2eeadcd8926df
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index aa648cc1e1d05d38ce81d201e31541c49e9a05bb..e853f0e33313cbb7a8f72affebf82476f9eb7f5a 100644
index f2276203d15ab97af87d7bd235eabd84124c2ef3..99b48db3431e9d328e8c293c5bd8dbd531058c17 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -365,6 +365,11 @@ public class PurpurWorldConfig {
@@ -371,6 +371,11 @@ public class PurpurWorldConfig {
spawnerDeactivateByRedstone = getBoolean("blocks.spawner.deactivate-by-redstone", spawnerDeactivateByRedstone);
}

View File

@@ -74,7 +74,7 @@ index 4fa3d50b4f9f2623ca9265db9afb9a36548b5753..802460402d546262fc50a07901b1d30d
public void doMobSpawning(boolean flag, boolean flag1) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index e853f0e33313cbb7a8f72affebf82476f9eb7f5a..bf403f3d02fe63df4e17ec461cc818861cc956a3 100644
index 99b48db3431e9d328e8c293c5bd8dbd531058c17..8f4c9c367fa8101e163bd7497230b3b50398f0fc 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -116,6 +116,13 @@ public class PurpurWorldConfig {

View File

@@ -41,10 +41,10 @@ index e75e676d196d9f5a3409ec50645fab611b0afdad..76ea1d003b43d822e2b85eec3b874015
if (flag1) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index bf403f3d02fe63df4e17ec461cc818861cc956a3..07519a988c61b23904f5c70becbc6c525456c39f 100644
index 8f4c9c367fa8101e163bd7497230b3b50398f0fc..4ad8e9abc52fcd0b46ff0e6153c2e52d6467f1f9 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -333,6 +333,11 @@ public class PurpurWorldConfig {
@@ -339,6 +339,11 @@ public class PurpurWorldConfig {
farmlandGetsMoistFromBelow = getBoolean("blocks.farmland.gets-moist-from-below", farmlandGetsMoistFromBelow);
}

View File

@@ -24,10 +24,10 @@ index 8dd48669c29dd51ed4d535dad0b0319f4bb2250c..099e0d3df219408ebe2a741a02e53eb9
return;
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 07519a988c61b23904f5c70becbc6c525456c39f..bdbf949e3cbef495bcbfb7d8b97a88107b7d110f 100644
index 4ad8e9abc52fcd0b46ff0e6153c2e52d6467f1f9..12f7a05843b261483bf9e7eadab639bdcc0473cc 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -329,8 +329,10 @@ public class PurpurWorldConfig {
@@ -335,8 +335,10 @@ public class PurpurWorldConfig {
}
public boolean farmlandGetsMoistFromBelow = false;

View File

@@ -94,10 +94,10 @@ index aa1b037c0103552761b81318f1d2ad8215bd0370..91aa8a2bc111ee6935ada0ae471fe1a3
this.generator = gen;
this.world = new CraftWorld((WorldServer) this, gen, env);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index bdbf949e3cbef495bcbfb7d8b97a88107b7d110f..309d15804eb7e5087805724c401461375b4745cc 100644
index 12f7a05843b261483bf9e7eadab639bdcc0473cc..3075467164d6ce4b5fc570297eb6ace27f9aee03 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -202,6 +202,7 @@ public class PurpurWorldConfig {
@@ -208,6 +208,7 @@ public class PurpurWorldConfig {
public double tridentLoyaltyVoidReturnHeight = 0.0D;
public double voidDamageHeight = -64.0D;
public int raidCooldownSeconds = 0;
@@ -105,7 +105,7 @@ index bdbf949e3cbef495bcbfb7d8b97a88107b7d110f..309d15804eb7e5087805724c40146137
private void miscGameplayMechanicsSettings() {
useBetterMending = getBoolean("gameplay-mechanics.use-better-mending", useBetterMending);
boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand);
@@ -213,6 +214,7 @@ public class PurpurWorldConfig {
@@ -219,6 +220,7 @@ public class PurpurWorldConfig {
tridentLoyaltyVoidReturnHeight = getDouble("gameplay-mechanics.trident-loyalty-void-return-height", tridentLoyaltyVoidReturnHeight);
voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight);
raidCooldownSeconds = getInt("gameplay-mechanics.raid-cooldown-seconds", raidCooldownSeconds);

View File

@@ -398,10 +398,10 @@ index 9ae7168595dd66860e09ef87f946b18b010e54b1..6c25f667eecdf345289a0dbf885c9d71
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a2fb2e530 100644
index 3075467164d6ce4b5fc570297eb6ace27f9aee03..0f23e96dd6cc109eed3d6ec1c04ac9c36d462ed6 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -416,10 +416,12 @@ public class PurpurWorldConfig {
@@ -422,10 +422,12 @@ public class PurpurWorldConfig {
public boolean beeRidable = false;
public boolean beeRidableInWater = false;
public double beeMaxY = 256D;
@@ -414,7 +414,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean blazeRidable = false;
@@ -436,12 +438,14 @@ public class PurpurWorldConfig {
@@ -442,12 +444,14 @@ public class PurpurWorldConfig {
public int catSpawnDelay = 1200;
public int catSpawnSwampHutScanRange = 16;
public int catSpawnVillageScanRange = 48;
@@ -429,7 +429,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean caveSpiderRidable = false;
@@ -454,10 +458,12 @@ public class PurpurWorldConfig {
@@ -460,10 +464,12 @@ public class PurpurWorldConfig {
public boolean chickenRidable = false;
public boolean chickenRidableInWater = false;
public boolean chickenRetaliate = false;
@@ -442,7 +442,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean codRidable = false;
@@ -468,10 +474,12 @@ public class PurpurWorldConfig {
@@ -474,10 +480,12 @@ public class PurpurWorldConfig {
public boolean cowRidable = false;
public boolean cowRidableInWater = false;
public int cowFeedMushrooms = 0;
@@ -455,7 +455,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean creeperRidable = false;
@@ -499,8 +507,10 @@ public class PurpurWorldConfig {
@@ -505,8 +513,10 @@ public class PurpurWorldConfig {
}
public boolean donkeyRidableInWater = false;
@@ -466,7 +466,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean drownedRidable = false;
@@ -560,10 +570,12 @@ public class PurpurWorldConfig {
@@ -566,10 +576,12 @@ public class PurpurWorldConfig {
public boolean foxRidable = false;
public boolean foxRidableInWater = false;
public boolean foxTypeChangesWithTulips = false;
@@ -479,7 +479,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean ghastRidable = false;
@@ -608,14 +620,18 @@ public class PurpurWorldConfig {
@@ -614,14 +626,18 @@ public class PurpurWorldConfig {
public boolean hoglinRidable = false;
public boolean hoglinRidableInWater = false;
@@ -498,7 +498,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean huskRidable = false;
@@ -660,9 +676,11 @@ public class PurpurWorldConfig {
@@ -666,9 +682,11 @@ public class PurpurWorldConfig {
public boolean llamaRidable = false;
public boolean llamaRidableInWater = false;
@@ -510,7 +510,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean llamaTraderRidable = false;
@@ -681,28 +699,36 @@ public class PurpurWorldConfig {
@@ -687,28 +705,36 @@ public class PurpurWorldConfig {
public boolean mooshroomRidable = false;
public boolean mooshroomRidableInWater = false;
@@ -547,7 +547,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean parrotRidable = false;
@@ -766,10 +792,12 @@ public class PurpurWorldConfig {
@@ -772,10 +798,12 @@ public class PurpurWorldConfig {
public boolean pigRidable = false;
public boolean pigRidableInWater = false;
public boolean pigGiveSaddleBack = false;
@@ -560,7 +560,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean piglinRidable = false;
@@ -797,12 +825,14 @@ public class PurpurWorldConfig {
@@ -803,12 +831,14 @@ public class PurpurWorldConfig {
public boolean polarBearRidableInWater = false;
public String polarBearBreedableItemString = "";
public Item polarBearBreedableItem = null;
@@ -575,7 +575,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean pufferfishRidable = false;
@@ -814,11 +844,13 @@ public class PurpurWorldConfig {
@@ -820,11 +850,13 @@ public class PurpurWorldConfig {
public boolean rabbitRidableInWater = false;
public double rabbitNaturalToast = 0.0D;
public double rabbitNaturalKiller = 0.0D;
@@ -589,7 +589,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean ravagerRidable = false;
@@ -835,9 +867,11 @@ public class PurpurWorldConfig {
@@ -841,9 +873,11 @@ public class PurpurWorldConfig {
public boolean sheepRidable = false;
public boolean sheepRidableInWater = false;
@@ -601,7 +601,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean shulkerRidable = false;
@@ -915,9 +949,11 @@ public class PurpurWorldConfig {
@@ -921,9 +955,11 @@ public class PurpurWorldConfig {
public boolean striderRidable = false;
public boolean striderRidableInWater = false;
@@ -613,7 +613,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean tropicalFishRidable = false;
@@ -927,9 +963,11 @@ public class PurpurWorldConfig {
@@ -933,9 +969,11 @@ public class PurpurWorldConfig {
public boolean turtleRidable = false;
public boolean turtleRidableInWater = false;
@@ -625,7 +625,7 @@ index 309d15804eb7e5087805724c401461375b4745cc..ef0c2320780c623df4dd638c9272110a
}
public boolean vexRidable = false;
@@ -1022,9 +1060,11 @@ public class PurpurWorldConfig {
@@ -1028,9 +1066,11 @@ public class PurpurWorldConfig {
public boolean wolfRidable = false;
public boolean wolfRidableInWater = false;

View File

@@ -188,7 +188,7 @@ index f5802f14b84a5b177ddbdb53a6c3ce892ef310f6..d65375f8849dcbcad4f0fbc456a00524
NBTTagCompound nbttagcompound = this.a("display");
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index ef0c2320780c623df4dd638c9272110a2fb2e530..458aa1882da2015928c334e0f40b14ee36ba667d 100644
index 0f23e96dd6cc109eed3d6ec1c04ac9c36d462ed6..d7d91d05127716210ddfd6ac3886995b3e821f81 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -83,8 +83,10 @@ public class PurpurWorldConfig {
@@ -202,7 +202,7 @@ index ef0c2320780c623df4dd638c9272110a2fb2e530..458aa1882da2015928c334e0f40b14ee
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
}
@@ -199,6 +201,7 @@ public class PurpurWorldConfig {
@@ -205,6 +207,7 @@ public class PurpurWorldConfig {
public boolean entitiesCanUsePortals = true;
public boolean milkCuresBadOmen = true;
public boolean persistentTileEntityDisplayNames = false;
@@ -210,7 +210,7 @@ index ef0c2320780c623df4dd638c9272110a2fb2e530..458aa1882da2015928c334e0f40b14ee
public double tridentLoyaltyVoidReturnHeight = 0.0D;
public double voidDamageHeight = -64.0D;
public int raidCooldownSeconds = 0;
@@ -211,6 +214,7 @@ public class PurpurWorldConfig {
@@ -217,6 +220,7 @@ public class PurpurWorldConfig {
entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals);
milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen);
persistentTileEntityDisplayNames = getBoolean("gameplay-mechanics.persistent-tileentity-display-names-and-lore", persistentTileEntityDisplayNames);

View File

@@ -21,7 +21,7 @@ index 01163ce38602f9345f00ee0535b4e73be7c6d735..a7efce97318fcf95d98f33ad4ac2da69
((EntityInsentient) entityliving).setPersistent();
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 458aa1882da2015928c334e0f40b14ee36ba667d..d4e876fb5dc5f405d5a06982589bf8b4e05b2394 100644
index d7d91d05127716210ddfd6ac3886995b3e821f81..4b0c9b3e83bfdd92645888a15fa32ab147acc2de 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -84,9 +84,11 @@ public class PurpurWorldConfig {

View File

@@ -67,10 +67,10 @@ index 23dca1940375d243531fc4a891f04e937ae2f48f..94ffadb91fec65a721cf0c8fa98bad70
+ // Purpur end
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index d4e876fb5dc5f405d5a06982589bf8b4e05b2394..cf6fa370ce968a882311f1403556cea618c7c7fe 100644
index 4b0c9b3e83bfdd92645888a15fa32ab147acc2de..172fd9bdf9d5e8030f1fcc356195b2889ccbfe3a 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -401,6 +401,16 @@ public class PurpurWorldConfig {
@@ -407,6 +407,16 @@ public class PurpurWorldConfig {
turtleEggsBreakFromMinecarts = getBoolean("blocks.turtle_egg.break-from-minecarts", turtleEggsBreakFromMinecarts);
}

View File

@@ -89,10 +89,10 @@ index 94ffadb91fec65a721cf0c8fa98bad708a2ca269..067df63ab27ecb9fe0a0d012b16efbd5
// Purpur end
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index cf6fa370ce968a882311f1403556cea618c7c7fe..91ba7f0b3ddb2846119e4b74ba501f6b40938702 100644
index 172fd9bdf9d5e8030f1fcc356195b2889ccbfe3a..cf540ac9bc90ba49c3769a0d42fdf2a8e013e62c 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -348,6 +348,11 @@ public class PurpurWorldConfig {
@@ -354,6 +354,11 @@ public class PurpurWorldConfig {
furnaceInfiniteFuel = getBoolean("blocks.furnace.infinite-fuel", furnaceInfiniteFuel);
}
@@ -104,7 +104,7 @@ index cf6fa370ce968a882311f1403556cea618c7c7fe..91ba7f0b3ddb2846119e4b74ba501f6b
public boolean lavaInfinite = false;
public int lavaInfiniteRequiredSources = 2;
public int lavaSpeedNether = 10;
@@ -402,13 +407,17 @@ public class PurpurWorldConfig {
@@ -408,13 +413,17 @@ public class PurpurWorldConfig {
}
public double twistingVinesGrowthModifier = 0.10D;

View File

@@ -21,10 +21,10 @@ index 995849212c25568d3aa28ada78babf8b8e669960..acb2b3ed04ea0bf19335415310ce22cd
static class PathfinderGoalEndermanPickupBlock extends PathfinderGoal {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 91ba7f0b3ddb2846119e4b74ba501f6b40938702..5df5f771dfcdd01386600531defa4ab1b612160b 100644
index cf540ac9bc90ba49c3769a0d42fdf2a8e013e62c..c68f2cc8a67fabf0950ee31317fb612014123be5 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -572,10 +572,12 @@ public class PurpurWorldConfig {
@@ -578,10 +578,12 @@ public class PurpurWorldConfig {
public boolean endermanRidable = false;
public boolean endermanRidableInWater = false;
public boolean endermanAllowGriefing = true;

View File

@@ -18,10 +18,10 @@ index 34a5f481e6ed1357861dca15fb4013ec8484a292..d7bab4446a5a8eef98c10b1f6eb89de9
entity.damageEntity(DamageSource.projectile(this, this.getShooter()), (float) i);
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 5df5f771dfcdd01386600531defa4ab1b612160b..478184f94b146419f9a3107b4f8fd3b08e914588 100644
index c68f2cc8a67fabf0950ee31317fb612014123be5..a2e558a2dcb813ce1f04fc96c1a874ed56361b22 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -196,6 +196,11 @@ public class PurpurWorldConfig {
@@ -202,6 +202,11 @@ public class PurpurWorldConfig {
witherSkullDespawnRate = getInt("gameplay-mechanics.projectile-despawn-rates.wither_skull", witherSkullDespawnRate);
}

View File

@@ -40,7 +40,7 @@ index 7488a12926c5ee4adc3bc1fa3973988350381544..23870a271b759a953a095df835e08ea2
+ // Purpur end
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 478184f94b146419f9a3107b4f8fd3b08e914588..e6ca3585b8b34311ae2596b610e85953f1cf2a13 100644
index a2e558a2dcb813ce1f04fc96c1a874ed56361b22..7ccfce8887f9d241195b08797d141c4d78ab40b3 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -2,6 +2,7 @@ package net.pl3x.purpur;
@@ -51,7 +51,7 @@ index 478184f94b146419f9a3107b4f8fd3b08e914588..e6ca3585b8b34311ae2596b610e85953
import net.minecraft.server.Explosion;
import net.minecraft.server.IRegistry;
import net.minecraft.server.Item;
@@ -1112,6 +1113,7 @@ public class PurpurWorldConfig {
@@ -1118,6 +1119,7 @@ public class PurpurWorldConfig {
public double zombieJockeyChance = 0.05D;
public boolean zombieJockeyTryExistingChickens = true;
public boolean zombieAggressiveTowardsVillagerWhenLagging = true;
@@ -59,7 +59,7 @@ index 478184f94b146419f9a3107b4f8fd3b08e914588..e6ca3585b8b34311ae2596b610e85953
private void zombieSettings() {
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
@@ -1119,6 +1121,11 @@ public class PurpurWorldConfig {
@@ -1125,6 +1127,11 @@ public class PurpurWorldConfig {
zombieJockeyChance = getDouble("mobs.zombie.jockey.chance", zombieJockeyChance);
zombieJockeyTryExistingChickens = getBoolean("mobs.zombie.jockey.try-existing-chickens", zombieJockeyTryExistingChickens);
zombieAggressiveTowardsVillagerWhenLagging = getBoolean("mobs.zombie.aggressive-towards-villager-when-lagging", zombieAggressiveTowardsVillagerWhenLagging);

View File

@@ -18,7 +18,7 @@ index d1ed9856d3362e1bed37d60c268b7e91c404d25d..d7ceb4ff6aa424d620817ddcc9201fc0
} else {
this.setLeftHanded(false);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index e6ca3585b8b34311ae2596b610e85953f1cf2a13..b426fffac370530ee8ae5c0134fc24bdfb9dcf39 100644
index 7ccfce8887f9d241195b08797d141c4d78ab40b3..54205c55ef3314e06c60c64c1984baae21dbdd1d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -129,8 +129,10 @@ public class PurpurWorldConfig {
@@ -31,4 +31,4 @@ index e6ca3585b8b34311ae2596b610e85953f1cf2a13..b426fffac370530ee8ae5c0134fc24bd
+ entityLeftHandedChance = (float) getDouble("gameplay-mechanics.entity-left-handed-chance", entityLeftHandedChance);
}
public List<Item> itemImmuneToExplosion = new ArrayList<>();
public List<Item> itemImmuneToCactus = new ArrayList<>();

View File

@@ -27,10 +27,10 @@ index d677b4477a871790377348a112fa267181a70cda..157300c0320a136d36994d463a69a5b0
if (!flag && isSpawnInvulnerable() && damagesource != DamageSource.OUT_OF_WORLD) { // Purpur
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index b426fffac370530ee8ae5c0134fc24bdfb9dcf39..472db0b81c6b072941a64d2e2f0cf2aebd3408b7 100644
index 54205c55ef3314e06c60c64c1984baae21dbdd1d..35ddda87a31df52ef594e33752afa2a39255b6df 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -206,6 +206,7 @@ public class PurpurWorldConfig {
@@ -212,6 +212,7 @@ public class PurpurWorldConfig {
public boolean useBetterMending = false;
public boolean boatEjectPlayersOnLand = false;
@@ -38,7 +38,7 @@ index b426fffac370530ee8ae5c0134fc24bdfb9dcf39..472db0b81c6b072941a64d2e2f0cf2ae
public boolean disableDropsOnCrammingDeath = false;
public boolean entitiesPickUpLootBypassMobGriefing = false;
public boolean entitiesCanUsePortals = true;
@@ -219,6 +220,7 @@ public class PurpurWorldConfig {
@@ -225,6 +226,7 @@ public class PurpurWorldConfig {
private void miscGameplayMechanicsSettings() {
useBetterMending = getBoolean("gameplay-mechanics.use-better-mending", useBetterMending);
boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand);

View File

@@ -36,7 +36,7 @@ index 9294bfab12ef88690e359ff90551c5c615cdd3dd..e928716d7a2dcb390507b746763e6f7e
public static String afkBroadcastBack = "§e§o%s is no longer AFK";
public static String afkTabListPrefix = "[AFK] ";
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 472db0b81c6b072941a64d2e2f0cf2aebd3408b7..12a4a4b2874212a192ed05498a0238e3615cd548 100644
index 35ddda87a31df52ef594e33752afa2a39255b6df..274fd6e16c96b38ba256ae9f2b537e2517c8b1e0 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1,5 +1,6 @@

View File

@@ -23,10 +23,10 @@ index e980da14cf4f34c87a88ffd2b908223808404966..e5b3d298f52006f39a36cfdd95097e7b
this.goalSelector.a(3, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 6.0F));
this.goalSelector.a(4, new PathfinderGoalRandomLookaround(this));
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 12a4a4b2874212a192ed05498a0238e3615cd548..823e72736110e3ef13aa763a1a94ce759a6d5f76 100644
index 274fd6e16c96b38ba256ae9f2b537e2517c8b1e0..b67e1afe23edaeaef7fd10a2feb05cafc1ab3088 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -963,12 +963,20 @@ public class PurpurWorldConfig {
@@ -969,12 +969,20 @@ public class PurpurWorldConfig {
public boolean snowGolemLeaveTrailWhenRidden = false;
public boolean snowGolemDropsPumpkin = false;
public boolean snowGolemPutPumpkinBack = false;

View File

@@ -28,7 +28,7 @@ index 7aee1687571010da55e8bb776ec1c658748e979a..645213cacb6061f84da7a1c9d6f2fa94
public static String afkBroadcastBack = "§e§o%s is no longer AFK";
public static String afkTabListPrefix = "[AFK] ";
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 823e72736110e3ef13aa763a1a94ce759a6d5f76..1c9aaf92e8c2f23f1d65f42fb044a2183b99e214 100644
index b67e1afe23edaeaef7fd10a2feb05cafc1ab3088..860a2bd0d776edf65f51658379621762a496ddcd 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -96,6 +96,17 @@ public class PurpurWorldConfig {

View File

@@ -88,10 +88,10 @@ index b92ca4a6de01f3f86367fb8dfe3591b08a3e9218..1208464fba96daf276c9cc0c1c9b18db
// Paper start - add target parameter
return this.a(blockposition, null, i);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 1c9aaf92e8c2f23f1d65f42fb044a2183b99e214..99e4cce00d644dd7bb2183058847380c2046889c 100644
index 860a2bd0d776edf65f51658379621762a496ddcd..f4f1ff35f98d0ab461266aff82b2a913499a474d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1057,6 +1057,8 @@ public class PurpurWorldConfig {
@@ -1063,6 +1063,8 @@ public class PurpurWorldConfig {
public int villagerSpawnIronGolemRadius = 0;
public int villagerSpawnIronGolemLimit = 0;
public boolean villagerCanBreed = true;
@@ -100,7 +100,7 @@ index 1c9aaf92e8c2f23f1d65f42fb044a2183b99e214..99e4cce00d644dd7bb2183058847380c
private void villagerSettings() {
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
@@ -1068,6 +1070,13 @@ public class PurpurWorldConfig {
@@ -1074,6 +1076,13 @@ public class PurpurWorldConfig {
villagerSpawnIronGolemRadius = getInt("mobs.villager.spawn-iron-golem.radius", villagerSpawnIronGolemRadius);
villagerSpawnIronGolemLimit = getInt("mobs.villager.spawn-iron-golem.limit", villagerSpawnIronGolemLimit);
villagerCanBreed = getBoolean("mobs.villager.can-breed", villagerCanBreed);

View File

@@ -234,10 +234,10 @@ index 3c60da7ac6faebe9d964e893974e42613c59b4c1..6493f220a0cf627e82e5f3f3c85e9934
public static final VillagerProfession FISHERMAN = a("fisherman", VillagePlaceType.i, SoundEffects.ENTITY_VILLAGER_WORK_FISHERMAN);
public static final VillagerProfession FLETCHER = a("fletcher", VillagePlaceType.j, SoundEffects.ENTITY_VILLAGER_WORK_FLETCHER);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 99e4cce00d644dd7bb2183058847380c2046889c..6ae81e9e118632a0f3fa77870bbe1ec65aa406eb 100644
index f4f1ff35f98d0ab461266aff82b2a913499a474d..6ac735f818ab6f3b5ad61ee1e77fb8659891cee2 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1059,6 +1059,8 @@ public class PurpurWorldConfig {
@@ -1065,6 +1065,8 @@ public class PurpurWorldConfig {
public boolean villagerCanBreed = true;
public boolean villagerLobotomizeEnabled = false;
public int villagerLobotomizeCheck = 60;
@@ -246,7 +246,7 @@ index 99e4cce00d644dd7bb2183058847380c2046889c..6ae81e9e118632a0f3fa77870bbe1ec6
private void villagerSettings() {
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
@@ -1077,6 +1079,8 @@ public class PurpurWorldConfig {
@@ -1083,6 +1085,8 @@ public class PurpurWorldConfig {
}
villagerLobotomizeEnabled = getBoolean("mobs.villager.lobotomize.enabled", villagerLobotomizeEnabled);
villagerLobotomizeCheck = getInt("mobs.villager.lobotomize.check-interval", villagerLobotomizeCheck);

View File

@@ -35,10 +35,10 @@ index 3327dbbf87d8f43cbc7cd728df2f4c6a33dae40d..57f3358b8dfd53f5b1d2e976d64b809f
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 6ae81e9e118632a0f3fa77870bbe1ec65aa406eb..fcb7042d55a8942ec9f2aa77f0a67591c179be12 100644
index 6ac735f818ab6f3b5ad61ee1e77fb8659891cee2..17b4066ac9df4c38c277d115fb971b1f6ef67148 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1190,12 +1190,14 @@ public class PurpurWorldConfig {
@@ -1196,12 +1196,14 @@ public class PurpurWorldConfig {
public boolean zombifiedPiglinJockeyOnlyBaby = true;
public double zombifiedPiglinJockeyChance = 0.05D;
public boolean zombifiedPiglinJockeyTryExistingChickens = true;

View File

@@ -201,10 +201,10 @@ index 9a4819815c7a4bf2fd4a92c4169ace35f2261704..da29898574d30d5fecc5a44ad7b36556
public PathfinderGoalAvoidTarget(EntityCreature entitycreature, Class<T> oclass, Predicate<EntityLiving> predicate, float f, double d0, double d1, Predicate<EntityLiving> predicate1) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index fcb7042d55a8942ec9f2aa77f0a67591c179be12..79bbe93e37d9bbdc531f92d94f43277c247111c1 100644
index 17b4066ac9df4c38c277d115fb971b1f6ef67148..c24994c38a4f31ba294a7f232243102299e636a0 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1141,10 +1141,14 @@ public class PurpurWorldConfig {
@@ -1147,10 +1147,14 @@ public class PurpurWorldConfig {
public boolean wolfRidable = false;
public boolean wolfRidableInWater = false;

View File

@@ -24,7 +24,7 @@ index 5fe2e9f4bfbdc08690eacd6196e59529dc7953e8..fd62dc51258876275adbe02f750fd881
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 79bbe93e37d9bbdc531f92d94f43277c247111c1..d3235065b847993f38e0e4e781269d28313e23ba 100644
index c24994c38a4f31ba294a7f232243102299e636a0..d0f8d2fb3b6bf65ae06a020b088d9e4ec348a673 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -3,6 +3,7 @@ package net.pl3x.purpur;
@@ -35,7 +35,7 @@ index 79bbe93e37d9bbdc531f92d94f43277c247111c1..d3235065b847993f38e0e4e781269d28
import net.minecraft.server.EnumDifficulty;
import net.minecraft.server.Explosion;
import net.minecraft.server.IRegistry;
@@ -1141,12 +1142,18 @@ public class PurpurWorldConfig {
@@ -1147,12 +1148,18 @@ public class PurpurWorldConfig {
public boolean wolfRidable = false;
public boolean wolfRidableInWater = false;

View File

@@ -1314,10 +1314,10 @@ index 0c47477b416980d2e932321730525bf5a8feda4f..dc850677c29c16805f28af00b2a63363
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc00d585270 100644
index d0f8d2fb3b6bf65ae06a020b088d9e4ec348a673..112b8e595ac0562c490b82083452ef4ebfcb123e 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -466,30 +466,58 @@ public class PurpurWorldConfig {
@@ -472,30 +472,58 @@ public class PurpurWorldConfig {
public boolean batRidable = false;
public boolean batRidableInWater = false;
public double batMaxY = 256D;
@@ -1376,7 +1376,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean catRidable = false;
@@ -498,6 +526,7 @@ public class PurpurWorldConfig {
@@ -504,6 +532,7 @@ public class PurpurWorldConfig {
public int catSpawnSwampHutScanRange = 16;
public int catSpawnVillageScanRange = 48;
public int catBreedingTicks = 6000;
@@ -1384,7 +1384,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
private void catSettings() {
catRidable = getBoolean("mobs.cat.ridable", catRidable);
catRidableInWater = getBoolean("mobs.cat.ridable-in-water", catRidableInWater);
@@ -505,51 +534,92 @@ public class PurpurWorldConfig {
@@ -511,51 +540,92 @@ public class PurpurWorldConfig {
catSpawnSwampHutScanRange = getInt("mobs.cat.scan-range-for-other-cats.swamp-hut", catSpawnSwampHutScanRange);
catSpawnVillageScanRange = getInt("mobs.cat.scan-range-for-other-cats.village", catSpawnVillageScanRange);
catBreedingTicks = getInt("mobs.cat.breeding-delay-ticks", catBreedingTicks);
@@ -1477,7 +1477,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean dolphinRidable = false;
@@ -557,19 +627,45 @@ public class PurpurWorldConfig {
@@ -563,19 +633,45 @@ public class PurpurWorldConfig {
public float dolphinSpitSpeed = 1.0F;
public float dolphinSpitDamage = 2.0F;
public boolean dolphinDisableTreasureSearching = false;
@@ -1523,7 +1523,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean drownedRidable = false;
@@ -577,17 +673,33 @@ public class PurpurWorldConfig {
@@ -583,17 +679,33 @@ public class PurpurWorldConfig {
public boolean drownedJockeyOnlyBaby = true;
public double drownedJockeyChance = 0.05D;
public boolean drownedJockeyTryExistingChickens = true;
@@ -1557,7 +1557,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean enderDragonRidable = false;
@@ -595,57 +707,103 @@ public class PurpurWorldConfig {
@@ -601,57 +713,103 @@ public class PurpurWorldConfig {
public double enderDragonMaxY = 256D;
public boolean enderDragonAlwaysDropsEggBlock = false;
public boolean enderDragonAlwaysDropsFullExp = false;
@@ -1661,7 +1661,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean giantRidable = false;
@@ -668,31 +826,68 @@ public class PurpurWorldConfig {
@@ -674,31 +832,68 @@ public class PurpurWorldConfig {
giantHaveHostileAI = getBoolean("mobs.giant.have-hostile-ai", giantHaveHostileAI);
if (PurpurConfig.version < 8) {
double oldValue = getDouble("mobs.giant.max-health", giantMaxHealth);
@@ -1732,7 +1732,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean huskRidable = false;
@@ -700,12 +895,21 @@ public class PurpurWorldConfig {
@@ -706,12 +901,21 @@ public class PurpurWorldConfig {
public boolean huskJockeyOnlyBaby = true;
public double huskJockeyChance = 0.05D;
public boolean huskJockeyTryExistingChickens = true;
@@ -1754,7 +1754,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean illusionerRidable = false;
@@ -720,85 +924,188 @@ public class PurpurWorldConfig {
@@ -726,85 +930,188 @@ public class PurpurWorldConfig {
illusionerFollowRange = getDouble("mobs.illusioner.follow-range", illusionerFollowRange);
if (PurpurConfig.version < 8) {
double oldValue = getDouble("mobs.illusioner.max-health", illusionerMaxHealth);
@@ -1945,7 +1945,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean phantomRidable = false;
@@ -824,6 +1131,7 @@ public class PurpurWorldConfig {
@@ -830,6 +1137,7 @@ public class PurpurWorldConfig {
public int phantomBurnInLight = 0;
public boolean phantomIgnorePlayersWithTorch = false;
public boolean phantomBurnInDaylight = true;
@@ -1953,7 +1953,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
private void phantomSettings() {
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater);
@@ -848,38 +1156,72 @@ public class PurpurWorldConfig {
@@ -854,38 +1162,72 @@ public class PurpurWorldConfig {
phantomBurnInLight = getInt("mobs.phantom.burn-in-light", phantomBurnInLight);
phantomBurnInDaylight = getBoolean("mobs.phantom.burn-in-daylight", phantomBurnInDaylight);
phantomIgnorePlayersWithTorch = getBoolean("mobs.phantom.ignore-players-with-torch", phantomIgnorePlayersWithTorch);
@@ -2026,7 +2026,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean polarBearRidable = false;
@@ -887,6 +1229,7 @@ public class PurpurWorldConfig {
@@ -893,6 +1235,7 @@ public class PurpurWorldConfig {
public String polarBearBreedableItemString = "";
public Item polarBearBreedableItem = null;
public int polarBearBreedingTicks = 6000;
@@ -2034,7 +2034,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
private void polarBearSettings() {
polarBearRidable = getBoolean("mobs.polar_bear.ridable", polarBearRidable);
polarBearRidableInWater = getBoolean("mobs.polar_bear.ridable-in-water", polarBearRidableInWater);
@@ -894,11 +1237,24 @@ public class PurpurWorldConfig {
@@ -900,11 +1243,24 @@ public class PurpurWorldConfig {
Item item = IRegistry.ITEM.get(new MinecraftKey(polarBearBreedableItemString));
if (item != Items.AIR) polarBearBreedableItem = item;
polarBearBreedingTicks = getInt("mobs.polar_bear.breeding-delay-ticks", polarBearBreedingTicks);
@@ -2059,7 +2059,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean rabbitRidable = false;
@@ -906,68 +1262,142 @@ public class PurpurWorldConfig {
@@ -912,68 +1268,142 @@ public class PurpurWorldConfig {
public double rabbitNaturalToast = 0.0D;
public double rabbitNaturalKiller = 0.0D;
public int rabbitBreedingTicks = 6000;
@@ -2202,7 +2202,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean snowGolemRidable = false;
@@ -979,6 +1409,7 @@ public class PurpurWorldConfig {
@@ -985,6 +1415,7 @@ public class PurpurWorldConfig {
public int snowGolemSnowBallMax = 20;
public float snowGolemSnowBallModifier = 10.0F;
public double snowGolemAttackDistance = 1.25D;
@@ -2210,7 +2210,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
private void snowGolemSettings() {
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
@@ -989,63 +1420,118 @@ public class PurpurWorldConfig {
@@ -995,63 +1426,118 @@ public class PurpurWorldConfig {
snowGolemSnowBallMax = getInt("mobs.snow_golem.max-shoot-interval-ticks", snowGolemSnowBallMax);
snowGolemSnowBallModifier = (float) getDouble("mobs.snow_golem.snow-ball-modifier", snowGolemSnowBallModifier);
snowGolemAttackDistance = getDouble("mobs.snow_golem.attack-distance", snowGolemAttackDistance);
@@ -2329,7 +2329,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean villagerRidable = false;
@@ -1062,6 +1548,7 @@ public class PurpurWorldConfig {
@@ -1068,6 +1554,7 @@ public class PurpurWorldConfig {
public int villagerLobotomizeCheck = 60;
public boolean villagerClericsFarmWarts = false;
public boolean villagerClericFarmersThrowWarts = true;
@@ -2337,7 +2337,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
private void villagerSettings() {
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
@@ -1082,33 +1569,60 @@ public class PurpurWorldConfig {
@@ -1088,33 +1575,60 @@ public class PurpurWorldConfig {
villagerLobotomizeCheck = getInt("mobs.villager.lobotomize.check-interval", villagerLobotomizeCheck);
villagerClericsFarmWarts = getBoolean("mobs.villager.clerics-farm-warts", villagerClericsFarmWarts);
villagerClericFarmersThrowWarts = getBoolean("mobs.villager.cleric-wart-farmers-throw-warts-at-villagers", villagerClericFarmersThrowWarts);
@@ -2398,7 +2398,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean witherRidable = false;
@@ -1125,19 +1639,30 @@ public class PurpurWorldConfig {
@@ -1131,19 +1645,30 @@ public class PurpurWorldConfig {
witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay);
if (PurpurConfig.version < 8) {
double oldValue = getDouble("mobs.wither.max-health", witherMaxHealth);
@@ -2431,7 +2431,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean wolfRidable = false;
@@ -1146,6 +1671,7 @@ public class PurpurWorldConfig {
@@ -1152,6 +1677,7 @@ public class PurpurWorldConfig {
public boolean wolfMilkCuresRabies = true;
public double wolfNaturalRabid = 0.0D;
public int wolfBreedingTicks = 6000;
@@ -2439,7 +2439,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
private void wolfSettings() {
wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable);
wolfRidableInWater = getBoolean("mobs.wolf.ridable-in-water", wolfRidableInWater);
@@ -1157,13 +1683,26 @@ public class PurpurWorldConfig {
@@ -1163,13 +1689,26 @@ public class PurpurWorldConfig {
wolfMilkCuresRabies = getBoolean("mobs.wolf.milk-cures-rabid-wolves", wolfMilkCuresRabies);
wolfNaturalRabid = getDouble("mobs.wolf.spawn-rabid-chance", wolfNaturalRabid);
wolfBreedingTicks = getInt("mobs.wolf.breeding-delay-ticks", wolfBreedingTicks);
@@ -2466,7 +2466,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean zombieRidable = false;
@@ -1173,6 +1712,8 @@ public class PurpurWorldConfig {
@@ -1179,6 +1718,8 @@ public class PurpurWorldConfig {
public boolean zombieJockeyTryExistingChickens = true;
public boolean zombieAggressiveTowardsVillagerWhenLagging = true;
public EnumDifficulty zombieBreakDoorMinDifficulty = EnumDifficulty.HARD;
@@ -2475,7 +2475,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
private void zombieSettings() {
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
@@ -1185,15 +1726,40 @@ public class PurpurWorldConfig {
@@ -1191,15 +1732,40 @@ public class PurpurWorldConfig {
} catch (IllegalArgumentException ignore) {
zombieBreakDoorMinDifficulty = EnumDifficulty.HARD;
}
@@ -2516,7 +2516,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean zombifiedPiglinRidable = false;
@@ -1202,6 +1768,8 @@ public class PurpurWorldConfig {
@@ -1208,6 +1774,8 @@ public class PurpurWorldConfig {
public double zombifiedPiglinJockeyChance = 0.05D;
public boolean zombifiedPiglinJockeyTryExistingChickens = true;
public boolean zombifiedPiglinCountAsPlayerKillWhenAngry = true;
@@ -2525,7 +2525,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
private void zombifiedPiglinSettings() {
zombifiedPiglinRidable = getBoolean("mobs.zombified_piglin.ridable", zombifiedPiglinRidable);
zombifiedPiglinRidableInWater = getBoolean("mobs.zombified_piglin.ridable-in-water", zombifiedPiglinRidableInWater);
@@ -1209,6 +1777,13 @@ public class PurpurWorldConfig {
@@ -1215,6 +1783,13 @@ public class PurpurWorldConfig {
zombifiedPiglinJockeyChance = getDouble("mobs.zombified_piglin.jockey.chance", zombifiedPiglinJockeyChance);
zombifiedPiglinJockeyTryExistingChickens = getBoolean("mobs.zombified_piglin.jockey.try-existing-chickens", zombifiedPiglinJockeyTryExistingChickens);
zombifiedPiglinCountAsPlayerKillWhenAngry = getBoolean("mobs.zombified_piglin.count-as-player-kill-when-angry", zombifiedPiglinCountAsPlayerKillWhenAngry);
@@ -2539,7 +2539,7 @@ index d3235065b847993f38e0e4e781269d28313e23ba..279b9677d724f1dbbdb7efe665c4ebc0
}
public boolean zombieVillagerRidable = false;
@@ -1216,11 +1791,20 @@ public class PurpurWorldConfig {
@@ -1222,11 +1797,20 @@ public class PurpurWorldConfig {
public boolean zombieVillagerJockeyOnlyBaby = true;
public double zombieVillagerJockeyChance = 0.05D;
public boolean zombieVillagerJockeyTryExistingChickens = true;

View File

@@ -17,10 +17,10 @@ index 25345d8d585735af407787f2c26fe92674721239..087a91fedc49aaf6e74b81b90494849c
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 279b9677d724f1dbbdb7efe665c4ebc00d585270..0beaa5971f7e45b5ee51f22a62f10eb1bc78957a 100644
index 112b8e595ac0562c490b82083452ef4ebfcb123e..0a3399a2bdfe9fca846233b60a09ca375e41927e 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1131,6 +1131,7 @@ public class PurpurWorldConfig {
@@ -1137,6 +1137,7 @@ public class PurpurWorldConfig {
public int phantomBurnInLight = 0;
public boolean phantomIgnorePlayersWithTorch = false;
public boolean phantomBurnInDaylight = true;
@@ -28,7 +28,7 @@ index 279b9677d724f1dbbdb7efe665c4ebc00d585270..0beaa5971f7e45b5ee51f22a62f10eb1
public double phantomMaxHealth = 20.0D;
private void phantomSettings() {
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
@@ -1156,6 +1157,7 @@ public class PurpurWorldConfig {
@@ -1162,6 +1163,7 @@ public class PurpurWorldConfig {
phantomBurnInLight = getInt("mobs.phantom.burn-in-light", phantomBurnInLight);
phantomBurnInDaylight = getBoolean("mobs.phantom.burn-in-daylight", phantomBurnInDaylight);
phantomIgnorePlayersWithTorch = getBoolean("mobs.phantom.ignore-players-with-torch", phantomIgnorePlayersWithTorch);

View File

@@ -17,10 +17,10 @@ index 9e5e6de52efabe9126f6c47acb35fa1dc461ff4f..487b281cf53d3482853d56ee1e90a329
return iblockaccess.getType(blockposition1).isOccluding(iblockaccess, blockposition1);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 0beaa5971f7e45b5ee51f22a62f10eb1bc78957a..c8b0fc1353b56d696d72e5ca1203f5f9b690cf3e 100644
index 0a3399a2bdfe9fca846233b60a09ca375e41927e..2a1ba055ee8ae733ed0958b143d7db71de3c091d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -363,6 +363,11 @@ public class PurpurWorldConfig {
@@ -369,6 +369,11 @@ public class PurpurWorldConfig {
}
}

View File

@@ -28,10 +28,10 @@ index a0bb64bea373c678c519e3fae8f808fd36e1ee4f..11911b10ddc6e2a681f2eda313a6e7c6
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index c8b0fc1353b56d696d72e5ca1203f5f9b690cf3e..c04771eb454a4d3c04ccda2dfb632d9e029cc02f 100644
index 2a1ba055ee8ae733ed0958b143d7db71de3c091d..90c6c0d8303eec8f041b6c8f287d93aefe794f74 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1484,11 +1484,13 @@ public class PurpurWorldConfig {
@@ -1490,11 +1490,13 @@ public class PurpurWorldConfig {
public boolean striderRidable = false;
public boolean striderRidableInWater = false;
public int striderBreedingTicks = 6000;

View File

@@ -26,10 +26,10 @@ index a72ce4ea5a45fce35a47fd5f9c21b9500adbe265..d9d7a5df16ae9854a69103a936de89b2
protected ItemCooldown i() {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index c04771eb454a4d3c04ccda2dfb632d9e029cc02f..dfac03988f3f6bc12f4d48941b3bcde1f2819593 100644
index 90c6c0d8303eec8f041b6c8f287d93aefe794f74..cd2a585afc338f92e717613f956d8c49192d93fd 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -292,6 +292,19 @@ public class PurpurWorldConfig {
@@ -298,6 +298,19 @@ public class PurpurWorldConfig {
playerDeathExpDropMax = getInt("gameplay-mechanics.player.exp-dropped-on-death.maximum", playerDeathExpDropMax);
}

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add MC-4 fix back
diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java
index cbe03923d468bf75adc10245ebd9f63ff10987f9..b47481e72cb63c8652fbdf292be29af14c796103 100644
index ec37d2c3b0393c43097bdfc6064ebe3ab8bc28ce..bd8b130f0d370285b956ee8d8932cb95cc349163 100644
--- a/src/main/java/net/minecraft/server/EntityItem.java
+++ b/src/main/java/net/minecraft/server/EntityItem.java
@@ -536,7 +536,7 @@ public class EntityItem extends Entity {
@@ -542,7 +542,7 @@ public class EntityItem extends Entity {
// Paper start - fix MC-4
public void setPositionRaw(double x, double y, double z) {

View File

@@ -338,10 +338,10 @@ index c03ebbc933197be3e7097ea3f7b7cd08c90db7bb..37c1d1ac1bfcaf84d00135ad3c9d9e9b
} else if (this.c > 0) {
--this.c;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6fea28d033 100644
index cd2a585afc338f92e717613f956d8c49192d93fd..8df2d112f3d030754309710f7c05bf2612ea0528 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -234,6 +234,7 @@ public class PurpurWorldConfig {
@@ -240,6 +240,7 @@ public class PurpurWorldConfig {
public boolean disableDropsOnCrammingDeath = false;
public boolean entitiesPickUpLootBypassMobGriefing = false;
public boolean entitiesCanUsePortals = true;
@@ -349,7 +349,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
public boolean milkCuresBadOmen = true;
public boolean persistentTileEntityDisplayNames = false;
public boolean persistentDroppableEntityDisplayNames = false;
@@ -248,6 +249,7 @@ public class PurpurWorldConfig {
@@ -254,6 +255,7 @@ public class PurpurWorldConfig {
disableDropsOnCrammingDeath = getBoolean("gameplay-mechanics.disable-drops-on-cramming-death", disableDropsOnCrammingDeath);
entitiesPickUpLootBypassMobGriefing = getBoolean("gameplay-mechanics.entities-pick-up-loot-bypass-mob-griefing", entitiesPickUpLootBypassMobGriefing);
entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals);
@@ -357,7 +357,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen);
persistentTileEntityDisplayNames = getBoolean("gameplay-mechanics.persistent-tileentity-display-names-and-lore", persistentTileEntityDisplayNames);
persistentDroppableEntityDisplayNames = getBoolean("gameplay-mechanics.persistent-droppable-entity-display-names", persistentDroppableEntityDisplayNames);
@@ -388,9 +390,11 @@ public class PurpurWorldConfig {
@@ -394,9 +396,11 @@ public class PurpurWorldConfig {
dispenserPlaceAnvils = getBoolean("blocks.dispenser.place-anvils", dispenserPlaceAnvils);
}
@@ -369,7 +369,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
farmlandGetsMoistFromBelow = getBoolean("blocks.farmland.gets-moist-from-below", farmlandGetsMoistFromBelow);
farmlandAlpha = getBoolean("blocks.farmland.use-alpha-farmland", farmlandAlpha);
}
@@ -449,10 +453,12 @@ public class PurpurWorldConfig {
@@ -455,10 +459,12 @@ public class PurpurWorldConfig {
stonecutterDamage = (float) getDouble("blocks.stonecutter.damage", stonecutterDamage);
}
@@ -382,7 +382,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
turtleEggsBreakFromExpOrbs = getBoolean("blocks.turtle_egg.break-from-exp-orbs", turtleEggsBreakFromExpOrbs);
turtleEggsBreakFromItems = getBoolean("blocks.turtle_egg.break-from-items", turtleEggsBreakFromItems);
turtleEggsBreakFromMinecarts = getBoolean("blocks.turtle_egg.break-from-minecarts", turtleEggsBreakFromMinecarts);
@@ -725,6 +731,7 @@ public class PurpurWorldConfig {
@@ -731,6 +737,7 @@ public class PurpurWorldConfig {
public double enderDragonMaxY = 256D;
public boolean enderDragonAlwaysDropsEggBlock = false;
public boolean enderDragonAlwaysDropsFullExp = false;
@@ -390,7 +390,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
public double enderDragonMaxHealth = 200.0D;
private void enderDragonSettings() {
enderDragonRidable = getBoolean("mobs.ender_dragon.ridable", enderDragonRidable);
@@ -732,6 +739,7 @@ public class PurpurWorldConfig {
@@ -738,6 +745,7 @@ public class PurpurWorldConfig {
enderDragonMaxY = getDouble("mobs.ender_dragon.ridable-max-y", enderDragonMaxY);
enderDragonAlwaysDropsEggBlock = getBoolean("mobs.ender_dragon.always-drop-egg-block", enderDragonAlwaysDropsEggBlock);
enderDragonAlwaysDropsFullExp = getBoolean("mobs.ender_dragon.always-drop-full-exp", enderDragonAlwaysDropsFullExp);
@@ -398,7 +398,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
if (PurpurConfig.version < 8) {
double oldValue = getDouble("mobs.ender_dragon.max-health", enderDragonMaxHealth);
set("mobs.ender_dragon.max-health", null);
@@ -747,12 +755,14 @@ public class PurpurWorldConfig {
@@ -753,12 +761,14 @@ public class PurpurWorldConfig {
public boolean endermanRidable = false;
public boolean endermanRidableInWater = false;
public boolean endermanAllowGriefing = true;
@@ -413,7 +413,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
endermanDespawnEvenWithBlock = getBoolean("mobs.enderman.can-despawn-with-held-block", endermanDespawnEvenWithBlock);
if (PurpurConfig.version < 10) {
double oldValue = getDouble("mobs.enderman.attributes.max-health", endermanMaxHealth);
@@ -778,10 +788,12 @@ public class PurpurWorldConfig {
@@ -784,10 +794,12 @@ public class PurpurWorldConfig {
public boolean evokerRidable = false;
public boolean evokerRidableInWater = false;
@@ -426,7 +426,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
if (PurpurConfig.version < 10) {
double oldValue = getDouble("mobs.evoker.attributes.max-health", evokerMaxHealth);
set("mobs.evoker.attributes.max-health", null);
@@ -792,12 +804,14 @@ public class PurpurWorldConfig {
@@ -798,12 +810,14 @@ public class PurpurWorldConfig {
public boolean foxRidable = false;
public boolean foxRidableInWater = false;
@@ -441,7 +441,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
foxTypeChangesWithTulips = getBoolean("mobs.fox.tulips-change-type", foxTypeChangesWithTulips);
foxBreedingTicks = getInt("mobs.fox.breeding-delay-ticks", foxBreedingTicks);
if (PurpurConfig.version < 10) {
@@ -1232,10 +1246,12 @@ public class PurpurWorldConfig {
@@ -1238,10 +1252,12 @@ public class PurpurWorldConfig {
public boolean pillagerRidable = false;
public boolean pillagerRidableInWater = false;
@@ -454,7 +454,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
if (PurpurConfig.version < 10) {
double oldValue = getDouble("mobs.pillager.attributes.max-health", pillagerMaxHealth);
set("mobs.pillager.attributes.max-health", null);
@@ -1279,6 +1295,7 @@ public class PurpurWorldConfig {
@@ -1285,6 +1301,7 @@ public class PurpurWorldConfig {
public boolean rabbitRidable = false;
public boolean rabbitRidableInWater = false;
@@ -462,7 +462,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
public double rabbitNaturalToast = 0.0D;
public double rabbitNaturalKiller = 0.0D;
public int rabbitBreedingTicks = 6000;
@@ -1286,6 +1303,7 @@ public class PurpurWorldConfig {
@@ -1292,6 +1309,7 @@ public class PurpurWorldConfig {
private void rabbitSettings() {
rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable);
rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater);
@@ -470,7 +470,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
rabbitNaturalToast = getDouble("mobs.rabbit.spawn-toast-chance", rabbitNaturalToast);
rabbitNaturalKiller = getDouble("mobs.rabbit.spawn-killer-rabbit-chance", rabbitNaturalKiller);
rabbitBreedingTicks = getInt("mobs.rabbit.breeding-delay-ticks", rabbitBreedingTicks);
@@ -1299,10 +1317,12 @@ public class PurpurWorldConfig {
@@ -1305,10 +1323,12 @@ public class PurpurWorldConfig {
public boolean ravagerRidable = false;
public boolean ravagerRidableInWater = false;
@@ -483,7 +483,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
if (PurpurConfig.version < 10) {
double oldValue = getDouble("mobs.ravager.attributes.max-health", ravagerMaxHealth);
set("mobs.ravager.attributes.max-health", null);
@@ -1326,11 +1346,13 @@ public class PurpurWorldConfig {
@@ -1332,11 +1352,13 @@ public class PurpurWorldConfig {
public boolean sheepRidable = false;
public boolean sheepRidableInWater = false;
public int sheepBreedingTicks = 6000;
@@ -497,7 +497,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
if (PurpurConfig.version < 10) {
double oldValue = getDouble("mobs.sheep.attributes.max-health", sheepMaxHealth);
set("mobs.sheep.attributes.max-health", null);
@@ -1355,10 +1377,12 @@ public class PurpurWorldConfig {
@@ -1361,10 +1383,12 @@ public class PurpurWorldConfig {
public boolean silverfishRidable = false;
public boolean silverfishRidableInWater = false;
@@ -510,7 +510,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
if (PurpurConfig.version < 10) {
double oldValue = getDouble("mobs.silverfish.attributes.max-health", silverfishMaxHealth);
set("mobs.silverfish.attributes.max-health", null);
@@ -1423,6 +1447,7 @@ public class PurpurWorldConfig {
@@ -1429,6 +1453,7 @@ public class PurpurWorldConfig {
public boolean snowGolemRidable = false;
public boolean snowGolemRidableInWater = false;
public boolean snowGolemLeaveTrailWhenRidden = false;
@@ -518,7 +518,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
public boolean snowGolemDropsPumpkin = false;
public boolean snowGolemPutPumpkinBack = false;
public int snowGolemSnowBallMin = 20;
@@ -1434,6 +1459,7 @@ public class PurpurWorldConfig {
@@ -1440,6 +1465,7 @@ public class PurpurWorldConfig {
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
snowGolemLeaveTrailWhenRidden = getBoolean("mobs.snow_golem.leave-trail-when-ridden", snowGolemLeaveTrailWhenRidden);
@@ -526,7 +526,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
snowGolemDropsPumpkin = getBoolean("mobs.snow_golem.drop-pumpkin-when-sheared", snowGolemDropsPumpkin);
snowGolemPutPumpkinBack = getBoolean("mobs.snow_golem.pumpkin-can-be-added-back", snowGolemPutPumpkinBack);
snowGolemSnowBallMin = getInt("mobs.snow_golem.min-shoot-interval-ticks", snowGolemSnowBallMin);
@@ -1650,6 +1676,7 @@ public class PurpurWorldConfig {
@@ -1656,6 +1682,7 @@ public class PurpurWorldConfig {
public boolean witherRidable = false;
public boolean witherRidableInWater = false;
public double witherMaxY = 256D;
@@ -534,7 +534,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
public float witherHealthRegenAmount = 1.0f;
public int witherHealthRegenDelay = 20;
public double witherMaxHealth = 300.0D;
@@ -1657,6 +1684,7 @@ public class PurpurWorldConfig {
@@ -1663,6 +1690,7 @@ public class PurpurWorldConfig {
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
witherMaxY = getDouble("mobs.wither.ridable-max-y", witherMaxY);
@@ -542,7 +542,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
witherHealthRegenAmount = (float) getDouble("mobs.wither.health-regen-amount", witherHealthRegenAmount);
witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay);
if (PurpurConfig.version < 8) {
@@ -1729,6 +1757,7 @@ public class PurpurWorldConfig {
@@ -1735,6 +1763,7 @@ public class PurpurWorldConfig {
public boolean zombieRidable = false;
public boolean zombieRidableInWater = false;
@@ -550,7 +550,7 @@ index dfac03988f3f6bc12f4d48941b3bcde1f2819593..c1ece0add6f186a6aa8b462d47e05a6f
public boolean zombieJockeyOnlyBaby = true;
public double zombieJockeyChance = 0.05D;
public boolean zombieJockeyTryExistingChickens = true;
@@ -1739,6 +1768,7 @@ public class PurpurWorldConfig {
@@ -1745,6 +1774,7 @@ public class PurpurWorldConfig {
private void zombieSettings() {
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);

View File

@@ -22,10 +22,10 @@ index df69d00d3a38417e53f433cd1eb1f6cf3ec9b55b..6bb6e229c8734d7b9f4e3cd3dd1b4b64
org.bukkit.event.block.NotePlayEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callNotePlayEvent(world, blockposition, data.get(BlockNote.INSTRUMENT), data.get(BlockNote.NOTE));
if (!event.isCancelled()) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index c1ece0add6f186a6aa8b462d47e05a6fea28d033..fc5b4f1ec8bbe50522cdbcb74e5870e79ed15070 100644
index 8df2d112f3d030754309710f7c05bf2612ea0528..f0ce50a4751d96f32ac80037eb62d8f6c07792de 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -236,6 +236,7 @@ public class PurpurWorldConfig {
@@ -242,6 +242,7 @@ public class PurpurWorldConfig {
public boolean entitiesCanUsePortals = true;
public boolean fireballsBypassMobGriefing = false;
public boolean milkCuresBadOmen = true;
@@ -33,7 +33,7 @@ index c1ece0add6f186a6aa8b462d47e05a6fea28d033..fc5b4f1ec8bbe50522cdbcb74e5870e7
public boolean persistentTileEntityDisplayNames = false;
public boolean persistentDroppableEntityDisplayNames = false;
public double tridentLoyaltyVoidReturnHeight = 0.0D;
@@ -251,6 +252,7 @@ public class PurpurWorldConfig {
@@ -257,6 +258,7 @@ public class PurpurWorldConfig {
entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals);
fireballsBypassMobGriefing = getBoolean("gameplay-mechanics.fireballs-bypass-mob-griefing", fireballsBypassMobGriefing);
milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen);

View File

@@ -94,10 +94,10 @@ index ed8e91bf6c8b9d410d439bdddd5067d346a20a7e..127b5d8215f2bb4c5c523c5a77ebccfb
if (this.exitPortal == null && this.world.getTypeKey() == DimensionManager.THE_END) { // CraftBukkit - work in alternate worlds
this.a((WorldServer) this.world);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index fc5b4f1ec8bbe50522cdbcb74e5870e79ed15070..f5fd4ac62c4e2b300930356a7f5735e76f16f8a4 100644
index f0ce50a4751d96f32ac80037eb62d8f6c07792de..fa01177d029c288be862cdc43861e1ef2fc4f7a0 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1861,4 +1861,9 @@ public class PurpurWorldConfig {
@@ -1867,4 +1867,9 @@ public class PurpurWorldConfig {
zombieVillagerMaxHealth = getDouble("mobs.zombie_villager.attributes.max_health", zombieVillagerMaxHealth);
zombieVillagerSpawnReinforcements = getDouble("mobs.zombie_villager.attributes.spawn_reinforcements", zombieVillagerSpawnReinforcements);
}

View File

@@ -28,10 +28,10 @@ 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 f5fd4ac62c4e2b300930356a7f5735e76f16f8a4..0fce0eb902393e28b18b06bea09558f7b5793e0a 100644
index fa01177d029c288be862cdc43861e1ef2fc4f7a0..f102e3c3a1a166e54274b71c2f9f8067c44c0029 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -395,10 +395,14 @@ public class PurpurWorldConfig {
@@ -401,10 +401,14 @@ public class PurpurWorldConfig {
public boolean farmlandBypassMobGriefing = false;
public boolean farmlandGetsMoistFromBelow = false;
public boolean farmlandAlpha = false;

View File

@@ -66,7 +66,7 @@ index 6efe59e0385e144c59804e9e5e18e6910b1f6667..951e899e85c622d06bab7c4695366b83
+ // Purpur end
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 0fce0eb902393e28b18b06bea09558f7b5793e0a..242fa7d0acca116f5efcc64066c66b8dca12bce4 100644
index f102e3c3a1a166e54274b71c2f9f8067c44c0029..90bd46e3e2b96ecedc6557896e1f5d95dbbd698b 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,10 +37,10 @@ index 157300c0320a136d36994d463a69a5b0fe022683..fecf180cfbc7295f55380fc50e7ae185
// 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 242fa7d0acca116f5efcc64066c66b8dca12bce4..8b99ae30d3808f3379ea27ecc2926b5baa778205 100644
index 90bd46e3e2b96ecedc6557896e1f5d95dbbd698b..62670f7e80eb3b1765561cd8593f97665db63ac2 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -332,6 +332,11 @@ public class PurpurWorldConfig {
@@ -338,6 +338,11 @@ public class PurpurWorldConfig {
});
}