mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@55a16d8 Fix Varint21FrameDecoder cached length buf usage PaperMC/Paper@e6e37ba Add api to resolve components (#7648) PaperMC/Paper@7168438 [ci skip] Rework workflows to support optional paperclip build (#8583) PaperMC/Paper@da230d5 More vanilla friendly methods to update trades (#8478) PaperMC/Paper@8aff07a Add /paper dumplisteners command (#8507) PaperMC/Paper@b8919a7 pr command action fixes (#8591) PaperMC/Paper@185fa48 Fix chest relooting mechanics (#8580) PaperMC/Paper@b4beac0 Fixes potential issues arising from optimizing getPlayerByUUID (#8585) PaperMC/Paper@f637b1a Fix async entity add due to fungus trees (#7626) PaperMC/Paper@414ea80 ItemStack damage API (#7801) PaperMC/Paper@d98c370 Add displayName methods for advancements (#8584) PaperMC/Paper@44bb599 Add Tick TemporalUnit (#5445) PaperMC/Paper@9f7eef8 Friction API (#6611) PaperMC/Paper@4048d3e Allow using degrees for ArmorStand rotations (#7847) PaperMC/Paper@f59c802 Schoolable Fish API (#7089) PaperMC/Paper@21b964a Added ability to control player's insomnia and phantoms spawning (#6500) PaperMC/Paper@f1583fc Add `/paper dumplisteners tofile` and increase detail of command output (#8592)
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
group = org.purpurmc.purpur
|
||||
version = 1.19.2-R0.1-SNAPSHOT
|
||||
|
||||
paperCommit = 3ab194e1858c292a9f4a2df42ff833c9c91df902
|
||||
paperCommit = f1583fcd7414bde1ee2efc2b1395a82cdb78b8a2
|
||||
|
||||
org.gradle.caching = true
|
||||
org.gradle.parallel = true
|
||||
|
||||
@@ -5,12 +5,12 @@ Subject: [PATCH] LivingEntity safeFallDistance
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
index c9a44e8024f903da83181ee752c971bab22c8895..77861d44e3a0f7271f637751caaf3ffdd26ca046 100644
|
||||
index 97336be470a9d545d93f78e683a793f328013ad8..ce3a648542d7bcccefe3a505f79a62e88be878e7 100644
|
||||
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
@@ -1016,4 +1016,20 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
|
||||
@@ -1059,4 +1059,20 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
|
||||
*/
|
||||
void knockback(double strength, double directionX, double directionZ);
|
||||
void damageItemStack(org.bukkit.inventory.@NotNull EquipmentSlot slot, int amount);
|
||||
// Paper end
|
||||
+
|
||||
+ // Purpur start
|
||||
|
||||
@@ -49,7 +49,7 @@ index cb00e050cd5fff3a037a32ac34e02eeea3827357..6c82d84c190dee87cc72ed0d06f08934
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/inventory/ItemStack.java b/src/main/java/org/bukkit/inventory/ItemStack.java
|
||||
index b8a344fd900dcbd4b28085a54b85b16c742e9c6f..91444a8bb400d1db36df118c8c24645c26fa72be 100644
|
||||
index 870c0ddd101094a3bce1ebf5ec4d42c51053db84..2cd247a315586b35b73e4396d850ca1d347eea92 100644
|
||||
--- a/src/main/java/org/bukkit/inventory/ItemStack.java
|
||||
+++ b/src/main/java/org/bukkit/inventory/ItemStack.java
|
||||
@@ -16,6 +16,18 @@ import org.bukkit.inventory.meta.ItemMeta;
|
||||
@@ -71,8 +71,8 @@ index b8a344fd900dcbd4b28085a54b85b16c742e9c6f..91444a8bb400d1db36df118c8c24645c
|
||||
|
||||
/**
|
||||
* Represents a stack of items.
|
||||
@@ -978,4 +990,626 @@ public class ItemStack implements Cloneable, ConfigurationSerializable, net.kyor
|
||||
return Bukkit.getUnsafe().isValidRepairItemStack(toBeRepaired, this);
|
||||
@@ -992,4 +1004,626 @@ public class ItemStack implements Cloneable, ConfigurationSerializable, net.kyor
|
||||
return livingEntity.damageItemStack(this, amount);
|
||||
}
|
||||
// Paper end
|
||||
+
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] LivingEntity#broadcastItemBreak
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
index 77861d44e3a0f7271f637751caaf3ffdd26ca046..dc69ce69a6cc7c2ae6023033dd445807c26bf052 100644
|
||||
index ce3a648542d7bcccefe3a505f79a62e88be878e7..bb363d8c651393ee9845bcbd6a95c9d57e1cfcbb 100644
|
||||
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
@@ -1031,5 +1031,12 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
|
||||
@@ -1074,5 +1074,12 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
|
||||
* @param safeFallDistance Safe fall distance
|
||||
*/
|
||||
void setSafeFallDistance(float safeFallDistance);
|
||||
|
||||
@@ -5,10 +5,10 @@ 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 d0bef15785493b512ff0f7414c1d58d38fead581..fd213c026fdfb3030d0c37f651a88857ca038cba 100644
|
||||
index 58017fce436cdbda255f7172fbdadb726d4b113c..05600fc8bf2a61aca8094029bc4c208a710da952 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Item.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Item.java
|
||||
@@ -153,4 +153,62 @@ public interface Item extends Entity {
|
||||
@@ -153,4 +153,62 @@ public interface Item extends Entity, io.papermc.paper.entity.Frictional { // Pa
|
||||
*/
|
||||
public void setHealth(int health);
|
||||
// Paper end
|
||||
|
||||
@@ -23,10 +23,10 @@ index 83c74245e75b8895404fe4b7214c686a308e00b5..28be71aa677ed8cb9a9d06b3aba7af40
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
index dc69ce69a6cc7c2ae6023033dd445807c26bf052..1460f87718bdbdbde634b3e412adaa8d11e8e5fd 100644
|
||||
index bb363d8c651393ee9845bcbd6a95c9d57e1cfcbb..1da4521fe1930ce66e4d9931d059282d3a66e20d 100644
|
||||
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
@@ -1038,5 +1038,19 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
|
||||
@@ -1081,5 +1081,19 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
|
||||
* @param slot Equipment slot to play break animation for
|
||||
*/
|
||||
void broadcastItemBreak(@NotNull org.bukkit.inventory.EquipmentSlot slot);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Lobotomize stuck villagers
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/Villager.java b/src/main/java/org/bukkit/entity/Villager.java
|
||||
index d61855b83da0776fe910dee8cde184c720571a71..b7b7963c07f9859df980017d0515ab437f7d9d10 100644
|
||||
index c61e7e41aeb3d4f5f4ac47da8890051d8e97340d..12b08318f78c8144cc809dbccf0feabdd31f0ee2 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Villager.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Villager.java
|
||||
@@ -297,4 +297,14 @@ public interface Villager extends AbstractVillager {
|
||||
@@ -328,4 +328,14 @@ public interface Villager extends AbstractVillager {
|
||||
*/
|
||||
public void clearReputations();
|
||||
// Paper end
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Remove Timings
|
||||
|
||||
|
||||
diff --git a/src/main/java/co/aikar/timings/TimedEventExecutor.java b/src/main/java/co/aikar/timings/TimedEventExecutor.java
|
||||
index 4e6e1b8e8aeb07e34536941d2cbfc25e5cfa6c27..5f8aab2cb734fcea7e2b4d4b2803170a7beddb87 100644
|
||||
index 34e43e56ccc663e05b9cae36643e8df5eee5cb17..2c15b67149d014fdce2dd74a550013d83b6e44c8 100644
|
||||
--- a/src/main/java/co/aikar/timings/TimedEventExecutor.java
|
||||
+++ b/src/main/java/co/aikar/timings/TimedEventExecutor.java
|
||||
@@ -76,8 +76,8 @@ public class TimedEventExecutor implements EventExecutor {
|
||||
@@ -76,9 +76,9 @@ public class TimedEventExecutor implements EventExecutor {
|
||||
executor.execute(listener, event);
|
||||
return;
|
||||
}
|
||||
@@ -18,7 +18,8 @@ index 4e6e1b8e8aeb07e34536941d2cbfc25e5cfa6c27..5f8aab2cb734fcea7e2b4d4b2803170a
|
||||
- }
|
||||
+ //} // Purpur
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/co/aikar/timings/Timing.java b/src/main/java/co/aikar/timings/Timing.java
|
||||
index a21e5ead5024fd0058c5e3302d8201dd249d32bc..505908e987a032a801ae03d7fb020dfb662bf81b 100644
|
||||
--- a/src/main/java/co/aikar/timings/Timing.java
|
||||
|
||||
@@ -28,7 +28,7 @@ index 28be71aa677ed8cb9a9d06b3aba7af40f0992f68..3959765b110b6fed91348c11ff85e302
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/entity/Item.java b/src/main/java/org/bukkit/entity/Item.java
|
||||
index fd213c026fdfb3030d0c37f651a88857ca038cba..35e7684cf8d9d5eea4b88ada24ff252ba225bd62 100644
|
||||
index 05600fc8bf2a61aca8094029bc4c208a710da952..932e65f3aff0d7b15663ef9855b8b74dcb066dd6 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Item.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Item.java
|
||||
@@ -1,6 +1,7 @@
|
||||
@@ -39,7 +39,7 @@ index fd213c026fdfb3030d0c37f651a88857ca038cba..35e7684cf8d9d5eea4b88ada24ff252b
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@@ -187,7 +188,9 @@ public interface Item extends Entity {
|
||||
@@ -187,7 +188,9 @@ public interface Item extends Entity, io.papermc.paper.entity.Frictional { // Pa
|
||||
* Set whether or not this item is immune to fire
|
||||
*
|
||||
* @param immuneToFire True to make immune to fire
|
||||
|
||||
@@ -1714,10 +1714,10 @@ index 2358bb1788cfb902bac9b3b7588954af2d2cd823..163f14b4e1ca99d75e5d8e14190f7b91
|
||||
this.wasOnGround = this.entity.isOnGround();
|
||||
this.teleportDelay = 0;
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index feb0a6d6a90850977b393440881c472c317a9323..fde970ada330e3e2fd481c7687c8499129bd929c 100644
|
||||
index 79aa3374fd47cd57d2e0810bb5afebbdb38a1892..77d538ab79b31cf43620e560cdf2876a26b2bb7f 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -708,6 +708,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -709,6 +709,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
|
||||
timings.entityTick.startTiming(); // Spigot
|
||||
this.entityTickList.forEach((entity) -> {
|
||||
@@ -1725,7 +1725,7 @@ index feb0a6d6a90850977b393440881c472c317a9323..fde970ada330e3e2fd481c7687c84991
|
||||
if (!entity.isRemoved()) {
|
||||
if (false && this.shouldDiscardEntity(entity)) { // CraftBukkit - We prevent spawning in general, so this butchering is not needed
|
||||
entity.discard();
|
||||
@@ -727,7 +728,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -728,7 +729,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
|
||||
gameprofilerfiller.push("tick");
|
||||
@@ -1747,7 +1747,7 @@ index feb0a6d6a90850977b393440881c472c317a9323..fde970ada330e3e2fd481c7687c84991
|
||||
gameprofilerfiller.pop();
|
||||
}
|
||||
}
|
||||
@@ -794,9 +808,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -795,9 +809,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
// Paper start - optimise random block ticking
|
||||
private final BlockPos.MutableBlockPos chunkTickMutablePosition = new BlockPos.MutableBlockPos();
|
||||
@@ -1760,7 +1760,7 @@ index feb0a6d6a90850977b393440881c472c317a9323..fde970ada330e3e2fd481c7687c84991
|
||||
public void tickChunk(LevelChunk chunk, int randomTickSpeed) {
|
||||
ChunkPos chunkcoordintpair = chunk.getPos();
|
||||
boolean flag = this.isRaining();
|
||||
@@ -807,7 +823,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -808,7 +824,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
gameprofilerfiller.push("thunder");
|
||||
final BlockPos.MutableBlockPos blockposition = this.chunkTickMutablePosition; // Paper - use mutable to reduce allocation rate, final to force compile fail on change
|
||||
|
||||
@@ -1769,7 +1769,7 @@ index feb0a6d6a90850977b393440881c472c317a9323..fde970ada330e3e2fd481c7687c84991
|
||||
blockposition.set(this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15))); // Paper
|
||||
if (this.isRainingAt(blockposition)) {
|
||||
DifficultyInstance difficultydamagescaler = this.getCurrentDifficultyAt(blockposition);
|
||||
@@ -831,7 +847,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -832,7 +848,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
|
||||
gameprofilerfiller.popPush("iceandsnow");
|
||||
@@ -2118,7 +2118,7 @@ index 72516335570d7137a62ec8667a6e8f06f024692f..b44322c337bcded94c60e1761a389101
|
||||
public final String id;
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 3bfa0c6a0d82ed980b3289051892a6d1745ebb69..84caca55518464ac4fdf7dfe766bcaf00a9da227 100644
|
||||
index 11d7c42d65b91bf57b7bba7812aa17e60e018c67..77a96dd66e2c39495f23b4219dfdbb0820233434 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -142,7 +142,6 @@ import org.bukkit.event.entity.EntityTeleportEvent;
|
||||
@@ -2129,7 +2129,7 @@ index 3bfa0c6a0d82ed980b3289051892a6d1745ebb69..84caca55518464ac4fdf7dfe766bcaf0
|
||||
|
||||
public abstract class LivingEntity extends Entity {
|
||||
|
||||
@@ -398,8 +397,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -399,8 +398,7 @@ public abstract class LivingEntity extends Entity {
|
||||
|
||||
if (this.isAlive()) {
|
||||
boolean flag = this instanceof net.minecraft.world.entity.player.Player;
|
||||
@@ -2139,7 +2139,7 @@ index 3bfa0c6a0d82ed980b3289051892a6d1745ebb69..84caca55518464ac4fdf7dfe766bcaf0
|
||||
this.hurt(DamageSource.IN_WALL, 1.0F);
|
||||
} else if (flag && !this.level.getWorldBorder().isWithinBounds(this.getBoundingBox())) {
|
||||
double d0 = this.level.getWorldBorder().getDistanceToBorder(this) + this.level.getWorldBorder().getDamageSafeZone();
|
||||
@@ -1313,6 +1311,15 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1328,6 +1326,15 @@ public abstract class LivingEntity extends Entity {
|
||||
return this.getHealth() <= 0.0F;
|
||||
}
|
||||
|
||||
@@ -2155,7 +2155,7 @@ index 3bfa0c6a0d82ed980b3289051892a6d1745ebb69..84caca55518464ac4fdf7dfe766bcaf0
|
||||
@Override
|
||||
public boolean hurt(DamageSource source, float amount) {
|
||||
if (this.isInvulnerableTo(source)) {
|
||||
@@ -1906,6 +1913,20 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1921,6 +1928,20 @@ public abstract class LivingEntity extends Entity {
|
||||
return this.lastClimbablePos;
|
||||
}
|
||||
|
||||
@@ -2176,7 +2176,7 @@ index 3bfa0c6a0d82ed980b3289051892a6d1745ebb69..84caca55518464ac4fdf7dfe766bcaf0
|
||||
public boolean onClimbable() {
|
||||
if (this.isSpectator()) {
|
||||
return false;
|
||||
@@ -3607,7 +3628,10 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3622,7 +3643,10 @@ public abstract class LivingEntity extends Entity {
|
||||
Vec3 vec3d1 = new Vec3(entity.getX(), entity.getEyeY(), entity.getZ());
|
||||
|
||||
// Paper - diff on change - used in CraftLivingEntity#hasLineOfSight(Location) and CraftWorld#lineOfSightExists
|
||||
@@ -2456,10 +2456,10 @@ index a4690391df0aa26abea1ad92e6143eb19c5d1143..3c3453638e117609190787efbf5d87fc
|
||||
this.level.getProfiler().pop();
|
||||
this.level.getProfiler().push("goatActivityUpdate");
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
|
||||
index fcc5444a1268931a0fd2df1e6bbbc17cfd5a61e0..16a55f94bda9f959548772c8916b4dc3eb045d47 100644
|
||||
index c8d8fdef7b8abc0f59b7d19462825ae30c8d4f48..8a5efb6c81bbe85b67a6bb83c0c4afdf995121d0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
|
||||
@@ -252,10 +252,16 @@ public class ItemEntity extends Entity {
|
||||
@@ -257,10 +257,16 @@ public class ItemEntity extends Entity {
|
||||
if (entityitem.isMergable()) {
|
||||
// Paper Start - Fix items merging through walls
|
||||
if (this.level.paperConfig().fixes.fixItemsMergingThroughWalls) {
|
||||
@@ -2551,7 +2551,7 @@ index 27bd70dc30c8472e5a80f3273f9233a0392f831d..b3158b1a7772f1254dd081ff6d3278a9
|
||||
this.level.getProfiler().pop();
|
||||
super.customServerAiStep();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index 10b45ec24a5a0867106d1694312385ad1e267f43..93077e8c6b5a35adc6febb749d1d08be172402f1 100644
|
||||
index 49f82c954155115b2caa87d7624521a9f7982be2..fa7cede4a0b59efde4949dba4a010aed5cd0a960 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -140,6 +140,8 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -3574,10 +3574,10 @@ index 0b3b46348ac9195bff1492ffc11fcbff7d3f5c6f..4010052c53f3a2831b4d5aa1c041d858
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 1628913b1e9b91e68dcd942a38da4aed95b12d4a..05cc8f9cdcd7e920bf9503f68efb16cd74a359a2 100644
|
||||
index 103ab25119bfcdd21eac7e1deeac025108e3c138..47ff8c22bd9c7220df98268f6db224d1cd66a0ab 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -430,7 +430,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -435,7 +435,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
|
||||
@Override
|
||||
public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {
|
||||
|
||||
@@ -27,10 +27,10 @@ index ed9c8e882739c02d0d04129d251e4c726b422c07..5426e57ed67b0d144818a7e3b917c90d
|
||||
"This can improve performance by a few percent, but has minor gameplay implications.");
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index fde970ada330e3e2fd481c7687c8499129bd929c..a32c574e7c2beadea31faec788b65a4361414c7c 100644
|
||||
index 77d538ab79b31cf43620e560cdf2876a26b2bb7f..bdc5dc90dc036a5480dfd776d5e6bf5520d1cc73 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -808,7 +808,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -809,7 +809,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
// Paper start - optimise random block ticking
|
||||
private final BlockPos.MutableBlockPos chunkTickMutablePosition = new BlockPos.MutableBlockPos();
|
||||
|
||||
@@ -271,7 +271,7 @@ index 4e56018b64d11f76c8da43fd8f85c6de72204e36..aa8212432825db65cf485cd93f734ccd
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index 76ee8adfb6cccc15dde748b0796d1de7fc5507f8..d49cbfd8a7cfd636baff5a9c9d5f015bec9adb81 100644
|
||||
index 316120a57802c45fb9b02a4daee207a0845c63be..e3c1a7f7e643b8a2f42e76c92087219f984ea8aa 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -866,7 +866,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -297,10 +297,10 @@ index cdefb2025eedea7e204d70d568adaf1c1ec4c03c..d1526ed7197b883e1d1f07baf285bf5e
|
||||
// (async tasks must live with race-conditions if they attempt to cancel between these few lines of code)
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 05cc8f9cdcd7e920bf9503f68efb16cd74a359a2..0b248a987d22da21aa802c5dba00b4f987c365ea 100644
|
||||
index 47ff8c22bd9c7220df98268f6db224d1cd66a0ab..b1e11bb17212174e546892cbaa04740e632cd075 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -430,7 +430,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -435,7 +435,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
|
||||
@Override
|
||||
public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {
|
||||
|
||||
@@ -29,10 +29,10 @@ index 061716934ba0a1f01e4d85d664034f72b3c7a765..acd95cf1dc7f009b63e44e4404e17362
|
||||
metrics.addCustomChart(new Metrics.DrilldownPie("java_version", () -> {
|
||||
Map<String, Map<String, Integer>> map = new HashMap<>();
|
||||
diff --git a/src/main/java/net/minecraft/commands/CommandSourceStack.java b/src/main/java/net/minecraft/commands/CommandSourceStack.java
|
||||
index 0d140dd7d55407b57fc3394ceb2eba5136e4fcaf..ed64b78bc8510fbe8fda9a10b779e91d99313676 100644
|
||||
index 81f4e3c869623b6dd2d80886652fa41791fe7032..901edaae2230c48fa0584991ed82498d568d5fc0 100644
|
||||
--- a/src/main/java/net/minecraft/commands/CommandSourceStack.java
|
||||
+++ b/src/main/java/net/minecraft/commands/CommandSourceStack.java
|
||||
@@ -318,6 +318,30 @@ public class CommandSourceStack implements SharedSuggestionProvider, com.destroy
|
||||
@@ -319,6 +319,30 @@ public class CommandSourceStack implements SharedSuggestionProvider, com.destroy
|
||||
}
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@ index 0d140dd7d55407b57fc3394ceb2eba5136e4fcaf..ed64b78bc8510fbe8fda9a10b779e91d
|
||||
if (this.source.acceptsSuccess() && !this.silent) {
|
||||
this.source.sendSystemMessage(message);
|
||||
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
index 01928849f9dd42a3ea8826b56d419e8c09450f47..a18abdcbc51f3b6fda96a4f6dd8674521338f37f 100644
|
||||
index b60c3d4f5ab695e0e449678a8f0ae1eea2f83aab..24b7ae3253b0710954d4a522114fc0617c0ef3b3 100644
|
||||
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
@@ -223,6 +223,15 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
||||
@@ -84,7 +84,7 @@ index 01928849f9dd42a3ea8826b56d419e8c09450f47..a18abdcbc51f3b6fda96a4f6dd867452
|
||||
io.papermc.paper.brigadier.PaperBrigadierProviderImpl.INSTANCE.getClass(); // init PaperBrigadierProvider
|
||||
// Paper end
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 35d6a8fe168caa5b68b471bd78cc95b99758d1b0..0c397d4c1efc7a812ecc02119b9740cbac303a04 100644
|
||||
index baf48dc10723cc7c7ececfeb8a05b57aff6ed1bf..eeab93f6a3eea19a58fe1b78e0727f8c109640d0 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -174,6 +174,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -105,7 +105,7 @@ index 35d6a8fe168caa5b68b471bd78cc95b99758d1b0..0c397d4c1efc7a812ecc02119b9740cb
|
||||
this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env);
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 8fc70e7f75786ad10a97676a04bc0bc91f9526fe..37af56b657fa2d7e17c02f230b66a514b21cf344 100644
|
||||
index c42e913376fc76d588070fe130470196429fa3b2..285510a7b25c5979feb5e38391d802570f01e4e3 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -966,6 +966,7 @@ public final class CraftServer implements Server {
|
||||
|
||||
@@ -34,7 +34,7 @@ index 10869c6c0697917c412f80dfdc9b211fec0b5b06..f2d589f1ad9b507fca816320472caa45
|
||||
|
||||
this.profiler.push(() -> {
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index a32c574e7c2beadea31faec788b65a4361414c7c..4cea8ac36f618e86ef4fcbe214e8d95cf3bf6fcf 100644
|
||||
index bdc5dc90dc036a5480dfd776d5e6bf5520d1cc73..503bf34f3c9256ed6f0f31f5396d0baeb9ffea59 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -220,6 +220,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -194,7 +194,7 @@ index c1e9b40a4a0f9cdc650caa88b5ea132e06ee2496..882ab40c8cdea8c214cb8344b3ccecdd
|
||||
protected ParticleOptions getInkParticle() {
|
||||
return ParticleTypes.GLOW_SQUID_INK;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 84caca55518464ac4fdf7dfe766bcaf00a9da227..4ac4c6de004111dde2a7e61b35ff80be2a3eb053 100644
|
||||
index 77a96dd66e2c39495f23b4219dfdbb0820233434..6e626aab5c90100de969125c28c12d8d02e68ea0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -220,9 +220,9 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -210,7 +210,7 @@ index 84caca55518464ac4fdf7dfe766bcaf00a9da227..4ac4c6de004111dde2a7e61b35ff80be
|
||||
protected int lerpSteps;
|
||||
protected double lerpX;
|
||||
protected double lerpY;
|
||||
@@ -287,7 +287,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -288,7 +288,7 @@ public abstract class LivingEntity extends Entity {
|
||||
this.effectsDirty = true;
|
||||
this.useItem = ItemStack.EMPTY;
|
||||
this.lastClimbablePos = Optional.empty();
|
||||
@@ -219,7 +219,7 @@ index 84caca55518464ac4fdf7dfe766bcaf00a9da227..4ac4c6de004111dde2a7e61b35ff80be
|
||||
this.craftAttributes = new CraftAttributeMap(this.attributes); // CraftBukkit
|
||||
// CraftBukkit - setHealth(getMaxHealth()) inlined and simplified to skip the instanceof check for EntityPlayer, as getBukkitEntity() is not initialized in constructor
|
||||
this.entityData.set(LivingEntity.DATA_HEALTH_ID, (float) this.getAttribute(Attributes.MAX_HEALTH).getValue());
|
||||
@@ -338,6 +338,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -339,6 +339,7 @@ public abstract class LivingEntity extends Entity {
|
||||
public static AttributeSupplier.Builder createLivingAttributes() {
|
||||
return AttributeSupplier.builder().add(Attributes.MAX_HEALTH).add(Attributes.KNOCKBACK_RESISTANCE).add(Attributes.MOVEMENT_SPEED).add(Attributes.ARMOR).add(Attributes.ARMOR_TOUGHNESS);
|
||||
}
|
||||
@@ -227,7 +227,7 @@ index 84caca55518464ac4fdf7dfe766bcaf00a9da227..4ac4c6de004111dde2a7e61b35ff80be
|
||||
|
||||
@Override
|
||||
protected void checkFallDamage(double heightDifference, boolean onGround, BlockState state, BlockPos landedPosition) {
|
||||
@@ -2675,7 +2676,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -2690,7 +2691,7 @@ public abstract class LivingEntity extends Entity {
|
||||
}
|
||||
|
||||
protected long lastJumpTime = 0L; // Paper
|
||||
@@ -236,7 +236,7 @@ index 84caca55518464ac4fdf7dfe766bcaf00a9da227..4ac4c6de004111dde2a7e61b35ff80be
|
||||
double d0 = (double) this.getJumpPower() + this.getJumpBoostPower();
|
||||
Vec3 vec3d = this.getDeltaMovement();
|
||||
// Paper start
|
||||
@@ -3417,8 +3418,10 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3432,8 +3433,10 @@ public abstract class LivingEntity extends Entity {
|
||||
this.pushEntities();
|
||||
this.level.getProfiler().pop();
|
||||
// Paper start
|
||||
@@ -249,7 +249,7 @@ index 84caca55518464ac4fdf7dfe766bcaf00a9da227..4ac4c6de004111dde2a7e61b35ff80be
|
||||
Location from = new Location(this.level.getWorld(), this.xo, this.yo, this.zo, this.yRotO, this.xRotO);
|
||||
Location to = new Location (this.level.getWorld(), this.getX(), this.getY(), this.getZ(), this.getYRot(), this.getXRot());
|
||||
io.papermc.paper.event.entity.EntityMoveEvent event = new io.papermc.paper.event.entity.EntityMoveEvent(this.getBukkitLivingEntity(), from, to.clone());
|
||||
@@ -3428,6 +3431,21 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3443,6 +3446,21 @@ public abstract class LivingEntity extends Entity {
|
||||
absMoveTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch());
|
||||
}
|
||||
}
|
||||
@@ -4778,7 +4778,7 @@ index e0e16d3b4ba0afc3cfc66b93ecf5f889599f48dd..2040da30822f6f24f6de96bd47f2f8cb
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
index fb0a77b4cf1ba47c73c00993bd9b7454240fe5d6..9e5542220eeada8b4f539a5bbbeead670eef4057 100644
|
||||
index d1f7d912ad274cf90a912e44d63b39f9387a694b..179fe7f6f4f2305f8e07106f0d7151cd8d69a959 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
@@ -78,6 +78,23 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder {
|
||||
@@ -5004,7 +5004,7 @@ index b3158b1a7772f1254dd081ff6d3278a92192e896..df55f9a9f684b474a3bff09770694717
|
||||
|
||||
public static void applyDarknessAround(ServerLevel world, Vec3 pos, @Nullable Entity entity, int range) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index 93077e8c6b5a35adc6febb749d1d08be172402f1..a6519bf96f39fa69ecb65ef25dba80261bb03323 100644
|
||||
index fa7cede4a0b59efde4949dba4a010aed5cd0a960..b5033df0db18ef54077cead642e81715ffb8acc9 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -155,6 +155,28 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -5146,10 +5146,10 @@ index 4132c1113f5437a776e5e3c1cb306904775aed88..1a945a32c3d3705a318ebca72a365931
|
||||
public void tick() {
|
||||
super.tick();
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
index 9368ec01e498f913bc5b7b3e77fe87659090d9b5..9aee601caad5b314cef2e32a57fdb8ab8aeae896 100644
|
||||
index 01132b10799034232e7e5cbb460d848601e04012..32169b7dbfe95bdc5ded6d64524e015f1b939e7a 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
@@ -1384,4 +1384,27 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
@@ -1390,4 +1390,27 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
return !this.getHandle().level.noCollision(this.getHandle(), aabb);
|
||||
}
|
||||
// Paper End - Collision API
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable entity base attributes
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 8bcbaafaa8979773bafe6a9af3e4b97b54039bce..ad8e766c1b8262e9130fca3bd753b0cc6628db35 100644
|
||||
index 810e0b92e2090c18806297b8c29d4e539ddde68e..b32ce5c62c1a700ee612c4c2177c068e8a2f9f53 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -155,7 +155,7 @@ import org.bukkit.plugin.PluginManager;
|
||||
@@ -34,10 +34,10 @@ index 882ab40c8cdea8c214cb8344b3ccecddb2967c1c..cb79d2c958fbd34f8c8818e7e1c0db88
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index f7d194069b0ef3b4b0a6f360c2b00a2f22d5bcc3..b93edb473c47bd49d0c6f1e39ad36063771672d5 100644
|
||||
index 6e626aab5c90100de969125c28c12d8d02e68ea0..86dfb5537f1da7f1e2b8e9bfeb43111b0ac16228 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -288,6 +288,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -289,6 +289,7 @@ public abstract class LivingEntity extends Entity {
|
||||
this.useItem = ItemStack.EMPTY;
|
||||
this.lastClimbablePos = Optional.empty();
|
||||
this.attributes = new AttributeMap(DefaultAttributes.getSupplier(type), this); // Purpur
|
||||
@@ -45,7 +45,7 @@ index f7d194069b0ef3b4b0a6f360c2b00a2f22d5bcc3..b93edb473c47bd49d0c6f1e39ad36063
|
||||
this.craftAttributes = new CraftAttributeMap(this.attributes); // CraftBukkit
|
||||
// CraftBukkit - setHealth(getMaxHealth()) inlined and simplified to skip the instanceof check for EntityPlayer, as getBukkitEntity() is not initialized in constructor
|
||||
this.entityData.set(LivingEntity.DATA_HEALTH_ID, (float) this.getAttribute(Attributes.MAX_HEALTH).getValue());
|
||||
@@ -303,6 +304,8 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -304,6 +305,8 @@ public abstract class LivingEntity extends Entity {
|
||||
this.brain = this.makeBrain(new Dynamic(dynamicopsnbt, (Tag) dynamicopsnbt.createMap((Map) ImmutableMap.of(dynamicopsnbt.createString("memories"), (Tag) dynamicopsnbt.emptyMap()))));
|
||||
}
|
||||
|
||||
@@ -1313,7 +1313,7 @@ index 9970c2c09b294e601b7cda4f1e8cbf2aed13b0dc..6236a557d2a73dff70141140f79faf85
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Zombie.java b/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
index fb291a8a792dfd48c70d38b12b2733566ba62506..70a673f10591eaaecdafa7b7017b3120b7d1c6da 100644
|
||||
index 2040da30822f6f24f6de96bd47f2f8cb4cd2a266..7582f5bf8915af14afe4459fe258e4adcfd35346 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
@@ -120,6 +120,11 @@ public class Zombie extends Monster {
|
||||
@@ -1338,7 +1338,7 @@ index fb291a8a792dfd48c70d38b12b2733566ba62506..70a673f10591eaaecdafa7b7017b3120
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
index 9e5542220eeada8b4f539a5bbbeead670eef4057..51ea3307a9264e665cbf8106e4562afe0c2065c5 100644
|
||||
index 179fe7f6f4f2305f8e07106f0d7151cd8d69a959..a45f743526ff0894cc730f0e9ff393fb27703d9a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
@@ -93,6 +93,16 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder {
|
||||
@@ -1432,7 +1432,7 @@ index ff149234a8f3e1c94961e41d5bc8117460b301d9..75db61c5aab66234b26f7899229ddca8
|
||||
|
||||
public static AttributeSupplier.Builder createAttributes() {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index a6519bf96f39fa69ecb65ef25dba80261bb03323..ef08ec3eb88ee1ab624e2bd38aaff5e8f97720f2 100644
|
||||
index b5033df0db18ef54077cead642e81715ffb8acc9..8127b5175ec2ba06fa4127be85978625bb74e53e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -175,6 +175,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -1448,7 +1448,7 @@ index a6519bf96f39fa69ecb65ef25dba80261bb03323..ef08ec3eb88ee1ab624e2bd38aaff5e8
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
index bb710e97a515d25a5835805cadfca48b2f1f916a..87d2f596ed2c313dd49f3b0c7a1a33d9288844ff 100644
|
||||
index 204567f3ce802a0f757d7270b046f905641b0cfb..f730005269717d805fbcee832a1471c490605684 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
@@ -81,6 +81,11 @@ public class WanderingTrader extends net.minecraft.world.entity.npc.AbstractVill
|
||||
|
||||
@@ -155,13 +155,13 @@ index 823efad652d8ff9e96b99375b102fef6f017716e..60f89d7c77a5e792e21e93e35ed1670b
|
||||
}
|
||||
// CraftBukkit start
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/EntitySelector.java b/src/main/java/net/minecraft/world/entity/EntitySelector.java
|
||||
index a00c3d96f2fc7131d1f4afa7af4e41ace3cfce89..5a3e29aedc537c672d11385cec562b2c30761730 100644
|
||||
index 72abebff2018cde2922e97ad6478f93da9aed3ec..412963d7af38a53b6010007278d959a5b11b83c3 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/EntitySelector.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/EntitySelector.java
|
||||
@@ -28,6 +28,7 @@ public final class EntitySelector {
|
||||
@@ -39,6 +39,7 @@ public final class EntitySelector {
|
||||
return net.minecraft.util.Mth.clamp(serverPlayer.getStats().getValue(net.minecraft.stats.Stats.CUSTOM.get(net.minecraft.stats.Stats.TIME_SINCE_REST)), 1, Integer.MAX_VALUE) >= playerInsomniaTicks;
|
||||
};
|
||||
public static final Predicate<Entity> CAN_BE_COLLIDED_WITH = EntitySelector.NO_SPECTATORS.and(Entity::canBeCollidedWith);
|
||||
public static Predicate<Player> isInsomniac = (player) -> net.minecraft.util.Mth.clamp(((net.minecraft.server.level.ServerPlayer) player).getStats().getValue(net.minecraft.stats.Stats.CUSTOM.get(net.minecraft.stats.Stats.TIME_SINCE_REST)), 1, Integer.MAX_VALUE) >= 72000; // Paper
|
||||
// Paper end
|
||||
+ public static Predicate<Player> notAfk = (player) -> !player.isAfk(); // Purpur
|
||||
|
||||
private EntitySelector() {}
|
||||
@@ -200,7 +200,7 @@ index 86c0d7e9775042901d01528f9b55298344ea0ff5..d71250144abcb613598e1b795d096b9c
|
||||
public boolean processClick(InteractionHand hand) {
|
||||
Entity vehicle = getRootVehicle();
|
||||
diff --git a/src/main/java/net/minecraft/world/level/EntityGetter.java b/src/main/java/net/minecraft/world/level/EntityGetter.java
|
||||
index 87beea39636b641dc5b46c2755a00285b7671ac5..95931a038d3c845048b1ffaadd1e930a0fcb44bb 100644
|
||||
index 6e55f383f48e9a304b0acd541728394615dc6478..be4e1462ca8f8ef7a19e3af44d82826b9e9b8ab9 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/EntityGetter.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/EntityGetter.java
|
||||
@@ -154,7 +154,7 @@ public interface EntityGetter {
|
||||
@@ -305,7 +305,7 @@ index b411ba7283b8d6abf7cf53c3c82b612c801ebbee..657dfaa9cf2990fcade8739d3e1c3f9e
|
||||
public boolean untamedTamablesAreRidable = true;
|
||||
public boolean useNightVisionWhenRiding = false;
|
||||
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
|
||||
index 4e978e12130d685257f408247c4b61a3909fde80..e8233eb0e69a5263ee9f153a3a2eee3936011262 100644
|
||||
index b87756d9a7b04ea2613208984b2583eca3f32af6..7529bca82efe4c33dbf781bcf6f8b583fa54fa95 100644
|
||||
--- a/src/main/java/org/spigotmc/ActivationRange.java
|
||||
+++ b/src/main/java/org/spigotmc/ActivationRange.java
|
||||
@@ -203,6 +203,7 @@ public class ActivationRange
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] LivingEntity safeFallDistance
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index b93edb473c47bd49d0c6f1e39ad36063771672d5..e570000f7314946fdab54abecea059a4c78a43e8 100644
|
||||
index 86dfb5537f1da7f1e2b8e9bfeb43111b0ac16228..da4fe84f640eacc7c1c3da9a6adee4824c1d10fa 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -255,6 +255,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -16,7 +16,7 @@ index b93edb473c47bd49d0c6f1e39ad36063771672d5..e570000f7314946fdab54abecea059a4
|
||||
public boolean forceDrops;
|
||||
public ArrayList<org.bukkit.inventory.ItemStack> drops = new ArrayList<org.bukkit.inventory.ItemStack>();
|
||||
public final org.bukkit.craftbukkit.attribute.CraftAttributeMap craftAttributes;
|
||||
@@ -354,8 +355,8 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -355,8 +356,8 @@ public abstract class LivingEntity extends Entity {
|
||||
this.tryAddSoulSpeed();
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ index b93edb473c47bd49d0c6f1e39ad36063771672d5..e570000f7314946fdab54abecea059a4
|
||||
|
||||
if (!state.isAir()) {
|
||||
double d1 = Math.min((double) (0.2F + f / 15.0F), 2.5D);
|
||||
@@ -1991,7 +1992,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -2006,7 +2007,7 @@ public abstract class LivingEntity extends Entity {
|
||||
MobEffectInstance mobeffect = this.getEffect(MobEffects.JUMP);
|
||||
float f2 = mobeffect == null ? 0.0F : (float) (mobeffect.getAmplifier() + 1);
|
||||
|
||||
@@ -62,10 +62,10 @@ index 8b1942b396606f0c989645a6ac587fbdd26a3dc5..c1c5e884f00398032196ee71b55b348f
|
||||
|
||||
// Purpur start
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index 0f2711348db95d0deabf50e9c077aeba77cf61c7..6ea7afee8df8ba80cd6a1fec64eecac4a2f98613 100644
|
||||
index e3c1a7f7e643b8a2f42e76c92087219f984ea8aa..810e13a060a7c64f8d0d08a632b378ef8480710e 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -984,4 +984,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -1043,4 +1043,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
getHandle().knockback(strength, directionX, directionZ);
|
||||
};
|
||||
// Paper end
|
||||
|
||||
@@ -17,10 +17,10 @@ index a0c19503aabab5378d672a30163d35a5ba05b6c1..897e761be8c1f79562f54101173fbba7
|
||||
}
|
||||
// CraftBukkit end
|
||||
diff --git a/src/main/java/net/minecraft/server/level/WorldGenRegion.java b/src/main/java/net/minecraft/server/level/WorldGenRegion.java
|
||||
index 80c1e0e47818486a68e0114b063395290365346b..c677a55db62b4d197eeb1bf5d929e24019fed5ec 100644
|
||||
index 0d3587e2d454fb0994ecff930b5e496a3999746a..6a3538feee986daf186a09156629d3916e993557 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/WorldGenRegion.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/WorldGenRegion.java
|
||||
@@ -295,6 +295,7 @@ public class WorldGenRegion implements WorldGenLevel {
|
||||
@@ -296,6 +296,7 @@ public class WorldGenRegion implements WorldGenLevel {
|
||||
return true;
|
||||
} else {
|
||||
// Paper start
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Zombie horse naturally spawn
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 4cea8ac36f618e86ef4fcbe214e8d95cf3bf6fcf..14e7aa4f781bda0d964194f9be6935e8bd057931 100644
|
||||
index 503bf34f3c9256ed6f0f31f5396d0baeb9ffea59..125faced389b5f467d96dab4e2ac4ffe85c82f50 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -831,9 +831,15 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -832,9 +832,15 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
boolean flag1 = this.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING) && this.random.nextDouble() < (double) difficultydamagescaler.getEffectiveDifficulty() * this.paperConfig().entities.spawning.skeletonHorseThunderSpawnChance.or(0.01D) && !this.getBlockState(blockposition.below()).is(Blocks.LIGHTNING_ROD); // Paper
|
||||
|
||||
if (flag1) {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Disable loot drops on death by cramming
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index e570000f7314946fdab54abecea059a4c78a43e8..29d33251d0b712b141c2ed8c78d0913b7b924c3c 100644
|
||||
index da4fe84f640eacc7c1c3da9a6adee4824c1d10fa..eaac469c2ccad3536c2e20211f7618d4de3e370c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1750,6 +1750,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1765,6 +1765,7 @@ public abstract class LivingEntity extends Entity {
|
||||
|
||||
this.dropEquipment(); // CraftBukkit - from below
|
||||
if (this.shouldDropLoot() && this.level.getGameRules().getBoolean(GameRules.RULE_DOMOBLOOT)) {
|
||||
@@ -16,7 +16,7 @@ index e570000f7314946fdab54abecea059a4c78a43e8..29d33251d0b712b141c2ed8c78d0913b
|
||||
this.dropFromLootTable(source, flag);
|
||||
// Paper start
|
||||
final boolean prev = this.clearEquipmentSlots;
|
||||
@@ -1758,6 +1759,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1773,6 +1774,7 @@ public abstract class LivingEntity extends Entity {
|
||||
// Paper end
|
||||
this.dropCustomDeathLoot(source, i, flag);
|
||||
this.clearEquipmentSlots = prev; // Paper
|
||||
|
||||
@@ -18,10 +18,10 @@ index b32ce5c62c1a700ee612c4c2177c068e8a2f9f53..ece73bc2f6d67dde38bb2b42dd2dcf3b
|
||||
&& (!(this instanceof Player player) || !player.getAbilities().invulnerable))) {
|
||||
// Paper end
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 2256491ae00f43c3b49b43fcbcf6e0d60141adff..4ffe3171067a448128644a9501b6160625870459 100644
|
||||
index eaac469c2ccad3536c2e20211f7618d4de3e370c..519ee9e51dd181c1c1a269151cc832f84e937eed 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -2493,7 +2493,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -2508,7 +2508,7 @@ public abstract class LivingEntity extends Entity {
|
||||
|
||||
@Override
|
||||
protected void outOfWorld() {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Implement elytra settings
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 4ffe3171067a448128644a9501b6160625870459..44af2badf212f740ca7a7b24b960f86fef359588 100644
|
||||
index 519ee9e51dd181c1c1a269151cc832f84e937eed..2eeb3ad5d0286c14b0d61e68e398a459c41058cc 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -3478,7 +3478,16 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3493,7 +3493,16 @@ public abstract class LivingEntity extends Entity {
|
||||
int j = i / 10;
|
||||
|
||||
if (j % 2 == 0) {
|
||||
|
||||
@@ -18,13 +18,13 @@ index 163f14b4e1ca99d75e5d8e14190f7b91cb58e8f3..7880cdcaf12197f6b36777c51b2859f2
|
||||
|
||||
public ServerEntity(ServerLevel worldserver, Entity entity, int i, boolean flag, Consumer<Packet<?>> consumer, Set<ServerPlayerConnection> trackedPlayers) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
|
||||
index 16a55f94bda9f959548772c8916b4dc3eb045d47..aa1c929d948cea8f6212330f922eb5f1d9b9bb97 100644
|
||||
index 8a5efb6c81bbe85b67a6bb83c0c4afdf995121d0..d7e102024b495067335fe008ec1649708f3a4016 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
|
||||
@@ -55,6 +55,12 @@ public class ItemEntity extends Entity {
|
||||
private int lastTick = MinecraftServer.currentTick - 1; // CraftBukkit
|
||||
@@ -56,6 +56,12 @@ public class ItemEntity extends Entity {
|
||||
public boolean canMobPickup = true; // Paper
|
||||
private int despawnRate = -1; // Paper
|
||||
public net.kyori.adventure.util.TriState frictionState = net.kyori.adventure.util.TriState.NOT_SET; // Paper
|
||||
+ // Purpur start
|
||||
+ public boolean immuneToCactus = false;
|
||||
+ public boolean immuneToExplosion = false;
|
||||
@@ -34,7 +34,7 @@ index 16a55f94bda9f959548772c8916b4dc3eb045d47..aa1c929d948cea8f6212330f922eb5f1
|
||||
|
||||
public ItemEntity(EntityType<? extends ItemEntity> type, Level world) {
|
||||
super(type, world);
|
||||
@@ -337,6 +343,15 @@ public class ItemEntity extends Entity {
|
||||
@@ -342,6 +348,15 @@ public class ItemEntity extends Entity {
|
||||
return false;
|
||||
} else if (!this.getItem().getItem().canBeHurtBy(source)) {
|
||||
return false;
|
||||
@@ -50,7 +50,7 @@ index 16a55f94bda9f959548772c8916b4dc3eb045d47..aa1c929d948cea8f6212330f922eb5f1
|
||||
} else if (this.level.isClientSide) {
|
||||
return true;
|
||||
} else {
|
||||
@@ -522,6 +537,12 @@ public class ItemEntity extends Entity {
|
||||
@@ -543,6 +558,12 @@ public class ItemEntity extends Entity {
|
||||
this.getEntityData().set(ItemEntity.DATA_ITEM, stack);
|
||||
this.getEntityData().markDirty(ItemEntity.DATA_ITEM); // CraftBukkit - SPIGOT-4591, must mark dirty
|
||||
this.despawnRate = level.paperConfig().entities.spawning.altItemDespawnRate.enabled ? level.paperConfig().entities.spawning.altItemDespawnRate.items.getOrDefault(stack.getItem(), level.spigotConfig.itemDespawnRate) : level.spigotConfig.itemDespawnRate; // Paper
|
||||
@@ -64,10 +64,10 @@ index 16a55f94bda9f959548772c8916b4dc3eb045d47..aa1c929d948cea8f6212330f922eb5f1
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
|
||||
index fea44ba6a6584b4a510af6a58cab07eecec6b68b..f3bf5199bc7ddf8a3d0dc67a184e7690efa659eb 100644
|
||||
index ecec5e17807a760769fc0ea79c2a0161cc5db1ef..3023cadd21947389158f1bfaf9fe84fd0ea80456 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
|
||||
@@ -148,4 +148,46 @@ public class CraftItem extends CraftEntity implements Item {
|
||||
@@ -160,4 +160,46 @@ public class CraftItem extends CraftEntity implements Item {
|
||||
public EntityType getType() {
|
||||
return EntityType.DROPPED_ITEM;
|
||||
}
|
||||
|
||||
@@ -5,21 +5,19 @@ Subject: [PATCH] Add phantom spawning options
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/levelgen/PhantomSpawner.java b/src/main/java/net/minecraft/world/level/levelgen/PhantomSpawner.java
|
||||
index 2093d08bccbfbe096ea24cc4f70cbfdfa07d6a56..8f0add62c1fff6e14e83dc9eb87c5c20c6517b91 100644
|
||||
index ee299451437822544f0c79cc878110c959ec5dc4..9cb157bfcbcd309fbe7f763159592a56d2b43ed9 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/levelgen/PhantomSpawner.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/levelgen/PhantomSpawner.java
|
||||
@@ -41,8 +41,8 @@ public class PhantomSpawner implements CustomSpawner {
|
||||
if (this.nextTick > 0) {
|
||||
return 0;
|
||||
} else {
|
||||
- this.nextTick += (60 + randomsource.nextInt(60)) * 20;
|
||||
@@ -51,7 +51,7 @@ public class PhantomSpawner implements CustomSpawner {
|
||||
int spawnAttemptMaxSeconds = world.paperConfig().entities.behavior.phantomsSpawnAttemptMaxSeconds;
|
||||
this.nextTick += (spawnAttemptMinSeconds + randomsource.nextInt(spawnAttemptMaxSeconds - spawnAttemptMinSeconds + 1)) * 20;
|
||||
// Paper end
|
||||
- if (world.getSkyDarken() < 5 && world.dimensionType().hasSkyLight()) {
|
||||
+ this.nextTick += world.purpurConfig.phantomSpawnDelayMin + randomsource.nextInt(world.purpurConfig.phantomSpawnDelayMax - world.purpurConfig.phantomSpawnDelayMin + 1); // Purpur
|
||||
+ if (world.getSkyDarken() < world.purpurConfig.phantomSpawnMinSkyDarkness && world.dimensionType().hasSkyLight()) { // Purpur
|
||||
return 0;
|
||||
} else {
|
||||
int i = 0;
|
||||
@@ -54,22 +54,22 @@ public class PhantomSpawner implements CustomSpawner {
|
||||
@@ -63,10 +63,10 @@ public class PhantomSpawner implements CustomSpawner {
|
||||
if (!entityhuman.isSpectator() && (!world.paperConfig().entities.behavior.phantomsDoNotSpawnOnCreativePlayers || !entityhuman.isCreative())) { // Paper
|
||||
BlockPos blockposition = entityhuman.blockPosition();
|
||||
|
||||
@@ -32,13 +30,7 @@ index 2093d08bccbfbe096ea24cc4f70cbfdfa07d6a56..8f0add62c1fff6e14e83dc9eb87c5c20
|
||||
ServerStatsCounter serverstatisticmanager = ((ServerPlayer) entityhuman).getStats();
|
||||
int j = Mth.clamp(serverstatisticmanager.getValue(Stats.CUSTOM.get(Stats.TIME_SINCE_REST)), (int) 1, Integer.MAX_VALUE);
|
||||
boolean flag2 = true;
|
||||
|
||||
- if (randomsource.nextInt(j) >= 72000) {
|
||||
- BlockPos blockposition1 = blockposition.above(20 + randomsource.nextInt(15)).east(-10 + randomsource.nextInt(21)).south(-10 + randomsource.nextInt(21));
|
||||
+ if (randomsource.nextInt(j) >= world.purpurConfig.phantomSpawnMinTimeSinceSlept) { // Purpur
|
||||
+ BlockPos blockposition1 = blockposition.above(world.purpurConfig.phantomSpawnMinOverhead + randomsource.nextInt(world.purpurConfig.phantomSpawnMaxOverhead - world.purpurConfig.phantomSpawnMinOverhead + 1)).east(-world.purpurConfig.phantomSpawnOverheadRadius + randomsource.nextInt(world.purpurConfig.phantomSpawnOverheadRadius * 2 + 1)).south(-world.purpurConfig.phantomSpawnOverheadRadius + randomsource.nextInt(world.purpurConfig.phantomSpawnOverheadRadius * 2 + 1)); // Purpur
|
||||
BlockState iblockdata = world.getBlockState(blockposition1);
|
||||
FluidState fluid = world.getFluidState(blockposition1);
|
||||
@@ -78,7 +78,7 @@ public class PhantomSpawner implements CustomSpawner {
|
||||
|
||||
if (NaturalSpawner.isValidEmptySpawnBlock(world, blockposition1, iblockdata, fluid, EntityType.PHANTOM)) {
|
||||
SpawnGroupData groupdataentity = null;
|
||||
@@ -48,42 +40,30 @@ index 2093d08bccbfbe096ea24cc4f70cbfdfa07d6a56..8f0add62c1fff6e14e83dc9eb87c5c20
|
||||
for (int l = 0; l < k; ++l) {
|
||||
// Paper start
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 3a216283fd76991539b494afacbaeb011fb8f8ec..b45d0094151d12724705bfa65eef52e5bdcb8426 100644
|
||||
index 3a216283fd76991539b494afacbaeb011fb8f8ec..55ea8e64bea557ceac97426b24e4cca96a9c5d0a 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1058,6 +1058,18 @@ public class PurpurWorldConfig {
|
||||
@@ -1058,6 +1058,12 @@ public class PurpurWorldConfig {
|
||||
public double phantomAttackedByCrystalRadius = 0.0D;
|
||||
public float phantomAttackedByCrystalDamage = 1.0F;
|
||||
public double phantomOrbitCrystalRadius = 0.0D;
|
||||
+ public int phantomSpawnDelayMin = 1200;
|
||||
+ public int phantomSpawnDelayMax = 2400;
|
||||
+ public int phantomSpawnMinSkyDarkness = 5;
|
||||
+ public boolean phantomSpawnOnlyAboveSeaLevel = true;
|
||||
+ public boolean phantomSpawnOnlyWithVisibleSky = true;
|
||||
+ public double phantomSpawnLocalDifficultyChance = 3.0D;
|
||||
+ public int phantomSpawnMinTimeSinceSlept = 72000;
|
||||
+ public int phantomSpawnMinOverhead = 20;
|
||||
+ public int phantomSpawnMaxOverhead = 35;
|
||||
+ public int phantomSpawnOverheadRadius = 10;
|
||||
+ public int phantomSpawnMinPerAttempt = 1;
|
||||
+ public int phantomSpawnMaxPerAttempt = -1;
|
||||
private void phantomSettings() {
|
||||
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
|
||||
phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater);
|
||||
@@ -1082,6 +1094,18 @@ public class PurpurWorldConfig {
|
||||
@@ -1082,6 +1088,12 @@ public class PurpurWorldConfig {
|
||||
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);
|
||||
+ phantomSpawnDelayMin = getInt("mobs.phantom.spawn.delay.min", phantomSpawnDelayMin);
|
||||
+ phantomSpawnDelayMax = getInt("mobs.phantom.spawn.delay.max", phantomSpawnDelayMax);
|
||||
+ phantomSpawnMinSkyDarkness = getInt("mobs.phantom.spawn.min-sky-darkness", phantomSpawnMinSkyDarkness);
|
||||
+ phantomSpawnOnlyAboveSeaLevel = getBoolean("mobs.phantom.spawn.only-above-sea-level", phantomSpawnOnlyAboveSeaLevel);
|
||||
+ phantomSpawnOnlyWithVisibleSky = getBoolean("mobs.phantom.spawn.only-with-visible-sky", phantomSpawnOnlyWithVisibleSky);
|
||||
+ phantomSpawnLocalDifficultyChance = getDouble("mobs.phantom.spawn.local-difficulty-chance", phantomSpawnLocalDifficultyChance);
|
||||
+ phantomSpawnMinTimeSinceSlept = getInt("mobs.phantom.spawn.min-time-since-slept", phantomSpawnMinTimeSinceSlept);
|
||||
+ phantomSpawnMinOverhead = getInt("mobs.phantom.spawn.overhead.min", phantomSpawnMinOverhead);
|
||||
+ phantomSpawnMaxOverhead = getInt("mobs.phantom.spawn.overhead.max", phantomSpawnMaxOverhead);
|
||||
+ 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);
|
||||
}
|
||||
|
||||
@@ -36,10 +36,10 @@ index fae43130665255e1b264adc58efeb2a6508efdaa..cb10a4f78f462a60ce356732878b9f98
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 8401577ee010c211c99c174bc70536d606a09b1d..5230e9a58c9fb6f9e9ea9536b2d05cee0a24554a 100644
|
||||
index 2eeb3ad5d0286c14b0d61e68e398a459c41058cc..616fb6ef8ec62fad8c910d676ebbe308cbe6da4e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -411,6 +411,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -412,6 +412,7 @@ public abstract class LivingEntity extends Entity {
|
||||
double d1 = this.level.getWorldBorder().getDamagePerBlock();
|
||||
|
||||
if (d1 > 0.0D) {
|
||||
@@ -48,7 +48,7 @@ index 8401577ee010c211c99c174bc70536d606a09b1d..5230e9a58c9fb6f9e9ea9536b2d05cee
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 0f33736b1daf1d5721cd08abd66c70a9690124b6..be33d4c0c00804547da3f0aa56b52014343dd804 100644
|
||||
index e778648a01e6fe134ab6dc632b4f6809f4af32e1..45cda7ef8678456752cbfb3a98608ef01fa28733 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -247,6 +247,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Squid EAR immunity
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index be33d4c0c00804547da3f0aa56b52014343dd804..7edc474d30256811a04788e01d6f0ceb2404de73 100644
|
||||
index 45cda7ef8678456752cbfb3a98608ef01fa28733..85819dd9d93b9c198185cbac1a65217dd8ec2db1 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1434,6 +1434,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1422,6 +1422,7 @@ public class PurpurWorldConfig {
|
||||
public boolean squidRidable = false;
|
||||
public boolean squidControllable = true;
|
||||
public double squidMaxHealth = 10.0D;
|
||||
@@ -16,7 +16,7 @@ index be33d4c0c00804547da3f0aa56b52014343dd804..7edc474d30256811a04788e01d6f0ceb
|
||||
private void squidSettings() {
|
||||
squidRidable = getBoolean("mobs.squid.ridable", squidRidable);
|
||||
squidControllable = getBoolean("mobs.squid.controllable", squidControllable);
|
||||
@@ -1443,6 +1444,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1431,6 +1432,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.squid.attributes.max_health", oldValue);
|
||||
}
|
||||
squidMaxHealth = getDouble("mobs.squid.attributes.max_health", squidMaxHealth);
|
||||
|
||||
@@ -53,11 +53,11 @@ index b9d737a20b8cca81fca290c13cb640c17d25bc6e..11cbb89eb062de0cd30158dbfbef1355
|
||||
list.sort(Comparator.comparing((Entity e) -> { return e.getY(); }).reversed()); // CraftBukkit - decompile error
|
||||
Iterator iterator = list.iterator();
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 7edc474d30256811a04788e01d6f0ceb2404de73..a5a7fff2375d8216fede6f606fb305907be0b518 100644
|
||||
index 85819dd9d93b9c198185cbac1a65217dd8ec2db1..01124f7f92b510e89a5531477a9cdabd3c2592a9 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1109,6 +1109,9 @@ public class PurpurWorldConfig {
|
||||
public int phantomSpawnOverheadRadius = 10;
|
||||
@@ -1103,6 +1103,9 @@ public class PurpurWorldConfig {
|
||||
public double phantomSpawnLocalDifficultyChance = 3.0D;
|
||||
public int phantomSpawnMinPerAttempt = 1;
|
||||
public int phantomSpawnMaxPerAttempt = -1;
|
||||
+ public int phantomBurnInLight = 0;
|
||||
@@ -66,8 +66,8 @@ index 7edc474d30256811a04788e01d6f0ceb2404de73..a5a7fff2375d8216fede6f606fb30590
|
||||
private void phantomSettings() {
|
||||
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
|
||||
phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater);
|
||||
@@ -1145,6 +1148,9 @@ public class PurpurWorldConfig {
|
||||
phantomSpawnOverheadRadius = getInt("mobs.phantom.spawn.overhead.radius", phantomSpawnOverheadRadius);
|
||||
@@ -1133,6 +1136,9 @@ public class PurpurWorldConfig {
|
||||
phantomSpawnLocalDifficultyChance = getDouble("mobs.phantom.spawn.local-difficulty-chance", phantomSpawnLocalDifficultyChance);
|
||||
phantomSpawnMinPerAttempt = getInt("mobs.phantom.spawn.per-attempt.min", phantomSpawnMinPerAttempt);
|
||||
phantomSpawnMaxPerAttempt = getInt("mobs.phantom.spawn.per-attempt.max", phantomSpawnMaxPerAttempt);
|
||||
+ phantomBurnInLight = getInt("mobs.phantom.burn-in-light", phantomBurnInLight);
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable villager breeding
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index 2087b4a4fbc4076c5ec59aaf73f1367ffcd0ef7c..09a7af00e05f5369c1c87c51f121ed34d4fd2734 100644
|
||||
index 60847bbed4890670ea422a238359d8d9de5c08e7..0db007e61478688ca7198587e3a444ef63e3b65a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -774,7 +774,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -18,10 +18,10 @@ index 2087b4a4fbc4076c5ec59aaf73f1367ffcd0ef7c..09a7af00e05f5369c1c87c51f121ed34
|
||||
|
||||
private boolean hungry() {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index a5a7fff2375d8216fede6f606fb305907be0b518..69032e6cc241014ed0a8024757cab66a01235b90 100644
|
||||
index 01124f7f92b510e89a5531477a9cdabd3c2592a9..a469231646469604b2ca48f06646dea233db0719 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1594,6 +1594,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1582,6 +1582,7 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerUseBrainTicksOnlyWhenLagging = true;
|
||||
public boolean villagerFollowEmeraldBlock = false;
|
||||
public boolean villagerCanBeLeashed = false;
|
||||
@@ -29,7 +29,7 @@ index a5a7fff2375d8216fede6f606fb305907be0b518..69032e6cc241014ed0a8024757cab66a
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1608,6 +1609,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1596,6 +1597,7 @@ public class PurpurWorldConfig {
|
||||
villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging);
|
||||
villagerFollowEmeraldBlock = getBoolean("mobs.villager.follow-emerald-blocks", villagerFollowEmeraldBlock);
|
||||
villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Totems work in inventory
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 5230e9a58c9fb6f9e9ea9536b2d05cee0a24554a..e5602a601dac4c439542094e5f74d8dc46f85866 100644
|
||||
index 616fb6ef8ec62fad8c910d676ebbe308cbe6da4e..211f7455553835bfb7012a95779bb11750a9d621 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1545,6 +1545,18 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1560,6 +1560,18 @@ public abstract class LivingEntity extends Entity {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ index 5230e9a58c9fb6f9e9ea9536b2d05cee0a24554a..e5602a601dac4c439542094e5f74d8dc
|
||||
EntityResurrectEvent event = new EntityResurrectEvent((org.bukkit.entity.LivingEntity) this.getBukkitEntity(), handSlot);
|
||||
event.setCancelled(itemstack == null);
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 5ad41ae78145e0488676c2addeb0fcdccbfcda85..da29a7a36e9d7bae2fd6d8cd93c236502d24ca3d 100644
|
||||
index a2d6192bb20bc2edae00ea903e1d920a65ae1dd4..3ffbab710e050ab71f36417ccf955a1e96ecf379 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -248,6 +248,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -22,10 +22,10 @@ index c3b8bce2d8e1dccb619267923964e06abfed8762..021550a0465dd1fd152b4c2e76301405
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index da29a7a36e9d7bae2fd6d8cd93c236502d24ca3d..6cc8176551a6bd90c7b070095263d4f1b2cb7bec 100644
|
||||
index 3ffbab710e050ab71f36417ccf955a1e96ecf379..f77772071f28fec0072f4cfa042eaa7505544ff7 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1623,6 +1623,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1611,6 +1611,7 @@ public class PurpurWorldConfig {
|
||||
public boolean vindicatorRidableInWater = false;
|
||||
public boolean vindicatorControllable = true;
|
||||
public double vindicatorMaxHealth = 24.0D;
|
||||
@@ -33,7 +33,7 @@ index da29a7a36e9d7bae2fd6d8cd93c236502d24ca3d..6cc8176551a6bd90c7b070095263d4f1
|
||||
private void vindicatorSettings() {
|
||||
vindicatorRidable = getBoolean("mobs.vindicator.ridable", vindicatorRidable);
|
||||
vindicatorRidableInWater = getBoolean("mobs.vindicator.ridable-in-water", vindicatorRidableInWater);
|
||||
@@ -1633,6 +1634,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1621,6 +1622,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.vindicator.attributes.max_health", oldValue);
|
||||
}
|
||||
vindicatorMaxHealth = getDouble("mobs.vindicator.attributes.max_health", vindicatorMaxHealth);
|
||||
|
||||
@@ -54,10 +54,10 @@ index 68cc6f2a78a06293a29317fda72ab3ee79b3533a..cfb2e46b34b2982d6724f18214557fc8
|
||||
+ // Purpur
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 08eca6afc59d1011e2e3ba184c5d8d5e2f31f094..022d8c904ce5df6c0b1906c99770aa17344bd351 100644
|
||||
index 888406adb2f020abbeddf5678a10b955daff2892..b952206a8d846de12458a80a0e969e0dcc649779 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1459,6 +1459,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1447,6 +1447,7 @@ public class PurpurWorldConfig {
|
||||
public boolean squidControllable = true;
|
||||
public double squidMaxHealth = 10.0D;
|
||||
public boolean squidImmuneToEAR = true;
|
||||
@@ -65,7 +65,7 @@ index 08eca6afc59d1011e2e3ba184c5d8d5e2f31f094..022d8c904ce5df6c0b1906c99770aa17
|
||||
private void squidSettings() {
|
||||
squidRidable = getBoolean("mobs.squid.ridable", squidRidable);
|
||||
squidControllable = getBoolean("mobs.squid.controllable", squidControllable);
|
||||
@@ -1469,6 +1470,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1457,6 +1458,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
squidMaxHealth = getDouble("mobs.squid.attributes.max_health", squidMaxHealth);
|
||||
squidImmuneToEAR = getBoolean("mobs.squid.immune-to-EAR", squidImmuneToEAR);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] LivingEntity#broadcastItemBreak
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index f4888fb501871afb2d9edff7cf1a36cb0c56ac6e..aec6f37ceac8ba9a987edf3eb24bbc06d3b1613a 100644
|
||||
index 810e13a060a7c64f8d0d08a632b378ef8480710e..bea0a1441b3f331e1bbaee15a91b279950bca640 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -995,5 +995,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -1054,5 +1054,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
public void setSafeFallDistance(float safeFallDistance) {
|
||||
getHandle().safeFallDistance = safeFallDistance;
|
||||
}
|
||||
|
||||
@@ -23,10 +23,10 @@ index 46593c26a7a167f22a728c8a87ebcb26ef7b4612..abf4490d8366ec658717868822837509
|
||||
|
||||
this.bossEvent.setProgress(this.getHealth() / this.getMaxHealth());
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 3f3dc194f2b11a4fddab9b178db248e8154f693d..f5f2bf775390ac019c811e4c26d817749a2f6645 100644
|
||||
index d446566cf5d6fc7b4767273e52d5e1d44ba323c2..f8b26b3dad49559f80b4bf9cd9b8952be6c3fd34 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1702,6 +1702,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1690,6 +1690,8 @@ public class PurpurWorldConfig {
|
||||
public boolean witherControllable = true;
|
||||
public double witherMaxY = 320D;
|
||||
public double witherMaxHealth = 300.0D;
|
||||
@@ -35,7 +35,7 @@ index 3f3dc194f2b11a4fddab9b178db248e8154f693d..f5f2bf775390ac019c811e4c26d81774
|
||||
private void witherSettings() {
|
||||
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
|
||||
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
|
||||
@@ -1717,6 +1719,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1705,6 +1707,8 @@ public class PurpurWorldConfig {
|
||||
set("mobs.wither.attributes.max_health", oldValue);
|
||||
}
|
||||
witherMaxHealth = getDouble("mobs.wither.attributes.max_health", witherMaxHealth);
|
||||
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Allow toggling special MobSpawners per world
|
||||
In vanilla, these are all hardcoded on for world type 0 (overworld) and hardcoded off for every other world type. Default config behaviour matches this.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 0fb639ed10714a5bb83fa1f9901e50f45c69b6a2..444a8207fe3610f4cd5f975c5983efab43ccbfea 100644
|
||||
index 125faced389b5f467d96dab4e2ac4ffe85c82f50..b188865b4aa2f33569768359482e2a5fbe11aa28 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -542,7 +542,24 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -543,7 +543,24 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
this.dragonParts = new Int2ObjectOpenHashMap();
|
||||
this.tickTime = flag1;
|
||||
this.server = minecraftserver;
|
||||
@@ -67,7 +67,7 @@ index daa7c4bd8a3f6c28f02b7117b061f0def29e3743..d4699d7eefafffd2d4e0a03d62d5094f
|
||||
if (NaturalSpawner.isSpawnPositionOk(SpawnPlacements.Type.ON_GROUND, world, blockposition2, EntityType.WANDERING_TRADER)) {
|
||||
blockposition1 = blockposition2;
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index f5f2bf775390ac019c811e4c26d817749a2f6645..04604557a57a09127e88a2119aa9a63c764de94a 100644
|
||||
index f8b26b3dad49559f80b4bf9cd9b8952be6c3fd34..bf187a6544fbbd967baec25f9f78c673b39e35f2 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -72,6 +72,12 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -6,7 +6,7 @@ Subject: [PATCH] Add option to disable zombie aggressiveness towards villagers
|
||||
|
||||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java
|
||||
index c9901f8c7f3af57cb2e0bec315caa97adcb6f5ea..407377e8791400f73e2e2305cbd38f17c7a5c0f1 100644
|
||||
index 8f47d471c29d89bae5ae06a0d495d8c694117b72..9eb4d1a3d8f1d7d1137508086d5e3be3aec31f15 100644
|
||||
--- a/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java
|
||||
+++ b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java
|
||||
@@ -135,6 +135,10 @@ public class MobGoalHelper {
|
||||
@@ -46,7 +46,7 @@ index 968392e9dd124f997d5d5996893363ac7ef2c740..1d57ee963416e784a759f2ecee7b7c38
|
||||
this.targetSelector.addGoal(3, new NearestAttackableTargetGoal<>(this, Axolotl.class, true, false));
|
||||
this.targetSelector.addGoal(5, new NearestAttackableTargetGoal<>(this, Turtle.class, 10, true, false, Turtle.BABY_ON_LAND_SELECTOR));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Zombie.java b/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
index eeb01e54125cab3d0803341f21d135068924d786..66b69f9c6cc5cbf235dce888623b6cea98695f6f 100644
|
||||
index b9b4b81babbac27ad879197f027fba11aebd4c3c..e9482ebe59cba4cea06392fe97b74e4fb70eceda 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
@@ -155,7 +155,19 @@ public class Zombie extends Monster {
|
||||
@@ -71,10 +71,10 @@ index eeb01e54125cab3d0803341f21d135068924d786..66b69f9c6cc5cbf235dce888623b6cea
|
||||
this.targetSelector.addGoal(5, new NearestAttackableTargetGoal<>(this, Turtle.class, 10, true, false, Turtle.BABY_ON_LAND_SELECTOR));
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 6f4f71c9a27fa1c0ab354b9b410fba744787a51a..aab75be19fe6d9364c3214b6760ccddd253d3b1e 100644
|
||||
index 5158e2c5469e649133eeb4ac61a3aa55fd40bf77..00f1d1c208ca36c7548e36b1654167f24609c880 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1835,6 +1835,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1823,6 +1823,7 @@ public class PurpurWorldConfig {
|
||||
public boolean zombieJockeyOnlyBaby = true;
|
||||
public double zombieJockeyChance = 0.05D;
|
||||
public boolean zombieJockeyTryExistingChickens = true;
|
||||
@@ -82,7 +82,7 @@ index 6f4f71c9a27fa1c0ab354b9b410fba744787a51a..aab75be19fe6d9364c3214b6760ccddd
|
||||
private void zombieSettings() {
|
||||
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
|
||||
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
|
||||
@@ -1849,6 +1850,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1837,6 +1838,7 @@ public class PurpurWorldConfig {
|
||||
zombieJockeyOnlyBaby = getBoolean("mobs.zombie.jockey.only-babies", zombieJockeyOnlyBaby);
|
||||
zombieJockeyChance = getDouble("mobs.zombie.jockey.chance", zombieJockeyChance);
|
||||
zombieJockeyTryExistingChickens = getBoolean("mobs.zombie.jockey.try-existing-chickens", zombieJockeyTryExistingChickens);
|
||||
|
||||
@@ -58,7 +58,7 @@ index 709aaa9dc834d91219ce1087d8f89ef5bf3d915c..4850960c7c4f38c7d81b8945f8c87504
|
||||
float f1 = Mth.cos(f) * 0.2F;
|
||||
float f2 = -0.1F + this.squid.getRandom().nextFloat() * 0.2F;
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index aab75be19fe6d9364c3214b6760ccddd253d3b1e..7b2a16c2d474b3931ff629ba58f6987f69fadfec 100644
|
||||
index 00f1d1c208ca36c7548e36b1654167f24609c880..8ba2e5b8dad303d78123470dbd456f34a58ece96 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -882,10 +882,12 @@ public class PurpurWorldConfig {
|
||||
@@ -74,7 +74,7 @@ index aab75be19fe6d9364c3214b6760ccddd253d3b1e..7b2a16c2d474b3931ff629ba58f6987f
|
||||
}
|
||||
|
||||
public boolean goatRidable = false;
|
||||
@@ -1518,6 +1520,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1506,6 +1508,7 @@ public class PurpurWorldConfig {
|
||||
public double squidMaxHealth = 10.0D;
|
||||
public boolean squidImmuneToEAR = true;
|
||||
public double squidOffsetWaterCheck = 0.0D;
|
||||
@@ -82,7 +82,7 @@ index aab75be19fe6d9364c3214b6760ccddd253d3b1e..7b2a16c2d474b3931ff629ba58f6987f
|
||||
private void squidSettings() {
|
||||
squidRidable = getBoolean("mobs.squid.ridable", squidRidable);
|
||||
squidControllable = getBoolean("mobs.squid.controllable", squidControllable);
|
||||
@@ -1529,6 +1532,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1517,6 +1520,7 @@ public class PurpurWorldConfig {
|
||||
squidMaxHealth = getDouble("mobs.squid.attributes.max_health", squidMaxHealth);
|
||||
squidImmuneToEAR = getBoolean("mobs.squid.immune-to-EAR", squidImmuneToEAR);
|
||||
squidOffsetWaterCheck = getDouble("mobs.squid.water-offset-check", squidOffsetWaterCheck);
|
||||
|
||||
@@ -31,7 +31,7 @@ index a90befe6b38d6789e200535f688804d85dad13e7..a1f830b27137f660fd2f0d95eb4b6692
|
||||
}
|
||||
ServerPlayer entityplayer = (ServerPlayer) entityhuman;
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 6f2ec08bf3f7a2902b07e87bdca247d30ec900fe..ee9b4db369763cc579ac112be35167e0d0af6100 100644
|
||||
index b188865b4aa2f33569768359482e2a5fbe11aa28..1689ae9fc4635c42755699b5bff43af2f866fa3e 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -212,6 +212,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -43,7 +43,7 @@ index 6f2ec08bf3f7a2902b07e87bdca247d30ec900fe..ee9b4db369763cc579ac112be35167e0
|
||||
public long lastMidTickExecuteFailure; // Paper - execute chunk tasks mid tick
|
||||
|
||||
// CraftBukkit start
|
||||
@@ -622,6 +624,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -623,6 +625,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
|
||||
this.chunkTaskScheduler = new io.papermc.paper.chunk.system.scheduling.ChunkTaskScheduler(this, io.papermc.paper.chunk.system.scheduling.ChunkTaskScheduler.workerThreads); // Paper - rewrite chunk system
|
||||
this.entityLookup = new io.papermc.paper.chunk.system.entity.EntityLookup(this, new EntityCallbacks()); // Paper - rewrite chunk system
|
||||
@@ -51,7 +51,7 @@ index 6f2ec08bf3f7a2902b07e87bdca247d30ec900fe..ee9b4db369763cc579ac112be35167e0
|
||||
}
|
||||
|
||||
public void setWeatherParameters(int clearDuration, int rainDuration, boolean raining, boolean thundering) {
|
||||
@@ -793,6 +796,13 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -794,6 +797,13 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
this.serverLevelData.setGameTime(i);
|
||||
this.serverLevelData.getScheduledEvents().tick(this.server, i);
|
||||
if (this.levelData.getGameRules().getBoolean(GameRules.RULE_DAYLIGHT)) {
|
||||
@@ -65,7 +65,7 @@ index 6f2ec08bf3f7a2902b07e87bdca247d30ec900fe..ee9b4db369763cc579ac112be35167e0
|
||||
this.setDayTime(this.levelData.getDayTime() + 1L);
|
||||
}
|
||||
|
||||
@@ -801,7 +811,21 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -802,7 +812,21 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
|
||||
public void setDayTime(long timeOfDay) {
|
||||
this.serverLevelData.setDayTime(timeOfDay);
|
||||
@@ -88,7 +88,7 @@ index 6f2ec08bf3f7a2902b07e87bdca247d30ec900fe..ee9b4db369763cc579ac112be35167e0
|
||||
public void tickCustomSpawners(boolean spawnMonsters, boolean spawnAnimals) {
|
||||
Iterator iterator = this.customSpawners.iterator();
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 9a160cfffeb3049f256f56e9df8aab42ebe9ec2f..0a8f9082470b3b70fb21ea620d6dce23120cb65b 100644
|
||||
index 75b416957af7955e9dd03fa4fba30b6578660ac6..0d25bdac34cd9c9fbeaf8736a45c4a0ac67acf1a 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -125,6 +125,13 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -22,7 +22,7 @@ index b3adff55870c673d753f05dee4540bef0d142c7b..bf30980cf41db70e70a0ca4e51d32c33
|
||||
world.broadcastEntityEvent(entityvillager2, (byte) 12);
|
||||
return Optional.of(entityvillager2);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Animal.java b/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
index 34e82b97c5b294f0a6423581220403a10264da8b..a0c3a27a90e0788b573f0776c25cfc6e0fba5458 100644
|
||||
index f185215b826c4b50a819c8454089cb8ccdb0ed3a..2ac88f06ebb79e515cd9934ac1e3e2c8003d9e3c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
@@ -39,6 +39,7 @@ public abstract class Animal extends AgeableMob {
|
||||
@@ -95,7 +95,7 @@ index 96dceb9943c4320e0edfba47cc211d60aa92323b..fe266b94d08b8977451f75ec87c19497
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Cow.java b/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
index 123aae4d17bc06317c872270e229f6e9c13953e1..0da192e78865b50f87de0d61ce1b39b1899cc954 100644
|
||||
index 00bb7f8f8bc3b1369aec7b139745cf3c47b9f0f6..4f69a641686c086245ecc0696a8fd3f75c6b50d1 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
@@ -62,6 +62,11 @@ public class Cow extends Animal {
|
||||
@@ -491,7 +491,7 @@ index e99ffbf30652e188e88f8e17ed41d39ff25c9f73..c335a32832c6eef95658fbf632b943bb
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724764740e1 100644
|
||||
index fe2209f5b5b58d5859cbb1b2008d9236b39c4e54..e9767317eebca72f8ff923fb9b04a95cc1997f52 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -505,10 +505,12 @@ public class PurpurWorldConfig {
|
||||
@@ -740,7 +740,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
}
|
||||
|
||||
public boolean parrotRidable = false;
|
||||
@@ -1274,6 +1306,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1262,6 +1294,7 @@ public class PurpurWorldConfig {
|
||||
public boolean pigControllable = true;
|
||||
public double pigMaxHealth = 10.0D;
|
||||
public boolean pigGiveSaddleBack = false;
|
||||
@@ -748,7 +748,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
private void pigSettings() {
|
||||
pigRidable = getBoolean("mobs.pig.ridable", pigRidable);
|
||||
pigRidableInWater = getBoolean("mobs.pig.ridable-in-water", pigRidableInWater);
|
||||
@@ -1285,6 +1318,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1273,6 +1306,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
pigMaxHealth = getDouble("mobs.pig.attributes.max_health", pigMaxHealth);
|
||||
pigGiveSaddleBack = getBoolean("mobs.pig.give-saddle-back", pigGiveSaddleBack);
|
||||
@@ -756,7 +756,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
}
|
||||
|
||||
public boolean piglinRidable = false;
|
||||
@@ -1341,6 +1375,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1329,6 +1363,7 @@ public class PurpurWorldConfig {
|
||||
public double polarBearMaxHealth = 30.0D;
|
||||
public String polarBearBreedableItemString = "";
|
||||
public Item polarBearBreedableItem = null;
|
||||
@@ -764,7 +764,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
private void polarBearSettings() {
|
||||
polarBearRidable = getBoolean("mobs.polar_bear.ridable", polarBearRidable);
|
||||
polarBearRidableInWater = getBoolean("mobs.polar_bear.ridable-in-water", polarBearRidableInWater);
|
||||
@@ -1354,6 +1389,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1342,6 +1377,7 @@ public class PurpurWorldConfig {
|
||||
polarBearBreedableItemString = getString("mobs.polar_bear.breedable-item", polarBearBreedableItemString);
|
||||
Item item = Registry.ITEM.get(new ResourceLocation(polarBearBreedableItemString));
|
||||
if (item != Items.AIR) polarBearBreedableItem = item;
|
||||
@@ -772,7 +772,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
}
|
||||
|
||||
public boolean pufferfishRidable = false;
|
||||
@@ -1376,6 +1412,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1364,6 +1400,7 @@ public class PurpurWorldConfig {
|
||||
public double rabbitMaxHealth = 3.0D;
|
||||
public double rabbitNaturalToast = 0.0D;
|
||||
public double rabbitNaturalKiller = 0.0D;
|
||||
@@ -780,7 +780,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
private void rabbitSettings() {
|
||||
rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable);
|
||||
rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater);
|
||||
@@ -1388,6 +1425,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1376,6 +1413,7 @@ public class PurpurWorldConfig {
|
||||
rabbitMaxHealth = getDouble("mobs.rabbit.attributes.max_health", rabbitMaxHealth);
|
||||
rabbitNaturalToast = getDouble("mobs.rabbit.spawn-toast-chance", rabbitNaturalToast);
|
||||
rabbitNaturalKiller = getDouble("mobs.rabbit.spawn-killer-rabbit-chance", rabbitNaturalKiller);
|
||||
@@ -788,7 +788,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
}
|
||||
|
||||
public boolean ravagerRidable = false;
|
||||
@@ -1424,6 +1462,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1412,6 +1450,7 @@ public class PurpurWorldConfig {
|
||||
public boolean sheepRidableInWater = false;
|
||||
public boolean sheepControllable = true;
|
||||
public double sheepMaxHealth = 8.0D;
|
||||
@@ -796,7 +796,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
private void sheepSettings() {
|
||||
sheepRidable = getBoolean("mobs.sheep.ridable", sheepRidable);
|
||||
sheepRidableInWater = getBoolean("mobs.sheep.ridable-in-water", sheepRidableInWater);
|
||||
@@ -1434,6 +1473,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1422,6 +1461,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.sheep.attributes.max_health", oldValue);
|
||||
}
|
||||
sheepMaxHealth = getDouble("mobs.sheep.attributes.max_health", sheepMaxHealth);
|
||||
@@ -804,7 +804,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
}
|
||||
|
||||
public boolean shulkerRidable = false;
|
||||
@@ -1609,6 +1649,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1597,6 +1637,7 @@ public class PurpurWorldConfig {
|
||||
public boolean striderRidableInWater = false;
|
||||
public boolean striderControllable = true;
|
||||
public double striderMaxHealth = 20.0D;
|
||||
@@ -812,7 +812,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
private void striderSettings() {
|
||||
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
|
||||
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
|
||||
@@ -1619,6 +1660,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1607,6 +1648,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.strider.attributes.max_health", oldValue);
|
||||
}
|
||||
striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth);
|
||||
@@ -820,7 +820,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
}
|
||||
|
||||
public boolean tadpoleRidable = false;
|
||||
@@ -1639,6 +1681,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1627,6 +1669,7 @@ public class PurpurWorldConfig {
|
||||
public double traderLlamaJumpStrengthMax = 0.5D;
|
||||
public double traderLlamaMovementSpeedMin = 0.175D;
|
||||
public double traderLlamaMovementSpeedMax = 0.175D;
|
||||
@@ -828,7 +828,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
private void traderLlamaSettings() {
|
||||
traderLlamaRidable = getBoolean("mobs.trader_llama.ridable", traderLlamaRidable);
|
||||
traderLlamaRidableInWater = getBoolean("mobs.trader_llama.ridable-in-water", traderLlamaRidableInWater);
|
||||
@@ -1656,6 +1699,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1644,6 +1687,7 @@ public class PurpurWorldConfig {
|
||||
traderLlamaJumpStrengthMax = getDouble("mobs.trader_llama.attributes.jump_strength.max", traderLlamaJumpStrengthMax);
|
||||
traderLlamaMovementSpeedMin = getDouble("mobs.trader_llama.attributes.movement_speed.min", traderLlamaMovementSpeedMin);
|
||||
traderLlamaMovementSpeedMax = getDouble("mobs.trader_llama.attributes.movement_speed.max", traderLlamaMovementSpeedMax);
|
||||
@@ -836,7 +836,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
}
|
||||
|
||||
public boolean tropicalFishRidable = false;
|
||||
@@ -1676,6 +1720,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1664,6 +1708,7 @@ public class PurpurWorldConfig {
|
||||
public boolean turtleRidableInWater = false;
|
||||
public boolean turtleControllable = true;
|
||||
public double turtleMaxHealth = 30.0D;
|
||||
@@ -844,7 +844,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
private void turtleSettings() {
|
||||
turtleRidable = getBoolean("mobs.turtle.ridable", turtleRidable);
|
||||
turtleRidableInWater = getBoolean("mobs.turtle.ridable-in-water", turtleRidableInWater);
|
||||
@@ -1686,6 +1731,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1674,6 +1719,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.turtle.attributes.max_health", oldValue);
|
||||
}
|
||||
turtleMaxHealth = getDouble("mobs.turtle.attributes.max_health", turtleMaxHealth);
|
||||
@@ -852,7 +852,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
}
|
||||
|
||||
public boolean vexRidable = false;
|
||||
@@ -1715,6 +1761,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1703,6 +1749,7 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerFollowEmeraldBlock = false;
|
||||
public boolean villagerCanBeLeashed = false;
|
||||
public boolean villagerCanBreed = true;
|
||||
@@ -860,7 +860,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1730,6 +1777,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1718,6 +1765,7 @@ public class PurpurWorldConfig {
|
||||
villagerFollowEmeraldBlock = getBoolean("mobs.villager.follow-emerald-blocks", villagerFollowEmeraldBlock);
|
||||
villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed);
|
||||
villagerCanBreed = getBoolean("mobs.villager.can-breed", villagerCanBreed);
|
||||
@@ -868,7 +868,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
}
|
||||
|
||||
public boolean vindicatorRidable = false;
|
||||
@@ -1841,6 +1889,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1829,6 +1877,7 @@ public class PurpurWorldConfig {
|
||||
public boolean wolfRidableInWater = false;
|
||||
public boolean wolfControllable = true;
|
||||
public double wolfMaxHealth = 8.0D;
|
||||
@@ -876,7 +876,7 @@ index d351b955427c00c4fea4157ac2d0eec3c4688b70..da8d0c3b68f0d41a0925b983f0214724
|
||||
private void wolfSettings() {
|
||||
wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable);
|
||||
wolfRidableInWater = getBoolean("mobs.wolf.ridable-in-water", wolfRidableInWater);
|
||||
@@ -1851,6 +1900,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1839,6 +1888,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.wolf.attributes.max_health", oldValue);
|
||||
}
|
||||
wolfMaxHealth = getDouble("mobs.wolf.attributes.max_health", wolfMaxHealth);
|
||||
|
||||
@@ -23,10 +23,10 @@ index b4459d68397cc5bac4f7ef79a2dfb18f3eb24f77..b9025929fcc89e72aa820953b91a6542
|
||||
this.goalSelector.addGoal(3, new LookAtPlayerGoal(this, Player.class, 6.0F));
|
||||
this.goalSelector.addGoal(4, new RandomLookAroundGoal(this));
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 0671853ed91ad046ad02cbb09188766e7afbaa9d..b031d456c6360ca0ff2900a2d8a56f1c6d5b4421 100644
|
||||
index 633f8fa200efe91e7a21a3dc669b29f6474d8a29..faf278a00309014f3992f5e69f12b214580e20f1 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1595,6 +1595,10 @@ public class PurpurWorldConfig {
|
||||
@@ -1583,6 +1583,10 @@ public class PurpurWorldConfig {
|
||||
public double snowGolemMaxHealth = 4.0D;
|
||||
public boolean snowGolemDropsPumpkin = true;
|
||||
public boolean snowGolemPutPumpkinBack = false;
|
||||
@@ -37,7 +37,7 @@ index 0671853ed91ad046ad02cbb09188766e7afbaa9d..b031d456c6360ca0ff2900a2d8a56f1c
|
||||
private void snowGolemSettings() {
|
||||
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
|
||||
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
|
||||
@@ -1608,6 +1612,10 @@ public class PurpurWorldConfig {
|
||||
@@ -1596,6 +1600,10 @@ public class PurpurWorldConfig {
|
||||
snowGolemMaxHealth = getDouble("mobs.snow_golem.attributes.max_health", snowGolemMaxHealth);
|
||||
snowGolemDropsPumpkin = getBoolean("mobs.snow_golem.drop-pumpkin-when-sheared", snowGolemDropsPumpkin);
|
||||
snowGolemPutPumpkinBack = getBoolean("mobs.snow_golem.pumpkin-can-be-added-back", snowGolemPutPumpkinBack);
|
||||
|
||||
@@ -143,7 +143,7 @@ index cb1d91f9fe98f21c2afbe3894dfd9bca3bdd3ba6..d2703432af207c74ea8d298a784329c3
|
||||
brain.setMemory(MemoryModuleType.SECONDARY_JOB_SITE, list);
|
||||
} else {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index 09a7af00e05f5369c1c87c51f121ed34d4fd2734..73bb73cf0f0a20d0218f4080f547e279613f14bf 100644
|
||||
index 0db007e61478688ca7198587e3a444ef63e3b65a..179e15adbb6a5999a24dc9bcb8dd51ca24c38bee 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -224,7 +224,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -181,10 +181,10 @@ index b1f20cb356e6b4e89fdddf4e48f2fd932bdb5170..352a7df156c638684a12a864eb5a9d06
|
||||
public static final VillagerProfession FISHERMAN = register("fisherman", PoiTypes.FISHERMAN, SoundEvents.VILLAGER_WORK_FISHERMAN);
|
||||
public static final VillagerProfession FLETCHER = register("fletcher", PoiTypes.FLETCHER, SoundEvents.VILLAGER_WORK_FLETCHER);
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index b031d456c6360ca0ff2900a2d8a56f1c6d5b4421..1a575a511b94808399e8b368a1628a52f66abef7 100644
|
||||
index faf278a00309014f3992f5e69f12b214580e20f1..fe5d597bccf3669033bdda0d80c8cc22a396f27d 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1787,6 +1787,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1775,6 +1775,8 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerCanBeLeashed = false;
|
||||
public boolean villagerCanBreed = true;
|
||||
public int villagerBreedingTicks = 6000;
|
||||
@@ -193,7 +193,7 @@ index b031d456c6360ca0ff2900a2d8a56f1c6d5b4421..1a575a511b94808399e8b368a1628a52
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1803,6 +1805,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1791,6 +1793,8 @@ public class PurpurWorldConfig {
|
||||
villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed);
|
||||
villagerCanBreed = getBoolean("mobs.villager.can-breed", villagerCanBreed);
|
||||
villagerBreedingTicks = getInt("mobs.villager.breeding-delay-ticks", villagerBreedingTicks);
|
||||
|
||||
@@ -35,10 +35,10 @@ index 6c1dd723373f9b1b920548de85aeb6cef0120fa7..1f0003fb08a45af02e6d38e28fa548ab
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 1a575a511b94808399e8b368a1628a52f66abef7..ceadfbae389c77a106c5647ce1703fb731139f40 100644
|
||||
index fe5d597bccf3669033bdda0d80c8cc22a396f27d..d70b1172c7eae2a7f8bd4c3c28638e2c1fe59884 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2033,6 +2033,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2021,6 +2021,7 @@ public class PurpurWorldConfig {
|
||||
public boolean zombifiedPiglinJockeyOnlyBaby = true;
|
||||
public double zombifiedPiglinJockeyChance = 0.05D;
|
||||
public boolean zombifiedPiglinJockeyTryExistingChickens = true;
|
||||
@@ -46,7 +46,7 @@ index 1a575a511b94808399e8b368a1628a52f66abef7..ceadfbae389c77a106c5647ce1703fb7
|
||||
private void zombifiedPiglinSettings() {
|
||||
zombifiedPiglinRidable = getBoolean("mobs.zombified_piglin.ridable", zombifiedPiglinRidable);
|
||||
zombifiedPiglinRidableInWater = getBoolean("mobs.zombified_piglin.ridable-in-water", zombifiedPiglinRidableInWater);
|
||||
@@ -2047,5 +2048,6 @@ public class PurpurWorldConfig {
|
||||
@@ -2035,5 +2036,6 @@ public class PurpurWorldConfig {
|
||||
zombifiedPiglinJockeyOnlyBaby = getBoolean("mobs.zombified_piglin.jockey.only-babies", zombifiedPiglinJockeyOnlyBaby);
|
||||
zombifiedPiglinJockeyChance = getDouble("mobs.zombified_piglin.jockey.chance", zombifiedPiglinJockeyChance);
|
||||
zombifiedPiglinJockeyTryExistingChickens = getBoolean("mobs.zombified_piglin.jockey.try-existing-chickens", zombifiedPiglinJockeyTryExistingChickens);
|
||||
|
||||
@@ -222,10 +222,10 @@ index e43fd3e59fd8c74828ae65965fade27f56beef65..b2f133c8baabba1cffa6e92ea0f85453
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index ceadfbae389c77a106c5647ce1703fb731139f40..b567dff45e17a988179d8b07ef1bd04f1db0fd1a 100644
|
||||
index d70b1172c7eae2a7f8bd4c3c28638e2c1fe59884..2b2d40f36fa3f4990450bb9e4a81e8abf8b2b2f4 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1918,6 +1918,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1906,6 +1906,8 @@ public class PurpurWorldConfig {
|
||||
public boolean wolfRidableInWater = false;
|
||||
public boolean wolfControllable = true;
|
||||
public double wolfMaxHealth = 8.0D;
|
||||
@@ -234,7 +234,7 @@ index ceadfbae389c77a106c5647ce1703fb731139f40..b567dff45e17a988179d8b07ef1bd04f
|
||||
public int wolfBreedingTicks = 6000;
|
||||
private void wolfSettings() {
|
||||
wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable);
|
||||
@@ -1929,6 +1931,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1917,6 +1919,8 @@ public class PurpurWorldConfig {
|
||||
set("mobs.wolf.attributes.max_health", oldValue);
|
||||
}
|
||||
wolfMaxHealth = getDouble("mobs.wolf.attributes.max_health", wolfMaxHealth);
|
||||
|
||||
@@ -26,7 +26,7 @@ index a731a834098fa78995c7b0445865d3f7fa8700fa..3641599a119d5416b5756a972f9eb7fc
|
||||
public Cat getBreedOffspring(ServerLevel world, AgeableMob entity) {
|
||||
Cat entitycat = (Cat) EntityType.CAT.create(world);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Wolf.java b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
index f862d83db6127804b9254a33a73e6f186a1d1327..ffe8f80cfe3bec8fe79415015f5290749fcb770e 100644
|
||||
index b0ea5dda197b6ca88e5d80c16a9007a4abc3c7ac..63d0754427a01fb2bd85b9bf9d6e63d533c6995b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -201,6 +201,12 @@ public class Wolf extends TamableAnimal implements NeutralMob {
|
||||
@@ -43,7 +43,7 @@ index f862d83db6127804b9254a33a73e6f186a1d1327..ffe8f80cfe3bec8fe79415015f529074
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index b567dff45e17a988179d8b07ef1bd04f1db0fd1a..dc91c3594e462c0ae80f82fd50fad68a58d1d604 100644
|
||||
index 2b2d40f36fa3f4990450bb9e4a81e8abf8b2b2f4..5d47a6e938b293bffa5dd27d2155d2048bb0220f 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -599,6 +599,7 @@ public class PurpurWorldConfig {
|
||||
@@ -66,7 +66,7 @@ index b567dff45e17a988179d8b07ef1bd04f1db0fd1a..dc91c3594e462c0ae80f82fd50fad68a
|
||||
}
|
||||
|
||||
public boolean caveSpiderRidable = false;
|
||||
@@ -1918,6 +1924,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1906,6 +1912,7 @@ public class PurpurWorldConfig {
|
||||
public boolean wolfRidableInWater = false;
|
||||
public boolean wolfControllable = true;
|
||||
public double wolfMaxHealth = 8.0D;
|
||||
@@ -74,7 +74,7 @@ index b567dff45e17a988179d8b07ef1bd04f1db0fd1a..dc91c3594e462c0ae80f82fd50fad68a
|
||||
public boolean wolfMilkCuresRabies = true;
|
||||
public double wolfNaturalRabid = 0.0D;
|
||||
public int wolfBreedingTicks = 6000;
|
||||
@@ -1931,6 +1938,11 @@ public class PurpurWorldConfig {
|
||||
@@ -1919,6 +1926,11 @@ public class PurpurWorldConfig {
|
||||
set("mobs.wolf.attributes.max_health", oldValue);
|
||||
}
|
||||
wolfMaxHealth = getDouble("mobs.wolf.attributes.max_health", wolfMaxHealth);
|
||||
|
||||
@@ -17,10 +17,10 @@ index 11cbb89eb062de0cd30158dbfbef13554f81cf9f..162f8f6f368266ce238247901277f78c
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index dc91c3594e462c0ae80f82fd50fad68a58d1d604..4cf965cc6ffaef8b5c655a17faa79fde45a0ff15 100644
|
||||
index 5d47a6e938b293bffa5dd27d2155d2048bb0220f..079226c0708a33edd2e5f498a5490670e5278e74 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1283,6 +1283,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1277,6 +1277,7 @@ public class PurpurWorldConfig {
|
||||
public int phantomBurnInLight = 0;
|
||||
public boolean phantomIgnorePlayersWithTorch = false;
|
||||
public boolean phantomBurnInDaylight = true;
|
||||
@@ -28,7 +28,7 @@ index dc91c3594e462c0ae80f82fd50fad68a58d1d604..4cf965cc6ffaef8b5c655a17faa79fde
|
||||
private void phantomSettings() {
|
||||
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
|
||||
phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater);
|
||||
@@ -1322,6 +1323,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1310,6 +1311,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);
|
||||
|
||||
@@ -29,10 +29,10 @@ index eb2083d67f9486a24d2f0aa4bf1f5ba8a00e23a3..df9d16a6493a57b6034cd56bf8dbe38f
|
||||
if (!this.level.isClientSide) {
|
||||
player.startRiding(this);
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 3155dbf8ba8871d32cbe13400bbd5d01a5d47a8f..20099e9f2abac2a34a3ac86d17dd0860fe0d864a 100644
|
||||
index 397edb048462b9162ec8d9d62d53c3530d59b36a..ec34d409156e22666c3a5cd4b9dc1546af594d5d 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1688,6 +1688,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1676,6 +1676,7 @@ public class PurpurWorldConfig {
|
||||
public boolean striderControllable = true;
|
||||
public double striderMaxHealth = 20.0D;
|
||||
public int striderBreedingTicks = 6000;
|
||||
@@ -40,7 +40,7 @@ index 3155dbf8ba8871d32cbe13400bbd5d01a5d47a8f..20099e9f2abac2a34a3ac86d17dd0860
|
||||
private void striderSettings() {
|
||||
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
|
||||
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
|
||||
@@ -1699,6 +1700,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1687,6 +1688,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth);
|
||||
striderBreedingTicks = getInt("mobs.strider.breeding-delay-ticks", striderBreedingTicks);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add mobGriefing bypass to everything affected
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index e5602a601dac4c439542094e5f74d8dc46f85866..978eb615088ef84e418fe768b27f43276290ff46 100644
|
||||
index 211f7455553835bfb7012a95779bb11750a9d621..7389823c8055f644be63a66d12bada0dddfff009 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1717,7 +1717,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1732,7 +1732,7 @@ public abstract class LivingEntity extends Entity {
|
||||
boolean flag = false;
|
||||
|
||||
if (this.dead && adversary instanceof WitherBoss) { // Paper
|
||||
@@ -18,7 +18,7 @@ index e5602a601dac4c439542094e5f74d8dc46f85866..978eb615088ef84e418fe768b27f4327
|
||||
BlockState iblockdata = Blocks.WITHER_ROSE.defaultBlockState();
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
index bfa4e93b040d9fd84636619dd0012ad60a8b456b..22f4cd68dc7f41441aae803c51adc90eb00e5977 100644
|
||||
index 66f64ed2e8245339343d993199b1ace93ce52cee..7273474e296618663d3fbba813891197bc8480f8 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
@@ -670,7 +670,7 @@ public abstract class Mob extends LivingEntity {
|
||||
@@ -409,7 +409,7 @@ index 1a12fee99a8b69fc6c01e1e217575c7c19e13155..4907e0acb7d01b7f57b75579e58ce743
|
||||
return true;
|
||||
// Purpur end
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d28b7a1ea 100644
|
||||
index a859dd6915493d7a425d6e4d7e12174178756e71..7106c0fb7b7556162234991e606e01480073195e 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -118,8 +118,11 @@ public class PurpurWorldConfig {
|
||||
@@ -553,7 +553,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
}
|
||||
|
||||
public boolean frogRidable = false;
|
||||
@@ -1368,6 +1393,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1356,6 +1381,7 @@ public class PurpurWorldConfig {
|
||||
public boolean piglinRidableInWater = false;
|
||||
public boolean piglinControllable = true;
|
||||
public double piglinMaxHealth = 16.0D;
|
||||
@@ -561,7 +561,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
private void piglinSettings() {
|
||||
piglinRidable = getBoolean("mobs.piglin.ridable", piglinRidable);
|
||||
piglinRidableInWater = getBoolean("mobs.piglin.ridable-in-water", piglinRidableInWater);
|
||||
@@ -1378,6 +1404,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1366,6 +1392,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.piglin.attributes.max_health", oldValue);
|
||||
}
|
||||
piglinMaxHealth = getDouble("mobs.piglin.attributes.max_health", piglinMaxHealth);
|
||||
@@ -569,7 +569,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
}
|
||||
|
||||
public boolean piglinBruteRidable = false;
|
||||
@@ -1400,6 +1427,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1388,6 +1415,7 @@ public class PurpurWorldConfig {
|
||||
public boolean pillagerRidableInWater = false;
|
||||
public boolean pillagerControllable = true;
|
||||
public double pillagerMaxHealth = 24.0D;
|
||||
@@ -577,7 +577,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
private void pillagerSettings() {
|
||||
pillagerRidable = getBoolean("mobs.pillager.ridable", pillagerRidable);
|
||||
pillagerRidableInWater = getBoolean("mobs.pillager.ridable-in-water", pillagerRidableInWater);
|
||||
@@ -1410,6 +1438,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1398,6 +1426,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.pillager.attributes.max_health", oldValue);
|
||||
}
|
||||
pillagerMaxHealth = getDouble("mobs.pillager.attributes.max_health", pillagerMaxHealth);
|
||||
@@ -585,7 +585,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
}
|
||||
|
||||
public boolean polarBearRidable = false;
|
||||
@@ -1456,6 +1485,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1444,6 +1473,7 @@ public class PurpurWorldConfig {
|
||||
public double rabbitNaturalToast = 0.0D;
|
||||
public double rabbitNaturalKiller = 0.0D;
|
||||
public int rabbitBreedingTicks = 6000;
|
||||
@@ -593,7 +593,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
private void rabbitSettings() {
|
||||
rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable);
|
||||
rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater);
|
||||
@@ -1469,12 +1499,14 @@ public class PurpurWorldConfig {
|
||||
@@ -1457,12 +1487,14 @@ public class PurpurWorldConfig {
|
||||
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);
|
||||
@@ -608,7 +608,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
private void ravagerSettings() {
|
||||
ravagerRidable = getBoolean("mobs.ravager.ridable", ravagerRidable);
|
||||
ravagerRidableInWater = getBoolean("mobs.ravager.ridable-in-water", ravagerRidableInWater);
|
||||
@@ -1485,6 +1517,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1473,6 +1505,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.ravager.attributes.max_health", oldValue);
|
||||
}
|
||||
ravagerMaxHealth = getDouble("mobs.ravager.attributes.max_health", ravagerMaxHealth);
|
||||
@@ -616,7 +616,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
}
|
||||
|
||||
public boolean salmonRidable = false;
|
||||
@@ -1506,6 +1539,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1494,6 +1527,7 @@ public class PurpurWorldConfig {
|
||||
public boolean sheepControllable = true;
|
||||
public double sheepMaxHealth = 8.0D;
|
||||
public int sheepBreedingTicks = 6000;
|
||||
@@ -624,7 +624,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
private void sheepSettings() {
|
||||
sheepRidable = getBoolean("mobs.sheep.ridable", sheepRidable);
|
||||
sheepRidableInWater = getBoolean("mobs.sheep.ridable-in-water", sheepRidableInWater);
|
||||
@@ -1517,6 +1551,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1505,6 +1539,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
sheepMaxHealth = getDouble("mobs.sheep.attributes.max_health", sheepMaxHealth);
|
||||
sheepBreedingTicks = getInt("mobs.sheep.breeding-delay-ticks", sheepBreedingTicks);
|
||||
@@ -632,7 +632,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
}
|
||||
|
||||
public boolean shulkerRidable = false;
|
||||
@@ -1539,6 +1574,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1527,6 +1562,7 @@ public class PurpurWorldConfig {
|
||||
public boolean silverfishRidableInWater = false;
|
||||
public boolean silverfishControllable = true;
|
||||
public double silverfishMaxHealth = 8.0D;
|
||||
@@ -640,7 +640,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
private void silverfishSettings() {
|
||||
silverfishRidable = getBoolean("mobs.silverfish.ridable", silverfishRidable);
|
||||
silverfishRidableInWater = getBoolean("mobs.silverfish.ridable-in-water", silverfishRidableInWater);
|
||||
@@ -1549,6 +1585,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1537,6 +1573,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.silverfish.attributes.max_health", oldValue);
|
||||
}
|
||||
silverfishMaxHealth = getDouble("mobs.silverfish.attributes.max_health", silverfishMaxHealth);
|
||||
@@ -648,7 +648,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
}
|
||||
|
||||
public boolean skeletonRidable = false;
|
||||
@@ -1625,6 +1662,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1613,6 +1650,7 @@ public class PurpurWorldConfig {
|
||||
public int snowGolemSnowBallMax = 20;
|
||||
public float snowGolemSnowBallModifier = 10.0F;
|
||||
public double snowGolemAttackDistance = 1.25D;
|
||||
@@ -656,7 +656,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
private void snowGolemSettings() {
|
||||
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
|
||||
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
|
||||
@@ -1642,6 +1680,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1630,6 +1668,7 @@ 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);
|
||||
@@ -664,7 +664,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
}
|
||||
|
||||
public boolean squidRidable = false;
|
||||
@@ -1817,6 +1856,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1805,6 +1844,7 @@ public class PurpurWorldConfig {
|
||||
public int villagerBreedingTicks = 6000;
|
||||
public boolean villagerClericsFarmWarts = false;
|
||||
public boolean villagerClericFarmersThrowWarts = true;
|
||||
@@ -672,7 +672,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1835,6 +1875,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1823,6 +1863,7 @@ public class PurpurWorldConfig {
|
||||
villagerBreedingTicks = getInt("mobs.villager.breeding-delay-ticks", villagerBreedingTicks);
|
||||
villagerClericsFarmWarts = getBoolean("mobs.villager.clerics-farm-warts", villagerClericsFarmWarts);
|
||||
villagerClericFarmersThrowWarts = getBoolean("mobs.villager.cleric-wart-farmers-throw-warts-at-villagers", villagerClericFarmersThrowWarts);
|
||||
@@ -680,7 +680,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
}
|
||||
|
||||
public boolean vindicatorRidable = false;
|
||||
@@ -1907,6 +1948,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1895,6 +1936,7 @@ public class PurpurWorldConfig {
|
||||
public double witherMaxHealth = 300.0D;
|
||||
public float witherHealthRegenAmount = 1.0f;
|
||||
public int witherHealthRegenDelay = 20;
|
||||
@@ -688,7 +688,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
private void witherSettings() {
|
||||
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
|
||||
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
|
||||
@@ -1924,6 +1966,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1912,6 +1954,7 @@ public class PurpurWorldConfig {
|
||||
witherMaxHealth = getDouble("mobs.wither.attributes.max_health", witherMaxHealth);
|
||||
witherHealthRegenAmount = (float) getDouble("mobs.wither.health-regen-amount", witherHealthRegenAmount);
|
||||
witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay);
|
||||
@@ -696,7 +696,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
}
|
||||
|
||||
public boolean witherSkeletonRidable = false;
|
||||
@@ -1995,6 +2038,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1983,6 +2026,7 @@ public class PurpurWorldConfig {
|
||||
public double zombieJockeyChance = 0.05D;
|
||||
public boolean zombieJockeyTryExistingChickens = true;
|
||||
public boolean zombieAggressiveTowardsVillagerWhenLagging = true;
|
||||
@@ -704,7 +704,7 @@ index d0176655802d082a946cf84d06824ff1505ba1bb..48a798236bf46ef076cdd5efa5a6cb5d
|
||||
private void zombieSettings() {
|
||||
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
|
||||
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
|
||||
@@ -2010,6 +2054,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1998,6 +2042,7 @@ 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);
|
||||
|
||||
@@ -78,10 +78,10 @@ index fb77d022ea872deb7f47d033df4a0f201da026c2..0f20be71aebc236bfcb8ace98e0be8ad
|
||||
|
||||
blockEntity.teleportCooldown = 100;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
index 9aee601caad5b314cef2e32a57fdb8ab8aeae896..fbddb90fdbaa99c5f243b6e93c55fc1f7430e337 100644
|
||||
index 32169b7dbfe95bdc5ded6d64524e015f1b939e7a..edfd2d9450805f05df607b5160a0c0ecf9170915 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
@@ -564,6 +564,10 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
@@ -570,6 +570,10 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
// Paper end
|
||||
|
||||
if ((!ignorePassengers && this.entity.isVehicle()) || this.entity.isRemoved()) { // Paper - Teleport passenger API
|
||||
@@ -93,7 +93,7 @@ index 9aee601caad5b314cef2e32a57fdb8ab8aeae896..fbddb90fdbaa99c5f243b6e93c55fc1f
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index c82e2ce3f94f658a0cf66445a4507fc696760820..d588f1b7670af21512295e446c15812cd9e2f6a2 100644
|
||||
index 461f2d0a72b01251324a197752a23677ac24beb6..c1c5c0edab6dc204dd0e7de09af31f8b3b95ad86 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -1309,6 +1309,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -108,7 +108,7 @@ index c82e2ce3f94f658a0cf66445a4507fc696760820..d588f1b7670af21512295e446c15812c
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index bd6e5bd2116368e2b60fda1bc5a036b44708682e..88588ca9af08f255e099733c6c0692cde7115394 100644
|
||||
index 6d7922ce6a1442a9c4e8968d86ffb494f3616833..565bdd1faedda5d6ed010970a81527d788a05375 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -120,6 +120,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -110,7 +110,7 @@ index 861727f150f28a508d3b1c7067d410f0d696aa89..5b79d821e8b55c8876eadcbe811a2c05
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Cow.java b/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
index 0da192e78865b50f87de0d61ce1b39b1899cc954..67a121269eccfcdb71d15e67eab567b488276d83 100644
|
||||
index 4f69a641686c086245ecc0696a8fd3f75c6b50d1..c65fdafb5433fe592dc0061bef4c0afbc611ba13 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
@@ -67,6 +67,11 @@ public class Cow extends Animal {
|
||||
@@ -395,7 +395,7 @@ index e3c20db7bd003bb63d5b1b296c7aa9d7302548c8..d5a029db2831ea817071830ba30d0f50
|
||||
|
||||
public void setHomePos(BlockPos pos) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Wolf.java b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
index ffe8f80cfe3bec8fe79415015f5290749fcb770e..dd514cbf2f03b688eb4d8cd49052f1775d3adebb 100644
|
||||
index 63d0754427a01fb2bd85b9bf9d6e63d533c6995b..c3264daf9af8c3299d6d2ed539d04a43c9bfce7b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -207,6 +207,11 @@ public class Wolf extends TamableAnimal implements NeutralMob {
|
||||
@@ -1069,7 +1069,7 @@ index 6236a557d2a73dff70141140f79faf851a2062f0..0d8495a73df5b1b6cd2c7e5cf18cb3eb
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Zombie.java b/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
index 66b69f9c6cc5cbf235dce888623b6cea98695f6f..cfecf0322ea22b42fa83bafe3cd2f5d74f0d1311 100644
|
||||
index e9482ebe59cba4cea06392fe97b74e4fb70eceda..0eaa8119201cae52340a1a58700906eb96e2a99f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
@@ -137,6 +137,11 @@ public class Zombie extends Monster {
|
||||
@@ -1085,7 +1085,7 @@ index 66b69f9c6cc5cbf235dce888623b6cea98695f6f..cfecf0322ea22b42fa83bafe3cd2f5d7
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
index 9ad16a0fc968b89863ad5ef442a2e178f3d9a52d..51fe59657b5b4608fc1528086c8692030d243a7a 100644
|
||||
index 4dcd0e8198a37df01678a62ada3d75d579c08cff..fd4e34549ff65d0ed82d3bc1e8b7067a53a33d4c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
@@ -118,6 +118,11 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder {
|
||||
@@ -1165,7 +1165,7 @@ index 75db61c5aab66234b26f7899229ddca8896e2086..a44f9a59fbec146df95d89c26df12efb
|
||||
|
||||
public static AttributeSupplier.Builder createAttributes() {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index 73bb73cf0f0a20d0218f4080f547e279613f14bf..373f74742323367c7fa1984313c99c42c253cfa9 100644
|
||||
index 179e15adbb6a5999a24dc9bcb8dd51ca24c38bee..63b2d3635d3882d8e2e55659c99c0165603fdfc1 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -188,6 +188,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -1181,7 +1181,7 @@ index 73bb73cf0f0a20d0218f4080f547e279613f14bf..373f74742323367c7fa1984313c99c42
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
index 6cdb81ef8ca385f4346fd875a21c20c8153cb47b..767ec15ee2dcb421946795c58c3c0b2e3fb86fd4 100644
|
||||
index 3f3d7a36eb204114df4a535ef7f2afdcdd5201f7..bef536f773e662050b8d120d41e1c730aeedd447 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
@@ -91,6 +91,11 @@ public class WanderingTrader extends net.minecraft.world.entity.npc.AbstractVill
|
||||
@@ -1197,7 +1197,7 @@ index 6cdb81ef8ca385f4346fd875a21c20c8153cb47b..767ec15ee2dcb421946795c58c3c0b2e
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087611a7219 100644
|
||||
index bfe540637ec08d098a3b9e951b2d88fd4f618f1a..2137335cac886ac967ad318f449b4992e666ba8c 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -572,11 +572,13 @@ public class PurpurWorldConfig {
|
||||
@@ -1762,7 +1762,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean phantomRidable = false;
|
||||
@@ -1345,6 +1417,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1339,6 +1411,7 @@ public class PurpurWorldConfig {
|
||||
public boolean phantomIgnorePlayersWithTorch = false;
|
||||
public boolean phantomBurnInDaylight = true;
|
||||
public boolean phantomFlamesOnSwoop = false;
|
||||
@@ -1770,7 +1770,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void phantomSettings() {
|
||||
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
|
||||
phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater);
|
||||
@@ -1385,6 +1458,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1373,6 +1446,7 @@ public class PurpurWorldConfig {
|
||||
phantomBurnInDaylight = getBoolean("mobs.phantom.burn-in-daylight", phantomBurnInDaylight);
|
||||
phantomIgnorePlayersWithTorch = getBoolean("mobs.phantom.ignore-players-with-torch", phantomIgnorePlayersWithTorch);
|
||||
phantomFlamesOnSwoop = getBoolean("mobs.phantom.flames-on-swoop", phantomFlamesOnSwoop);
|
||||
@@ -1778,7 +1778,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean pigRidable = false;
|
||||
@@ -1393,6 +1467,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1381,6 +1455,7 @@ public class PurpurWorldConfig {
|
||||
public double pigMaxHealth = 10.0D;
|
||||
public boolean pigGiveSaddleBack = false;
|
||||
public int pigBreedingTicks = 6000;
|
||||
@@ -1786,7 +1786,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void pigSettings() {
|
||||
pigRidable = getBoolean("mobs.pig.ridable", pigRidable);
|
||||
pigRidableInWater = getBoolean("mobs.pig.ridable-in-water", pigRidableInWater);
|
||||
@@ -1405,6 +1480,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1393,6 +1468,7 @@ public class PurpurWorldConfig {
|
||||
pigMaxHealth = getDouble("mobs.pig.attributes.max_health", pigMaxHealth);
|
||||
pigGiveSaddleBack = getBoolean("mobs.pig.give-saddle-back", pigGiveSaddleBack);
|
||||
pigBreedingTicks = getInt("mobs.pig.breeding-delay-ticks", pigBreedingTicks);
|
||||
@@ -1794,7 +1794,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean piglinRidable = false;
|
||||
@@ -1412,6 +1488,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1400,6 +1476,7 @@ public class PurpurWorldConfig {
|
||||
public boolean piglinControllable = true;
|
||||
public double piglinMaxHealth = 16.0D;
|
||||
public boolean piglinBypassMobGriefing = false;
|
||||
@@ -1802,7 +1802,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void piglinSettings() {
|
||||
piglinRidable = getBoolean("mobs.piglin.ridable", piglinRidable);
|
||||
piglinRidableInWater = getBoolean("mobs.piglin.ridable-in-water", piglinRidableInWater);
|
||||
@@ -1423,12 +1500,14 @@ public class PurpurWorldConfig {
|
||||
@@ -1411,12 +1488,14 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
piglinMaxHealth = getDouble("mobs.piglin.attributes.max_health", piglinMaxHealth);
|
||||
piglinBypassMobGriefing = getBoolean("mobs.piglin.bypass-mob-griefing", piglinBypassMobGriefing);
|
||||
@@ -1817,7 +1817,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void piglinBruteSettings() {
|
||||
piglinBruteRidable = getBoolean("mobs.piglin_brute.ridable", piglinBruteRidable);
|
||||
piglinBruteRidableInWater = getBoolean("mobs.piglin_brute.ridable-in-water", piglinBruteRidableInWater);
|
||||
@@ -1439,6 +1518,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1427,6 +1506,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.piglin_brute.attributes.max_health", oldValue);
|
||||
}
|
||||
piglinBruteMaxHealth = getDouble("mobs.piglin_brute.attributes.max_health", piglinBruteMaxHealth);
|
||||
@@ -1825,7 +1825,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean pillagerRidable = false;
|
||||
@@ -1446,6 +1526,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1434,6 +1514,7 @@ public class PurpurWorldConfig {
|
||||
public boolean pillagerControllable = true;
|
||||
public double pillagerMaxHealth = 24.0D;
|
||||
public boolean pillagerBypassMobGriefing = false;
|
||||
@@ -1833,7 +1833,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void pillagerSettings() {
|
||||
pillagerRidable = getBoolean("mobs.pillager.ridable", pillagerRidable);
|
||||
pillagerRidableInWater = getBoolean("mobs.pillager.ridable-in-water", pillagerRidableInWater);
|
||||
@@ -1457,6 +1538,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1445,6 +1526,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
pillagerMaxHealth = getDouble("mobs.pillager.attributes.max_health", pillagerMaxHealth);
|
||||
pillagerBypassMobGriefing = getBoolean("mobs.pillager.bypass-mob-griefing", pillagerBypassMobGriefing);
|
||||
@@ -1841,7 +1841,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean polarBearRidable = false;
|
||||
@@ -1466,6 +1548,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1454,6 +1536,7 @@ public class PurpurWorldConfig {
|
||||
public String polarBearBreedableItemString = "";
|
||||
public Item polarBearBreedableItem = null;
|
||||
public int polarBearBreedingTicks = 6000;
|
||||
@@ -1849,7 +1849,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void polarBearSettings() {
|
||||
polarBearRidable = getBoolean("mobs.polar_bear.ridable", polarBearRidable);
|
||||
polarBearRidableInWater = getBoolean("mobs.polar_bear.ridable-in-water", polarBearRidableInWater);
|
||||
@@ -1480,11 +1563,13 @@ public class PurpurWorldConfig {
|
||||
@@ -1468,11 +1551,13 @@ public class PurpurWorldConfig {
|
||||
Item item = Registry.ITEM.get(new ResourceLocation(polarBearBreedableItemString));
|
||||
if (item != Items.AIR) polarBearBreedableItem = item;
|
||||
polarBearBreedingTicks = getInt("mobs.polar_bear.breeding-delay-ticks", polarBearBreedingTicks);
|
||||
@@ -1863,7 +1863,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void pufferfishSettings() {
|
||||
pufferfishRidable = getBoolean("mobs.pufferfish.ridable", pufferfishRidable);
|
||||
pufferfishControllable = getBoolean("mobs.pufferfish.controllable", pufferfishControllable);
|
||||
@@ -1494,6 +1579,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1482,6 +1567,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.pufferfish.attributes.max_health", oldValue);
|
||||
}
|
||||
pufferfishMaxHealth = getDouble("mobs.pufferfish.attributes.max_health", pufferfishMaxHealth);
|
||||
@@ -1871,7 +1871,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean rabbitRidable = false;
|
||||
@@ -1504,6 +1590,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1492,6 +1578,7 @@ public class PurpurWorldConfig {
|
||||
public double rabbitNaturalKiller = 0.0D;
|
||||
public int rabbitBreedingTicks = 6000;
|
||||
public boolean rabbitBypassMobGriefing = false;
|
||||
@@ -1879,7 +1879,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void rabbitSettings() {
|
||||
rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable);
|
||||
rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater);
|
||||
@@ -1518,6 +1605,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1506,6 +1593,7 @@ public class PurpurWorldConfig {
|
||||
rabbitNaturalKiller = getDouble("mobs.rabbit.spawn-killer-rabbit-chance", rabbitNaturalKiller);
|
||||
rabbitBreedingTicks = getInt("mobs.rabbit.breeding-delay-ticks", rabbitBreedingTicks);
|
||||
rabbitBypassMobGriefing = getBoolean("mobs.rabbit.bypass-mob-griefing", rabbitBypassMobGriefing);
|
||||
@@ -1887,7 +1887,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean ravagerRidable = false;
|
||||
@@ -1525,6 +1613,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1513,6 +1601,7 @@ public class PurpurWorldConfig {
|
||||
public boolean ravagerControllable = true;
|
||||
public double ravagerMaxHealth = 100.0D;
|
||||
public boolean ravagerBypassMobGriefing = false;
|
||||
@@ -1895,7 +1895,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void ravagerSettings() {
|
||||
ravagerRidable = getBoolean("mobs.ravager.ridable", ravagerRidable);
|
||||
ravagerRidableInWater = getBoolean("mobs.ravager.ridable-in-water", ravagerRidableInWater);
|
||||
@@ -1536,11 +1625,13 @@ public class PurpurWorldConfig {
|
||||
@@ -1524,11 +1613,13 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
ravagerMaxHealth = getDouble("mobs.ravager.attributes.max_health", ravagerMaxHealth);
|
||||
ravagerBypassMobGriefing = getBoolean("mobs.ravager.bypass-mob-griefing", ravagerBypassMobGriefing);
|
||||
@@ -1909,7 +1909,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void salmonSettings() {
|
||||
salmonRidable = getBoolean("mobs.salmon.ridable", salmonRidable);
|
||||
salmonControllable = getBoolean("mobs.salmon.controllable", salmonControllable);
|
||||
@@ -1550,6 +1641,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1538,6 +1629,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.salmon.attributes.max_health", oldValue);
|
||||
}
|
||||
salmonMaxHealth = getDouble("mobs.salmon.attributes.max_health", salmonMaxHealth);
|
||||
@@ -1917,7 +1917,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean sheepRidable = false;
|
||||
@@ -1558,6 +1650,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1546,6 +1638,7 @@ public class PurpurWorldConfig {
|
||||
public double sheepMaxHealth = 8.0D;
|
||||
public int sheepBreedingTicks = 6000;
|
||||
public boolean sheepBypassMobGriefing = false;
|
||||
@@ -1925,7 +1925,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void sheepSettings() {
|
||||
sheepRidable = getBoolean("mobs.sheep.ridable", sheepRidable);
|
||||
sheepRidableInWater = getBoolean("mobs.sheep.ridable-in-water", sheepRidableInWater);
|
||||
@@ -1570,12 +1663,14 @@ public class PurpurWorldConfig {
|
||||
@@ -1558,12 +1651,14 @@ public class PurpurWorldConfig {
|
||||
sheepMaxHealth = getDouble("mobs.sheep.attributes.max_health", sheepMaxHealth);
|
||||
sheepBreedingTicks = getInt("mobs.sheep.breeding-delay-ticks", sheepBreedingTicks);
|
||||
sheepBypassMobGriefing = getBoolean("mobs.sheep.bypass-mob-griefing", sheepBypassMobGriefing);
|
||||
@@ -1940,7 +1940,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void shulkerSettings() {
|
||||
shulkerRidable = getBoolean("mobs.shulker.ridable", shulkerRidable);
|
||||
shulkerRidableInWater = getBoolean("mobs.shulker.ridable-in-water", shulkerRidableInWater);
|
||||
@@ -1586,6 +1681,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1574,6 +1669,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.shulker.attributes.max_health", oldValue);
|
||||
}
|
||||
shulkerMaxHealth = getDouble("mobs.shulker.attributes.max_health", shulkerMaxHealth);
|
||||
@@ -1948,7 +1948,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean silverfishRidable = false;
|
||||
@@ -1593,6 +1689,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1581,6 +1677,7 @@ public class PurpurWorldConfig {
|
||||
public boolean silverfishControllable = true;
|
||||
public double silverfishMaxHealth = 8.0D;
|
||||
public boolean silverfishBypassMobGriefing = false;
|
||||
@@ -1956,7 +1956,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void silverfishSettings() {
|
||||
silverfishRidable = getBoolean("mobs.silverfish.ridable", silverfishRidable);
|
||||
silverfishRidableInWater = getBoolean("mobs.silverfish.ridable-in-water", silverfishRidableInWater);
|
||||
@@ -1604,12 +1701,14 @@ public class PurpurWorldConfig {
|
||||
@@ -1592,12 +1689,14 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
silverfishMaxHealth = getDouble("mobs.silverfish.attributes.max_health", silverfishMaxHealth);
|
||||
silverfishBypassMobGriefing = getBoolean("mobs.silverfish.bypass-mob-griefing", silverfishBypassMobGriefing);
|
||||
@@ -1971,7 +1971,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void skeletonSettings() {
|
||||
skeletonRidable = getBoolean("mobs.skeleton.ridable", skeletonRidable);
|
||||
skeletonRidableInWater = getBoolean("mobs.skeleton.ridable-in-water", skeletonRidableInWater);
|
||||
@@ -1620,6 +1719,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1608,6 +1707,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.skeleton.attributes.max_health", oldValue);
|
||||
}
|
||||
skeletonMaxHealth = getDouble("mobs.skeleton.attributes.max_health", skeletonMaxHealth);
|
||||
@@ -1979,7 +1979,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean skeletonHorseRidableInWater = true;
|
||||
@@ -1630,6 +1730,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1618,6 +1718,7 @@ public class PurpurWorldConfig {
|
||||
public double skeletonHorseJumpStrengthMax = 1.0D;
|
||||
public double skeletonHorseMovementSpeedMin = 0.2D;
|
||||
public double skeletonHorseMovementSpeedMax = 0.2D;
|
||||
@@ -1987,7 +1987,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void skeletonHorseSettings() {
|
||||
skeletonHorseRidableInWater = getBoolean("mobs.skeleton_horse.ridable-in-water", skeletonHorseRidableInWater);
|
||||
skeletonHorseCanSwim = getBoolean("mobs.skeleton_horse.can-swim", skeletonHorseCanSwim);
|
||||
@@ -1645,6 +1746,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1633,6 +1734,7 @@ public class PurpurWorldConfig {
|
||||
skeletonHorseJumpStrengthMax = getDouble("mobs.skeleton_horse.attributes.jump_strength.max", skeletonHorseJumpStrengthMax);
|
||||
skeletonHorseMovementSpeedMin = getDouble("mobs.skeleton_horse.attributes.movement_speed.min", skeletonHorseMovementSpeedMin);
|
||||
skeletonHorseMovementSpeedMax = getDouble("mobs.skeleton_horse.attributes.movement_speed.max", skeletonHorseMovementSpeedMax);
|
||||
@@ -1995,7 +1995,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean slimeRidable = false;
|
||||
@@ -1654,6 +1756,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1642,6 +1744,7 @@ public class PurpurWorldConfig {
|
||||
public String slimeAttackDamage = "size";
|
||||
public Map<Integer, Double> slimeMaxHealthCache = new HashMap<>();
|
||||
public Map<Integer, Double> slimeAttackDamageCache = new HashMap<>();
|
||||
@@ -2003,7 +2003,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void slimeSettings() {
|
||||
slimeRidable = getBoolean("mobs.slime.ridable", slimeRidable);
|
||||
slimeRidableInWater = getBoolean("mobs.slime.ridable-in-water", slimeRidableInWater);
|
||||
@@ -1667,6 +1770,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1655,6 +1758,7 @@ public class PurpurWorldConfig {
|
||||
slimeAttackDamage = getString("mobs.slime.attributes.attack_damage", slimeAttackDamage);
|
||||
slimeMaxHealthCache.clear();
|
||||
slimeAttackDamageCache.clear();
|
||||
@@ -2011,7 +2011,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean snowGolemRidable = false;
|
||||
@@ -1681,6 +1785,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1669,6 +1773,7 @@ public class PurpurWorldConfig {
|
||||
public float snowGolemSnowBallModifier = 10.0F;
|
||||
public double snowGolemAttackDistance = 1.25D;
|
||||
public boolean snowGolemBypassMobGriefing = false;
|
||||
@@ -2019,7 +2019,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void snowGolemSettings() {
|
||||
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
|
||||
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
|
||||
@@ -1699,6 +1804,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1687,6 +1792,7 @@ public class PurpurWorldConfig {
|
||||
snowGolemSnowBallModifier = (float) getDouble("mobs.snow_golem.snow-ball-modifier", snowGolemSnowBallModifier);
|
||||
snowGolemAttackDistance = getDouble("mobs.snow_golem.attack-distance", snowGolemAttackDistance);
|
||||
snowGolemBypassMobGriefing = getBoolean("mobs.snow_golem.bypass-mob-griefing", snowGolemBypassMobGriefing);
|
||||
@@ -2027,7 +2027,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean squidRidable = false;
|
||||
@@ -1707,6 +1813,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1695,6 +1801,7 @@ public class PurpurWorldConfig {
|
||||
public boolean squidImmuneToEAR = true;
|
||||
public double squidOffsetWaterCheck = 0.0D;
|
||||
public boolean squidsCanFly = false;
|
||||
@@ -2035,7 +2035,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void squidSettings() {
|
||||
squidRidable = getBoolean("mobs.squid.ridable", squidRidable);
|
||||
squidControllable = getBoolean("mobs.squid.controllable", squidControllable);
|
||||
@@ -1719,12 +1826,14 @@ public class PurpurWorldConfig {
|
||||
@@ -1707,12 +1814,14 @@ public class PurpurWorldConfig {
|
||||
squidImmuneToEAR = getBoolean("mobs.squid.immune-to-EAR", squidImmuneToEAR);
|
||||
squidOffsetWaterCheck = getDouble("mobs.squid.water-offset-check", squidOffsetWaterCheck);
|
||||
squidsCanFly = getBoolean("mobs.squid.can-fly", squidsCanFly);
|
||||
@@ -2050,7 +2050,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void spiderSettings() {
|
||||
spiderRidable = getBoolean("mobs.spider.ridable", spiderRidable);
|
||||
spiderRidableInWater = getBoolean("mobs.spider.ridable-in-water", spiderRidableInWater);
|
||||
@@ -1735,12 +1844,14 @@ public class PurpurWorldConfig {
|
||||
@@ -1723,12 +1832,14 @@ public class PurpurWorldConfig {
|
||||
set("mobs.spider.attributes.max_health", oldValue);
|
||||
}
|
||||
spiderMaxHealth = getDouble("mobs.spider.attributes.max_health", spiderMaxHealth);
|
||||
@@ -2065,7 +2065,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void straySettings() {
|
||||
strayRidable = getBoolean("mobs.stray.ridable", strayRidable);
|
||||
strayRidableInWater = getBoolean("mobs.stray.ridable-in-water", strayRidableInWater);
|
||||
@@ -1751,6 +1862,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1739,6 +1850,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.stray.attributes.max_health", oldValue);
|
||||
}
|
||||
strayMaxHealth = getDouble("mobs.stray.attributes.max_health", strayMaxHealth);
|
||||
@@ -2073,7 +2073,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean striderRidable = false;
|
||||
@@ -1759,6 +1871,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1747,6 +1859,7 @@ public class PurpurWorldConfig {
|
||||
public double striderMaxHealth = 20.0D;
|
||||
public int striderBreedingTicks = 6000;
|
||||
public boolean striderGiveSaddleBack = false;
|
||||
@@ -2081,7 +2081,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void striderSettings() {
|
||||
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
|
||||
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
|
||||
@@ -1771,6 +1884,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1759,6 +1872,7 @@ public class PurpurWorldConfig {
|
||||
striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth);
|
||||
striderBreedingTicks = getInt("mobs.strider.breeding-delay-ticks", striderBreedingTicks);
|
||||
striderGiveSaddleBack = getBoolean("mobs.strider.give-saddle-back", striderGiveSaddleBack);
|
||||
@@ -2089,7 +2089,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean tadpoleRidable = false;
|
||||
@@ -1792,6 +1906,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1780,6 +1894,7 @@ public class PurpurWorldConfig {
|
||||
public double traderLlamaMovementSpeedMin = 0.175D;
|
||||
public double traderLlamaMovementSpeedMax = 0.175D;
|
||||
public int traderLlamaBreedingTicks = 6000;
|
||||
@@ -2097,7 +2097,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void traderLlamaSettings() {
|
||||
traderLlamaRidable = getBoolean("mobs.trader_llama.ridable", traderLlamaRidable);
|
||||
traderLlamaRidableInWater = getBoolean("mobs.trader_llama.ridable-in-water", traderLlamaRidableInWater);
|
||||
@@ -1810,11 +1925,13 @@ public class PurpurWorldConfig {
|
||||
@@ -1798,11 +1913,13 @@ public class PurpurWorldConfig {
|
||||
traderLlamaMovementSpeedMin = getDouble("mobs.trader_llama.attributes.movement_speed.min", traderLlamaMovementSpeedMin);
|
||||
traderLlamaMovementSpeedMax = getDouble("mobs.trader_llama.attributes.movement_speed.max", traderLlamaMovementSpeedMax);
|
||||
traderLlamaBreedingTicks = getInt("mobs.trader_llama.breeding-delay-ticks", traderLlamaBreedingTicks);
|
||||
@@ -2111,7 +2111,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void tropicalFishSettings() {
|
||||
tropicalFishRidable = getBoolean("mobs.tropical_fish.ridable", tropicalFishRidable);
|
||||
tropicalFishControllable = getBoolean("mobs.tropical_fish.controllable", tropicalFishControllable);
|
||||
@@ -1824,6 +1941,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1812,6 +1929,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.tropical_fish.attributes.max_health", oldValue);
|
||||
}
|
||||
tropicalFishMaxHealth = getDouble("mobs.tropical_fish.attributes.max_health", tropicalFishMaxHealth);
|
||||
@@ -2119,7 +2119,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean turtleRidable = false;
|
||||
@@ -1831,6 +1949,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1819,6 +1937,7 @@ public class PurpurWorldConfig {
|
||||
public boolean turtleControllable = true;
|
||||
public double turtleMaxHealth = 30.0D;
|
||||
public int turtleBreedingTicks = 6000;
|
||||
@@ -2127,7 +2127,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void turtleSettings() {
|
||||
turtleRidable = getBoolean("mobs.turtle.ridable", turtleRidable);
|
||||
turtleRidableInWater = getBoolean("mobs.turtle.ridable-in-water", turtleRidableInWater);
|
||||
@@ -1842,6 +1961,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1830,6 +1949,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
turtleMaxHealth = getDouble("mobs.turtle.attributes.max_health", turtleMaxHealth);
|
||||
turtleBreedingTicks = getInt("mobs.turtle.breeding-delay-ticks", turtleBreedingTicks);
|
||||
@@ -2135,7 +2135,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean vexRidable = false;
|
||||
@@ -1849,6 +1969,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1837,6 +1957,7 @@ public class PurpurWorldConfig {
|
||||
public boolean vexControllable = true;
|
||||
public double vexMaxY = 320D;
|
||||
public double vexMaxHealth = 14.0D;
|
||||
@@ -2143,7 +2143,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void vexSettings() {
|
||||
vexRidable = getBoolean("mobs.vex.ridable", vexRidable);
|
||||
vexRidableInWater = getBoolean("mobs.vex.ridable-in-water", vexRidableInWater);
|
||||
@@ -1860,6 +1981,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1848,6 +1969,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.vex.attributes.max_health", oldValue);
|
||||
}
|
||||
vexMaxHealth = getDouble("mobs.vex.attributes.max_health", vexMaxHealth);
|
||||
@@ -2151,7 +2151,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean villagerRidable = false;
|
||||
@@ -1875,6 +1997,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1863,6 +1985,7 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerClericsFarmWarts = false;
|
||||
public boolean villagerClericFarmersThrowWarts = true;
|
||||
public boolean villagerBypassMobGriefing = false;
|
||||
@@ -2159,7 +2159,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1894,6 +2017,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1882,6 +2005,7 @@ public class PurpurWorldConfig {
|
||||
villagerClericsFarmWarts = getBoolean("mobs.villager.clerics-farm-warts", villagerClericsFarmWarts);
|
||||
villagerClericFarmersThrowWarts = getBoolean("mobs.villager.cleric-wart-farmers-throw-warts-at-villagers", villagerClericFarmersThrowWarts);
|
||||
villagerBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerBypassMobGriefing);
|
||||
@@ -2167,7 +2167,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean vindicatorRidable = false;
|
||||
@@ -1901,6 +2025,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1889,6 +2013,7 @@ public class PurpurWorldConfig {
|
||||
public boolean vindicatorControllable = true;
|
||||
public double vindicatorMaxHealth = 24.0D;
|
||||
public double vindicatorJohnnySpawnChance = 0D;
|
||||
@@ -2175,7 +2175,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void vindicatorSettings() {
|
||||
vindicatorRidable = getBoolean("mobs.vindicator.ridable", vindicatorRidable);
|
||||
vindicatorRidableInWater = getBoolean("mobs.vindicator.ridable-in-water", vindicatorRidableInWater);
|
||||
@@ -1912,6 +2037,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1900,6 +2025,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
vindicatorMaxHealth = getDouble("mobs.vindicator.attributes.max_health", vindicatorMaxHealth);
|
||||
vindicatorJohnnySpawnChance = getDouble("mobs.vindicator.johnny.spawn-chance", vindicatorJohnnySpawnChance);
|
||||
@@ -2183,7 +2183,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean wanderingTraderRidable = false;
|
||||
@@ -1920,6 +2046,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1908,6 +2034,7 @@ public class PurpurWorldConfig {
|
||||
public double wanderingTraderMaxHealth = 20.0D;
|
||||
public boolean wanderingTraderFollowEmeraldBlock = false;
|
||||
public boolean wanderingTraderCanBeLeashed = false;
|
||||
@@ -2191,7 +2191,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void wanderingTraderSettings() {
|
||||
wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable);
|
||||
wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater);
|
||||
@@ -1932,6 +2059,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1920,6 +2047,7 @@ public class PurpurWorldConfig {
|
||||
wanderingTraderMaxHealth = getDouble("mobs.wandering_trader.attributes.max_health", wanderingTraderMaxHealth);
|
||||
wanderingTraderFollowEmeraldBlock = getBoolean("mobs.wandering_trader.follow-emerald-blocks", wanderingTraderFollowEmeraldBlock);
|
||||
wanderingTraderCanBeLeashed = getBoolean("mobs.wandering_trader.can-be-leashed", wanderingTraderCanBeLeashed);
|
||||
@@ -2199,7 +2199,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean wardenRidable = false;
|
||||
@@ -1947,6 +2075,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1935,6 +2063,7 @@ public class PurpurWorldConfig {
|
||||
public boolean witchRidableInWater = false;
|
||||
public boolean witchControllable = true;
|
||||
public double witchMaxHealth = 26.0D;
|
||||
@@ -2207,7 +2207,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void witchSettings() {
|
||||
witchRidable = getBoolean("mobs.witch.ridable", witchRidable);
|
||||
witchRidableInWater = getBoolean("mobs.witch.ridable-in-water", witchRidableInWater);
|
||||
@@ -1957,6 +2086,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1945,6 +2074,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.witch.attributes.max_health", oldValue);
|
||||
}
|
||||
witchMaxHealth = getDouble("mobs.witch.attributes.max_health", witchMaxHealth);
|
||||
@@ -2215,7 +2215,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean witherRidable = false;
|
||||
@@ -1967,6 +2097,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1955,6 +2085,7 @@ public class PurpurWorldConfig {
|
||||
public float witherHealthRegenAmount = 1.0f;
|
||||
public int witherHealthRegenDelay = 20;
|
||||
public boolean witherBypassMobGriefing = false;
|
||||
@@ -2223,7 +2223,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void witherSettings() {
|
||||
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
|
||||
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
|
||||
@@ -1985,12 +2116,14 @@ public class PurpurWorldConfig {
|
||||
@@ -1973,12 +2104,14 @@ public class PurpurWorldConfig {
|
||||
witherHealthRegenAmount = (float) getDouble("mobs.wither.health-regen-amount", witherHealthRegenAmount);
|
||||
witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay);
|
||||
witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing);
|
||||
@@ -2238,7 +2238,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void witherSkeletonSettings() {
|
||||
witherSkeletonRidable = getBoolean("mobs.wither_skeleton.ridable", witherSkeletonRidable);
|
||||
witherSkeletonRidableInWater = getBoolean("mobs.wither_skeleton.ridable-in-water", witherSkeletonRidableInWater);
|
||||
@@ -2001,6 +2134,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1989,6 +2122,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.wither_skeleton.attributes.max_health", oldValue);
|
||||
}
|
||||
witherSkeletonMaxHealth = getDouble("mobs.wither_skeleton.attributes.max_health", witherSkeletonMaxHealth);
|
||||
@@ -2246,7 +2246,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean wolfRidable = false;
|
||||
@@ -2011,6 +2145,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1999,6 +2133,7 @@ public class PurpurWorldConfig {
|
||||
public boolean wolfMilkCuresRabies = true;
|
||||
public double wolfNaturalRabid = 0.0D;
|
||||
public int wolfBreedingTicks = 6000;
|
||||
@@ -2254,7 +2254,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void wolfSettings() {
|
||||
wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable);
|
||||
wolfRidableInWater = getBoolean("mobs.wolf.ridable-in-water", wolfRidableInWater);
|
||||
@@ -2029,12 +2164,14 @@ public class PurpurWorldConfig {
|
||||
@@ -2017,12 +2152,14 @@ 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);
|
||||
@@ -2269,7 +2269,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void zoglinSettings() {
|
||||
zoglinRidable = getBoolean("mobs.zoglin.ridable", zoglinRidable);
|
||||
zoglinRidableInWater = getBoolean("mobs.zoglin.ridable-in-water", zoglinRidableInWater);
|
||||
@@ -2045,6 +2182,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2033,6 +2170,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.zoglin.attributes.max_health", oldValue);
|
||||
}
|
||||
zoglinMaxHealth = getDouble("mobs.zoglin.attributes.max_health", zoglinMaxHealth);
|
||||
@@ -2277,7 +2277,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean zombieRidable = false;
|
||||
@@ -2057,6 +2195,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2045,6 +2183,7 @@ public class PurpurWorldConfig {
|
||||
public boolean zombieJockeyTryExistingChickens = true;
|
||||
public boolean zombieAggressiveTowardsVillagerWhenLagging = true;
|
||||
public boolean zombieBypassMobGriefing = false;
|
||||
@@ -2285,7 +2285,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void zombieSettings() {
|
||||
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
|
||||
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
|
||||
@@ -2073,6 +2212,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2061,6 +2200,7 @@ public class PurpurWorldConfig {
|
||||
zombieJockeyTryExistingChickens = getBoolean("mobs.zombie.jockey.try-existing-chickens", zombieJockeyTryExistingChickens);
|
||||
zombieAggressiveTowardsVillagerWhenLagging = getBoolean("mobs.zombie.aggressive-towards-villager-when-lagging", zombieAggressiveTowardsVillagerWhenLagging);
|
||||
zombieBypassMobGriefing = getBoolean("mobs.zombie.bypass-mob-griefing", zombieBypassMobGriefing);
|
||||
@@ -2293,7 +2293,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean zombieHorseRidableInWater = false;
|
||||
@@ -2084,6 +2224,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2072,6 +2212,7 @@ public class PurpurWorldConfig {
|
||||
public double zombieHorseMovementSpeedMin = 0.2D;
|
||||
public double zombieHorseMovementSpeedMax = 0.2D;
|
||||
public double zombieHorseSpawnChance = 0.0D;
|
||||
@@ -2301,7 +2301,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void zombieHorseSettings() {
|
||||
zombieHorseRidableInWater = getBoolean("mobs.zombie_horse.ridable-in-water", zombieHorseRidableInWater);
|
||||
zombieHorseCanSwim = getBoolean("mobs.zombie_horse.can-swim", zombieHorseCanSwim);
|
||||
@@ -2100,6 +2241,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2088,6 +2229,7 @@ public class PurpurWorldConfig {
|
||||
zombieHorseMovementSpeedMin = getDouble("mobs.zombie_horse.attributes.movement_speed.min", zombieHorseMovementSpeedMin);
|
||||
zombieHorseMovementSpeedMax = getDouble("mobs.zombie_horse.attributes.movement_speed.max", zombieHorseMovementSpeedMax);
|
||||
zombieHorseSpawnChance = getDouble("mobs.zombie_horse.spawn-chance", zombieHorseSpawnChance);
|
||||
@@ -2309,7 +2309,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean zombieVillagerRidable = false;
|
||||
@@ -2110,6 +2252,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2098,6 +2240,7 @@ public class PurpurWorldConfig {
|
||||
public boolean zombieVillagerJockeyOnlyBaby = true;
|
||||
public double zombieVillagerJockeyChance = 0.05D;
|
||||
public boolean zombieVillagerJockeyTryExistingChickens = true;
|
||||
@@ -2317,7 +2317,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void zombieVillagerSettings() {
|
||||
zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable);
|
||||
zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater);
|
||||
@@ -2124,6 +2267,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2112,6 +2255,7 @@ public class PurpurWorldConfig {
|
||||
zombieVillagerJockeyOnlyBaby = getBoolean("mobs.zombie_villager.jockey.only-babies", zombieVillagerJockeyOnlyBaby);
|
||||
zombieVillagerJockeyChance = getDouble("mobs.zombie_villager.jockey.chance", zombieVillagerJockeyChance);
|
||||
zombieVillagerJockeyTryExistingChickens = getBoolean("mobs.zombie_villager.jockey.try-existing-chickens", zombieVillagerJockeyTryExistingChickens);
|
||||
@@ -2325,7 +2325,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
}
|
||||
|
||||
public boolean zombifiedPiglinRidable = false;
|
||||
@@ -2135,6 +2279,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2123,6 +2267,7 @@ public class PurpurWorldConfig {
|
||||
public double zombifiedPiglinJockeyChance = 0.05D;
|
||||
public boolean zombifiedPiglinJockeyTryExistingChickens = true;
|
||||
public boolean zombifiedPiglinCountAsPlayerKillWhenAngry = true;
|
||||
@@ -2333,7 +2333,7 @@ index 4e996becabad942aaaa5ccb097707b0e2fd83adb..7862f9ff2b5179751949a0efedc03087
|
||||
private void zombifiedPiglinSettings() {
|
||||
zombifiedPiglinRidable = getBoolean("mobs.zombified_piglin.ridable", zombifiedPiglinRidable);
|
||||
zombifiedPiglinRidableInWater = getBoolean("mobs.zombified_piglin.ridable-in-water", zombifiedPiglinRidableInWater);
|
||||
@@ -2150,5 +2295,6 @@ public class PurpurWorldConfig {
|
||||
@@ -2138,5 +2283,6 @@ 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);
|
||||
|
||||
@@ -29,7 +29,7 @@ index 9a4481b48edf666ede780a9d6f875d01f5b422f8..98825928e957cadd1c263bfbee09a137
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index af37829b104073589d67d66ab826bb64fb95d7dc..13eb84cf590bbe4c5a71b47f1c08e57b5711f089 100644
|
||||
index dafb5e3747902b149040d75568f016141d8d1bc4..7cbb917f49d79ce96b566ab342d98c1891d0f2a0 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -917,6 +917,7 @@ public class PurpurWorldConfig {
|
||||
@@ -48,7 +48,7 @@ index af37829b104073589d67d66ab826bb64fb95d7dc..13eb84cf590bbe4c5a71b47f1c08e57b
|
||||
}
|
||||
|
||||
public boolean endermanRidable = false;
|
||||
@@ -2129,6 +2131,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2117,6 +2119,7 @@ public class PurpurWorldConfig {
|
||||
public int witherHealthRegenDelay = 20;
|
||||
public boolean witherBypassMobGriefing = false;
|
||||
public boolean witherTakeDamageFromWater = false;
|
||||
@@ -56,7 +56,7 @@ index af37829b104073589d67d66ab826bb64fb95d7dc..13eb84cf590bbe4c5a71b47f1c08e57b
|
||||
private void witherSettings() {
|
||||
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
|
||||
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
|
||||
@@ -2148,6 +2151,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2136,6 +2139,7 @@ public class PurpurWorldConfig {
|
||||
witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay);
|
||||
witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing);
|
||||
witherTakeDamageFromWater = getBoolean("mobs.wither.takes-damage-from-water", witherTakeDamageFromWater);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] One Punch Man!
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 978eb615088ef84e418fe768b27f43276290ff46..8272135f82a8b42e39f208b4d5758ce7d56d501e 100644
|
||||
index 7389823c8055f644be63a66d12bada0dddfff009..9fca48d69a0917aa31e553d5910da77beaf40bab 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -2224,6 +2224,20 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -2239,6 +2239,20 @@ public abstract class LivingEntity extends Entity {
|
||||
((ServerPlayer) damagesource.getEntity()).awardStat(Stats.DAMAGE_DEALT_ABSORBED, Math.round(f2 * 10.0F));
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ index 978eb615088ef84e418fe768b27f43276290ff46..8272135f82a8b42e39f208b4d5758ce7
|
||||
if (human) {
|
||||
// PAIL: Be sure to drag all this code from the EntityHuman subclass each update.
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 3465a47b74cd02dd8af0e297f86c0eddd5f833ed..76d0134835e2ec6747e41371f1f32f1a2cefabe6 100644
|
||||
index 90dee3ce858b5c8c526b2094ac53cb1580436f0e..aa05b65c7e0812465508a280d5faa72bf522327b 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -345,6 +345,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -31,10 +31,10 @@ index 36ad7f33eacc63d84db04225fbffcc32abf24fdc..a6e03d12ecd85992215e1128cd6afd28
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 141aca86c5fe70f3fad838021d93c66d4b630139..37d4e08d6c1c3683514f679a9ab772a28d4010a1 100644
|
||||
index 3b3c1ca9c4034ed954d6bd55fb1b42f8a1c3efe1..579c85ff8ac4f77246aba457377d9c24873b35ab 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1681,6 +1681,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1669,6 +1669,7 @@ public class PurpurWorldConfig {
|
||||
public double ravagerMaxHealth = 100.0D;
|
||||
public boolean ravagerBypassMobGriefing = false;
|
||||
public boolean ravagerTakeDamageFromWater = false;
|
||||
@@ -42,7 +42,7 @@ index 141aca86c5fe70f3fad838021d93c66d4b630139..37d4e08d6c1c3683514f679a9ab772a2
|
||||
private void ravagerSettings() {
|
||||
ravagerRidable = getBoolean("mobs.ravager.ridable", ravagerRidable);
|
||||
ravagerRidableInWater = getBoolean("mobs.ravager.ridable-in-water", ravagerRidableInWater);
|
||||
@@ -1693,6 +1694,23 @@ public class PurpurWorldConfig {
|
||||
@@ -1681,6 +1682,23 @@ public class PurpurWorldConfig {
|
||||
ravagerMaxHealth = getDouble("mobs.ravager.attributes.max_health", ravagerMaxHealth);
|
||||
ravagerBypassMobGriefing = getBoolean("mobs.ravager.bypass-mob-griefing", ravagerBypassMobGriefing);
|
||||
ravagerTakeDamageFromWater = getBoolean("mobs.ravager.takes-damage-from-water", ravagerTakeDamageFromWater);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Config for skipping night
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 656ea698078724362cd1a39d29d40ba763b1c12a..c96ce52b97881d48d81f0cbe6c44aa1c1505e43c 100644
|
||||
index 1689ae9fc4635c42755699b5bff43af2f866fa3e..66817fa844fc03d0137a6cd9aab1a41b05d94d1c 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -663,7 +663,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -664,7 +664,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
int i = this.getGameRules().getInt(GameRules.RULE_PLAYERS_SLEEPING_PERCENTAGE);
|
||||
long j;
|
||||
|
||||
@@ -18,7 +18,7 @@ index 656ea698078724362cd1a39d29d40ba763b1c12a..c96ce52b97881d48d81f0cbe6c44aa1c
|
||||
j = this.levelData.getDayTime() + 24000L;
|
||||
TimeSkipEvent event = new TimeSkipEvent(this.getWorld(), TimeSkipEvent.SkipReason.NIGHT_SKIP, (j - j % 24000L) - this.getDayTime());
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 9649618c5d5721e1ce2fb4f59d22e352b4b614dd..7eb68d2f6a56a1110bba275fbeb91cb8605c0e0a 100644
|
||||
index 08a973b2c5195b0d85a28b480dc0f40ed8c9e3e9..686236d4d91e5207904d91e2035a067cf0408fcc 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -357,6 +357,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add config for villager trading
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index 373f74742323367c7fa1984313c99c42c253cfa9..89435b0742064d77c7cc8bb871949acc9852f2c0 100644
|
||||
index 63b2d3635d3882d8e2e55659c99c0165603fdfc1..14834853354adb222f99c4a12169fd05e02477da 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -372,7 +372,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -18,7 +18,7 @@ index 373f74742323367c7fa1984313c99c42c253cfa9..89435b0742064d77c7cc8bb871949acc
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
index 767ec15ee2dcb421946795c58c3c0b2e3fb86fd4..7231230823573c7d00dd82bee480cc787270c383 100644
|
||||
index bef536f773e662050b8d120d41e1c730aeedd447..8214506faf26bc973594f1bd8a19e0458be9b544 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
@@ -149,7 +149,7 @@ public class WanderingTrader extends net.minecraft.world.entity.npc.AbstractVill
|
||||
@@ -31,10 +31,10 @@ index 767ec15ee2dcb421946795c58c3c0b2e3fb86fd4..7231230823573c7d00dd82bee480cc78
|
||||
this.openTradingScreen(player, this.getDisplayName(), 1);
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 7eb68d2f6a56a1110bba275fbeb91cb8605c0e0a..91e2410ea09333ae65960ca67414333625857cb5 100644
|
||||
index 686236d4d91e5207904d91e2035a067cf0408fcc..5016f11f7de2c210acb70b18a8be3aa727ac69c3 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2090,6 +2090,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2078,6 +2078,7 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerClericFarmersThrowWarts = true;
|
||||
public boolean villagerBypassMobGriefing = false;
|
||||
public boolean villagerTakeDamageFromWater = false;
|
||||
@@ -42,7 +42,7 @@ index 7eb68d2f6a56a1110bba275fbeb91cb8605c0e0a..91e2410ea09333ae65960ca674143336
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -2110,6 +2111,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2098,6 +2099,7 @@ public class PurpurWorldConfig {
|
||||
villagerClericFarmersThrowWarts = getBoolean("mobs.villager.cleric-wart-farmers-throw-warts-at-villagers", villagerClericFarmersThrowWarts);
|
||||
villagerBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerBypassMobGriefing);
|
||||
villagerTakeDamageFromWater = getBoolean("mobs.villager.takes-damage-from-water", villagerTakeDamageFromWater);
|
||||
@@ -50,7 +50,7 @@ index 7eb68d2f6a56a1110bba275fbeb91cb8605c0e0a..91e2410ea09333ae65960ca674143336
|
||||
}
|
||||
|
||||
public boolean vindicatorRidable = false;
|
||||
@@ -2139,6 +2141,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2127,6 +2129,7 @@ public class PurpurWorldConfig {
|
||||
public boolean wanderingTraderFollowEmeraldBlock = false;
|
||||
public boolean wanderingTraderCanBeLeashed = false;
|
||||
public boolean wanderingTraderTakeDamageFromWater = false;
|
||||
@@ -58,7 +58,7 @@ index 7eb68d2f6a56a1110bba275fbeb91cb8605c0e0a..91e2410ea09333ae65960ca674143336
|
||||
private void wanderingTraderSettings() {
|
||||
wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable);
|
||||
wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater);
|
||||
@@ -2152,6 +2155,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2140,6 +2143,7 @@ public class PurpurWorldConfig {
|
||||
wanderingTraderFollowEmeraldBlock = getBoolean("mobs.wandering_trader.follow-emerald-blocks", wanderingTraderFollowEmeraldBlock);
|
||||
wanderingTraderCanBeLeashed = getBoolean("mobs.wandering_trader.can-be-leashed", wanderingTraderCanBeLeashed);
|
||||
wanderingTraderTakeDamageFromWater = getBoolean("mobs.wandering_trader.takes-damage-from-water", wanderingTraderTakeDamageFromWater);
|
||||
|
||||
@@ -18,10 +18,10 @@ index c8d08fb02eefee08799661423fd4342f05f1b8f2..a3a76273bb6ce1621366cfd8dec22e5b
|
||||
|
||||
public int getAirSupply() {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 782bfe3a360b7e63f8457cb7b8b5973740d2b8db..a814faa3be41a60eb6c1a27bafd5a9489c6e8687 100644
|
||||
index 9fca48d69a0917aa31e553d5910da77beaf40bab..cbaf99b4cd7b6d949695b1a66e66f18329e87148 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -422,7 +422,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -423,7 +423,7 @@ public abstract class LivingEntity extends Entity {
|
||||
|
||||
if (flag1) {
|
||||
this.setAirSupply(this.decreaseAirSupply(this.getAirSupply()));
|
||||
@@ -30,7 +30,7 @@ index 782bfe3a360b7e63f8457cb7b8b5973740d2b8db..a814faa3be41a60eb6c1a27bafd5a948
|
||||
this.setAirSupply(0);
|
||||
Vec3 vec3d = this.getDeltaMovement();
|
||||
|
||||
@@ -434,7 +434,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -435,7 +435,7 @@ public abstract class LivingEntity extends Entity {
|
||||
this.level.addParticle(ParticleTypes.BUBBLE, this.getX() + d2, this.getY() + d3, this.getZ() + d4, vec3d.x, vec3d.y, vec3d.z);
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ index 782bfe3a360b7e63f8457cb7b8b5973740d2b8db..a814faa3be41a60eb6c1a27bafd5a948
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 91e2410ea09333ae65960ca67414333625857cb5..efba22df32b2c89360046005a381bf8b9c332f18 100644
|
||||
index 5016f11f7de2c210acb70b18a8be3aa727ac69c3..75e3d231ce15c12bfbff81017e43c60b64f2c758 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -167,6 +167,15 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -31,10 +31,10 @@ index 65fa00b3d4d35a4125f8de444e77ac54e9e28551..dd9badfb2879def258bf725a5d802f7d
|
||||
pos = pos.below();
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index b1ee7134cf9e3bc51fcd4fb7c64f151244f2f34c..83931e389e021af77680f1ca8e82f23f9b9eef32 100644
|
||||
index f0c778af2a7eb63cfecca980391d6a79948d195d..c728a5186fb0a4ff5f4a174f51463fe35b346242 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1625,6 +1625,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1613,6 +1613,7 @@ public class PurpurWorldConfig {
|
||||
public double piglinMaxHealth = 16.0D;
|
||||
public boolean piglinBypassMobGriefing = false;
|
||||
public boolean piglinTakeDamageFromWater = false;
|
||||
@@ -42,7 +42,7 @@ index b1ee7134cf9e3bc51fcd4fb7c64f151244f2f34c..83931e389e021af77680f1ca8e82f23f
|
||||
private void piglinSettings() {
|
||||
piglinRidable = getBoolean("mobs.piglin.ridable", piglinRidable);
|
||||
piglinRidableInWater = getBoolean("mobs.piglin.ridable-in-water", piglinRidableInWater);
|
||||
@@ -1637,6 +1638,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1625,6 +1626,7 @@ public class PurpurWorldConfig {
|
||||
piglinMaxHealth = getDouble("mobs.piglin.attributes.max_health", piglinMaxHealth);
|
||||
piglinBypassMobGriefing = getBoolean("mobs.piglin.bypass-mob-griefing", piglinBypassMobGriefing);
|
||||
piglinTakeDamageFromWater = getBoolean("mobs.piglin.takes-damage-from-water", piglinTakeDamageFromWater);
|
||||
|
||||
@@ -18,10 +18,10 @@ index 1654b08f76e02e20a8ce5de618f8def82f1feeeb..7938a81fea35ef79fb1054e7b1117573
|
||||
|
||||
if (!event.isCancelled()) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 83931e389e021af77680f1ca8e82f23f9b9eef32..87476d216f4e6ecfc3289fc6f5332187a0a2405a 100644
|
||||
index c728a5186fb0a4ff5f4a174f51463fe35b346242..e17584956c12ec4936aa1a2c0de3749e71bf9cb1 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2259,6 +2259,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2247,6 +2247,7 @@ public class PurpurWorldConfig {
|
||||
public boolean witherBypassMobGriefing = false;
|
||||
public boolean witherTakeDamageFromWater = false;
|
||||
public boolean witherCanRideVehicles = false;
|
||||
@@ -29,7 +29,7 @@ index 83931e389e021af77680f1ca8e82f23f9b9eef32..87476d216f4e6ecfc3289fc6f5332187
|
||||
private void witherSettings() {
|
||||
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
|
||||
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
|
||||
@@ -2279,6 +2280,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2267,6 +2268,7 @@ public class PurpurWorldConfig {
|
||||
witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing);
|
||||
witherTakeDamageFromWater = getBoolean("mobs.wither.takes-damage-from-water", witherTakeDamageFromWater);
|
||||
witherCanRideVehicles = getBoolean("mobs.wither.can-ride-vehicles", witherCanRideVehicles);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Gamemode extra permissions
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/commands/CommandSourceStack.java b/src/main/java/net/minecraft/commands/CommandSourceStack.java
|
||||
index ed64b78bc8510fbe8fda9a10b779e91d99313676..e7c51725d5c04cc9da1bd1d2e12392ca07264609 100644
|
||||
index 901edaae2230c48fa0584991ed82498d568d5fc0..d38acbb03d74dd237f007f392ec2c3db775cadf7 100644
|
||||
--- a/src/main/java/net/minecraft/commands/CommandSourceStack.java
|
||||
+++ b/src/main/java/net/minecraft/commands/CommandSourceStack.java
|
||||
@@ -213,6 +213,21 @@ public class CommandSourceStack implements SharedSuggestionProvider, com.destroy
|
||||
@@ -214,6 +214,21 @@ public class CommandSourceStack implements SharedSuggestionProvider, com.destroy
|
||||
}
|
||||
// CraftBukkit end
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Configurable mob blindness
|
||||
Ported from https://github.com/raltsmc/mobblindness
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index f7473ee8fc0ced687d76ee7d569c1d7cb7ae8f63..bbeeee00e63b1ab72608d723f828a066d0621aec 100644
|
||||
index cbaf99b4cd7b6d949695b1a66e66f18329e87148..5fd0ec5cff82bff9f44d03dc4d979eabe4c507e2 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1010,6 +1010,17 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1025,6 +1025,17 @@ public abstract class LivingEntity extends Entity {
|
||||
if (entitytypes == EntityType.SKELETON && itemstack.is(Items.SKELETON_SKULL) || entitytypes == EntityType.ZOMBIE && itemstack.is(Items.ZOMBIE_HEAD) || entitytypes == EntityType.CREEPER && itemstack.is(Items.CREEPER_HEAD)) {
|
||||
d0 *= 0.5D;
|
||||
}
|
||||
@@ -28,7 +28,7 @@ index f7473ee8fc0ced687d76ee7d569c1d7cb7ae8f63..bbeeee00e63b1ab72608d723f828a066
|
||||
|
||||
return d0;
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index b787b34b11f7379249575b058fe3a07a1a7d3d83..d5b2ff0a8527f074b3a0cd145086e5218d557c8a 100644
|
||||
index 7c126828d8ce8e988746e06aad41d913985e951e..29fc1c042245c69fbdc4aa282d0f838b8226c9cf 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -135,6 +135,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -31,18 +31,18 @@ index a3a76273bb6ce1621366cfd8dec22e5bd3f5c45e..bd76451230bb0b5abb744088b67b7e55
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 324ad2c199f2df99248785321e3127a4685a839b..13b912df3d653b8c74e5e9f4bc73790316a2b5c8 100644
|
||||
index 5fd0ec5cff82bff9f44d03dc4d979eabe4c507e2..6c506c32814b9e068b92094aab54be7647178c89 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -264,6 +264,7 @@ public abstract class LivingEntity extends Entity {
|
||||
public boolean bukkitPickUpLoot;
|
||||
@@ -265,6 +265,7 @@ public abstract class LivingEntity extends Entity {
|
||||
public org.bukkit.craftbukkit.entity.CraftLivingEntity getBukkitLivingEntity() { return (org.bukkit.craftbukkit.entity.CraftLivingEntity) super.getBukkitEntity(); } // Paper
|
||||
public boolean silentDeath = false; // Paper - mark entity as dying silently for cancellable death event
|
||||
public net.kyori.adventure.util.TriState frictionState = net.kyori.adventure.util.TriState.NOT_SET; // Paper
|
||||
+ protected boolean shouldBurnInDay = false; public boolean shouldBurnInDay() { return this.shouldBurnInDay; } public void setShouldBurnInDay(boolean shouldBurnInDay) { this.shouldBurnInDay = shouldBurnInDay; } // Purpur
|
||||
|
||||
@Override
|
||||
public float getBukkitYaw() {
|
||||
@@ -787,6 +788,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -793,6 +794,7 @@ public abstract class LivingEntity extends Entity {
|
||||
dataresult.resultOrPartial(logger::error).ifPresent((nbtbase) -> {
|
||||
nbt.put("Brain", nbtbase);
|
||||
});
|
||||
@@ -50,7 +50,7 @@ index 324ad2c199f2df99248785321e3127a4685a839b..13b912df3d653b8c74e5e9f4bc737903
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -862,6 +864,11 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -877,6 +879,11 @@ public abstract class LivingEntity extends Entity {
|
||||
this.brain = this.makeBrain(new Dynamic(NbtOps.INSTANCE, nbt.get("Brain")));
|
||||
}
|
||||
|
||||
@@ -62,7 +62,7 @@ index 324ad2c199f2df99248785321e3127a4685a839b..13b912df3d653b8c74e5e9f4bc737903
|
||||
}
|
||||
|
||||
// CraftBukkit start
|
||||
@@ -3496,6 +3503,27 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3511,6 +3518,27 @@ public abstract class LivingEntity extends Entity {
|
||||
this.hurt(DamageSource.DROWN, 1.0F);
|
||||
}
|
||||
|
||||
@@ -351,7 +351,7 @@ index 0eaa8119201cae52340a1a58700906eb96e2a99f..f9e6f1788ae5e02372140a40373b4dec
|
||||
// Paper end
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
index fbddb90fdbaa99c5f243b6e93c55fc1f7430e337..403085673b87291799538f4f3aad2dfe65b35660 100644
|
||||
index edfd2d9450805f05df607b5160a0c0ecf9170915..e08cbcb9230889cc86b0726d67038e1cf9914c87 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
@@ -205,6 +205,11 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
@@ -367,10 +367,10 @@ index fbddb90fdbaa99c5f243b6e93c55fc1f7430e337..403085673b87291799538f4f3aad2dfe
|
||||
/*
|
||||
* Order is *EXTREMELY* important -- keep it right! =D
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index aec6f37ceac8ba9a987edf3eb24bbc06d3b1613a..f2d17cb06fbcd7370ab8465c5c4830f8ba31169a 100644
|
||||
index bea0a1441b3f331e1bbaee15a91b279950bca640..32d4960fbee976004d5d1a3a5c29c2e963a8d577 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -1001,5 +1001,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -1060,5 +1060,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
if (slot == null) return;
|
||||
getHandle().broadcastBreakEvent(org.bukkit.craftbukkit.CraftEquipmentSlot.getNMS(slot));
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Make lightning rod range configurable
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 45257a5292b4f6e95c2628547233a81ce9e67008..4b86792bfdf02ac8235a981bfca8779527de5b38 100644
|
||||
index 66817fa844fc03d0137a6cd9aab1a41b05d94d1c..8567ab80b3eb9a450313862d2ff3832e64240d6f 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -974,7 +974,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -975,7 +975,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
return holder.is(PoiTypes.LIGHTNING_ROD);
|
||||
}, (blockposition1) -> {
|
||||
return blockposition1.getY() == this.getHeight(Heightmap.Types.WORLD_SURFACE, blockposition1.getX(), blockposition1.getZ()) - 1;
|
||||
|
||||
@@ -61,10 +61,10 @@ index 2d3dbc228a6a7b88167a36ba739d9eb2f03472ba..7621978ab3d90d58e8b7c6807e0e0519
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 4e5f8bc3042d68a10d670e8c42d27bef207a0c14..bd2c7b4b21c6c9812be930162856d72696faad76 100644
|
||||
index 8db81be1709fa766bec922b0e4e3c748539a4c1e..bb883af840de5117ee770f78df580eb972106c36 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1915,6 +1915,11 @@ public class PurpurWorldConfig {
|
||||
@@ -1903,6 +1903,11 @@ public class PurpurWorldConfig {
|
||||
public boolean shulkerControllable = true;
|
||||
public double shulkerMaxHealth = 30.0D;
|
||||
public boolean shulkerTakeDamageFromWater = false;
|
||||
@@ -76,7 +76,7 @@ index 4e5f8bc3042d68a10d670e8c42d27bef207a0c14..bd2c7b4b21c6c9812be930162856d726
|
||||
private void shulkerSettings() {
|
||||
shulkerRidable = getBoolean("mobs.shulker.ridable", shulkerRidable);
|
||||
shulkerRidableInWater = getBoolean("mobs.shulker.ridable-in-water", shulkerRidableInWater);
|
||||
@@ -1926,6 +1931,11 @@ public class PurpurWorldConfig {
|
||||
@@ -1914,6 +1919,11 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
shulkerMaxHealth = getDouble("mobs.shulker.attributes.max_health", shulkerMaxHealth);
|
||||
shulkerTakeDamageFromWater = getBoolean("mobs.shulker.takes-damage-from-water", shulkerTakeDamageFromWater);
|
||||
|
||||
@@ -18,10 +18,10 @@ index 4c1e9b6f4a52d7b1506b9016cc4d30e583eeab04..0e753dd68d9506a2a4e5ad74e7f4d04c
|
||||
|
||||
this.tickTimer = 0;
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index cb349aa767d20f9639b70f1e50002f91b2e6f0f0..81d9089d366a651062156eb73b57829ed397c8ed 100644
|
||||
index 8e00bdc92d2b9a79e47f3f7d530de63d977a043c..8e69c445d7aabe815b2349d1f413859ad7e11510 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2563,4 +2563,9 @@ public class PurpurWorldConfig {
|
||||
@@ -2551,4 +2551,9 @@ public class PurpurWorldConfig {
|
||||
zombifiedPiglinCountAsPlayerKillWhenAngry = getBoolean("mobs.zombified_piglin.count-as-player-kill-when-angry", zombifiedPiglinCountAsPlayerKillWhenAngry);
|
||||
zombifiedPiglinTakeDamageFromWater = getBoolean("mobs.zombified_piglin.takes-damage-from-water", zombifiedPiglinTakeDamageFromWater);
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Customizable sleeping actionbar messages
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 4b86792bfdf02ac8235a981bfca8779527de5b38..6a8c1da4e69f1ceaa74a30c7571af87910fe8562 100644
|
||||
index 8567ab80b3eb9a450313862d2ff3832e64240d6f..f9ddff75288aa39e3d62422cca6ce536c20d47b2 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -1023,11 +1023,27 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1024,11 +1024,27 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
if (this.canSleepThroughNights()) {
|
||||
if (!this.getServer().isSingleplayer() || this.getServer().isPublished()) {
|
||||
int i = this.getGameRules().getInt(GameRules.RULE_PLAYERS_SLEEPING_PERCENTAGE);
|
||||
|
||||
@@ -24,7 +24,7 @@ index bedccb8717d08d5a60058445b04ddff149e7d36c..5293ffca3da94c9c485a87d1232b6a90
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 63926eb8a662677f08a11b391fdc197aa1fd0255..bec789c0d3209655ed2b2cfb7306d3042dc6d41b 100644
|
||||
index 914f4963f61ab707897739bb5075d4d611e357ff..a65143b9c4f32ee8cf8517a3a753c1d4c2b8ec1d 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -714,6 +714,11 @@ public class PurpurWorldConfig {
|
||||
@@ -39,7 +39,7 @@ index 63926eb8a662677f08a11b391fdc197aa1fd0255..bec789c0d3209655ed2b2cfb7306d304
|
||||
public boolean chestOpenWithBlockOnTop = false;
|
||||
private void chestSettings() {
|
||||
chestOpenWithBlockOnTop = getBoolean("blocks.chest.open-with-solid-block-on-top", chestOpenWithBlockOnTop);
|
||||
@@ -2728,3 +2733,4 @@ public class PurpurWorldConfig {
|
||||
@@ -2716,3 +2721,4 @@ public class PurpurWorldConfig {
|
||||
hungerStarvationDamage = (float) getDouble("hunger.starvation-damage", hungerStarvationDamage);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Toggle for kinetic damage
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 13b912df3d653b8c74e5e9f4bc73790316a2b5c8..ce57fb82a5229cccdd2ecac9a80013dec8331c68 100644
|
||||
index 6c506c32814b9e068b92094aab54be7647178c89..7cc12e402e3b90a44bcd6d8c2a7607b7cf421bca 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -2885,6 +2885,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -2900,6 +2900,7 @@ public abstract class LivingEntity extends Entity {
|
||||
|
||||
if (f3 > 0.0F) {
|
||||
this.playSound(this.getFallDamageSound((int) f3), 1.0F, 1.0F);
|
||||
@@ -17,7 +17,7 @@ index 13b912df3d653b8c74e5e9f4bc73790316a2b5c8..ce57fb82a5229cccdd2ecac9a80013de
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 209e92b0588ddfc820647710e443173b1e78887e..1f0c70c48472b64da299b79402b93ae9c57ba167 100644
|
||||
index 18e3d6d7af035dbf6af0417e7470e556d0fcffd2..62976858a7e588b932dd1bb317e428a96cd20423 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -185,12 +185,14 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Customizeable Zombie Villager curing times
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
index 51fe59657b5b4608fc1528086c8692030d243a7a..f0f4542949de4927f15c75d067eb7d213599aa85 100644
|
||||
index fd4e34549ff65d0ed82d3bc1e8b7067a53a33d4c..23f154095118de9894e089489aded6b7b7aa96e3 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
@@ -217,7 +217,7 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder {
|
||||
@@ -18,10 +18,10 @@ index 51fe59657b5b4608fc1528086c8692030d243a7a..f0f4542949de4927f15c75d067eb7d21
|
||||
|
||||
return InteractionResult.SUCCESS;
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 1e33464773cc3d4a82affb83400a80a99be77231..4d2c01a8731d5e789672d5c82e04d996d1e0304f 100644
|
||||
index 55196d4ca677deb828f363c3c6e451c57df4fc50..ad20e33d8f972886c040afcd2a14724f87aa9bbf 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2714,6 +2714,8 @@ public class PurpurWorldConfig {
|
||||
@@ -2702,6 +2702,8 @@ public class PurpurWorldConfig {
|
||||
public double zombieVillagerJockeyChance = 0.05D;
|
||||
public boolean zombieVillagerJockeyTryExistingChickens = true;
|
||||
public boolean zombieVillagerTakeDamageFromWater = false;
|
||||
@@ -30,7 +30,7 @@ index 1e33464773cc3d4a82affb83400a80a99be77231..4d2c01a8731d5e789672d5c82e04d996
|
||||
private void zombieVillagerSettings() {
|
||||
zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable);
|
||||
zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater);
|
||||
@@ -2729,6 +2731,8 @@ public class PurpurWorldConfig {
|
||||
@@ -2717,6 +2719,8 @@ public class PurpurWorldConfig {
|
||||
zombieVillagerJockeyChance = getDouble("mobs.zombie_villager.jockey.chance", zombieVillagerJockeyChance);
|
||||
zombieVillagerJockeyTryExistingChickens = getBoolean("mobs.zombie_villager.jockey.try-existing-chickens", zombieVillagerJockeyTryExistingChickens);
|
||||
zombieVillagerTakeDamageFromWater = getBoolean("mobs.zombie_villager.takes-damage-from-water", zombieVillagerTakeDamageFromWater);
|
||||
|
||||
@@ -18,10 +18,10 @@ index 29e67a03097a21f3d49e1998dbb125e58fce4368..28da6b021eed7ab9042b03052b0f50d2
|
||||
// this.world.globalLevelEvent(1023, new BlockPosition(this), 0);
|
||||
int viewDistance = ((ServerLevel) this.level).getCraftServer().getViewDistance() * 16;
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index a911475cb568abfa491b95abcee6da25cc9b57fc..e53a2c18b68d02f7eeb764198d074e639ec0bfa0 100644
|
||||
index b8d54d07d3680e36d55f56e93ac530a8ed630004..0943e2174ac8fe7be2d2b00432b301b33873acd7 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2559,6 +2559,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2547,6 +2547,7 @@ public class PurpurWorldConfig {
|
||||
public boolean witherTakeDamageFromWater = false;
|
||||
public boolean witherCanRideVehicles = false;
|
||||
public float witherExplosionRadius = 1.0F;
|
||||
@@ -29,7 +29,7 @@ index a911475cb568abfa491b95abcee6da25cc9b57fc..e53a2c18b68d02f7eeb764198d074e63
|
||||
private void witherSettings() {
|
||||
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
|
||||
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
|
||||
@@ -2580,6 +2581,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2568,6 +2569,7 @@ public class PurpurWorldConfig {
|
||||
witherTakeDamageFromWater = getBoolean("mobs.wither.takes-damage-from-water", witherTakeDamageFromWater);
|
||||
witherCanRideVehicles = getBoolean("mobs.wither.can-ride-vehicles", witherCanRideVehicles);
|
||||
witherExplosionRadius = (float) getDouble("mobs.wither.explosion-radius", witherExplosionRadius);
|
||||
|
||||
@@ -77,10 +77,10 @@ index 05eab04e4aec4151018f25b59f92ddbbb4c09f87..3b5c502fc211940dd908f1d276fa11e3
|
||||
});
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 73a0f0d287823871262d31419a135cf179361814..3fee49f9e3036ee80b88165297b0fbce05c4bea7 100644
|
||||
index 99a4353ffaf27210e6c18bf269b873db0e8850ca..8083f9dc08cd95b2dc0114a9f29be0ae9b5dfd4e 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2778,5 +2778,28 @@ public class PurpurWorldConfig {
|
||||
@@ -2766,5 +2766,28 @@ public class PurpurWorldConfig {
|
||||
private void hungerSettings() {
|
||||
hungerStarvationDamage = (float) getDouble("hunger.starvation-damage", hungerStarvationDamage);
|
||||
}
|
||||
|
||||
@@ -47,10 +47,10 @@ index ce4265a9cf01db335a6a88b91ae5e6ff4518ef92..f889729b3bbbe1c82fa8bc7e1ab1f7b0
|
||||
|
||||
if (dripChance < f1) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 3fee49f9e3036ee80b88165297b0fbce05c4bea7..c0656b4e2be7ece9061867fe7e35ab8a9d02d565 100644
|
||||
index 8083f9dc08cd95b2dc0114a9f29be0ae9b5dfd4e..97f2bcf02a09cd0f7b4aad1bca0bfe1b0b015c79 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2801,5 +2801,16 @@ public class PurpurWorldConfig {
|
||||
@@ -2789,5 +2789,16 @@ public class PurpurWorldConfig {
|
||||
});
|
||||
conduitBlocks = conduitBlockList.toArray(Block[]::new);
|
||||
}
|
||||
|
||||
@@ -47,10 +47,10 @@ index ada070d8e1a2d328c02455eb9e5ad056046bcd0a..691b59f784e34b061ea156a3236c09f2
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index f20936ab60accfdb40c139c4e5c4d67d3e0f5679..87edcfdfafb0acc20e314c4d43fc0fd43c8490b2 100644
|
||||
index ca324dfc46a7cd723e2858fb741969c5007e488a..ff7b3c7e08fd5cb2d0b81adb80934094ee66c9a0 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2130,6 +2130,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2118,6 +2118,7 @@ public class PurpurWorldConfig {
|
||||
public double shulkerSpawnFromBulletNearbyRange = 8.0D;
|
||||
public String shulkerSpawnFromBulletNearbyEquation = "(nearby - 1) / 5.0";
|
||||
public boolean shulkerSpawnFromBulletRandomColor = false;
|
||||
@@ -58,7 +58,7 @@ index f20936ab60accfdb40c139c4e5c4d67d3e0f5679..87edcfdfafb0acc20e314c4d43fc0fd4
|
||||
private void shulkerSettings() {
|
||||
shulkerRidable = getBoolean("mobs.shulker.ridable", shulkerRidable);
|
||||
shulkerRidableInWater = getBoolean("mobs.shulker.ridable-in-water", shulkerRidableInWater);
|
||||
@@ -2146,6 +2147,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2134,6 +2135,7 @@ public class PurpurWorldConfig {
|
||||
shulkerSpawnFromBulletNearbyRange = getDouble("mobs.shulker.spawn-from-bullet.nearby-range", shulkerSpawnFromBulletNearbyRange);
|
||||
shulkerSpawnFromBulletNearbyEquation = getString("mobs.shulker.spawn-from-bullet.nearby-equation", shulkerSpawnFromBulletNearbyEquation);
|
||||
shulkerSpawnFromBulletRandomColor = getBoolean("mobs.shulker.spawn-from-bullet.random-color", shulkerSpawnFromBulletRandomColor);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Option for if rain and thunder should stop on sleep
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 6a8c1da4e69f1ceaa74a30c7571af87910fe8562..1ae2b3ce635c6e4b3cdabddda253ec9c925d06cc 100644
|
||||
index f9ddff75288aa39e3d62422cca6ce536c20d47b2..6c206c92d24b6202cfb5740c44a942451d73345a 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -1182,6 +1182,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1183,6 +1183,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
|
||||
private void resetWeatherCycle() {
|
||||
// CraftBukkit start
|
||||
@@ -16,7 +16,7 @@ index 6a8c1da4e69f1ceaa74a30c7571af87910fe8562..1ae2b3ce635c6e4b3cdabddda253ec9c
|
||||
this.serverLevelData.setRaining(false, org.bukkit.event.weather.WeatherChangeEvent.Cause.SLEEP); // Paper - when passing the night
|
||||
// If we stop due to everyone sleeping we should reset the weather duration to some other random value.
|
||||
// Not that everyone ever manages to get the whole server to sleep at the same time....
|
||||
@@ -1189,6 +1190,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1190,6 +1191,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
this.serverLevelData.setRainTime(0);
|
||||
}
|
||||
// CraftBukkit end
|
||||
@@ -25,7 +25,7 @@ index 6a8c1da4e69f1ceaa74a30c7571af87910fe8562..1ae2b3ce635c6e4b3cdabddda253ec9c
|
||||
// CraftBukkit start
|
||||
// If we stop due to everyone sleeping we should reset the weather duration to some other random value.
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 87edcfdfafb0acc20e314c4d43fc0fd43c8490b2..38b1d1f16097676528ef93cdf7f4ab62807dc4c1 100644
|
||||
index ff7b3c7e08fd5cb2d0b81adb80934094ee66c9a0..adc279b93abb38d5f89b5411828626352a9a83b0 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -142,6 +142,8 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Option for beds to explode on villager sleep
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index 89435b0742064d77c7cc8bb871949acc9852f2c0..f04778287545e9619ee0359f1e51151d87fca092 100644
|
||||
index 14834853354adb222f99c4a12169fd05e02477da..2df655ddf394149e32e00f3f2a352bff41091a1e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -1085,6 +1085,12 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -1093,6 +1093,12 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
|
||||
@Override
|
||||
public void startSleeping(BlockPos pos) {
|
||||
@@ -22,7 +22,7 @@ index 89435b0742064d77c7cc8bb871949acc9852f2c0..f04778287545e9619ee0359f1e51151d
|
||||
this.brain.setMemory(MemoryModuleType.LAST_SLEPT, this.level.getGameTime()); // CraftBukkit - decompile error
|
||||
this.brain.eraseMemory(MemoryModuleType.WALK_TARGET);
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 58aa6ef663be2c1c5ad242553bb4ad703a94b71d..88189eeea2bae35fa0f396aae7fc3bcfce4cd611 100644
|
||||
index 132cc5a42b17640eddd098f883b9c56fa5cb8b92..fee5bdb822bac6934d0ab92a8e092494845fe7d3 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -725,11 +725,13 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add option to disable zombie villagers cure
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
index f0f4542949de4927f15c75d067eb7d213599aa85..780f7d8a44acea8987736544c1991fec4e6ecc84 100644
|
||||
index 23f154095118de9894e089489aded6b7b7aa96e3..dd05c4770abe65069148fcccfd1b33e781c237ce 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
@@ -211,7 +211,7 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder {
|
||||
@@ -18,10 +18,10 @@ index f0f4542949de4927f15c75d067eb7d213599aa85..780f7d8a44acea8987736544c1991fec
|
||||
itemstack.shrink(1);
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index d6da6756ac41714b18e1dd1853ce73a14aac6e26..08116c757ee7a7ce6536ff196e3f3ee5fe57e37e 100644
|
||||
index b49fdfae45627a79cd07b3a405f7096a1e10107c..14b69d44fc582bbb6f46cbe4efc2281e65d13562 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2778,6 +2778,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2766,6 +2766,7 @@ public class PurpurWorldConfig {
|
||||
public boolean zombieVillagerTakeDamageFromWater = false;
|
||||
public int zombieVillagerCuringTimeMin = 3600;
|
||||
public int zombieVillagerCuringTimeMax = 6000;
|
||||
@@ -29,7 +29,7 @@ index d6da6756ac41714b18e1dd1853ce73a14aac6e26..08116c757ee7a7ce6536ff196e3f3ee5
|
||||
private void zombieVillagerSettings() {
|
||||
zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable);
|
||||
zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater);
|
||||
@@ -2795,6 +2796,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2783,6 +2784,7 @@ public class PurpurWorldConfig {
|
||||
zombieVillagerTakeDamageFromWater = getBoolean("mobs.zombie_villager.takes-damage-from-water", zombieVillagerTakeDamageFromWater);
|
||||
zombieVillagerCuringTimeMin = getInt("mobs.zombie_villager.curing_time.min", zombieVillagerCuringTimeMin);
|
||||
zombieVillagerCuringTimeMax = getInt("mobs.zombie_villager.curing_time.max", zombieVillagerCuringTimeMax);
|
||||
|
||||
@@ -101,7 +101,7 @@ index 5b79d821e8b55c8876eadcbe811a2c0584e7e02b..de70208403ef6c6c9c82ca4c1fd3b641
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Cow.java b/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
index c7947a476a9986e3849c74f74b4b2135c6cf5984..eb7f9df2246813f74d09102d97579c2ffe63f5fb 100644
|
||||
index 204b027e4dba081ac492416d4b13c5bf520fb9bc..c09952d2d5bd1240ed36cd5b03ec071d6a2b87ab 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
@@ -80,6 +80,11 @@ public class Cow extends Animal {
|
||||
@@ -389,7 +389,7 @@ index d5a029db2831ea817071830ba30d0f50fd001f8d..539e3d66bb3cf088799625a2b20ab87d
|
||||
|
||||
public void setHomePos(BlockPos pos) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Wolf.java b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
index ed33573a96e96d557156fbe2f725e3d65c7d5ec4..22a66e59687ca889965536464b628f45b0e88ec0 100644
|
||||
index 60ec90b128a7a9f7862f4705b15dad142cc193f7..80f9788d11a5161c3020837befbebb06172e86e5 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -212,6 +212,11 @@ public class Wolf extends TamableAnimal implements NeutralMob {
|
||||
@@ -1029,7 +1029,7 @@ index 0d8495a73df5b1b6cd2c7e5cf18cb3eb15bbb729..66b824ac3c24c46014d615b355a8a04e
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Zombie.java b/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
index 38014afb40ac5781f6724a942d593aee1f060ad8..ef92a631f71a8d44741a46ef7f6b599b4c061c47 100644
|
||||
index f86ff39a7b1890624c9bf731a07706307316366f..31b1715a5b62e4bd36d672ad21a3bdfbec8af7d1 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
@@ -143,6 +143,11 @@ public class Zombie extends Monster {
|
||||
@@ -1045,7 +1045,7 @@ index 38014afb40ac5781f6724a942d593aee1f060ad8..ef92a631f71a8d44741a46ef7f6b599b
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
index 780f7d8a44acea8987736544c1991fec4e6ecc84..fa9c48aa10d74d4de8f28fd7b99b82d9ce87bde5 100644
|
||||
index dd05c4770abe65069148fcccfd1b33e781c237ce..1d0bad8da3d48dce629bfab3cb536358d818a97e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
@@ -123,6 +123,11 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder {
|
||||
@@ -1125,7 +1125,7 @@ index a44f9a59fbec146df95d89c26df12efb79f6179a..760015f7a98e70b735707c77472c084d
|
||||
|
||||
public static AttributeSupplier.Builder createAttributes() {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index f04778287545e9619ee0359f1e51151d87fca092..b0674eeea341a725ed774c5de040fe173a6fb833 100644
|
||||
index 2df655ddf394149e32e00f3f2a352bff41091a1e..1d3e10d7cd27257e8fd83c3e882b05b9d4374c56 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -193,6 +193,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -1141,7 +1141,7 @@ index f04778287545e9619ee0359f1e51151d87fca092..b0674eeea341a725ed774c5de040fe17
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
index 7231230823573c7d00dd82bee480cc787270c383..18e3589a46daa3fc0abf7e6f8bfdc18670edd315 100644
|
||||
index 8214506faf26bc973594f1bd8a19e0458be9b544..558884b68263f4fd89e5b7e6226faa2b268168da 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
@@ -96,6 +96,11 @@ public class WanderingTrader extends net.minecraft.world.entity.npc.AbstractVill
|
||||
@@ -1157,7 +1157,7 @@ index 7231230823573c7d00dd82bee480cc787270c383..18e3589a46daa3fc0abf7e6f8bfdc186
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee114495e056535 100644
|
||||
index 2943a6d00d5cc5cbfac00fe7031a473db600606f..22ba2f2c8a83e4372867c251256a4d885dcdb8fd 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1004,12 +1004,14 @@ public class PurpurWorldConfig {
|
||||
@@ -1715,7 +1715,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean phantomRidable = false;
|
||||
@@ -1903,6 +1973,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1897,6 +1967,7 @@ public class PurpurWorldConfig {
|
||||
public boolean phantomBurnInDaylight = true;
|
||||
public boolean phantomFlamesOnSwoop = false;
|
||||
public boolean phantomTakeDamageFromWater = false;
|
||||
@@ -1723,7 +1723,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void phantomSettings() {
|
||||
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
|
||||
phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater);
|
||||
@@ -1944,6 +2015,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1932,6 +2003,7 @@ public class PurpurWorldConfig {
|
||||
phantomIgnorePlayersWithTorch = getBoolean("mobs.phantom.ignore-players-with-torch", phantomIgnorePlayersWithTorch);
|
||||
phantomFlamesOnSwoop = getBoolean("mobs.phantom.flames-on-swoop", phantomFlamesOnSwoop);
|
||||
phantomTakeDamageFromWater = getBoolean("mobs.phantom.takes-damage-from-water", phantomTakeDamageFromWater);
|
||||
@@ -1731,7 +1731,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean pigRidable = false;
|
||||
@@ -1953,6 +2025,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1941,6 +2013,7 @@ public class PurpurWorldConfig {
|
||||
public boolean pigGiveSaddleBack = false;
|
||||
public int pigBreedingTicks = 6000;
|
||||
public boolean pigTakeDamageFromWater = false;
|
||||
@@ -1739,7 +1739,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void pigSettings() {
|
||||
pigRidable = getBoolean("mobs.pig.ridable", pigRidable);
|
||||
pigRidableInWater = getBoolean("mobs.pig.ridable-in-water", pigRidableInWater);
|
||||
@@ -1966,6 +2039,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1954,6 +2027,7 @@ public class PurpurWorldConfig {
|
||||
pigGiveSaddleBack = getBoolean("mobs.pig.give-saddle-back", pigGiveSaddleBack);
|
||||
pigBreedingTicks = getInt("mobs.pig.breeding-delay-ticks", pigBreedingTicks);
|
||||
pigTakeDamageFromWater = getBoolean("mobs.pig.takes-damage-from-water", pigTakeDamageFromWater);
|
||||
@@ -1747,7 +1747,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean piglinRidable = false;
|
||||
@@ -1975,6 +2049,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1963,6 +2037,7 @@ public class PurpurWorldConfig {
|
||||
public boolean piglinBypassMobGriefing = false;
|
||||
public boolean piglinTakeDamageFromWater = false;
|
||||
public int piglinPortalSpawnModifier = 2000;
|
||||
@@ -1755,7 +1755,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void piglinSettings() {
|
||||
piglinRidable = getBoolean("mobs.piglin.ridable", piglinRidable);
|
||||
piglinRidableInWater = getBoolean("mobs.piglin.ridable-in-water", piglinRidableInWater);
|
||||
@@ -1988,6 +2063,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1976,6 +2051,7 @@ public class PurpurWorldConfig {
|
||||
piglinBypassMobGriefing = getBoolean("mobs.piglin.bypass-mob-griefing", piglinBypassMobGriefing);
|
||||
piglinTakeDamageFromWater = getBoolean("mobs.piglin.takes-damage-from-water", piglinTakeDamageFromWater);
|
||||
piglinPortalSpawnModifier = getInt("mobs.piglin.portal-spawn-modifier", piglinPortalSpawnModifier);
|
||||
@@ -1763,7 +1763,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean piglinBruteRidable = false;
|
||||
@@ -1995,6 +2071,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1983,6 +2059,7 @@ public class PurpurWorldConfig {
|
||||
public boolean piglinBruteControllable = true;
|
||||
public double piglinBruteMaxHealth = 50.0D;
|
||||
public boolean piglinBruteTakeDamageFromWater = false;
|
||||
@@ -1771,7 +1771,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void piglinBruteSettings() {
|
||||
piglinBruteRidable = getBoolean("mobs.piglin_brute.ridable", piglinBruteRidable);
|
||||
piglinBruteRidableInWater = getBoolean("mobs.piglin_brute.ridable-in-water", piglinBruteRidableInWater);
|
||||
@@ -2006,6 +2083,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1994,6 +2071,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
piglinBruteMaxHealth = getDouble("mobs.piglin_brute.attributes.max_health", piglinBruteMaxHealth);
|
||||
piglinBruteTakeDamageFromWater = getBoolean("mobs.piglin_brute.takes-damage-from-water", piglinBruteTakeDamageFromWater);
|
||||
@@ -1779,7 +1779,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean pillagerRidable = false;
|
||||
@@ -2014,6 +2092,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2002,6 +2080,7 @@ public class PurpurWorldConfig {
|
||||
public double pillagerMaxHealth = 24.0D;
|
||||
public boolean pillagerBypassMobGriefing = false;
|
||||
public boolean pillagerTakeDamageFromWater = false;
|
||||
@@ -1787,7 +1787,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void pillagerSettings() {
|
||||
pillagerRidable = getBoolean("mobs.pillager.ridable", pillagerRidable);
|
||||
pillagerRidableInWater = getBoolean("mobs.pillager.ridable-in-water", pillagerRidableInWater);
|
||||
@@ -2026,6 +2105,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2014,6 +2093,7 @@ public class PurpurWorldConfig {
|
||||
pillagerMaxHealth = getDouble("mobs.pillager.attributes.max_health", pillagerMaxHealth);
|
||||
pillagerBypassMobGriefing = getBoolean("mobs.pillager.bypass-mob-griefing", pillagerBypassMobGriefing);
|
||||
pillagerTakeDamageFromWater = getBoolean("mobs.pillager.takes-damage-from-water", pillagerTakeDamageFromWater);
|
||||
@@ -1795,7 +1795,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean polarBearRidable = false;
|
||||
@@ -2036,6 +2116,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2024,6 +2104,7 @@ public class PurpurWorldConfig {
|
||||
public Item polarBearBreedableItem = null;
|
||||
public int polarBearBreedingTicks = 6000;
|
||||
public boolean polarBearTakeDamageFromWater = false;
|
||||
@@ -1803,7 +1803,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void polarBearSettings() {
|
||||
polarBearRidable = getBoolean("mobs.polar_bear.ridable", polarBearRidable);
|
||||
polarBearRidableInWater = getBoolean("mobs.polar_bear.ridable-in-water", polarBearRidableInWater);
|
||||
@@ -2051,12 +2132,14 @@ public class PurpurWorldConfig {
|
||||
@@ -2039,12 +2120,14 @@ public class PurpurWorldConfig {
|
||||
if (item != Items.AIR) polarBearBreedableItem = item;
|
||||
polarBearBreedingTicks = getInt("mobs.polar_bear.breeding-delay-ticks", polarBearBreedingTicks);
|
||||
polarBearTakeDamageFromWater = getBoolean("mobs.polar_bear.takes-damage-from-water", polarBearTakeDamageFromWater);
|
||||
@@ -1818,7 +1818,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void pufferfishSettings() {
|
||||
pufferfishRidable = getBoolean("mobs.pufferfish.ridable", pufferfishRidable);
|
||||
pufferfishControllable = getBoolean("mobs.pufferfish.controllable", pufferfishControllable);
|
||||
@@ -2067,6 +2150,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2055,6 +2138,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
pufferfishMaxHealth = getDouble("mobs.pufferfish.attributes.max_health", pufferfishMaxHealth);
|
||||
pufferfishTakeDamageFromWater = getBoolean("mobs.pufferfish.takes-damage-from-water", pufferfishTakeDamageFromWater);
|
||||
@@ -1826,7 +1826,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean rabbitRidable = false;
|
||||
@@ -2078,6 +2162,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2066,6 +2150,7 @@ public class PurpurWorldConfig {
|
||||
public int rabbitBreedingTicks = 6000;
|
||||
public boolean rabbitBypassMobGriefing = false;
|
||||
public boolean rabbitTakeDamageFromWater = false;
|
||||
@@ -1834,7 +1834,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void rabbitSettings() {
|
||||
rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable);
|
||||
rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater);
|
||||
@@ -2093,6 +2178,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2081,6 +2166,7 @@ public class PurpurWorldConfig {
|
||||
rabbitBreedingTicks = getInt("mobs.rabbit.breeding-delay-ticks", rabbitBreedingTicks);
|
||||
rabbitBypassMobGriefing = getBoolean("mobs.rabbit.bypass-mob-griefing", rabbitBypassMobGriefing);
|
||||
rabbitTakeDamageFromWater = getBoolean("mobs.rabbit.takes-damage-from-water", rabbitTakeDamageFromWater);
|
||||
@@ -1842,7 +1842,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean ravagerRidable = false;
|
||||
@@ -2102,6 +2188,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2090,6 +2176,7 @@ public class PurpurWorldConfig {
|
||||
public boolean ravagerBypassMobGriefing = false;
|
||||
public boolean ravagerTakeDamageFromWater = false;
|
||||
public List<Block> ravagerGriefableBlocks = new ArrayList<>();
|
||||
@@ -1850,7 +1850,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void ravagerSettings() {
|
||||
ravagerRidable = getBoolean("mobs.ravager.ridable", ravagerRidable);
|
||||
ravagerRidableInWater = getBoolean("mobs.ravager.ridable-in-water", ravagerRidableInWater);
|
||||
@@ -2131,12 +2218,14 @@ public class PurpurWorldConfig {
|
||||
@@ -2119,12 +2206,14 @@ public class PurpurWorldConfig {
|
||||
ravagerGriefableBlocks.add(block);
|
||||
}
|
||||
});
|
||||
@@ -1865,7 +1865,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void salmonSettings() {
|
||||
salmonRidable = getBoolean("mobs.salmon.ridable", salmonRidable);
|
||||
salmonControllable = getBoolean("mobs.salmon.controllable", salmonControllable);
|
||||
@@ -2147,6 +2236,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2135,6 +2224,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
salmonMaxHealth = getDouble("mobs.salmon.attributes.max_health", salmonMaxHealth);
|
||||
salmonTakeDamageFromWater = getBoolean("mobs.salmon.takes-damage-from-water", salmonTakeDamageFromWater);
|
||||
@@ -1873,7 +1873,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean sheepRidable = false;
|
||||
@@ -2156,6 +2246,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2144,6 +2234,7 @@ public class PurpurWorldConfig {
|
||||
public int sheepBreedingTicks = 6000;
|
||||
public boolean sheepBypassMobGriefing = false;
|
||||
public boolean sheepTakeDamageFromWater = false;
|
||||
@@ -1881,7 +1881,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void sheepSettings() {
|
||||
sheepRidable = getBoolean("mobs.sheep.ridable", sheepRidable);
|
||||
sheepRidableInWater = getBoolean("mobs.sheep.ridable-in-water", sheepRidableInWater);
|
||||
@@ -2169,6 +2260,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2157,6 +2248,7 @@ public class PurpurWorldConfig {
|
||||
sheepBreedingTicks = getInt("mobs.sheep.breeding-delay-ticks", sheepBreedingTicks);
|
||||
sheepBypassMobGriefing = getBoolean("mobs.sheep.bypass-mob-griefing", sheepBypassMobGriefing);
|
||||
sheepTakeDamageFromWater = getBoolean("mobs.sheep.takes-damage-from-water", sheepTakeDamageFromWater);
|
||||
@@ -1889,7 +1889,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean shulkerRidable = false;
|
||||
@@ -2182,6 +2274,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2170,6 +2262,7 @@ public class PurpurWorldConfig {
|
||||
public String shulkerSpawnFromBulletNearbyEquation = "(nearby - 1) / 5.0";
|
||||
public boolean shulkerSpawnFromBulletRandomColor = false;
|
||||
public boolean shulkerChangeColorWithDye = false;
|
||||
@@ -1897,7 +1897,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void shulkerSettings() {
|
||||
shulkerRidable = getBoolean("mobs.shulker.ridable", shulkerRidable);
|
||||
shulkerRidableInWater = getBoolean("mobs.shulker.ridable-in-water", shulkerRidableInWater);
|
||||
@@ -2199,6 +2292,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2187,6 +2280,7 @@ public class PurpurWorldConfig {
|
||||
shulkerSpawnFromBulletNearbyEquation = getString("mobs.shulker.spawn-from-bullet.nearby-equation", shulkerSpawnFromBulletNearbyEquation);
|
||||
shulkerSpawnFromBulletRandomColor = getBoolean("mobs.shulker.spawn-from-bullet.random-color", shulkerSpawnFromBulletRandomColor);
|
||||
shulkerChangeColorWithDye = getBoolean("mobs.shulker.change-color-with-dye", shulkerChangeColorWithDye);
|
||||
@@ -1905,7 +1905,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean silverfishRidable = false;
|
||||
@@ -2207,6 +2301,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2195,6 +2289,7 @@ public class PurpurWorldConfig {
|
||||
public double silverfishMaxHealth = 8.0D;
|
||||
public boolean silverfishBypassMobGriefing = false;
|
||||
public boolean silverfishTakeDamageFromWater = false;
|
||||
@@ -1913,7 +1913,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void silverfishSettings() {
|
||||
silverfishRidable = getBoolean("mobs.silverfish.ridable", silverfishRidable);
|
||||
silverfishRidableInWater = getBoolean("mobs.silverfish.ridable-in-water", silverfishRidableInWater);
|
||||
@@ -2219,6 +2314,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2207,6 +2302,7 @@ public class PurpurWorldConfig {
|
||||
silverfishMaxHealth = getDouble("mobs.silverfish.attributes.max_health", silverfishMaxHealth);
|
||||
silverfishBypassMobGriefing = getBoolean("mobs.silverfish.bypass-mob-griefing", silverfishBypassMobGriefing);
|
||||
silverfishTakeDamageFromWater = getBoolean("mobs.silverfish.takes-damage-from-water", silverfishTakeDamageFromWater);
|
||||
@@ -1921,7 +1921,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean skeletonRidable = false;
|
||||
@@ -2226,6 +2322,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2214,6 +2310,7 @@ public class PurpurWorldConfig {
|
||||
public boolean skeletonControllable = true;
|
||||
public double skeletonMaxHealth = 20.0D;
|
||||
public boolean skeletonTakeDamageFromWater = false;
|
||||
@@ -1929,7 +1929,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void skeletonSettings() {
|
||||
skeletonRidable = getBoolean("mobs.skeleton.ridable", skeletonRidable);
|
||||
skeletonRidableInWater = getBoolean("mobs.skeleton.ridable-in-water", skeletonRidableInWater);
|
||||
@@ -2237,6 +2334,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2225,6 +2322,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
skeletonMaxHealth = getDouble("mobs.skeleton.attributes.max_health", skeletonMaxHealth);
|
||||
skeletonTakeDamageFromWater = getBoolean("mobs.skeleton.takes-damage-from-water", skeletonTakeDamageFromWater);
|
||||
@@ -1937,7 +1937,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean skeletonHorseRidableInWater = true;
|
||||
@@ -2248,6 +2346,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2236,6 +2334,7 @@ public class PurpurWorldConfig {
|
||||
public double skeletonHorseMovementSpeedMin = 0.2D;
|
||||
public double skeletonHorseMovementSpeedMax = 0.2D;
|
||||
public boolean skeletonHorseTakeDamageFromWater = false;
|
||||
@@ -1945,7 +1945,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void skeletonHorseSettings() {
|
||||
skeletonHorseRidableInWater = getBoolean("mobs.skeleton_horse.ridable-in-water", skeletonHorseRidableInWater);
|
||||
skeletonHorseCanSwim = getBoolean("mobs.skeleton_horse.can-swim", skeletonHorseCanSwim);
|
||||
@@ -2264,6 +2363,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2252,6 +2351,7 @@ public class PurpurWorldConfig {
|
||||
skeletonHorseMovementSpeedMin = getDouble("mobs.skeleton_horse.attributes.movement_speed.min", skeletonHorseMovementSpeedMin);
|
||||
skeletonHorseMovementSpeedMax = getDouble("mobs.skeleton_horse.attributes.movement_speed.max", skeletonHorseMovementSpeedMax);
|
||||
skeletonHorseTakeDamageFromWater = getBoolean("mobs.skeleton_horse.takes-damage-from-water", skeletonHorseTakeDamageFromWater);
|
||||
@@ -1953,7 +1953,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean slimeRidable = false;
|
||||
@@ -2274,6 +2374,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2262,6 +2362,7 @@ public class PurpurWorldConfig {
|
||||
public Map<Integer, Double> slimeMaxHealthCache = new HashMap<>();
|
||||
public Map<Integer, Double> slimeAttackDamageCache = new HashMap<>();
|
||||
public boolean slimeTakeDamageFromWater = false;
|
||||
@@ -1961,7 +1961,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void slimeSettings() {
|
||||
slimeRidable = getBoolean("mobs.slime.ridable", slimeRidable);
|
||||
slimeRidableInWater = getBoolean("mobs.slime.ridable-in-water", slimeRidableInWater);
|
||||
@@ -2288,6 +2389,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2276,6 +2377,7 @@ public class PurpurWorldConfig {
|
||||
slimeMaxHealthCache.clear();
|
||||
slimeAttackDamageCache.clear();
|
||||
slimeTakeDamageFromWater = getBoolean("mobs.slime.takes-damage-from-water", slimeTakeDamageFromWater);
|
||||
@@ -1969,7 +1969,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean snowGolemRidable = false;
|
||||
@@ -2303,6 +2405,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2291,6 +2393,7 @@ public class PurpurWorldConfig {
|
||||
public double snowGolemAttackDistance = 1.25D;
|
||||
public boolean snowGolemBypassMobGriefing = false;
|
||||
public boolean snowGolemTakeDamageFromWater = true;
|
||||
@@ -1977,7 +1977,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void snowGolemSettings() {
|
||||
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
|
||||
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
|
||||
@@ -2322,6 +2425,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2310,6 +2413,7 @@ public class PurpurWorldConfig {
|
||||
snowGolemAttackDistance = getDouble("mobs.snow_golem.attack-distance", snowGolemAttackDistance);
|
||||
snowGolemBypassMobGriefing = getBoolean("mobs.snow_golem.bypass-mob-griefing", snowGolemBypassMobGriefing);
|
||||
snowGolemTakeDamageFromWater = getBoolean("mobs.snow_golem.takes-damage-from-water", snowGolemTakeDamageFromWater);
|
||||
@@ -1985,7 +1985,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean squidRidable = false;
|
||||
@@ -2331,6 +2435,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2319,6 +2423,7 @@ public class PurpurWorldConfig {
|
||||
public double squidOffsetWaterCheck = 0.0D;
|
||||
public boolean squidsCanFly = false;
|
||||
public boolean squidTakeDamageFromWater = false;
|
||||
@@ -1993,7 +1993,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void squidSettings() {
|
||||
squidRidable = getBoolean("mobs.squid.ridable", squidRidable);
|
||||
squidControllable = getBoolean("mobs.squid.controllable", squidControllable);
|
||||
@@ -2344,6 +2449,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2332,6 +2437,7 @@ public class PurpurWorldConfig {
|
||||
squidOffsetWaterCheck = getDouble("mobs.squid.water-offset-check", squidOffsetWaterCheck);
|
||||
squidsCanFly = getBoolean("mobs.squid.can-fly", squidsCanFly);
|
||||
squidTakeDamageFromWater = getBoolean("mobs.squid.takes-damage-from-water", squidTakeDamageFromWater);
|
||||
@@ -2001,7 +2001,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean spiderRidable = false;
|
||||
@@ -2351,6 +2457,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2339,6 +2445,7 @@ public class PurpurWorldConfig {
|
||||
public boolean spiderControllable = true;
|
||||
public double spiderMaxHealth = 16.0D;
|
||||
public boolean spiderTakeDamageFromWater = false;
|
||||
@@ -2009,7 +2009,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void spiderSettings() {
|
||||
spiderRidable = getBoolean("mobs.spider.ridable", spiderRidable);
|
||||
spiderRidableInWater = getBoolean("mobs.spider.ridable-in-water", spiderRidableInWater);
|
||||
@@ -2362,6 +2469,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2350,6 +2457,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
spiderMaxHealth = getDouble("mobs.spider.attributes.max_health", spiderMaxHealth);
|
||||
spiderTakeDamageFromWater = getBoolean("mobs.spider.takes-damage-from-water", spiderTakeDamageFromWater);
|
||||
@@ -2017,7 +2017,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean strayRidable = false;
|
||||
@@ -2369,6 +2477,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2357,6 +2465,7 @@ public class PurpurWorldConfig {
|
||||
public boolean strayControllable = true;
|
||||
public double strayMaxHealth = 20.0D;
|
||||
public boolean strayTakeDamageFromWater = false;
|
||||
@@ -2025,7 +2025,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void straySettings() {
|
||||
strayRidable = getBoolean("mobs.stray.ridable", strayRidable);
|
||||
strayRidableInWater = getBoolean("mobs.stray.ridable-in-water", strayRidableInWater);
|
||||
@@ -2380,6 +2489,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2368,6 +2477,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
strayMaxHealth = getDouble("mobs.stray.attributes.max_health", strayMaxHealth);
|
||||
strayTakeDamageFromWater = getBoolean("mobs.stray.takes-damage-from-water", strayTakeDamageFromWater);
|
||||
@@ -2033,7 +2033,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean striderRidable = false;
|
||||
@@ -2389,6 +2499,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2377,6 +2487,7 @@ public class PurpurWorldConfig {
|
||||
public int striderBreedingTicks = 6000;
|
||||
public boolean striderGiveSaddleBack = false;
|
||||
public boolean striderTakeDamageFromWater = true;
|
||||
@@ -2041,7 +2041,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void striderSettings() {
|
||||
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
|
||||
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
|
||||
@@ -2402,6 +2513,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2390,6 +2501,7 @@ public class PurpurWorldConfig {
|
||||
striderBreedingTicks = getInt("mobs.strider.breeding-delay-ticks", striderBreedingTicks);
|
||||
striderGiveSaddleBack = getBoolean("mobs.strider.give-saddle-back", striderGiveSaddleBack);
|
||||
striderTakeDamageFromWater = getBoolean("mobs.strider.takes-damage-from-water", striderTakeDamageFromWater);
|
||||
@@ -2049,7 +2049,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean tadpoleRidable = false;
|
||||
@@ -2424,6 +2536,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2412,6 +2524,7 @@ public class PurpurWorldConfig {
|
||||
public double traderLlamaMovementSpeedMax = 0.175D;
|
||||
public int traderLlamaBreedingTicks = 6000;
|
||||
public boolean traderLlamaTakeDamageFromWater = false;
|
||||
@@ -2057,7 +2057,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void traderLlamaSettings() {
|
||||
traderLlamaRidable = getBoolean("mobs.trader_llama.ridable", traderLlamaRidable);
|
||||
traderLlamaRidableInWater = getBoolean("mobs.trader_llama.ridable-in-water", traderLlamaRidableInWater);
|
||||
@@ -2443,12 +2556,14 @@ public class PurpurWorldConfig {
|
||||
@@ -2431,12 +2544,14 @@ public class PurpurWorldConfig {
|
||||
traderLlamaMovementSpeedMax = getDouble("mobs.trader_llama.attributes.movement_speed.max", traderLlamaMovementSpeedMax);
|
||||
traderLlamaBreedingTicks = getInt("mobs.trader_llama.breeding-delay-ticks", traderLlamaBreedingTicks);
|
||||
traderLlamaTakeDamageFromWater = getBoolean("mobs.trader_llama.takes-damage-from-water", traderLlamaTakeDamageFromWater);
|
||||
@@ -2072,7 +2072,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void tropicalFishSettings() {
|
||||
tropicalFishRidable = getBoolean("mobs.tropical_fish.ridable", tropicalFishRidable);
|
||||
tropicalFishControllable = getBoolean("mobs.tropical_fish.controllable", tropicalFishControllable);
|
||||
@@ -2459,6 +2574,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2447,6 +2562,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
tropicalFishMaxHealth = getDouble("mobs.tropical_fish.attributes.max_health", tropicalFishMaxHealth);
|
||||
tropicalFishTakeDamageFromWater = getBoolean("mobs.tropical_fish.takes-damage-from-water", tropicalFishTakeDamageFromWater);
|
||||
@@ -2080,7 +2080,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean turtleRidable = false;
|
||||
@@ -2467,6 +2583,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2455,6 +2571,7 @@ public class PurpurWorldConfig {
|
||||
public double turtleMaxHealth = 30.0D;
|
||||
public int turtleBreedingTicks = 6000;
|
||||
public boolean turtleTakeDamageFromWater = false;
|
||||
@@ -2088,7 +2088,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void turtleSettings() {
|
||||
turtleRidable = getBoolean("mobs.turtle.ridable", turtleRidable);
|
||||
turtleRidableInWater = getBoolean("mobs.turtle.ridable-in-water", turtleRidableInWater);
|
||||
@@ -2479,6 +2596,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2467,6 +2584,7 @@ public class PurpurWorldConfig {
|
||||
turtleMaxHealth = getDouble("mobs.turtle.attributes.max_health", turtleMaxHealth);
|
||||
turtleBreedingTicks = getInt("mobs.turtle.breeding-delay-ticks", turtleBreedingTicks);
|
||||
turtleTakeDamageFromWater = getBoolean("mobs.turtle.takes-damage-from-water", turtleTakeDamageFromWater);
|
||||
@@ -2096,7 +2096,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean vexRidable = false;
|
||||
@@ -2487,6 +2605,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2475,6 +2593,7 @@ public class PurpurWorldConfig {
|
||||
public double vexMaxY = 320D;
|
||||
public double vexMaxHealth = 14.0D;
|
||||
public boolean vexTakeDamageFromWater = false;
|
||||
@@ -2104,7 +2104,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void vexSettings() {
|
||||
vexRidable = getBoolean("mobs.vex.ridable", vexRidable);
|
||||
vexRidableInWater = getBoolean("mobs.vex.ridable-in-water", vexRidableInWater);
|
||||
@@ -2499,6 +2618,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2487,6 +2606,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
vexMaxHealth = getDouble("mobs.vex.attributes.max_health", vexMaxHealth);
|
||||
vexTakeDamageFromWater = getBoolean("mobs.vex.takes-damage-from-water", vexTakeDamageFromWater);
|
||||
@@ -2112,7 +2112,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean villagerRidable = false;
|
||||
@@ -2516,6 +2636,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2504,6 +2624,7 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerBypassMobGriefing = false;
|
||||
public boolean villagerTakeDamageFromWater = false;
|
||||
public boolean villagerAllowTrading = true;
|
||||
@@ -2120,7 +2120,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -2537,6 +2658,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2525,6 +2646,7 @@ public class PurpurWorldConfig {
|
||||
villagerBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerBypassMobGriefing);
|
||||
villagerTakeDamageFromWater = getBoolean("mobs.villager.takes-damage-from-water", villagerTakeDamageFromWater);
|
||||
villagerAllowTrading = getBoolean("mobs.villager.allow-trading", villagerAllowTrading);
|
||||
@@ -2128,7 +2128,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean vindicatorRidable = false;
|
||||
@@ -2545,6 +2667,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2533,6 +2655,7 @@ public class PurpurWorldConfig {
|
||||
public double vindicatorMaxHealth = 24.0D;
|
||||
public double vindicatorJohnnySpawnChance = 0D;
|
||||
public boolean vindicatorTakeDamageFromWater = false;
|
||||
@@ -2136,7 +2136,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void vindicatorSettings() {
|
||||
vindicatorRidable = getBoolean("mobs.vindicator.ridable", vindicatorRidable);
|
||||
vindicatorRidableInWater = getBoolean("mobs.vindicator.ridable-in-water", vindicatorRidableInWater);
|
||||
@@ -2557,6 +2680,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2545,6 +2668,7 @@ public class PurpurWorldConfig {
|
||||
vindicatorMaxHealth = getDouble("mobs.vindicator.attributes.max_health", vindicatorMaxHealth);
|
||||
vindicatorJohnnySpawnChance = getDouble("mobs.vindicator.johnny.spawn-chance", vindicatorJohnnySpawnChance);
|
||||
vindicatorTakeDamageFromWater = getBoolean("mobs.vindicator.takes-damage-from-water", vindicatorTakeDamageFromWater);
|
||||
@@ -2144,7 +2144,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean wanderingTraderRidable = false;
|
||||
@@ -2567,6 +2691,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2555,6 +2679,7 @@ public class PurpurWorldConfig {
|
||||
public boolean wanderingTraderCanBeLeashed = false;
|
||||
public boolean wanderingTraderTakeDamageFromWater = false;
|
||||
public boolean wanderingTraderAllowTrading = true;
|
||||
@@ -2152,7 +2152,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void wanderingTraderSettings() {
|
||||
wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable);
|
||||
wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater);
|
||||
@@ -2581,6 +2706,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2569,6 +2694,7 @@ public class PurpurWorldConfig {
|
||||
wanderingTraderCanBeLeashed = getBoolean("mobs.wandering_trader.can-be-leashed", wanderingTraderCanBeLeashed);
|
||||
wanderingTraderTakeDamageFromWater = getBoolean("mobs.wandering_trader.takes-damage-from-water", wanderingTraderTakeDamageFromWater);
|
||||
wanderingTraderAllowTrading = getBoolean("mobs.wandering_trader.allow-trading", wanderingTraderAllowTrading);
|
||||
@@ -2160,7 +2160,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean wardenRidable = false;
|
||||
@@ -2597,6 +2723,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2585,6 +2711,7 @@ public class PurpurWorldConfig {
|
||||
public boolean witchControllable = true;
|
||||
public double witchMaxHealth = 26.0D;
|
||||
public boolean witchTakeDamageFromWater = false;
|
||||
@@ -2168,7 +2168,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void witchSettings() {
|
||||
witchRidable = getBoolean("mobs.witch.ridable", witchRidable);
|
||||
witchRidableInWater = getBoolean("mobs.witch.ridable-in-water", witchRidableInWater);
|
||||
@@ -2608,6 +2735,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2596,6 +2723,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
witchMaxHealth = getDouble("mobs.witch.attributes.max_health", witchMaxHealth);
|
||||
witchTakeDamageFromWater = getBoolean("mobs.witch.takes-damage-from-water", witchTakeDamageFromWater);
|
||||
@@ -2176,7 +2176,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean witherRidable = false;
|
||||
@@ -2622,6 +2750,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2610,6 +2738,7 @@ public class PurpurWorldConfig {
|
||||
public boolean witherCanRideVehicles = false;
|
||||
public float witherExplosionRadius = 1.0F;
|
||||
public boolean witherPlaySpawnSound = true;
|
||||
@@ -2184,7 +2184,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void witherSettings() {
|
||||
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
|
||||
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
|
||||
@@ -2644,6 +2773,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2632,6 +2761,7 @@ public class PurpurWorldConfig {
|
||||
witherCanRideVehicles = getBoolean("mobs.wither.can-ride-vehicles", witherCanRideVehicles);
|
||||
witherExplosionRadius = (float) getDouble("mobs.wither.explosion-radius", witherExplosionRadius);
|
||||
witherPlaySpawnSound = getBoolean("mobs.wither.play-spawn-sound", witherPlaySpawnSound);
|
||||
@@ -2192,7 +2192,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean witherSkeletonRidable = false;
|
||||
@@ -2651,6 +2781,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2639,6 +2769,7 @@ public class PurpurWorldConfig {
|
||||
public boolean witherSkeletonControllable = true;
|
||||
public double witherSkeletonMaxHealth = 20.0D;
|
||||
public boolean witherSkeletonTakeDamageFromWater = false;
|
||||
@@ -2200,7 +2200,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void witherSkeletonSettings() {
|
||||
witherSkeletonRidable = getBoolean("mobs.wither_skeleton.ridable", witherSkeletonRidable);
|
||||
witherSkeletonRidableInWater = getBoolean("mobs.wither_skeleton.ridable-in-water", witherSkeletonRidableInWater);
|
||||
@@ -2662,6 +2793,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2650,6 +2781,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
witherSkeletonMaxHealth = getDouble("mobs.wither_skeleton.attributes.max_health", witherSkeletonMaxHealth);
|
||||
witherSkeletonTakeDamageFromWater = getBoolean("mobs.wither_skeleton.takes-damage-from-water", witherSkeletonTakeDamageFromWater);
|
||||
@@ -2208,7 +2208,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean wolfRidable = false;
|
||||
@@ -2673,6 +2805,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2661,6 +2793,7 @@ public class PurpurWorldConfig {
|
||||
public double wolfNaturalRabid = 0.0D;
|
||||
public int wolfBreedingTicks = 6000;
|
||||
public boolean wolfTakeDamageFromWater = false;
|
||||
@@ -2216,7 +2216,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void wolfSettings() {
|
||||
wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable);
|
||||
wolfRidableInWater = getBoolean("mobs.wolf.ridable-in-water", wolfRidableInWater);
|
||||
@@ -2692,6 +2825,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2680,6 +2813,7 @@ public class PurpurWorldConfig {
|
||||
wolfNaturalRabid = getDouble("mobs.wolf.spawn-rabid-chance", wolfNaturalRabid);
|
||||
wolfBreedingTicks = getInt("mobs.wolf.breeding-delay-ticks", wolfBreedingTicks);
|
||||
wolfTakeDamageFromWater = getBoolean("mobs.wolf.takes-damage-from-water", wolfTakeDamageFromWater);
|
||||
@@ -2224,7 +2224,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean zoglinRidable = false;
|
||||
@@ -2699,6 +2833,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2687,6 +2821,7 @@ public class PurpurWorldConfig {
|
||||
public boolean zoglinControllable = true;
|
||||
public double zoglinMaxHealth = 40.0D;
|
||||
public boolean zoglinTakeDamageFromWater = false;
|
||||
@@ -2232,7 +2232,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void zoglinSettings() {
|
||||
zoglinRidable = getBoolean("mobs.zoglin.ridable", zoglinRidable);
|
||||
zoglinRidableInWater = getBoolean("mobs.zoglin.ridable-in-water", zoglinRidableInWater);
|
||||
@@ -2710,6 +2845,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2698,6 +2833,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
zoglinMaxHealth = getDouble("mobs.zoglin.attributes.max_health", zoglinMaxHealth);
|
||||
zoglinTakeDamageFromWater = getBoolean("mobs.zoglin.takes-damage-from-water", zoglinTakeDamageFromWater);
|
||||
@@ -2240,7 +2240,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean zombieRidable = false;
|
||||
@@ -2723,6 +2859,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2711,6 +2847,7 @@ public class PurpurWorldConfig {
|
||||
public boolean zombieAggressiveTowardsVillagerWhenLagging = true;
|
||||
public boolean zombieBypassMobGriefing = false;
|
||||
public boolean zombieTakeDamageFromWater = false;
|
||||
@@ -2248,7 +2248,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void zombieSettings() {
|
||||
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
|
||||
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
|
||||
@@ -2740,6 +2877,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2728,6 +2865,7 @@ public class PurpurWorldConfig {
|
||||
zombieAggressiveTowardsVillagerWhenLagging = getBoolean("mobs.zombie.aggressive-towards-villager-when-lagging", zombieAggressiveTowardsVillagerWhenLagging);
|
||||
zombieBypassMobGriefing = getBoolean("mobs.zombie.bypass-mob-griefing", zombieBypassMobGriefing);
|
||||
zombieTakeDamageFromWater = getBoolean("mobs.zombie.takes-damage-from-water", zombieTakeDamageFromWater);
|
||||
@@ -2256,7 +2256,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean zombieHorseRidableInWater = false;
|
||||
@@ -2752,6 +2890,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2740,6 +2878,7 @@ public class PurpurWorldConfig {
|
||||
public double zombieHorseMovementSpeedMax = 0.2D;
|
||||
public double zombieHorseSpawnChance = 0.0D;
|
||||
public boolean zombieHorseTakeDamageFromWater = false;
|
||||
@@ -2264,7 +2264,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void zombieHorseSettings() {
|
||||
zombieHorseRidableInWater = getBoolean("mobs.zombie_horse.ridable-in-water", zombieHorseRidableInWater);
|
||||
zombieHorseCanSwim = getBoolean("mobs.zombie_horse.can-swim", zombieHorseCanSwim);
|
||||
@@ -2769,6 +2908,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2757,6 +2896,7 @@ public class PurpurWorldConfig {
|
||||
zombieHorseMovementSpeedMax = getDouble("mobs.zombie_horse.attributes.movement_speed.max", zombieHorseMovementSpeedMax);
|
||||
zombieHorseSpawnChance = getDouble("mobs.zombie_horse.spawn-chance", zombieHorseSpawnChance);
|
||||
zombieHorseTakeDamageFromWater = getBoolean("mobs.zombie_horse.takes-damage-from-water", zombieHorseTakeDamageFromWater);
|
||||
@@ -2272,7 +2272,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean zombieVillagerRidable = false;
|
||||
@@ -2783,6 +2923,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2771,6 +2911,7 @@ public class PurpurWorldConfig {
|
||||
public int zombieVillagerCuringTimeMin = 3600;
|
||||
public int zombieVillagerCuringTimeMax = 6000;
|
||||
public boolean zombieVillagerCureEnabled = true;
|
||||
@@ -2280,7 +2280,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void zombieVillagerSettings() {
|
||||
zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable);
|
||||
zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater);
|
||||
@@ -2801,6 +2942,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2789,6 +2930,7 @@ public class PurpurWorldConfig {
|
||||
zombieVillagerCuringTimeMin = getInt("mobs.zombie_villager.curing_time.min", zombieVillagerCuringTimeMin);
|
||||
zombieVillagerCuringTimeMax = getInt("mobs.zombie_villager.curing_time.max", zombieVillagerCuringTimeMax);
|
||||
zombieVillagerCureEnabled = getBoolean("mobs.zombie_villager.cure.enabled", zombieVillagerCureEnabled);
|
||||
@@ -2288,7 +2288,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
}
|
||||
|
||||
public boolean zombifiedPiglinRidable = false;
|
||||
@@ -2813,6 +2955,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2801,6 +2943,7 @@ public class PurpurWorldConfig {
|
||||
public boolean zombifiedPiglinJockeyTryExistingChickens = true;
|
||||
public boolean zombifiedPiglinCountAsPlayerKillWhenAngry = true;
|
||||
public boolean zombifiedPiglinTakeDamageFromWater = false;
|
||||
@@ -2296,7 +2296,7 @@ index f0d0538c9ea3c3f3119c67c306886dfacbfdc7de..229b4c97f2b05660a5564e4d3ee11449
|
||||
private void zombifiedPiglinSettings() {
|
||||
zombifiedPiglinRidable = getBoolean("mobs.zombified_piglin.ridable", zombifiedPiglinRidable);
|
||||
zombifiedPiglinRidableInWater = getBoolean("mobs.zombified_piglin.ridable-in-water", zombifiedPiglinRidableInWater);
|
||||
@@ -2829,6 +2972,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2817,6 +2960,7 @@ public class PurpurWorldConfig {
|
||||
zombifiedPiglinJockeyTryExistingChickens = getBoolean("mobs.zombified_piglin.jockey.try-existing-chickens", zombifiedPiglinJockeyTryExistingChickens);
|
||||
zombifiedPiglinCountAsPlayerKillWhenAngry = getBoolean("mobs.zombified_piglin.count-as-player-kill-when-angry", zombifiedPiglinCountAsPlayerKillWhenAngry);
|
||||
zombifiedPiglinTakeDamageFromWater = getBoolean("mobs.zombified_piglin.takes-damage-from-water", zombifiedPiglinTakeDamageFromWater);
|
||||
|
||||
@@ -39,10 +39,10 @@ index bdd4fc3072f7a5ea504ba35f6a08ae971e83b69f..b9ac8cefefe1f47548166330b7c889df
|
||||
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 229b4c97f2b05660a5564e4d3ee114495e056535..026dcf93405f70e5249bff9bd574aa195903e706 100644
|
||||
index 22ba2f2c8a83e4372867c251256a4d885dcdb8fd..4aa533741c8deb1cde5b8603832878ac8580d326 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2458,6 +2458,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2446,6 +2446,7 @@ public class PurpurWorldConfig {
|
||||
public double spiderMaxHealth = 16.0D;
|
||||
public boolean spiderTakeDamageFromWater = false;
|
||||
public boolean spiderAlwaysDropExp = false;
|
||||
@@ -50,7 +50,7 @@ index 229b4c97f2b05660a5564e4d3ee114495e056535..026dcf93405f70e5249bff9bd574aa19
|
||||
private void spiderSettings() {
|
||||
spiderRidable = getBoolean("mobs.spider.ridable", spiderRidable);
|
||||
spiderRidableInWater = getBoolean("mobs.spider.ridable-in-water", spiderRidableInWater);
|
||||
@@ -2470,6 +2471,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2458,6 +2459,7 @@ public class PurpurWorldConfig {
|
||||
spiderMaxHealth = getDouble("mobs.spider.attributes.max_health", spiderMaxHealth);
|
||||
spiderTakeDamageFromWater = getBoolean("mobs.spider.takes-damage-from-water", spiderTakeDamageFromWater);
|
||||
spiderAlwaysDropExp = getBoolean("mobs.spider.always-drop-exp", spiderAlwaysDropExp);
|
||||
|
||||
@@ -18,10 +18,10 @@ index 63aeab7204ac954b2908207dc6e743d17aa27f2e..aa6f6e252f6f2933825b97bf1b9679fe
|
||||
|
||||
if (entityitem != null) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index f0f06e8e4a7a4aac071bff48230ab20f2795f7d2..3fd933c9d8db9ed3ecdc4e7f4d630235603895ce 100644
|
||||
index ddca8e220f7624ca09243bd67084420302d098ab..0f0974e00c9878ea476a3689a86772b215dcb2e3 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2251,6 +2251,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2239,6 +2239,7 @@ public class PurpurWorldConfig {
|
||||
public boolean sheepBypassMobGriefing = false;
|
||||
public boolean sheepTakeDamageFromWater = false;
|
||||
public boolean sheepAlwaysDropExp = false;
|
||||
@@ -29,7 +29,7 @@ index f0f06e8e4a7a4aac071bff48230ab20f2795f7d2..3fd933c9d8db9ed3ecdc4e7f4d630235
|
||||
private void sheepSettings() {
|
||||
sheepRidable = getBoolean("mobs.sheep.ridable", sheepRidable);
|
||||
sheepRidableInWater = getBoolean("mobs.sheep.ridable-in-water", sheepRidableInWater);
|
||||
@@ -2265,6 +2266,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2253,6 +2254,7 @@ public class PurpurWorldConfig {
|
||||
sheepBypassMobGriefing = getBoolean("mobs.sheep.bypass-mob-griefing", sheepBypassMobGriefing);
|
||||
sheepTakeDamageFromWater = getBoolean("mobs.sheep.takes-damage-from-water", sheepTakeDamageFromWater);
|
||||
sheepAlwaysDropExp = getBoolean("mobs.sheep.always-drop-exp", sheepAlwaysDropExp);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Mob head visibility percent
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 7422b01a63e395cb87f02a1a665f53b11755f5ee..bd0b864f7a1b029f9ebd242adbbe5575e8ce464d 100644
|
||||
index 7cc12e402e3b90a44bcd6d8c2a7607b7cf421bca..d9d4a12555d0d791c551944ecdd7beb20aa8d2c6 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1014,9 +1014,17 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1029,9 +1029,17 @@ public abstract class LivingEntity extends Entity {
|
||||
ItemStack itemstack = this.getItemBySlot(EquipmentSlot.HEAD);
|
||||
EntityType<?> entitytypes = entity.getType();
|
||||
|
||||
@@ -29,7 +29,7 @@ index 7422b01a63e395cb87f02a1a665f53b11755f5ee..bd0b864f7a1b029f9ebd242adbbe5575
|
||||
// Purpur start
|
||||
if (entity instanceof LivingEntity entityliving) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 86cdae20b7d5355d7757668defafe45462cf1d26..b75311013718fad79e07cb19dab32a83a560d377 100644
|
||||
index 3d63043d7d25b52ab57059e3777d9c66af013d42..1daafc12b18e6554972b3457afaa05be33e92734 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1239,6 +1239,7 @@ public class PurpurWorldConfig {
|
||||
@@ -48,7 +48,7 @@ index 86cdae20b7d5355d7757668defafe45462cf1d26..b75311013718fad79e07cb19dab32a83
|
||||
}
|
||||
|
||||
public boolean dolphinRidable = false;
|
||||
@@ -2331,6 +2333,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2319,6 +2321,7 @@ public class PurpurWorldConfig {
|
||||
public double skeletonMaxHealth = 20.0D;
|
||||
public boolean skeletonTakeDamageFromWater = false;
|
||||
public boolean skeletonAlwaysDropExp = false;
|
||||
@@ -56,7 +56,7 @@ index 86cdae20b7d5355d7757668defafe45462cf1d26..b75311013718fad79e07cb19dab32a83
|
||||
private void skeletonSettings() {
|
||||
skeletonRidable = getBoolean("mobs.skeleton.ridable", skeletonRidable);
|
||||
skeletonRidableInWater = getBoolean("mobs.skeleton.ridable-in-water", skeletonRidableInWater);
|
||||
@@ -2343,6 +2346,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2331,6 +2334,7 @@ public class PurpurWorldConfig {
|
||||
skeletonMaxHealth = getDouble("mobs.skeleton.attributes.max_health", skeletonMaxHealth);
|
||||
skeletonTakeDamageFromWater = getBoolean("mobs.skeleton.takes-damage-from-water", skeletonTakeDamageFromWater);
|
||||
skeletonAlwaysDropExp = getBoolean("mobs.skeleton.always-drop-exp", skeletonAlwaysDropExp);
|
||||
@@ -64,7 +64,7 @@ index 86cdae20b7d5355d7757668defafe45462cf1d26..b75311013718fad79e07cb19dab32a83
|
||||
}
|
||||
|
||||
public boolean skeletonHorseRidableInWater = true;
|
||||
@@ -2870,6 +2874,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2858,6 +2862,7 @@ public class PurpurWorldConfig {
|
||||
public boolean zombieBypassMobGriefing = false;
|
||||
public boolean zombieTakeDamageFromWater = false;
|
||||
public boolean zombieAlwaysDropExp = false;
|
||||
@@ -72,7 +72,7 @@ index 86cdae20b7d5355d7757668defafe45462cf1d26..b75311013718fad79e07cb19dab32a83
|
||||
private void zombieSettings() {
|
||||
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
|
||||
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
|
||||
@@ -2888,6 +2893,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2876,6 +2881,7 @@ public class PurpurWorldConfig {
|
||||
zombieBypassMobGriefing = getBoolean("mobs.zombie.bypass-mob-griefing", zombieBypassMobGriefing);
|
||||
zombieTakeDamageFromWater = getBoolean("mobs.zombie.takes-damage-from-water", zombieTakeDamageFromWater);
|
||||
zombieAlwaysDropExp = getBoolean("mobs.zombie.always-drop-exp", zombieAlwaysDropExp);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Allow void trading
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 1ae2b3ce635c6e4b3cdabddda253ec9c925d06cc..4ba091c3ecb1cf65839b91a459954545214ef15b 100644
|
||||
index 6c206c92d24b6202cfb5740c44a942451d73345a..029d8782ad1371dc95ba244d56b20a4801b004b7 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -2701,7 +2701,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -2702,7 +2702,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
// Spigot Start
|
||||
if (entity.getBukkitEntity() instanceof org.bukkit.inventory.InventoryHolder && (!(entity instanceof ServerPlayer) || entity.getRemovalReason() != Entity.RemovalReason.KILLED)) { // SPIGOT-6876: closeInventory clears death message
|
||||
// Paper start
|
||||
@@ -18,7 +18,7 @@ index 1ae2b3ce635c6e4b3cdabddda253ec9c925d06cc..4ba091c3ecb1cf65839b91a459954545
|
||||
}
|
||||
// Paper end
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index c4ffc47514f141353825f2e4b1db7647fa4520d4..235c264c0bb00e4fe4c9232c010453e31ff6dc79 100644
|
||||
index c982a4a287b7b9db5d043543e3a1451f004c7378..f52e6f16607c9f5a15896a0a32a2e49e50e91820 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -424,6 +424,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -22,10 +22,10 @@ index 35da78d79ee90acc69600adb78bc81ff75cee752..cf6f7c6c5754ab712e06a7bfb8c1ef8e
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 235c264c0bb00e4fe4c9232c010453e31ff6dc79..59b6ec7e2a44cee18da4dfdb43c2beb2da4163f2 100644
|
||||
index f52e6f16607c9f5a15896a0a32a2e49e50e91820..6d576d08dc39f09e2d941dd6e715199154337786 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -1990,6 +1990,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1984,6 +1984,8 @@ public class PurpurWorldConfig {
|
||||
public boolean phantomFlamesOnSwoop = false;
|
||||
public boolean phantomTakeDamageFromWater = false;
|
||||
public boolean phantomAlwaysDropExp = false;
|
||||
@@ -34,7 +34,7 @@ index 235c264c0bb00e4fe4c9232c010453e31ff6dc79..59b6ec7e2a44cee18da4dfdb43c2beb2
|
||||
private void phantomSettings() {
|
||||
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
|
||||
phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater);
|
||||
@@ -2032,6 +2034,13 @@ public class PurpurWorldConfig {
|
||||
@@ -2020,6 +2022,13 @@ public class PurpurWorldConfig {
|
||||
phantomFlamesOnSwoop = getBoolean("mobs.phantom.flames-on-swoop", phantomFlamesOnSwoop);
|
||||
phantomTakeDamageFromWater = getBoolean("mobs.phantom.takes-damage-from-water", phantomTakeDamageFromWater);
|
||||
phantomAlwaysDropExp = getBoolean("mobs.phantom.always-drop-exp", phantomAlwaysDropExp);
|
||||
|
||||
@@ -9,7 +9,7 @@ This patch adds a config option to allow the minimum demand to instead
|
||||
be configurable.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index b0674eeea341a725ed774c5de040fe173a6fb833..c985f302812be364c07866727c9d2c2714bec249 100644
|
||||
index 1d3e10d7cd27257e8fd83c3e882b05b9d4374c56..302c9b2c063013d8cbd01103e305f16d12f87d51 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -534,7 +534,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -40,10 +40,10 @@ index 8a9a701baabdaf066cd9b28c05430f673fcafb4e..17cc3237c7fc8ceda136b2371fabf6f0
|
||||
|
||||
public ItemStack assemble() {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 59b6ec7e2a44cee18da4dfdb43c2beb2da4163f2..56d1d2477cbf3eb89fc0cc8f59af76515c620719 100644
|
||||
index 6d576d08dc39f09e2d941dd6e715199154337786..07e61dbb279740711ac0ba624865a207c55118f0 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2668,6 +2668,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2656,6 +2656,7 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerTakeDamageFromWater = false;
|
||||
public boolean villagerAllowTrading = true;
|
||||
public boolean villagerAlwaysDropExp = false;
|
||||
@@ -51,7 +51,7 @@ index 59b6ec7e2a44cee18da4dfdb43c2beb2da4163f2..56d1d2477cbf3eb89fc0cc8f59af7651
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -2690,6 +2691,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2678,6 +2679,7 @@ public class PurpurWorldConfig {
|
||||
villagerTakeDamageFromWater = getBoolean("mobs.villager.takes-damage-from-water", villagerTakeDamageFromWater);
|
||||
villagerAllowTrading = getBoolean("mobs.villager.allow-trading", villagerAllowTrading);
|
||||
villagerAlwaysDropExp = getBoolean("mobs.villager.always-drop-exp", villagerAlwaysDropExp);
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Lobotomize stuck villagers
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index c985f302812be364c07866727c9d2c2714bec249..ace39b0585c67b2764d75ff9e64d132347157a51 100644
|
||||
index 302c9b2c063013d8cbd01103e305f16d12f87d51..c230faeece73b010ad3738e629a7adbc52a06df1 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -140,6 +140,8 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -95,10 +95,10 @@ index c985f302812be364c07866727c9d2c2714bec249..ace39b0585c67b2764d75ff9e64d1323
|
||||
if (this.assignProfessionWhenSpawned) {
|
||||
this.assignProfessionWhenSpawned = false;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java
|
||||
index f0b910df1ee471b4d72d97c6197ab14f2854976e..6ce32a52d621a0c2629568ea07e445f50160d97d 100644
|
||||
index 9220b1a7aa30ba59ac8dc6196859923b0675d8ec..3e820092c2b48c37b822a7afbb3f342340eed5c7 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java
|
||||
@@ -194,4 +194,11 @@ public class CraftVillager extends CraftAbstractVillager implements Villager {
|
||||
@@ -222,4 +222,11 @@ public class CraftVillager extends CraftAbstractVillager implements Villager {
|
||||
getHandle().getGossips().getReputations().clear();
|
||||
}
|
||||
// Paper end
|
||||
@@ -111,10 +111,10 @@ index f0b910df1ee471b4d72d97c6197ab14f2854976e..6ce32a52d621a0c2629568ea07e445f5
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 56d1d2477cbf3eb89fc0cc8f59af76515c620719..297e163a17ad30c0d221bafd3b37d8d272609e11 100644
|
||||
index 07e61dbb279740711ac0ba624865a207c55118f0..9368139cf5e5638c386a3c17bfad56f32f89029c 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2669,6 +2669,8 @@ public class PurpurWorldConfig {
|
||||
@@ -2657,6 +2657,8 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerAllowTrading = true;
|
||||
public boolean villagerAlwaysDropExp = false;
|
||||
public int villagerMinimumDemand = 0;
|
||||
@@ -123,7 +123,7 @@ index 56d1d2477cbf3eb89fc0cc8f59af76515c620719..297e163a17ad30c0d221bafd3b37d8d2
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -2692,6 +2694,17 @@ public class PurpurWorldConfig {
|
||||
@@ -2680,6 +2682,17 @@ public class PurpurWorldConfig {
|
||||
villagerAllowTrading = getBoolean("mobs.villager.allow-trading", villagerAllowTrading);
|
||||
villagerAlwaysDropExp = getBoolean("mobs.villager.always-drop-exp", villagerAlwaysDropExp);
|
||||
villagerMinimumDemand = getInt("mobs.villager.minimum-demand", villagerMinimumDemand);
|
||||
|
||||
@@ -17,10 +17,10 @@ index 385f3df7044e3f03f17c3ec7484b268004a3def9..90ba6a3abf62e4b272fada96b554ca31
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 297e163a17ad30c0d221bafd3b37d8d272609e11..542b4164df5069ef2e19a321af4a8c789a624e40 100644
|
||||
index 9368139cf5e5638c386a3c17bfad56f32f89029c..96e3a42d67db41460c024527fd00aa043c372451 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2671,6 +2671,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2659,6 +2659,7 @@ public class PurpurWorldConfig {
|
||||
public int villagerMinimumDemand = 0;
|
||||
public boolean villagerLobotomizeEnabled = false;
|
||||
public int villagerLobotomizeCheckInterval = 100;
|
||||
@@ -28,7 +28,7 @@ index 297e163a17ad30c0d221bafd3b37d8d272609e11..542b4164df5069ef2e19a321af4a8c78
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -2705,6 +2706,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2693,6 +2694,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
villagerLobotomizeEnabled = getBoolean("mobs.villager.lobotomize.enabled", villagerLobotomizeEnabled);
|
||||
villagerLobotomizeCheckInterval = getInt("mobs.villager.lobotomize.check-interval", villagerLobotomizeCheckInterval);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Config for mob last hurt by player time
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index bd0b864f7a1b029f9ebd242adbbe5575e8ce464d..4cdf6954c8f428df7ca91abd497416797ae246c5 100644
|
||||
index d9d4a12555d0d791c551944ecdd7beb20aa8d2c6..0717f59c94f9579e05ed2938e14567be495ad1b0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1440,13 +1440,13 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1455,13 +1455,13 @@ public abstract class LivingEntity extends Entity {
|
||||
}
|
||||
|
||||
if (entity1 instanceof net.minecraft.world.entity.player.Player) {
|
||||
@@ -25,7 +25,7 @@ index bd0b864f7a1b029f9ebd242adbbe5575e8ce464d..4cdf6954c8f428df7ca91abd49741679
|
||||
|
||||
if (entityliving != null && entityliving.getType() == EntityType.PLAYER) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index d726575f8df0176f2ee0b19d224d49d9ee3f248f..9e192788af0b2ae5479c2fae1239b10e1ff45351 100644
|
||||
index ea327baa5368afc27402d5863a6e238cea5be732..c56ea02591cae25834de4ca6045437ed59d95073 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -427,7 +427,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -38,7 +38,7 @@ index d726575f8df0176f2ee0b19d224d49d9ee3f248f..9e192788af0b2ae5479c2fae1239b10e
|
||||
// Paper end
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 485233cfa2a6414812ce7b67e761de6996beb589..bb8d288074da9a0316815cf9af862b2c52936549 100644
|
||||
index b43bd45d81773e5eefc492d0ec19b22b9a37c82a..636c6187c7bfca7546e0f385f89ab12222b3343f 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -145,6 +145,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Implement configurable search radius for villagers to spawn
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index ace39b0585c67b2764d75ff9e64d132347157a51..20668d53625ec88ba3eb2a655ad3f6bc4fb0fd0e 100644
|
||||
index c230faeece73b010ad3738e629a7adbc52a06df1..36dedae44ae743e1a5bc170c420e0a847bcb3a50 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -1075,6 +1075,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -1083,6 +1083,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
}
|
||||
|
||||
public void spawnGolemIfNeeded(ServerLevel world, long time, int requiredCount) {
|
||||
@@ -18,10 +18,10 @@ index ace39b0585c67b2764d75ff9e64d132347157a51..20668d53625ec88ba3eb2a655ad3f6bc
|
||||
AABB axisalignedbb = this.getBoundingBox().inflate(10.0D, 10.0D, 10.0D);
|
||||
List<Villager> list = world.getEntitiesOfClass(Villager.class, axisalignedbb);
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index d9f6345190d6efa330a680bc4d46962e47ad50f2..a3185ebf22677b829f966ddfb6f0bab43b0c9196 100644
|
||||
index 22bd65554e9bed262b4ca8bbe9afb1aab1c84bc8..a6fa2dc85de9db000cf462a3cff572cadac44a79 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2684,6 +2684,8 @@ public class PurpurWorldConfig {
|
||||
@@ -2672,6 +2672,8 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerLobotomizeEnabled = false;
|
||||
public int villagerLobotomizeCheckInterval = 100;
|
||||
public boolean villagerDisplayTradeItem = true;
|
||||
@@ -30,7 +30,7 @@ index d9f6345190d6efa330a680bc4d46962e47ad50f2..a3185ebf22677b829f966ddfb6f0bab4
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -2719,6 +2721,8 @@ public class PurpurWorldConfig {
|
||||
@@ -2707,6 +2709,8 @@ public class PurpurWorldConfig {
|
||||
villagerLobotomizeEnabled = getBoolean("mobs.villager.lobotomize.enabled", villagerLobotomizeEnabled);
|
||||
villagerLobotomizeCheckInterval = getInt("mobs.villager.lobotomize.check-interval", villagerLobotomizeCheckInterval);
|
||||
villagerDisplayTradeItem = getBoolean("mobs.villager.display-trade-item", villagerDisplayTradeItem);
|
||||
|
||||
@@ -94,10 +94,10 @@ index 51c548cd84bd83624fbff3f853a8050dc1e71ecd..2c85d71cfb486d30cb58b3378ebcdf55
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 867df5dba42a37589ec563fa0c6945e3b39151c9..9b90d6faa404e14265f189a594bbcea18de70e37 100644
|
||||
index e937e689a46ffedfc54400fade9750aa737f0ce9..f90f561b112e35579be997b387492890b1cdf80e 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2377,6 +2377,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2365,6 +2365,7 @@ public class PurpurWorldConfig {
|
||||
public boolean skeletonTakeDamageFromWater = false;
|
||||
public boolean skeletonAlwaysDropExp = false;
|
||||
public double skeletonHeadVisibilityPercent = 0.5D;
|
||||
@@ -105,7 +105,7 @@ index 867df5dba42a37589ec563fa0c6945e3b39151c9..9b90d6faa404e14265f189a594bbcea1
|
||||
private void skeletonSettings() {
|
||||
skeletonRidable = getBoolean("mobs.skeleton.ridable", skeletonRidable);
|
||||
skeletonRidableInWater = getBoolean("mobs.skeleton.ridable-in-water", skeletonRidableInWater);
|
||||
@@ -2390,6 +2391,7 @@ public class PurpurWorldConfig {
|
||||
@@ -2378,6 +2379,7 @@ public class PurpurWorldConfig {
|
||||
skeletonTakeDamageFromWater = getBoolean("mobs.skeleton.takes-damage-from-water", skeletonTakeDamageFromWater);
|
||||
skeletonAlwaysDropExp = getBoolean("mobs.skeleton.always-drop-exp", skeletonAlwaysDropExp);
|
||||
skeletonHeadVisibilityPercent = getDouble("mobs.skeleton.head-visibility-percent", skeletonHeadVisibilityPercent);
|
||||
|
||||
@@ -477,10 +477,10 @@ index 014255019ce3f22e0c8cf8f0a775669f909d18f4..6a11e522c5bd9042dcf89e2538d35444
|
||||
// Paper end - use set of chunks requiring updates, rather than iterating every single one loaded
|
||||
// Paper start - controlled flush for entity tracker packets
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a764ccfa948 100644
|
||||
index 029d8782ad1371dc95ba244d56b20a4801b004b7..7af1b6036fa05533c2e9801988dcf07b51c18f6f 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -686,7 +686,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -687,7 +687,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
this.updateSkyBrightness();
|
||||
this.tickTime();
|
||||
gameprofilerfiller.popPush("tickPending");
|
||||
@@ -489,7 +489,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
if (!this.isDebug()) {
|
||||
j = this.getGameTime();
|
||||
gameprofilerfiller.push("blockTicks");
|
||||
@@ -695,20 +695,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -696,20 +696,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
this.fluidTicks.tick(j, 65536, this::tickFluid);
|
||||
gameprofilerfiller.pop();
|
||||
}
|
||||
@@ -517,7 +517,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
this.handlingTick = false;
|
||||
gameprofilerfiller.pop();
|
||||
boolean flag = true || !this.players.isEmpty() || !this.getForcedChunks().isEmpty(); // CraftBukkit - this prevents entity cleanup, other issues on servers with no players
|
||||
@@ -719,7 +719,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -720,7 +720,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
|
||||
if (flag || this.emptyTime++ < 300) {
|
||||
gameprofilerfiller.push("entities");
|
||||
@@ -526,7 +526,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
if (this.dragonFight != null) {
|
||||
gameprofilerfiller.push("dragonFight");
|
||||
this.dragonFight.tick();
|
||||
@@ -727,7 +727,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -728,7 +728,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
|
||||
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
|
||||
@@ -535,7 +535,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
this.entityTickList.forEach((entity) -> {
|
||||
entity.activatedPriorityReset = false; // Pufferfish - DAB
|
||||
if (!entity.isRemoved()) {
|
||||
@@ -768,8 +768,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -769,8 +769,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -546,7 +546,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
gameprofilerfiller.pop();
|
||||
this.tickBlockEntities();
|
||||
}
|
||||
@@ -931,7 +931,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -932,7 +932,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
|
||||
// Paper start - optimise random block ticking
|
||||
gameprofilerfiller.popPush("randomTick");
|
||||
@@ -555,7 +555,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
if (randomTickSpeed > 0) {
|
||||
LevelChunkSection[] sections = chunk.getSections();
|
||||
int minSection = io.papermc.paper.util.WorldUtil.getMinSection(this);
|
||||
@@ -965,7 +965,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -966,7 +966,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
}
|
||||
// Paper end - optimise random block ticking
|
||||
@@ -564,7 +564,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
gameprofilerfiller.pop();
|
||||
}
|
||||
|
||||
@@ -1258,8 +1258,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1259,8 +1259,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
// Spigot end
|
||||
// Paper start- timings
|
||||
final boolean isActive = org.spigotmc.ActivationRange.checkIfActive(entity);
|
||||
@@ -575,7 +575,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
// Paper end - timings
|
||||
entity.setOldPosAndRot();
|
||||
ProfilerFiller gameprofilerfiller = this.getProfiler();
|
||||
@@ -1275,7 +1275,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1276,7 +1276,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
entity.postTick(); // CraftBukkit
|
||||
} else { entity.inactiveTick(); } // Paper - EAR 2
|
||||
this.getProfiler().pop();
|
||||
@@ -584,7 +584,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
Iterator iterator = entity.getPassengers().iterator();
|
||||
|
||||
while (iterator.hasNext()) {
|
||||
@@ -1298,8 +1298,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1299,8 +1299,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
if (passenger instanceof Player || this.entityTickList.contains(passenger)) {
|
||||
// Paper - EAR 2
|
||||
final boolean isActive = org.spigotmc.ActivationRange.checkIfActive(passenger);
|
||||
@@ -595,7 +595,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
// Paper end
|
||||
passenger.setOldPosAndRot();
|
||||
++passenger.tickCount;
|
||||
@@ -1329,7 +1329,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1330,7 +1330,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
this.tickPassenger(passenger, entity2);
|
||||
}
|
||||
|
||||
@@ -604,7 +604,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
}
|
||||
} else {
|
||||
passenger.stopRiding();
|
||||
@@ -1349,14 +1349,14 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1350,14 +1350,14 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
org.bukkit.Bukkit.getPluginManager().callEvent(new org.bukkit.event.world.WorldSaveEvent(getWorld()));
|
||||
}
|
||||
|
||||
@@ -622,7 +622,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
|
||||
// Copied from save()
|
||||
// CraftBukkit start - moved from MinecraftServer.saveChunks
|
||||
@@ -1368,7 +1368,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1369,7 +1369,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
this.convertable.saveDataTag(this.server.registryHolder, this.serverLevelData, this.server.getPlayerList().getSingleplayerData());
|
||||
}
|
||||
// CraftBukkit end
|
||||
@@ -631,7 +631,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
}
|
||||
// Paper end
|
||||
|
||||
@@ -1382,7 +1382,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1383,7 +1383,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
|
||||
if (!savingDisabled) {
|
||||
org.bukkit.Bukkit.getPluginManager().callEvent(new org.bukkit.event.world.WorldSaveEvent(getWorld())); // CraftBukkit
|
||||
@@ -640,7 +640,7 @@ index 4ba091c3ecb1cf65839b91a459954545214ef15b..c94246d19a0d2f2a87f74d6ca4b14a76
|
||||
if (progressListener != null) {
|
||||
progressListener.progressStartNoAbort(Component.translatable("menu.savingLevel"));
|
||||
}
|
||||
@@ -1392,11 +1392,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1393,11 +1393,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
progressListener.progressStage(Component.translatable("menu.savingChunks"));
|
||||
}
|
||||
|
||||
|
||||
@@ -538,10 +538,10 @@ index 6a11e522c5bd9042dcf89e2538d354448e501fbe..3bee0bfc481ffe3ea1860c5b23ad2efb
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941ad885a78 100644
|
||||
index 7af1b6036fa05533c2e9801988dcf07b51c18f6f..4921c791c7900210e6dd96e03256ea529fd1d03d 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -653,12 +653,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -654,12 +654,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
}
|
||||
// Paper end - optimise checkDespawn
|
||||
@@ -557,7 +557,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
this.advanceWeatherCycle();
|
||||
int i = this.getGameRules().getInt(GameRules.RULE_PLAYERS_SLEEPING_PERCENTAGE);
|
||||
long j;
|
||||
@@ -685,32 +685,32 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -686,32 +686,32 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
|
||||
this.updateSkyBrightness();
|
||||
this.tickTime();
|
||||
@@ -598,7 +598,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
boolean flag = true || !this.players.isEmpty() || !this.getForcedChunks().isEmpty(); // CraftBukkit - this prevents entity cleanup, other issues on servers with no players
|
||||
|
||||
if (flag) {
|
||||
@@ -718,12 +718,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -719,12 +719,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
|
||||
if (flag || this.emptyTime++ < 300) {
|
||||
@@ -614,7 +614,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
}
|
||||
|
||||
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
|
||||
@@ -734,9 +734,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -735,9 +735,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
if (false && this.shouldDiscardEntity(entity)) { // CraftBukkit - We prevent spawning in general, so this butchering is not needed
|
||||
entity.discard();
|
||||
} else {
|
||||
@@ -626,7 +626,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
if (true || this.chunkSource.chunkMap.getDistanceManager().inEntityTickingRange(entity.chunkPosition().toLong())) { // Paper - now always true if in the ticking list
|
||||
Entity entity1 = entity.getVehicle();
|
||||
|
||||
@@ -748,7 +748,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -749,7 +749,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
entity.stopRiding();
|
||||
}
|
||||
|
||||
@@ -635,7 +635,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
// Pufferfish start - copied from this.guardEntityTick
|
||||
try {
|
||||
this.tickNonPassenger(entity); // Pufferfish - changed
|
||||
@@ -763,22 +763,22 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -764,22 +764,22 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
// Paper end
|
||||
}
|
||||
// Pufferfish end
|
||||
@@ -663,7 +663,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -860,9 +860,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -861,9 +861,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
boolean flag = this.isRaining();
|
||||
int j = chunkcoordintpair.getMinBlockX();
|
||||
int k = chunkcoordintpair.getMinBlockZ();
|
||||
@@ -675,7 +675,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
final BlockPos.MutableBlockPos blockposition = this.chunkTickMutablePosition; // Paper - use mutable to reduce allocation rate, final to force compile fail on change
|
||||
|
||||
if (!this.paperConfig().environment.disableThunder && flag && this.isThundering() && this.spigotConfig.thunderChance > 0 && /*this.random.nextInt(this.spigotConfig.thunderChance) == 0 &&*/ chunk.shouldDoLightning(this.random)) { // Spigot // Paper - disable thunder // Pufferfish - replace random with shouldDoLightning
|
||||
@@ -894,7 +894,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -895,7 +895,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -684,7 +684,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
if (!this.paperConfig().environment.disableIceAndSnow && (this.currentIceAndSnowTick++ & 15) == 0) { // Paper - Disable ice and snow // Paper - optimise random ticking // Pufferfish - optimize further random ticking
|
||||
// Paper start - optimise chunk ticking
|
||||
this.getRandomBlockPosition(j, 0, k, 15, blockposition);
|
||||
@@ -930,7 +930,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -931,7 +931,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
|
||||
// Paper start - optimise random block ticking
|
||||
@@ -693,7 +693,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
//timings.chunkTicksBlocks.startTiming(); // Paper // Purpur
|
||||
if (randomTickSpeed > 0) {
|
||||
LevelChunkSection[] sections = chunk.getSections();
|
||||
@@ -966,7 +966,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -967,7 +967,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
// Paper end - optimise random block ticking
|
||||
//timings.chunkTicksBlocks.stopTiming(); // Paper // Purpur
|
||||
@@ -702,7 +702,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
}
|
||||
|
||||
public Optional<BlockPos> findLightningRod(BlockPos pos) {
|
||||
@@ -1262,19 +1262,19 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1263,19 +1263,19 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
//try { // Purpur
|
||||
// Paper end - timings
|
||||
entity.setOldPosAndRot();
|
||||
@@ -727,7 +727,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
//} finally { timer.stopTiming(); } // Paper - timings // Purpur
|
||||
Iterator iterator = entity.getPassengers().iterator();
|
||||
|
||||
@@ -1303,12 +1303,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1304,12 +1304,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
// Paper end
|
||||
passenger.setOldPosAndRot();
|
||||
++passenger.tickCount;
|
||||
@@ -744,7 +744,7 @@ index c94246d19a0d2f2a87f74d6ca4b14a764ccfa948..2833d47fd1e8913d2160cbf48f34e941
|
||||
// Paper start - EAR 2
|
||||
if (isActive) {
|
||||
passenger.rideTick();
|
||||
@@ -1320,7 +1320,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1321,7 +1321,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
vehicle.positionRider(passenger);
|
||||
}
|
||||
// Paper end - EAR 2
|
||||
@@ -1139,10 +1139,10 @@ index bf55ce8f12650037fab0a2133cc1c047a891b5bb..0981acb2a87bb2535a0b447c4f23e14b
|
||||
}
|
||||
} else {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index cd70cf663f0fb2ddcbd637e8260dc994f3be258b..d0c8c39ff78637de14bfdfef78d74f4035bfb6a4 100644
|
||||
index 0717f59c94f9579e05ed2938e14567be495ad1b0..45f11b6ae25a2f509b788c185dcf9cf33ef2271e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -396,7 +396,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -397,7 +397,7 @@ public abstract class LivingEntity extends Entity {
|
||||
}
|
||||
|
||||
super.baseTick();
|
||||
@@ -1151,7 +1151,7 @@ index cd70cf663f0fb2ddcbd637e8260dc994f3be258b..d0c8c39ff78637de14bfdfef78d74f40
|
||||
if (this.fireImmune() || this.level.isClientSide) {
|
||||
this.clearFire();
|
||||
}
|
||||
@@ -500,7 +500,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -501,7 +501,7 @@ public abstract class LivingEntity extends Entity {
|
||||
this.yHeadRotO = this.yHeadRot;
|
||||
this.yRotO = this.getYRot();
|
||||
this.xRotO = this.getXRot();
|
||||
@@ -1160,7 +1160,7 @@ index cd70cf663f0fb2ddcbd637e8260dc994f3be258b..d0c8c39ff78637de14bfdfef78d74f40
|
||||
}
|
||||
|
||||
public boolean canSpawnSoulSpeedParticle() {
|
||||
@@ -3090,10 +3090,10 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3105,10 +3105,10 @@ public abstract class LivingEntity extends Entity {
|
||||
}
|
||||
|
||||
this.run += (f3 - this.run) * 0.3F;
|
||||
@@ -1174,7 +1174,7 @@ index cd70cf663f0fb2ddcbd637e8260dc994f3be258b..d0c8c39ff78637de14bfdfef78d74f40
|
||||
|
||||
// Paper start - stop large pitch and yaw changes from crashing the server
|
||||
this.yRotO += Math.round((this.getYRot() - this.yRotO) / 360.0F) * 360.0F;
|
||||
@@ -3105,7 +3105,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3120,7 +3120,7 @@ public abstract class LivingEntity extends Entity {
|
||||
this.yHeadRotO += Math.round((this.yHeadRot - this.yHeadRotO) / 360.0F) * 360.0F;
|
||||
// Paper end
|
||||
|
||||
@@ -1183,7 +1183,7 @@ index cd70cf663f0fb2ddcbd637e8260dc994f3be258b..d0c8c39ff78637de14bfdfef78d74f40
|
||||
this.animStep += f2;
|
||||
if (this.isFallFlying()) {
|
||||
++this.fallFlyTicks;
|
||||
@@ -3398,19 +3398,19 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3413,19 +3413,19 @@ public abstract class LivingEntity extends Entity {
|
||||
}
|
||||
|
||||
this.setDeltaMovement(d4, d5, d6);
|
||||
@@ -1208,7 +1208,7 @@ index cd70cf663f0fb2ddcbd637e8260dc994f3be258b..d0c8c39ff78637de14bfdfef78d74f40
|
||||
if (this.jumping && this.isAffectedByFluids()) {
|
||||
double d7;
|
||||
|
||||
@@ -3437,8 +3437,8 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3452,8 +3452,8 @@ public abstract class LivingEntity extends Entity {
|
||||
this.noJumpDelay = 0;
|
||||
}
|
||||
|
||||
@@ -1219,7 +1219,7 @@ index cd70cf663f0fb2ddcbd637e8260dc994f3be258b..d0c8c39ff78637de14bfdfef78d74f40
|
||||
this.xxa *= 0.98F;
|
||||
this.zza *= 0.98F;
|
||||
this.updateFallFlying();
|
||||
@@ -3447,8 +3447,8 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3462,8 +3462,8 @@ public abstract class LivingEntity extends Entity {
|
||||
// SpigotTimings.timerEntityAIMove.startTiming(); // Spigot // Paper
|
||||
this.travel(new Vec3((double) this.xxa, (double) this.yya, (double) this.zza));
|
||||
// SpigotTimings.timerEntityAIMove.stopTiming(); // Spigot // Paper
|
||||
@@ -1230,7 +1230,7 @@ index cd70cf663f0fb2ddcbd637e8260dc994f3be258b..d0c8c39ff78637de14bfdfef78d74f40
|
||||
boolean flag1 = this.getType().is(EntityTypeTags.FREEZE_HURTS_EXTRA_TYPES);
|
||||
int i;
|
||||
|
||||
@@ -3468,15 +3468,15 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3483,15 +3483,15 @@ public abstract class LivingEntity extends Entity {
|
||||
this.hurt(DamageSource.FREEZE, (float) i);
|
||||
}
|
||||
|
||||
@@ -1638,7 +1638,7 @@ index df55f9a9f684b474a3bff0977069471727b242f4..5dab2eea9e9c50e41c7971daefc3bbe8
|
||||
if ((this.tickCount + this.getId()) % 120 == 0) {
|
||||
Warden.applyDarknessAround(worldserver, this.position(), this, 20);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index 20668d53625ec88ba3eb2a655ad3f6bc4fb0fd0e..b1a4b83fc248ae2f0a8852e60f9cd4486535390a 100644
|
||||
index 36dedae44ae743e1a5bc170c420e0a847bcb3a50..4c98f1dc73bdce5c87f77f27507f1ed1f710243d 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -337,7 +337,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
|
||||
@@ -18,10 +18,10 @@ index e542407894f58fb8c0339a7a6d2e7b2cb5891eb4..0cfe5cb3ce0ac8554bbdb68c66583693
|
||||
org.bukkit.event.entity.EntityShootBowEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callEntityShootBowEvent(this, this.getMainHandItem(), entityarrow.getPickupItem(), entityarrow, net.minecraft.world.InteractionHand.MAIN_HAND, 0.8F, true); // Paper
|
||||
if (event.isCancelled()) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 13c7cdbe4a08b3b452d6e53275ada5c81ae401b5..2cd4b04bf1820b28050f3af492186135b9b69712 100644
|
||||
index 38555330148ee325645d23f0bb39901f5f96495a..5461424bb336a0822af97c6b7ad128482196e68a 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -2397,6 +2397,8 @@ public class PurpurWorldConfig {
|
||||
@@ -2385,6 +2385,8 @@ public class PurpurWorldConfig {
|
||||
public boolean skeletonAlwaysDropExp = false;
|
||||
public double skeletonHeadVisibilityPercent = 0.5D;
|
||||
public int skeletonFeedWitherRoses = 0;
|
||||
@@ -30,7 +30,7 @@ index 13c7cdbe4a08b3b452d6e53275ada5c81ae401b5..2cd4b04bf1820b28050f3af492186135
|
||||
private void skeletonSettings() {
|
||||
skeletonRidable = getBoolean("mobs.skeleton.ridable", skeletonRidable);
|
||||
skeletonRidableInWater = getBoolean("mobs.skeleton.ridable-in-water", skeletonRidableInWater);
|
||||
@@ -2411,6 +2413,18 @@ public class PurpurWorldConfig {
|
||||
@@ -2399,6 +2401,18 @@ public class PurpurWorldConfig {
|
||||
skeletonAlwaysDropExp = getBoolean("mobs.skeleton.always-drop-exp", skeletonAlwaysDropExp);
|
||||
skeletonHeadVisibilityPercent = getDouble("mobs.skeleton.head-visibility-percent", skeletonHeadVisibilityPercent);
|
||||
skeletonFeedWitherRoses = getInt("mobs.skeleton.feed-wither-roses", skeletonFeedWitherRoses);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Milk Keeps Beneficial Effects
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index d0c8c39ff78637de14bfdfef78d74f4035bfb6a4..61a162007b1773ca707d88972d0fcda2c98c5614 100644
|
||||
index 45f11b6ae25a2f509b788c185dcf9cf33ef2271e..f23829690d2be20af50256e4d985e3e342415d54 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1095,6 +1095,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1110,6 +1110,7 @@ public abstract class LivingEntity extends Entity {
|
||||
for (flag = false; iterator.hasNext(); flag = true) {
|
||||
// CraftBukkit start
|
||||
MobEffectInstance effect = (MobEffectInstance) iterator.next();
|
||||
@@ -30,7 +30,7 @@ index 558884b68263f4fd89e5b7e6226faa2b268168da..cdbd13212b366d9601d4b100fde43cef
|
||||
this.goalSelector.addGoal(1, new TradeWithPlayerGoal(this));
|
||||
this.goalSelector.addGoal(1, new AvoidEntityGoal<>(this, Zombie.class, 8.0F, 0.5D, 0.5D));
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 77460b3c96f1b595bc398afe6507a0104d24b673..33d7c132b19095598eb681da8487a072f1dccab6 100644
|
||||
index 85a6092ea0ab280506f04ac0f19d0f05d6d6dfd2..7a187be41ad0024cb9c515fc0bab249051be4b9d 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -131,6 +131,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -50,10 +50,10 @@ index 0981acb2a87bb2535a0b447c4f23e14befcc81d3..a9a915efb5b270b3f13cb7493f59b36d
|
||||
} catch (Throwable throwable) {
|
||||
CrashReport crashreport = CrashReport.forThrowable(throwable, "Loading entity NBT");
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
index 403085673b87291799538f4f3aad2dfe65b35660..10208b3be330e8a02a4b248a3861ba978e64aab4 100644
|
||||
index e08cbcb9230889cc86b0726d67038e1cf9914c87..ede4d01f59de68326c65bb1b08ce29ddb6fc94d5 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
@@ -1415,5 +1415,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
@@ -1421,5 +1421,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
public boolean isRidableInWater() {
|
||||
return getHandle().rideableUnderWater();
|
||||
}
|
||||
@@ -70,10 +70,10 @@ index 403085673b87291799538f4f3aad2dfe65b35660..10208b3be330e8a02a4b248a3861ba97
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
|
||||
index f3bf5199bc7ddf8a3d0dc67a184e7690efa659eb..1ef853dafeb62d77936a3561522e10885334c23b 100644
|
||||
index 3023cadd21947389158f1bfaf9fe84fd0ea80456..2042d65e9470fca2c35e492d2f8bb4dbf11813cf 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
|
||||
@@ -170,9 +170,14 @@ public class CraftItem extends CraftEntity implements Item {
|
||||
@@ -182,9 +182,14 @@ public class CraftItem extends CraftEntity implements Item {
|
||||
return item.immuneToExplosion;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user