mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
first 50 patches \o/
This commit is contained in:
@@ -5,10 +5,10 @@ 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 757aeb4b715b17d3f239b495899b0d8874811db8..5e9be6af06d02ae46aa51ec24771a92cce443652 100644
|
||||
index 4454f9b41c3ebeb98d71b9b891e657b4a80c1601..1e274b44ab975afb522874f073469bd10a68a404 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -163,7 +163,7 @@ import org.bukkit.plugin.PluginManager;
|
||||
@@ -168,7 +168,7 @@ import org.bukkit.plugin.PluginManager;
|
||||
// CraftBukkit end
|
||||
|
||||
public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess, CommandSource, ScoreHolder {
|
||||
@@ -34,18 +34,18 @@ index aa76a24421cdb3908a3544d92eb3d1e3c2ebedc4..8211c152e6f4232e82e452b08047e457
|
||||
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 8623501c6f6567d146f9314f151629b5c25af289..0b542d2cb370b4ca9d04256264c8e8592743aa2f 100644
|
||||
index fcc73ac45c963bd18f1658149295c672598f3ddd..8f9756736b08fbaa78b7cff9fa78657c9877e89d 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -301,6 +301,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.lastClimbablePos = Optional.empty();
|
||||
@@ -314,6 +314,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.activeLocationDependentEnchantments = new Reference2ObjectArrayMap();
|
||||
this.appliedScale = 1.0F;
|
||||
this.attributes = new AttributeMap(DefaultAttributes.getSupplier(type), this); // Purpur
|
||||
+ this.initAttributes(); // Purpur
|
||||
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());
|
||||
@@ -315,6 +316,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -328,6 +329,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.brain = this.makeBrain(new Dynamic(dynamicopsnbt, (Tag) dynamicopsnbt.createMap((Map) ImmutableMap.of(dynamicopsnbt.createString("memories"), (Tag) dynamicopsnbt.emptyMap()))));
|
||||
}
|
||||
|
||||
@@ -78,10 +78,10 @@ index c4a09778ca6bf5c15b588234bcadec3496017e3d..49adf3f230fa34289a2ce09a9d829f5d
|
||||
public void readAdditionalSaveData(CompoundTag nbt) {
|
||||
super.readAdditionalSaveData(nbt);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Bee.java b/src/main/java/net/minecraft/world/entity/animal/Bee.java
|
||||
index 4b84cf76d052112e00cd13c330182abfbe618820..ae4b53f4cdd78368deb7d510be4936ffefce4d9c 100644
|
||||
index f7ff98245583ab471ce1fa2f84f4684e195cdacc..3a7e413ba17901ed8e4ef0299555305c62f0d303 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Bee.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Bee.java
|
||||
@@ -467,6 +467,11 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal {
|
||||
@@ -478,6 +478,11 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -94,10 +94,10 @@ index 4b84cf76d052112e00cd13c330182abfbe618820..ae4b53f4cdd78368deb7d510be4936ff
|
||||
public int getRemainingPersistentAngerTime() {
|
||||
return (Integer) this.entityData.get(Bee.DATA_REMAINING_ANGER_TIME);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Cat.java b/src/main/java/net/minecraft/world/entity/animal/Cat.java
|
||||
index 3826c794ddde6b915e233e2d0395557e3ea867e0..7930e9735abf8357df737798e80b08295c2e06ec 100644
|
||||
index 07f0ca108d515df1ff97ba79265bbf2c8bfbc8a5..5d89b2c9bd6ee2d0d5176c93988b97ff2e913e83 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Cat.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Cat.java
|
||||
@@ -129,6 +129,13 @@ public class Cat extends TamableAnimal implements VariantHolder<Holder<CatVarian
|
||||
@@ -128,6 +128,13 @@ public class Cat extends TamableAnimal implements VariantHolder<Holder<CatVarian
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -112,7 +112,7 @@ index 3826c794ddde6b915e233e2d0395557e3ea867e0..7930e9735abf8357df737798e80b0829
|
||||
return ((CatVariant) this.getVariant().value()).texture();
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Chicken.java b/src/main/java/net/minecraft/world/entity/animal/Chicken.java
|
||||
index 3e335383a28b510c779bfbf2b916653a25c6d43b..a7c76e1d89f54f0dc3b27a8a8db168ea4570bf60 100644
|
||||
index 2af1bab53530bcf0e06fe6ed5577880f019f6c22..ca213cb0b8618b85c67066236eaba87c0439376f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Chicken.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Chicken.java
|
||||
@@ -71,6 +71,11 @@ public class Chicken extends Animal {
|
||||
@@ -160,7 +160,7 @@ index 8c6bda1ed0408fa1c7cc772097159410443b7fae..478663c16a5763dda9a6c3edbafc843b
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java
|
||||
index 3af2017a4b860992a6db88edec3624fcb9884ae1..4f294b3ecf061f34046b52bf2b6a3d0ff1ed347b 100644
|
||||
index df68b516576f0984d3b18972114a1af247f0a2ad..e60464efd9986e1cf857d8595b13535df7ffc7b1 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java
|
||||
@@ -157,6 +157,11 @@ public class Dolphin extends WaterAnimal {
|
||||
@@ -176,7 +176,7 @@ index 3af2017a4b860992a6db88edec3624fcb9884ae1..4f294b3ecf061f34046b52bf2b6a3d0f
|
||||
@Override
|
||||
public SpawnGroupData finalizeSpawn(ServerLevelAccessor world, DifficultyInstance difficulty, MobSpawnType spawnReason, @Nullable SpawnGroupData entityData) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Fox.java b/src/main/java/net/minecraft/world/entity/animal/Fox.java
|
||||
index 935dff4d167d8b6ef4b7cdc95bf000a2ce761f92..8666d82775570b812d5bdd80336c8e14db6ddf47 100644
|
||||
index d23566a00226d99a4309b2b8adf49e20c1c5f19d..473c857b83b87d824800eb91b2019bcf106189ae 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Fox.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Fox.java
|
||||
@@ -183,6 +183,11 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
|
||||
@@ -192,10 +192,10 @@ index 935dff4d167d8b6ef4b7cdc95bf000a2ce761f92..8666d82775570b812d5bdd80336c8e14
|
||||
protected void defineSynchedData(SynchedEntityData.Builder builder) {
|
||||
super.defineSynchedData(builder);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/IronGolem.java b/src/main/java/net/minecraft/world/entity/animal/IronGolem.java
|
||||
index 4cc9138201b08aff8bb47720c6fe1e3447f03967..2919d055e2136a956aa038bd0bf4c1a2ff5afa2f 100644
|
||||
index 1cecb12d9c9958239a71a8599fcd787d07953c76..9ea96c02d08b342b42b5600acc703be359023dbe 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/IronGolem.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/IronGolem.java
|
||||
@@ -76,6 +76,11 @@ public class IronGolem extends AbstractGolem implements NeutralMob {
|
||||
@@ -77,6 +77,11 @@ public class IronGolem extends AbstractGolem implements NeutralMob {
|
||||
public boolean isControllable() {
|
||||
return level().purpurConfig.ironGolemControllable;
|
||||
}
|
||||
@@ -224,7 +224,7 @@ index 11944ee34fc7e3e5551b9e18a563164f96898a54..b47dddb2fc6058a90665ccbd362088d9
|
||||
public float getWalkTargetValue(BlockPos pos, LevelReader world) {
|
||||
return world.getBlockState(pos.below()).is(Blocks.MYCELIUM) ? 10.0F : world.getPathfindingCostFromLightLevels(pos);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Ocelot.java b/src/main/java/net/minecraft/world/entity/animal/Ocelot.java
|
||||
index 2b074f68c1be2ff591543685bbb4e7ea1c7784f8..31f3982359a00f55a7fc053becc4043dcf423c50 100644
|
||||
index 0083119b44ef10e8ebc4414828f0d5fd6f68a830..0ef3fee057d7dd0b5d9d4a38953617bac3f49c7b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Ocelot.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Ocelot.java
|
||||
@@ -83,6 +83,11 @@ public class Ocelot extends Animal {
|
||||
@@ -240,10 +240,10 @@ index 2b074f68c1be2ff591543685bbb4e7ea1c7784f8..31f3982359a00f55a7fc053becc4043d
|
||||
return (Boolean) this.entityData.get(Ocelot.DATA_TRUSTING);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Panda.java b/src/main/java/net/minecraft/world/entity/animal/Panda.java
|
||||
index 5f9b7ae2ed4acff0fa7cfee07a29a28b5c0d67f8..d2410da0b453e0128ff8b00956cae89cabff1d5d 100644
|
||||
index fff8abfe14be823867aa9bd145146763cfe83148..0fd0358d287604d0ff1f52f0c71633586d100e3e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Panda.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Panda.java
|
||||
@@ -146,6 +146,12 @@ public class Panda extends Animal {
|
||||
@@ -147,6 +147,12 @@ public class Panda extends Animal {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -255,8 +255,8 @@ index 5f9b7ae2ed4acff0fa7cfee07a29a28b5c0d67f8..d2410da0b453e0128ff8b00956cae89c
|
||||
+
|
||||
@Override
|
||||
public boolean canTakeItem(ItemStack stack) {
|
||||
EquipmentSlot enumitemslot = Mob.getEquipmentSlotForItem(stack);
|
||||
@@ -660,7 +666,10 @@ public class Panda extends Animal {
|
||||
EquipmentSlot enumitemslot = this.getEquipmentSlotForItem(stack);
|
||||
@@ -665,7 +671,10 @@ public class Panda extends Animal {
|
||||
|
||||
public void setAttributes() {
|
||||
if (this.isWeak()) {
|
||||
@@ -269,7 +269,7 @@ index 5f9b7ae2ed4acff0fa7cfee07a29a28b5c0d67f8..d2410da0b453e0128ff8b00956cae89c
|
||||
|
||||
if (this.isLazy()) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Parrot.java b/src/main/java/net/minecraft/world/entity/animal/Parrot.java
|
||||
index 12200cca54304d567a1880527a49f3e26ad08c7b..04507e05b499e536faa3c55179bb91913f7cda81 100644
|
||||
index 0549fafbd6e76cf1b0d4e56e4fc745c4773f4c5d..17983481386709110b7c4749ec8432866454492d 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Parrot.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Parrot.java
|
||||
@@ -186,6 +186,11 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
|
||||
@@ -285,7 +285,7 @@ index 12200cca54304d567a1880527a49f3e26ad08c7b..04507e05b499e536faa3c55179bb9191
|
||||
@Override
|
||||
public SpawnGroupData finalizeSpawn(ServerLevelAccessor world, DifficultyInstance difficulty, MobSpawnType spawnReason, @Nullable SpawnGroupData entityData) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Pig.java b/src/main/java/net/minecraft/world/entity/animal/Pig.java
|
||||
index 7d2579748fd182b89667edb2eb3ea65b195e2001..a365573c5c5e640f165701bc79f7c605674c5709 100644
|
||||
index a6550df2eb2ccf0f5cb2cee49b996a2457c4c142..0f7e77e4f72be611a34ebe00d9979179519c54d9 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Pig.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Pig.java
|
||||
@@ -81,6 +81,11 @@ public class Pig extends Animal implements ItemSteerable, Saddleable {
|
||||
@@ -301,7 +301,7 @@ index 7d2579748fd182b89667edb2eb3ea65b195e2001..a365573c5c5e640f165701bc79f7c605
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/PolarBear.java b/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
index d97314380b69ea2ad83b86c0f1bcaaccd4a1644f..00afde0ec4811992aac306a42d473026b7e7e468 100644
|
||||
index 5aeeb7b57a37ea49a28b2e244fb99a78320ed006..9bb4fd13e3c60ed889f4acd941b48922c9a4e8df 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
@@ -93,6 +93,11 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
@@ -333,10 +333,10 @@ index d75016647c513841358d08e5931821ecf8c21c2a..0682df1037e23068c715f7bc06f1dc46
|
||||
protected void defineSynchedData(SynchedEntityData.Builder builder) {
|
||||
super.defineSynchedData(builder);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
||||
index ba408a4195e03b484f143fbe66d5d3b13ebb8f11..9eb1158213064ddb37ae76e445b5861b963a1f55 100644
|
||||
index ee13da112fb4f9b4f8543cd72485d39d2450b9e5..826484123d864172a73e3d0d6e16923533748ea1 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
||||
@@ -137,6 +137,11 @@ public class Rabbit extends Animal implements VariantHolder<Rabbit.Variant> {
|
||||
@@ -140,6 +140,11 @@ public class Rabbit extends Animal implements VariantHolder<Rabbit.Variant> {
|
||||
}
|
||||
wasOnGround = onGround;
|
||||
}
|
||||
@@ -365,10 +365,10 @@ index 87c442fb198cad8671ad1419e589a5a67c4fdca8..742805994f29a18af444912b10af631d
|
||||
public int getMaxSchoolSize() {
|
||||
return 5;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Sheep.java b/src/main/java/net/minecraft/world/entity/animal/Sheep.java
|
||||
index 7c1da46554aefde8e5e2b33a3644c9cbd771d7bc..b68886cc72d3055e7745fe4a955192bbad90dc13 100644
|
||||
index c70c78d7aa046995e77eadf348d434bd131c2380..90dff2e658e8b77d37952080d389e1f2db47264f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Sheep.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Sheep.java
|
||||
@@ -134,6 +134,11 @@ public class Sheep extends Animal implements Shearable {
|
||||
@@ -132,6 +132,11 @@ public class Sheep extends Animal implements Shearable {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -397,10 +397,10 @@ index d51b486afb83bf3e12046ed5e61e73eec5bd7c7c..a54893d51cc1ce204e59a6ffe8b84228
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HasRider(this)); // Purpur
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Squid.java b/src/main/java/net/minecraft/world/entity/animal/Squid.java
|
||||
index 37402f7df48f04a6df2211e079519ed95d3735bc..e38416189d9dc72f0b5951a1f6430dbc4578c422 100644
|
||||
index fddd8693858f9b1d15b0fddeacc030339ac39c0d..eb85356f0e2d1dc2eeecb30a36f88df900eb5caa 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Squid.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Squid.java
|
||||
@@ -68,6 +68,11 @@ public class Squid extends WaterAnimal {
|
||||
@@ -67,6 +67,11 @@ public class Squid extends WaterAnimal {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -429,7 +429,7 @@ index 18dcb67d246b63637d8c948b6c3f48c58d71c339..327b1805d9d4069212a8772ff189c9ab
|
||||
return "entity.minecraft.tropical_fish.predefined." + variant;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Turtle.java b/src/main/java/net/minecraft/world/entity/animal/Turtle.java
|
||||
index 4742d90ca38c1d8034b0cfcf7f336e225fade197..b8dcf3d632c79585ec7e9f50fa040fa9fac5d7c5 100644
|
||||
index 960eaebcb12d32bc51026c48e4b5e09effb66dda..d24697dc1e3cdc5eb61632935e81e25b1e341287 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Turtle.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Turtle.java
|
||||
@@ -104,6 +104,11 @@ public class Turtle extends Animal {
|
||||
@@ -442,13 +442,13 @@ index 4742d90ca38c1d8034b0cfcf7f336e225fade197..b8dcf3d632c79585ec7e9f50fa040fa9
|
||||
+ }
|
||||
+
|
||||
public void setHomePos(BlockPos pos) {
|
||||
this.entityData.set(Turtle.HOME_POS, pos.immutable()); // Paper - called with mutablepos...
|
||||
this.entityData.set(Turtle.HOME_POS, 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 92cc8a9b033052d5f510792d916c60cb2b90f07c..3235ed40d502722e888656776ba1a218f198f53e 100644
|
||||
index 1ae38914582cfb17da882304c8bcba84a7793f79..81ca20878d552d9b674c638dbd8cdebe9e666ec5 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -146,6 +146,11 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -148,6 +148,11 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -461,10 +461,10 @@ index 92cc8a9b033052d5f510792d916c60cb2b90f07c..3235ed40d502722e888656776ba1a218
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(1, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
index 921b545d1abe74b8301dbd56e39b254a14817f77..2c4a353c86521bf3018cd17748c8cb29330732d2 100644
|
||||
index 6af72246e7f9bb845a497ef0f3394e634996fd40..b7ea18861b4516a4895afee2551e5848598d8e8b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
@@ -92,6 +92,11 @@ public class Armadillo extends Animal {
|
||||
@@ -93,6 +93,11 @@ public class Armadillo extends Animal {
|
||||
public boolean isControllable() {
|
||||
return level().purpurConfig.armadilloControllable;
|
||||
}
|
||||
@@ -477,10 +477,10 @@ index 921b545d1abe74b8301dbd56e39b254a14817f77..2c4a353c86521bf3018cd17748c8cb29
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
|
||||
index 045ac081120f65987251d04d1522a5b7197e1d88..414ff28670c3d36dc78e3df4d39b6d4eb3ec1e77 100644
|
||||
index 384fb16dac5eede49d89ad9fdcddcec442f0e7ca..d7cf42cee8ce84b62a2ab12519d3d66234d8dedd 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
|
||||
@@ -113,6 +113,11 @@ public class Axolotl extends Animal implements LerpingModel, VariantHolder<Axolo
|
||||
@@ -114,6 +114,11 @@ public class Axolotl extends Animal implements LerpingModel, VariantHolder<Axolo
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -493,7 +493,7 @@ index 045ac081120f65987251d04d1522a5b7197e1d88..414ff28670c3d36dc78e3df4d39b6d4e
|
||||
public Map<String, Vector3f> getModelRotationValues() {
|
||||
return this.modelRotationValues;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
index 4477f201ff02a5e0758af5431b7d9b7c5e11d642..07a5599a9370ba167e985006d74caa3c80288e28 100644
|
||||
index 32c10771db71c1cd190769614edd1c24762d32c6..e0c981cef6992c4a83813c6f77fe11841fe11c1c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
@@ -316,6 +316,23 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
|
||||
@@ -521,10 +521,10 @@ index 4477f201ff02a5e0758af5431b7d9b7c5e11d642..07a5599a9370ba167e985006d74caa3c
|
||||
protected SoundEvent getAmbientSound() {
|
||||
return SoundEvents.CAMEL_AMBIENT;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
||||
index 12a137665f93d992094e86327a496057890d1018..59829fb7342696d29aa709d392f89bf263257fd3 100644
|
||||
index 28b5bda64b5f7a5b1ac8551bb05bf3f6fa522364..4eec1fe4e5996817c26c4f7e701e97fd5d8dcf60 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
||||
@@ -229,6 +229,44 @@ public abstract class AbstractHorse extends Animal implements ContainerListener,
|
||||
@@ -231,6 +231,44 @@ public abstract class AbstractHorse extends Animal implements ContainerListener,
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -569,7 +569,7 @@ index 12a137665f93d992094e86327a496057890d1018..59829fb7342696d29aa709d392f89bf2
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HorseHasRider(this)); // Purpur
|
||||
@@ -1260,7 +1298,7 @@ public abstract class AbstractHorse extends Animal implements ContainerListener,
|
||||
@@ -1261,7 +1299,7 @@ public abstract class AbstractHorse extends Animal implements ContainerListener,
|
||||
entityData = new AgeableMob.AgeableMobGroupData(0.2F);
|
||||
}
|
||||
|
||||
@@ -605,10 +605,10 @@ index 1febe8e173886d501e40331c12261701bd36b0f6..b47a72ffb8b947cea5d4bc6ee37b824c
|
||||
protected SoundEvent getAmbientSound() {
|
||||
return SoundEvents.DONKEY_AMBIENT;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/Horse.java b/src/main/java/net/minecraft/world/entity/animal/horse/Horse.java
|
||||
index 816c698a81a77f217a606468aa157bdaed779479..9ad0d3972d1970b11687da174a83e3a0a4180c0e 100644
|
||||
index 91bee4729074fdabadd40641050e49ef0d0c760e..273365b9bca6e26760f45a794c1ebef1f9118c43 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/Horse.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/Horse.java
|
||||
@@ -51,6 +51,21 @@ public class Horse extends AbstractHorse implements VariantHolder<Variant> {
|
||||
@@ -52,6 +52,21 @@ public class Horse extends AbstractHorse implements VariantHolder<Variant> {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -631,7 +631,7 @@ index 816c698a81a77f217a606468aa157bdaed779479..9ad0d3972d1970b11687da174a83e3a0
|
||||
protected void randomizeAttributes(RandomSource random) {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue((double)generateMaxHealth(random::nextInt));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java b/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java
|
||||
index 1564d1327e4b735461e41a7a876f63a9943d2675..df4943e0a75d084a1c0ae6c12ade533b3c4206fc 100644
|
||||
index b339f61e15f29666ca7ff2d820bc22723738f422..6098251783c7c24fe2510c170d628462023d8ab2 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java
|
||||
@@ -125,6 +125,21 @@ public class Llama extends AbstractChestedHorse implements VariantHolder<Llama.V
|
||||
@@ -761,7 +761,7 @@ index 2cf47ea1cedc1cecfeb4d2bcebc0810a19f64022..d2b3859f9c69e6d73fa859db858d38dd
|
||||
return createBaseHorseAttributes().add(Attributes.MAX_HEALTH, 15.0).add(Attributes.MOVEMENT_SPEED, 0.2F);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java b/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java
|
||||
index c6b6b47e8c268604ab0d1f3bb59c0b0b3a7a1d25..d63913cca12a008ceb4bffc97ba08b8d800102c3 100644
|
||||
index b96a041041509dbb52f325eb52f53b458ba3cc64..9caafde133bed014fde0e0b5339e859966c39134 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java
|
||||
@@ -109,6 +109,11 @@ public class Sniffer extends Animal {
|
||||
@@ -777,10 +777,10 @@ index c6b6b47e8c268604ab0d1f3bb59c0b0b3a7a1d25..d63913cca12a008ceb4bffc97ba08b8d
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
|
||||
index 14ac30d43eaa550eef1b0c339de2034c51e28d9d..ba4c479b68c9b23e2d4f2cffa0cc8dfb12fd8c9e 100644
|
||||
index bc2bcae9e18f76c2db1a75b4db9bd9874b9f79cf..4218c84f3bef499bd6ebd4df224d4dcc95f5ce6c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
|
||||
@@ -185,6 +185,11 @@ public class EnderDragon extends Mob implements Enemy {
|
||||
@@ -186,6 +186,11 @@ public class EnderDragon extends Mob implements Enemy {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -793,7 +793,7 @@ index 14ac30d43eaa550eef1b0c339de2034c51e28d9d..ba4c479b68c9b23e2d4f2cffa0cc8dfb
|
||||
return Mob.createMobAttributes().add(Attributes.MAX_HEALTH, 200.0D);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
index 14f9ded1b44d05d69f1a9394fdacab5b145e4c45..0cc32342cf6c65466dd1e45f9097ca89b01036e4 100644
|
||||
index 57a91dc073739b81d5acb973bf8c9c74a4a825cd..c4894f62a2c3d84d063e5caa5a38df80575660cb 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
@@ -116,6 +116,11 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
|
||||
@@ -818,7 +818,7 @@ index 14f9ded1b44d05d69f1a9394fdacab5b145e4c45..0cc32342cf6c65466dd1e45f9097ca89
|
||||
|
||||
} else {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Blaze.java b/src/main/java/net/minecraft/world/entity/monster/Blaze.java
|
||||
index 0e1aa9a00284ce43436b1290f9ebe243c4d09fdc..220deda05517fd200070f823ad7af075240bb623 100644
|
||||
index d4aac30f9c9b356cec9fc1450a9e684faf030391..32f22f46e6b108b1ac9d8ac7b4bed0861696aaf1 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Blaze.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Blaze.java
|
||||
@@ -74,6 +74,11 @@ public class Blaze extends Monster {
|
||||
@@ -834,7 +834,7 @@ index 0e1aa9a00284ce43436b1290f9ebe243c4d09fdc..220deda05517fd200070f823ad7af075
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HasRider(this)); // Purpur
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Bogged.java b/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
index a01b87f4adcb868d3cc5c24f2423f58d96ebf7fa..ebec95ca146591f170d9e31bbc774e88806269a2 100644
|
||||
index 3fc3ab534b00f26cf2f1a79c20909f25021164a1..8f08b45b7e6279e2f57e3921ebe879082a5fd261 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
@@ -60,6 +60,11 @@ public class Bogged extends AbstractSkeleton implements Shearable {
|
||||
@@ -866,7 +866,7 @@ index 504996c8309fcd11de1dd166dee12d7e7db8db56..562f73dd5e617c10382c50be86ce88f4
|
||||
public boolean doHurtTarget(Entity target) {
|
||||
if (super.doHurtTarget(target)) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
index cd4da06183fa84e3aa7567866b28ad915eadafe6..c64a544bd267204d963cfa213d832e7cea45a7f3 100644
|
||||
index bc9db0ebd4280fe4dcb43bc47d5b7fc1f831394b..4cb68050f93027225b63176724b2c882902d8b71 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
@@ -252,6 +252,11 @@ public class Creeper extends Monster implements PowerableMob {
|
||||
@@ -919,10 +919,10 @@ index 430899602940aa04c21d45ae94bcc506352389cf..6152117a3e13252068e16945b4346a73
|
||||
return Guardian.createAttributes().add(Attributes.MOVEMENT_SPEED, 0.30000001192092896D).add(Attributes.ATTACK_DAMAGE, 8.0D).add(Attributes.MAX_HEALTH, 80.0D);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
index 0c1e3b00bdc1e6b033e6e9e37400a475cee2500e..3abfc4f449552ec60a1f7c4e3faa9fd0ebfdc300 100644
|
||||
index d77e4a354983b6d6c4d5bbc37d886193af396dff..37b1d81f6a77affe345a78fefbd86a156e9db193 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
@@ -110,6 +110,11 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
@@ -112,6 +112,11 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -951,7 +951,7 @@ index ee88933c7baba3bc82c6dc9d52291d5f9fc0f25d..52e2588b32b56b51bdbbdf63a290b2a4
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(1, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Evoker.java b/src/main/java/net/minecraft/world/entity/monster/Evoker.java
|
||||
index 0d1931398f1f6bad941ff133a0d872ffabb00bd3..8f0c685790aa59b7f2352c3bac6ede444d0ede22 100644
|
||||
index fb2409536741e814f20fa6793003c38ed898e443..3ac01d7e55934d145365790b6cb0c5a04ac2a74d 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Evoker.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Evoker.java
|
||||
@@ -69,6 +69,11 @@ public class Evoker extends SpellcasterIllager {
|
||||
@@ -967,7 +967,7 @@ index 0d1931398f1f6bad941ff133a0d872ffabb00bd3..8f0c685790aa59b7f2352c3bac6ede44
|
||||
protected void registerGoals() {
|
||||
super.registerGoals();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Ghast.java b/src/main/java/net/minecraft/world/entity/monster/Ghast.java
|
||||
index 862ad83b536fd0b5eb38ac0f2940cc46aed1fba2..4bad5bdce2df5f5233465b30bcd3121b1dff0874 100644
|
||||
index 24384a8bba59d335949ca641f8b2b599f769b316..82d8e23e7e0b8f806fe93597c8869518dde0cb36 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Ghast.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Ghast.java
|
||||
@@ -131,6 +131,11 @@ public class Ghast extends FlyingMob implements Enemy {
|
||||
@@ -1002,7 +1002,7 @@ index 868e8383a890d76b4cfeac8b77b06e8f58d0a6dc..9602e59cbebeedc85ea75d2a41d3e74f
|
||||
|
||||
public static AttributeSupplier.Builder createAttributes() {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Guardian.java b/src/main/java/net/minecraft/world/entity/monster/Guardian.java
|
||||
index 9a1b1a1b0b6d59d599a2ab87f047121f47cf2bec..7fa4e9761c6aad83848bf5e80a213689d728921d 100644
|
||||
index 8fd7d578c4875ab1d6059dc445734e378c82b40f..af33e2b099ba1b41c0ac62d5504b130b6aa3e41b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Guardian.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Guardian.java
|
||||
@@ -90,6 +90,11 @@ public class Guardian extends Monster {
|
||||
@@ -1039,10 +1039,10 @@ index 20ea3187626a667815245974df88189f7d6ffc76..805bfee8b061445de5b5d8aeb13c7921
|
||||
return checkMonsterSpawnRules(type, world, spawnReason, pos, random) && (MobSpawnType.isSpawner(spawnReason) || world.canSeeSky(pos));
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Illusioner.java b/src/main/java/net/minecraft/world/entity/monster/Illusioner.java
|
||||
index bef63bb69ea81298a1021eadd6c260943e18eba7..c680e1efb73a6387aad6ecdab94f690c12451a32 100644
|
||||
index 58e9bf99ace27a59df56a378e25d9156e71aa313..060f82c4be49db618871dca29db7fd959a6ada0b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Illusioner.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Illusioner.java
|
||||
@@ -73,6 +73,13 @@ public class Illusioner extends SpellcasterIllager implements RangedAttackMob {
|
||||
@@ -74,6 +74,13 @@ public class Illusioner extends SpellcasterIllager implements RangedAttackMob {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1057,7 +1057,7 @@ index bef63bb69ea81298a1021eadd6c260943e18eba7..c680e1efb73a6387aad6ecdab94f690c
|
||||
protected void registerGoals() {
|
||||
super.registerGoals();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/MagmaCube.java b/src/main/java/net/minecraft/world/entity/monster/MagmaCube.java
|
||||
index 6a03a5f1c209d248207b6835ba1d7c0f59dec557..61cd97bc17802d3ab30999fc1f2b91e8b00652b2 100644
|
||||
index d8501995801f636173a46481268d602f028dd034..7769faef7606afca7de8a11fd82a7c3cc61f0b32 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/MagmaCube.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/MagmaCube.java
|
||||
@@ -46,6 +46,26 @@ public class MagmaCube extends Slime {
|
||||
@@ -1088,7 +1088,7 @@ index 6a03a5f1c209d248207b6835ba1d7c0f59dec557..61cd97bc17802d3ab30999fc1f2b91e8
|
||||
return Monster.createMonsterAttributes().add(Attributes.MOVEMENT_SPEED, 0.2F);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Phantom.java b/src/main/java/net/minecraft/world/entity/monster/Phantom.java
|
||||
index 03c873b830f45d848af076ac7921fc4d019f69c8..01e8eaecec61e664838b5d7f18a9c3e730f00ddf 100644
|
||||
index e02992d97f552ecc8ce48e0c2e981d771dfabf19..4dea7aed072caf383986e09ead8ee790b35d9706 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Phantom.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Phantom.java
|
||||
@@ -149,7 +149,10 @@ public class Phantom extends FlyingMob implements Enemy {
|
||||
@@ -1126,10 +1126,10 @@ index 03c873b830f45d848af076ac7921fc4d019f69c8..01e8eaecec61e664838b5d7f18a9c3e7
|
||||
public void tick() {
|
||||
super.tick();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Pillager.java b/src/main/java/net/minecraft/world/entity/monster/Pillager.java
|
||||
index 6bfe582390dcb6111dcaf8325bd2773b9f5fd6a9..8c06e648df453fdd4eea0aa4843fada9b6375f81 100644
|
||||
index adacd02cabde55a305b3643b6060f1792e122b1c..6dd51e6a3542436f5adb0e32b367517132261459 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Pillager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Pillager.java
|
||||
@@ -75,6 +75,11 @@ public class Pillager extends AbstractIllager implements CrossbowAttackMob, Inve
|
||||
@@ -79,6 +79,11 @@ public class Pillager extends AbstractIllager implements CrossbowAttackMob, Inve
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1142,10 +1142,10 @@ index 6bfe582390dcb6111dcaf8325bd2773b9f5fd6a9..8c06e648df453fdd4eea0aa4843fada9
|
||||
protected void registerGoals() {
|
||||
super.registerGoals();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Ravager.java b/src/main/java/net/minecraft/world/entity/monster/Ravager.java
|
||||
index 1248a48c0146258d14efcaa805a82ce1a79c623d..32d547a4430a8f524a7fc0bd1aa063bbebfaeb7f 100644
|
||||
index 9af3d05206ae64cfffbfb3fa89318e6184469204..ebbfd1fec85f1d4e099f02c91f3d7346b6bb3c7b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Ravager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Ravager.java
|
||||
@@ -91,6 +91,11 @@ public class Ravager extends Raider {
|
||||
@@ -92,6 +92,11 @@ public class Ravager extends Raider {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1158,7 +1158,7 @@ index 1248a48c0146258d14efcaa805a82ce1a79c623d..32d547a4430a8f524a7fc0bd1aa063bb
|
||||
protected void registerGoals() {
|
||||
super.registerGoals();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Shulker.java b/src/main/java/net/minecraft/world/entity/monster/Shulker.java
|
||||
index 803a5c71f7712ac004990419131757d17ad685bf..277ec293cfd8f50e9e8ce6a0380a007d7ef786a1 100644
|
||||
index f36ccb36753d1b1a6c7706729e598078f4467644..123f8418544468d5c8d0d280f7dd44ebd25339d7 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Shulker.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Shulker.java
|
||||
@@ -114,6 +114,11 @@ public class Shulker extends AbstractGolem implements VariantHolder<Optional<Dye
|
||||
@@ -1190,10 +1190,10 @@ index 97cab38a47e302f40ca69ef4eb8f7dcb11eccf35..75f82922260b2c0666021e7ed42dfde4
|
||||
protected void registerGoals() {
|
||||
this.friendsGoal = new Silverfish.SilverfishWakeUpFriendsGoal(this);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Skeleton.java b/src/main/java/net/minecraft/world/entity/monster/Skeleton.java
|
||||
index 2f4f38fe7b7640b6658884b826d7f7a335370bd3..1f751a9a079d59ee54afb43ec87284f0de8fa07a 100644
|
||||
index 8b40824f974bba1dae9166c2425be3d5d74a5ffd..ff42908b1204af4694761e84b1b29a658ea5bcef 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Skeleton.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Skeleton.java
|
||||
@@ -43,6 +43,11 @@ public class Skeleton extends AbstractSkeleton {
|
||||
@@ -44,6 +44,11 @@ public class Skeleton extends AbstractSkeleton {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1206,10 +1206,10 @@ index 2f4f38fe7b7640b6658884b826d7f7a335370bd3..1f751a9a079d59ee54afb43ec87284f0
|
||||
protected void defineSynchedData(SynchedEntityData.Builder builder) {
|
||||
super.defineSynchedData(builder);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Slime.java b/src/main/java/net/minecraft/world/entity/monster/Slime.java
|
||||
index 2c73e80d916529cb0433846a2e57bc845bf7f3d4..8deddd8b543a30e295e6d55880d5051a63fef87b 100644
|
||||
index d34892ac85b08f017221c5bb98c7442a8017afbe..d7d16e091f25db68d22b0609f5a16360604e8cd7 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Slime.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Slime.java
|
||||
@@ -101,6 +101,37 @@ public class Slime extends Mob implements Enemy {
|
||||
@@ -103,6 +103,37 @@ public class Slime extends Mob implements Enemy {
|
||||
}
|
||||
return true; // do not jump() in wasd controller, let vanilla controller handle
|
||||
}
|
||||
@@ -1247,7 +1247,7 @@ index 2c73e80d916529cb0433846a2e57bc845bf7f3d4..8deddd8b543a30e295e6d55880d5051a
|
||||
// Purpur end
|
||||
|
||||
@Override
|
||||
@@ -135,9 +166,9 @@ public class Slime extends Mob implements Enemy {
|
||||
@@ -137,9 +168,9 @@ public class Slime extends Mob implements Enemy {
|
||||
this.entityData.set(Slime.ID_SIZE, j);
|
||||
this.reapplyPosition();
|
||||
this.refreshDimensions();
|
||||
@@ -1260,7 +1260,7 @@ index 2c73e80d916529cb0433846a2e57bc845bf7f3d4..8deddd8b543a30e295e6d55880d5051a
|
||||
this.setHealth(this.getMaxHealth());
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Spider.java b/src/main/java/net/minecraft/world/entity/monster/Spider.java
|
||||
index 87f63373ccef3de9ce77a92933ff332be4fd6305..92276f6c015e60783f23f433466f50c918057f61 100644
|
||||
index 93d7cd8fe60b0c0bc3620bca2fe2cfbbee2e9421..c636705accfc0936d65f8fca6a2551becee2c4bf 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Spider.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Spider.java
|
||||
@@ -68,6 +68,11 @@ public class Spider extends Monster {
|
||||
@@ -1276,10 +1276,10 @@ index 87f63373ccef3de9ce77a92933ff332be4fd6305..92276f6c015e60783f23f433466f50c9
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(1, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Stray.java b/src/main/java/net/minecraft/world/entity/monster/Stray.java
|
||||
index 44006bcb7d70661a6990e3fc4375dd6da34517e0..e1327ea96fe394b1c27dbe88c49596256e4e61d3 100644
|
||||
index c47fb4577d31583806584dffe2b0b7674c5565af..ead3b59c853334cef8ad3ac38c928a5b9ebb7728 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Stray.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Stray.java
|
||||
@@ -38,6 +38,11 @@ public class Stray extends AbstractSkeleton {
|
||||
@@ -39,6 +39,11 @@ public class Stray extends AbstractSkeleton {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1292,7 +1292,7 @@ index 44006bcb7d70661a6990e3fc4375dd6da34517e0..e1327ea96fe394b1c27dbe88c4959625
|
||||
BlockPos blockPos = pos;
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Strider.java b/src/main/java/net/minecraft/world/entity/monster/Strider.java
|
||||
index 7e5ad9d52db7a39be60e0b2f24e13e8ed82785e1..4abbeaf9f88511f37bd14c17dbd9a107648a5534 100644
|
||||
index cc8a169858709cf3c63bd4973018b4c40429784a..b52f17211805d2abac6997476ae5c7ef53725802 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Strider.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Strider.java
|
||||
@@ -114,6 +114,11 @@ public class Strider extends Animal implements ItemSteerable, Saddleable {
|
||||
@@ -1308,7 +1308,7 @@ index 7e5ad9d52db7a39be60e0b2f24e13e8ed82785e1..4abbeaf9f88511f37bd14c17dbd9a107
|
||||
BlockPos.MutableBlockPos blockposition_mutableblockposition = pos.mutable();
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Vex.java b/src/main/java/net/minecraft/world/entity/monster/Vex.java
|
||||
index 98c9d7080595a5d9ffa3d65a153780b68aec0e47..ca6c688b31240863dfc5095c7b6187583cf2f6ce 100644
|
||||
index 34e88c071b5cedf0a66d5a81e70cccdb0768962e..fbd4c39a41b07e49abc610de8dd8ed748e299993 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Vex.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Vex.java
|
||||
@@ -102,6 +102,11 @@ public class Vex extends Monster implements TraceableEntity {
|
||||
@@ -1324,10 +1324,10 @@ index 98c9d7080595a5d9ffa3d65a153780b68aec0e47..ca6c688b31240863dfc5095c7b618758
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Vindicator.java b/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
|
||||
index c6d12c939cd3fbd9facf88cdc0c7c51744089484..e270da29fdab5060b6a936bba67c433a78c54b5b 100644
|
||||
index fa7af386c89f5f9181d345191dc545674a257996..eb6dce8b2dcc7f4e63c69cfa6acbd9b36a923706 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
|
||||
@@ -67,6 +67,11 @@ public class Vindicator extends AbstractIllager {
|
||||
@@ -70,6 +70,11 @@ public class Vindicator extends AbstractIllager {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1340,10 +1340,10 @@ index c6d12c939cd3fbd9facf88cdc0c7c51744089484..e270da29fdab5060b6a936bba67c433a
|
||||
protected void registerGoals() {
|
||||
super.registerGoals();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Witch.java b/src/main/java/net/minecraft/world/entity/monster/Witch.java
|
||||
index b5f44495f0a384c8a7d8d96e3a0f16999fba86fe..d99c52b4f0326421f90162d4894044394b3c49c4 100644
|
||||
index cd299591c00c1860b252c7abfdd2afa2abcbd537..e51c793addced500092da2305da2ce0acc87a5f2 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Witch.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Witch.java
|
||||
@@ -72,6 +72,11 @@ public class Witch extends Raider implements RangedAttackMob {
|
||||
@@ -73,6 +73,11 @@ public class Witch extends Raider implements RangedAttackMob {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1356,10 +1356,10 @@ index b5f44495f0a384c8a7d8d96e3a0f16999fba86fe..d99c52b4f0326421f90162d489404439
|
||||
protected void registerGoals() {
|
||||
super.registerGoals();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/WitherSkeleton.java b/src/main/java/net/minecraft/world/entity/monster/WitherSkeleton.java
|
||||
index 355ed17da77256c84d8ba7d4d99b5c73d729a48d..9fd9b95cbec010dafec261b5923938c5b39cd1e6 100644
|
||||
index 09f7277283bf6ec44d3f1cc068893e0e1155eb61..3b59dd9509320aad82c4246154e61f479eae5f2b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/WitherSkeleton.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/WitherSkeleton.java
|
||||
@@ -49,6 +49,11 @@ public class WitherSkeleton extends AbstractSkeleton {
|
||||
@@ -50,6 +50,11 @@ public class WitherSkeleton extends AbstractSkeleton {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1372,10 +1372,10 @@ index 355ed17da77256c84d8ba7d4d99b5c73d729a48d..9fd9b95cbec010dafec261b5923938c5
|
||||
protected void registerGoals() {
|
||||
this.targetSelector.addGoal(3, new NearestAttackableTargetGoal<>(this, AbstractPiglin.class, true));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Zoglin.java b/src/main/java/net/minecraft/world/entity/monster/Zoglin.java
|
||||
index 2cb65bc3e2a2f990f4036f4f0418d9cd5226381e..698076b0e958aadf9736d7753df64a73dd3c17cd 100644
|
||||
index e683b14ed7bc0284fbbe93dedf6ab8c0423e0764..4bdbcb59051cc4bbc44aca2f70318275d4267b14 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Zoglin.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Zoglin.java
|
||||
@@ -97,6 +97,11 @@ public class Zoglin extends Monster implements Enemy, HoglinBase {
|
||||
@@ -96,6 +96,11 @@ public class Zoglin extends Monster implements Enemy, HoglinBase {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1388,10 +1388,10 @@ index 2cb65bc3e2a2f990f4036f4f0418d9cd5226381e..698076b0e958aadf9736d7753df64a73
|
||||
protected Brain.Provider<Zoglin> brainProvider() {
|
||||
return Brain.provider(MEMORY_TYPES, SENSOR_TYPES);
|
||||
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 7c78b243164a517818565845b1a6c7d40c8839d8..9af1c4b794ddaf8640076f172cf0317acad6bcb2 100644
|
||||
index ba630beb18830e92432669f643dfd4cf8d2386fb..28587e17b15748880576f7a71e71a05c9c1bcf78 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Zombie.java
|
||||
@@ -121,6 +121,11 @@ public class Zombie extends Monster {
|
||||
@@ -125,6 +125,11 @@ public class Zombie extends Monster {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1403,7 +1403,7 @@ index 7c78b243164a517818565845b1a6c7d40c8839d8..9af1c4b794ddaf8640076f172cf0317a
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HasRider(this)); // Purpur
|
||||
@@ -596,7 +601,7 @@ public class Zombie extends Monster {
|
||||
@@ -607,7 +612,7 @@ public class Zombie extends Monster {
|
||||
}
|
||||
|
||||
protected void randomizeReinforcementsChance() {
|
||||
@@ -1413,10 +1413,10 @@ index 7c78b243164a517818565845b1a6c7d40c8839d8..9af1c4b794ddaf8640076f172cf0317a
|
||||
|
||||
@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 cc3d9f47ef6d1efa589c8bed5c51ed9e61d7c07d..8e7f0f2069c3382f3a7b08b80f829398e62377f7 100644
|
||||
index 778edd9a723459ae41f521e953ea97eeac123c5f..199770256cf7f838228b5263ec9af8c6b18f30fb 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
|
||||
@@ -97,6 +97,16 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder {
|
||||
@@ -100,6 +100,16 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1434,10 +1434,10 @@ index cc3d9f47ef6d1efa589c8bed5c51ed9e61d7c07d..8e7f0f2069c3382f3a7b08b80f829398
|
||||
protected void defineSynchedData(SynchedEntityData.Builder builder) {
|
||||
super.defineSynchedData(builder);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombifiedPiglin.java b/src/main/java/net/minecraft/world/entity/monster/ZombifiedPiglin.java
|
||||
index 2ff0ce04ce210b77c555f59967182ed4dd3fe9aa..138f3f6a9b0754d54e5f8000962bb52b224f677d 100644
|
||||
index 18e6a56da9f714f4e5b78ec63df6cf310deb1247..883cd9a96a1d4276ca10c5558b553c36a1bb0d79 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/ZombifiedPiglin.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/ZombifiedPiglin.java
|
||||
@@ -79,6 +79,11 @@ public class ZombifiedPiglin extends Zombie implements NeutralMob {
|
||||
@@ -80,6 +80,11 @@ public class ZombifiedPiglin extends Zombie implements NeutralMob {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1449,7 +1449,7 @@ index 2ff0ce04ce210b77c555f59967182ed4dd3fe9aa..138f3f6a9b0754d54e5f8000962bb52b
|
||||
@Override
|
||||
public void setPersistentAngerTarget(@Nullable UUID angryAt) {
|
||||
this.persistentAngerTarget = angryAt;
|
||||
@@ -261,7 +266,7 @@ public class ZombifiedPiglin extends Zombie implements NeutralMob {
|
||||
@@ -262,7 +267,7 @@ public class ZombifiedPiglin extends Zombie implements NeutralMob {
|
||||
|
||||
@Override
|
||||
protected void randomizeReinforcementsChance() {
|
||||
@@ -1459,26 +1459,26 @@ index 2ff0ce04ce210b77c555f59967182ed4dd3fe9aa..138f3f6a9b0754d54e5f8000962bb52b
|
||||
|
||||
@Nullable
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java
|
||||
index 6e86e0597af66bad8f2e97661b588e950b2679ba..3bfc073fb142e3446044a42c33be6c30587cc3c4 100644
|
||||
index a2c0f73c84651f713781deaaa588a3c704eb32b3..373bf138f8b77413e6c29724e01572f64e0bc005 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java
|
||||
@@ -107,6 +107,11 @@ public class Hoglin extends Animal implements Enemy, HoglinBase {
|
||||
@@ -105,6 +105,11 @@ public class Hoglin extends Animal implements Enemy, HoglinBase {
|
||||
public boolean isControllable() {
|
||||
return level().purpurConfig.hoglinControllable;
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
+
|
||||
+ @Override
|
||||
+ public void initAttributes() {
|
||||
+ this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.hoglinMaxHealth);
|
||||
+ }
|
||||
+
|
||||
// Purpur end
|
||||
|
||||
@Override
|
||||
public boolean canBeLeashed(Player player) {
|
||||
return !this.isLeashed();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java
|
||||
index 6632cab4ed43bbfd10b4d8f3b2c447a35eba735e..06e0f737615c90bd733a89a731156598ccfe447f 100644
|
||||
index a8df353eef6ab0dc2a6bd4242f6b85af91444ae9..faf5889c040a6c8fbac61a1d02036d32601f3d24 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java
|
||||
@@ -111,6 +111,11 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento
|
||||
@@ -110,6 +110,11 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -1507,7 +1507,7 @@ index 17e2457bc83e7ee4402c10ee7d2ef5aa36901565..362f3fddd8090799278f4b4e58c5af5d
|
||||
return Monster.createMonsterAttributes().add(Attributes.MAX_HEALTH, 50.0).add(Attributes.MOVEMENT_SPEED, 0.35F).add(Attributes.ATTACK_DAMAGE, 7.0);
|
||||
}
|
||||
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 980f48b546f0da5696c110357ea42352a48fbd42..ff86c7d4878e43fc9d375b9b60213a2271b92cff 100644
|
||||
index d7545f978cde231e9c154631ab7f225e6ea579ff..cd024c26d0658aa150a7d516b9b447eb72ebf26a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -178,6 +178,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -1523,7 +1523,7 @@ index 980f48b546f0da5696c110357ea42352a48fbd42..ff86c7d4878e43fc9d375b9b60213a22
|
||||
public Brain<Villager> getBrain() {
|
||||
return (Brain<Villager>) super.getBrain(); // CraftBukkit - decompile error
|
||||
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 6bdf3d1e3652a661282d61f1dc2bfc2712339953..ac3cca0db4478841f91d966bd49ca4e5b5e91229 100644
|
||||
index d514faecb9e6b244aa043383fa072316da939518..a4ca761f6e8e6e8f86fc20ce5e3dcf92a66b3f2a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
@@ -88,6 +88,11 @@ public class WanderingTrader extends net.minecraft.world.entity.npc.AbstractVill
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Barrels and enderchests 6 rows
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
index 2d6b6795703431939005aa09d1ed590c3f755163..f10dcc0debcdd2077ee53cb1aefca8abd12f3ecd 100644
|
||||
index ab3cdaecf0e5e45acd3ac19be590c863cba9019a..27391592eca984295c648edefce50f3360f5be1e 100644
|
||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
@@ -1188,6 +1188,27 @@ public abstract class PlayerList {
|
||||
@@ -1140,6 +1140,27 @@ public abstract class PlayerList {
|
||||
player.getBukkitEntity().recalculatePermissions(); // CraftBukkit
|
||||
this.server.getCommands().sendCommands(player);
|
||||
} // Paper - Add sendOpLevel API
|
||||
@@ -37,11 +37,11 @@ index 2d6b6795703431939005aa09d1ed590c3f755163..f10dcc0debcdd2077ee53cb1aefca8ab
|
||||
|
||||
public boolean isWhiteListed(GameProfile profile) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index 90e44c7281935bc7ceb3b220bbcd73187fed44fb..0641e448e0e98694976b820c2e9c4868f2b76909 100644
|
||||
index 6506e5b2165cabcc27543beeae83812dd108a252..89bc21020704dc78b85f345a82e31a54a9a234df 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -195,6 +195,7 @@ public abstract class Player extends LivingEntity {
|
||||
public boolean ignoreFallDamageFromCurrentImpulse;
|
||||
@@ -196,6 +196,7 @@ public abstract class Player extends LivingEntity {
|
||||
private int currentImpulseContextResetGraceTime;
|
||||
public boolean affectsSpawning = true; // Paper - Affects Spawning API
|
||||
public net.kyori.adventure.util.TriState flyingFallDamage = net.kyori.adventure.util.TriState.NOT_SET; // Paper - flying fall damage
|
||||
+ public int sixRowEnderchestSlotCount = -1; // Purpur
|
||||
@@ -108,7 +108,7 @@ index a15d5ff872dbd77f3c3145e0328f3d02e431ff8c..1dcf36d502990d32fc4cd3ea69c3ea33
|
||||
this.activeChest = blockEntity;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java b/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java
|
||||
index 5f9858ef8d0ec1a74d469ab4426eb1db068873fd..d7ef772444b301d0a3f167679027195e4150b064 100644
|
||||
index ca92d49ef2010ba00c623491671dcde8ebe697c1..bd65df4588584b8bb001e9dc3656a14e381a0b6d 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java
|
||||
@@ -91,7 +91,7 @@ public class EnderChestBlock extends AbstractChestBlock<EnderChestBlockEntity> i
|
||||
@@ -253,7 +253,7 @@ index af1ae3dacb628da23f7d2988c6e76d3fb2d64103..4ee2d501f882279b48edb4b8bf082458
|
||||
for (int i = 0; i < this.getSize(); i++) {
|
||||
if (i >= items.length) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
index 463af65182c0894a75a138df8100f3f616143f4c..a0eb18409f72afe393581e6dc8e2260b3a25197f 100644
|
||||
index 169722178ba7cd9543a029741e81d025a659ffe2..db0d57060cae1f5fd51087a15134ca5f389511bc 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
@@ -177,4 +177,39 @@ public class PurpurConfig {
|
||||
@@ -25,7 +25,7 @@ index df695b444fa2a993d381e2f197182c3e91a68502..eb0faf58fa1a408f294fc62120b140de
|
||||
double d = this.llama.distanceToSqr(this.llama.getCaravanHead());
|
||||
if (d > 676.0) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java b/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java
|
||||
index df4943e0a75d084a1c0ae6c12ade533b3c4206fc..9ed11bf6420e4ea8ea78cec641a7e37327301ae1 100644
|
||||
index 6098251783c7c24fe2510c170d628462023d8ab2..09c400ce06003139de84e22313354ed6199da761 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java
|
||||
@@ -75,6 +75,7 @@ public class Llama extends AbstractChestedHorse implements VariantHolder<Llama.V
|
||||
@@ -52,7 +52,7 @@ index df4943e0a75d084a1c0ae6c12ade533b3c4206fc..9ed11bf6420e4ea8ea78cec641a7e373
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -461,6 +464,7 @@ public class Llama extends AbstractChestedHorse implements VariantHolder<Llama.V
|
||||
@@ -456,6 +459,7 @@ public class Llama extends AbstractChestedHorse implements VariantHolder<Llama.V
|
||||
|
||||
public void leaveCaravan() {
|
||||
if (this.caravanHead != null) {
|
||||
@@ -60,7 +60,7 @@ index df4943e0a75d084a1c0ae6c12ade533b3c4206fc..9ed11bf6420e4ea8ea78cec641a7e373
|
||||
this.caravanHead.caravanTail = null;
|
||||
}
|
||||
|
||||
@@ -468,6 +472,7 @@ public class Llama extends AbstractChestedHorse implements VariantHolder<Llama.V
|
||||
@@ -463,6 +467,7 @@ public class Llama extends AbstractChestedHorse implements VariantHolder<Llama.V
|
||||
}
|
||||
|
||||
public void joinCaravan(Llama llama) {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] AFK API
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index 5dd8c9f53ba50f160198a09dd2069edbac48230e..70838e5ee30733a71ad73330f69ea093f73b4bd2 100644
|
||||
index 720f96ab9fd525f5a97302da24b68509fb45eb84..152b80e1c7402dd02c71ca7c6f6e70bdab6bd88b 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -2327,8 +2327,68 @@ public class ServerPlayer extends Player {
|
||||
@@ -2333,8 +2333,68 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player {
|
||||
|
||||
public void resetLastActionTime() {
|
||||
this.lastActionTime = Util.getMillis();
|
||||
@@ -78,7 +78,7 @@ index 5dd8c9f53ba50f160198a09dd2069edbac48230e..70838e5ee30733a71ad73330f69ea093
|
||||
return this.stats;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index ac11226ca4b8d730871851d99491d598e41a0de6..5a62fb4e441b251c92534a09b2f4af39a2e8e34c 100644
|
||||
index 78181ad76f9835f900f7583bdefb0e7e56f863f3..58e3f6f0febff3956b80ebeab387c46deb5fe8ae 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -332,6 +332,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
@@ -113,9 +113,9 @@ index ac11226ca4b8d730871851d99491d598e41a0de6..5a62fb4e441b251c92534a09b2f4af39
|
||||
+ }
|
||||
+ // Purpur end
|
||||
this.player.resetLastActionTime(); // CraftBukkit - SPIGOT-854
|
||||
this.disconnect(Component.translatable("multiplayer.disconnect.idling"), org.bukkit.event.player.PlayerKickEvent.Cause.IDLING); // Paper - kick event cause
|
||||
this.disconnect((Component) Component.translatable("multiplayer.disconnect.idling"), org.bukkit.event.player.PlayerKickEvent.Cause.IDLING); // Paper - kick event cause
|
||||
}
|
||||
@@ -658,6 +678,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
@@ -649,6 +669,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
this.lastYaw = to.getYaw();
|
||||
this.lastPitch = to.getPitch();
|
||||
|
||||
@@ -124,7 +124,7 @@ index ac11226ca4b8d730871851d99491d598e41a0de6..5a62fb4e441b251c92534a09b2f4af39
|
||||
Location oldTo = to.clone();
|
||||
PlayerMoveEvent event = new PlayerMoveEvent(player, from, to);
|
||||
this.cserver.getPluginManager().callEvent(event);
|
||||
@@ -1494,7 +1516,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
@@ -1454,7 +1476,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
movedWrongly = true;
|
||||
if (event.getLogWarning())
|
||||
// Paper end
|
||||
@@ -133,7 +133,7 @@ index ac11226ca4b8d730871851d99491d598e41a0de6..5a62fb4e441b251c92534a09b2f4af39
|
||||
} // Paper
|
||||
}
|
||||
|
||||
@@ -1562,6 +1584,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
@@ -1512,6 +1534,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
this.lastYaw = to.getYaw();
|
||||
this.lastPitch = to.getPitch();
|
||||
|
||||
@@ -177,7 +177,7 @@ index d8cc5614502db7025349e085381b6b32ad32296a..f1b9e83206cc67e6ef29ebe088351b0a
|
||||
private EntitySelector() {}
|
||||
// Paper start - Affects Spawning API
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/ai/targeting/TargetingConditions.java b/src/main/java/net/minecraft/world/entity/ai/targeting/TargetingConditions.java
|
||||
index d2f0c3b26d4beedb49d86e0242d843590d469d02..7463eefb7d09ea55fe8780210e7e967c2fe7896d 100644
|
||||
index aecb0ad814586bfc5e56755ee14379a69388b38c..98a2a469e3d62f963968ef1be3e97892748858c9 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/ai/targeting/TargetingConditions.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/ai/targeting/TargetingConditions.java
|
||||
@@ -64,6 +64,10 @@ public class TargetingConditions {
|
||||
@@ -192,10 +192,10 @@ index d2f0c3b26d4beedb49d86e0242d843590d469d02..7463eefb7d09ea55fe8780210e7e967c
|
||||
if (baseEntity == null) {
|
||||
if (this.isCombat && (!targetEntity.canBeSeenAsEnemy() || targetEntity.level().getDifficulty() == Difficulty.PEACEFUL)) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index 5f87d625be6249c37a7397933b0edb22f67e5c39..7ddc0b1005433ef467e1a086a19acd1ab5c9fc24 100644
|
||||
index 89bc21020704dc78b85f345a82e31a54a9a234df..560a878acbcb488528c70106b2a39cd0f49cc55c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -201,6 +201,13 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -202,6 +202,13 @@ public abstract class Player extends LivingEntity {
|
||||
public boolean fauxSleeping;
|
||||
public int oldLevel = -1;
|
||||
|
||||
@@ -210,10 +210,10 @@ index 5f87d625be6249c37a7397933b0edb22f67e5c39..7ddc0b1005433ef467e1a086a19acd1a
|
||||
public CraftHumanEntity getBukkitEntity() {
|
||||
return (CraftHumanEntity) super.getBukkitEntity();
|
||||
diff --git a/src/main/java/net/minecraft/world/level/EntityGetter.java b/src/main/java/net/minecraft/world/level/EntityGetter.java
|
||||
index ea0aee88c7d901034427db201c1b2430f8a1d522..1f28bfb435c1e4d97da713f96c452abab3fda91a 100644
|
||||
index bd20bea7f76a7307f1698fb2dfef37125032d166..4033e82bc3263d99e0976424789792ceea6f58d9 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/EntityGetter.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/EntityGetter.java
|
||||
@@ -192,7 +192,7 @@ public interface EntityGetter {
|
||||
@@ -146,7 +146,7 @@ public interface EntityGetter {
|
||||
|
||||
default boolean hasNearbyAlivePlayer(double x, double y, double z, double range) {
|
||||
for (Player player : this.players()) {
|
||||
@@ -223,10 +223,10 @@ index ea0aee88c7d901034427db201c1b2430f8a1d522..1f28bfb435c1e4d97da713f96c452aba
|
||||
if (range < 0.0 || d < range * range) {
|
||||
return true;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 69de5167aeaa6f9cb66fa7c2daa63a2e72c93fd0..5ace17f1bc7b6c5c99849ac5a650de4205c7fbbd 100644
|
||||
index e2c3a8f14d0d48bc756c6845be652eefde58a85d..c97c8421303ac3191191dc0ceaca00ffd0e3e1d6 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -574,10 +574,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -578,10 +578,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
|
||||
@Override
|
||||
public void setPlayerListName(String name) {
|
||||
@@ -243,7 +243,7 @@ index 69de5167aeaa6f9cb66fa7c2daa63a2e72c93fd0..5ace17f1bc7b6c5c99849ac5a650de42
|
||||
if (this.getHandle().connection == null) return; // Paper - Updates are possible before the player has fully joined
|
||||
for (ServerPlayer player : (List<ServerPlayer>) this.server.getHandle().players) {
|
||||
if (player.getBukkitEntity().canSee(this)) {
|
||||
@@ -3534,5 +3539,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -3540,5 +3545,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
public boolean usesPurpurClient() {
|
||||
return getHandle().purpurClient;
|
||||
}
|
||||
@@ -288,7 +288,7 @@ index db0d57060cae1f5fd51087a15134ca5f389511bc..d2f3e864aa4d1c5d3ee8bb8f1e36787b
|
||||
|
||||
public static int barrelRows = 3;
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index e248395ad5f5f012aeefecf367d54f90cade0996..70f53ccb22de2c05c9ead68f8bd29d0b69d0993f 100644
|
||||
index 767d977cf47b0c7d94c248091f3ce98d6383ae04..2f2986f9f7a241c4d7a1e065126dbbae601f7fe5 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -90,6 +90,24 @@ public class PurpurWorldConfig {
|
||||
@@ -317,14 +317,15 @@ index e248395ad5f5f012aeefecf367d54f90cade0996..70f53ccb22de2c05c9ead68f8bd29d0b
|
||||
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 3283ed99c35ffed6805567705e0518d9f84feedc..a9a39f0da7b09410d8171172a4219c7d509fdb99 100644
|
||||
index 9fb9fa62c32445ac3c3883a6433759c86dcfc428..0a237d1adeecba0059589ea2f4772f27100dae0f 100644
|
||||
--- a/src/main/java/org/spigotmc/ActivationRange.java
|
||||
+++ b/src/main/java/org/spigotmc/ActivationRange.java
|
||||
@@ -201,6 +201,7 @@ public class ActivationRange
|
||||
@@ -132,6 +132,8 @@ public class ActivationRange
|
||||
continue;
|
||||
}
|
||||
|
||||
+ if (!player.level().purpurConfig.idleTimeoutTickNearbyEntities && player.isAfk()) continue; // Purpur
|
||||
// Paper start
|
||||
int worldHeight = world.getHeight();
|
||||
ActivationRange.maxBB = player.getBoundingBox().inflate( maxRange, worldHeight, maxRange );
|
||||
+
|
||||
ActivationRange.maxBB = player.getBoundingBox().inflate( maxRange, 256, maxRange );
|
||||
ActivationType.MISC.boundingBox = player.getBoundingBox().inflate( miscActivationRange, 256, miscActivationRange );
|
||||
ActivationType.RAIDER.boundingBox = player.getBoundingBox().inflate( raiderActivationRange, 256, raiderActivationRange );
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Bring back server name
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServerProperties.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServerProperties.java
|
||||
index 9d10cdacb3aed2c00dc60aeb6f2cbeb48905e21f..842f382de43df5d5c321422372ec30ccdd7859d7 100644
|
||||
index d6431376184e5650b370cbab204e28bc31f4dac6..9ebe1f1797b5be562bc4f6d92b9a4d6022ca2151 100644
|
||||
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServerProperties.java
|
||||
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServerProperties.java
|
||||
@@ -56,6 +56,7 @@ public class DedicatedServerProperties extends Settings<DedicatedServerPropertie
|
||||
@@ -17,10 +17,10 @@ index 9d10cdacb3aed2c00dc60aeb6f2cbeb48905e21f..842f382de43df5d5c321422372ec30cc
|
||||
public final boolean spawnNpcs = this.get("spawn-npcs", true);
|
||||
public final boolean pvp = this.get("pvp", true);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 987cc39ebc9332ba0c974fb4e8b89ebbe05aff5f..72d3d80d29920fa3f6f98ac0f56ae8550fb69596 100644
|
||||
index 0d40596884f3b9ecfe3e7267e204f4003c50cab2..32d3dee93bb5abab7100638ef528217bfffa284f 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -3295,4 +3295,11 @@ public final class CraftServer implements Server {
|
||||
@@ -3220,4 +3220,11 @@ public final class CraftServer implements Server {
|
||||
return this.potionBrewer;
|
||||
}
|
||||
// Paper end
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable server mod name
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 8a264034d2b0552587b64fb82409f1aa3f5b6808..6464cf3cf027d894d18d1a24495952d304151648 100644
|
||||
index 1d934bf1fbd1c439ad40e7dbc86b29349ef21457..2cdadf2587da20ebbd2e5dc55f94085fa676cecc 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1921,7 +1921,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1812,7 +1812,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
|
||||
@DontObfuscate
|
||||
public String getServerModName() {
|
||||
@@ -5,18 +5,18 @@ Subject: [PATCH] Lagging threshold
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 51968d23424cf57264fbf343199b3f1f2b00a08a..c167d61c281cd9324c7fd741a5845792bcdbf56a 100644
|
||||
index 2cdadf2587da20ebbd2e5dc55f94085fa676cecc..dc6271173e27df036a264ba78b31d65ae6cfede8 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -312,6 +312,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -319,6 +319,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
public final io.papermc.paper.configuration.PaperConfigurations paperConfigurations; // Paper - add paper configuration files
|
||||
public static long currentTickLong = 0L; // Paper - track current tick as a long
|
||||
public boolean isIteratingOverLevels = false; // Paper - Throw exception on world create while being ticked
|
||||
+ public boolean lagging = false; // Purpur
|
||||
|
||||
public volatile Thread shutdownThread; // Paper
|
||||
public volatile boolean abnormalExit = false; // Paper
|
||||
@@ -1211,6 +1212,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
public static <S extends MinecraftServer> S spin(Function<Thread, S> serverFactory) {
|
||||
AtomicReference<S> atomicreference = new AtomicReference();
|
||||
@@ -1183,6 +1184,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
this.recentTps[0] = tps1.getAverage();
|
||||
this.recentTps[1] = tps5.getAverage();
|
||||
this.recentTps[2] = tps15.getAverage();
|
||||
@@ -25,10 +25,10 @@ index 51968d23424cf57264fbf343199b3f1f2b00a08a..c167d61c281cd9324c7fd741a5845792
|
||||
}
|
||||
// Paper end - further improve server tick loop
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 72d3d80d29920fa3f6f98ac0f56ae8550fb69596..fb77892937a3441aed3d65686a3bbbaf01b46f91 100644
|
||||
index 32d3dee93bb5abab7100638ef528217bfffa284f..830f5d9aa21d488e739a4ef9880e21fa20849143 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -3301,5 +3301,10 @@ public final class CraftServer implements Server {
|
||||
@@ -3226,5 +3226,10 @@ public final class CraftServer implements Server {
|
||||
public String getServerName() {
|
||||
return this.getProperties().serverName;
|
||||
}
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] PlayerSetSpawnerTypeWithEggEvent
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
index a46bf73c608641bf1f00fd55242de71a0f2ee06e..9b3bf5ac043262c6cd00d83b750c3313122d92a9 100644
|
||||
index 842b0cec0397d7ae5166617627340ffac0e35db1..76d0c482f1ab251963ca2e0c312acad52a7f9901 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
@@ -330,6 +330,16 @@ public class EntityType<T extends Entity> implements FeatureElement, EntityTypeT
|
||||
@@ -17,7 +17,7 @@ index 32910f677b0522ac8ec513fa0d00b714b52cfae4..f85eef14b91a0ada1f6f4b13ab3966f0
|
||||
// CraftBukkit start
|
||||
public boolean checkReachable = true;
|
||||
diff --git a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||
index 2bd91b48eaa06f85a5b9b1ae052c70e966ae8e4c..9036426256f87b3ba4a78e6fa2cea4e028f84481 100644
|
||||
index 7198dc9ffc9a37dab3654e12aa497c442a9993c5..2348ee0065367ade5354d54aac53ab23d43d0622 100644
|
||||
--- a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||
+++ b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||
@@ -25,6 +25,13 @@ import org.slf4j.Logger;
|
||||
@@ -82,11 +82,13 @@ index 2bd91b48eaa06f85a5b9b1ae052c70e966ae8e4c..9036426256f87b3ba4a78e6fa2cea4e0
|
||||
ItemStack itemstack1 = itemstack.copy();
|
||||
ItemStack itemstack2 = this.inputSlots.getItem(1);
|
||||
ItemEnchantments.Mutable itemenchantments_a = new ItemEnchantments.Mutable(EnchantmentHelper.getEnchantmentsForCrafting(itemstack1));
|
||||
@@ -222,7 +240,7 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
@@ -221,8 +239,8 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
while (iterator1.hasNext()) {
|
||||
Holder<Enchantment> holder1 = (Holder) iterator1.next();
|
||||
|
||||
if (!holder1.equals(holder) && !enchantment.isCompatibleWith((Enchantment) holder1.value())) {
|
||||
- if (!holder1.equals(holder) && !Enchantment.areCompatible(holder, holder1)) {
|
||||
- flag3 = false;
|
||||
+ if (!holder1.equals(holder) && !enchantment.isCompatibleWith((Enchantment) holder1.value())) {
|
||||
+ flag3 = canDoUnsafeEnchants; // Purpur
|
||||
++i;
|
||||
}
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Alternative Keepalive Handling
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
index a8edeb5a40cd9aac933805259407e32c544d181e..a30435cdc62d4947596b9cee3b114f7cb1349769 100644
|
||||
index b66d4047b5e529f5f737efb0ff1edda805de1316..e7075e0c59fe99229142ecb518fadc5b481886fb 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
@@ -73,6 +73,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
@@ -74,6 +74,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
private long keepAliveChallenge;
|
||||
private long closedListenerTime;
|
||||
private boolean closed = false;
|
||||
@@ -16,7 +16,7 @@ index a8edeb5a40cd9aac933805259407e32c544d181e..a30435cdc62d4947596b9cee3b114f7c
|
||||
private int latency;
|
||||
private volatile boolean suspendFlushingOnServerThread = false;
|
||||
public final java.util.Map<java.util.UUID, net.kyori.adventure.resource.ResourcePackCallback> packCallbacks = new java.util.concurrent.ConcurrentHashMap<>(); // Paper - adventure resource pack callbacks
|
||||
@@ -124,6 +125,16 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
@@ -125,6 +126,16 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
|
||||
@Override
|
||||
public void handleKeepAlive(ServerboundKeepAlivePacket packet) {
|
||||
@@ -33,7 +33,7 @@ index a8edeb5a40cd9aac933805259407e32c544d181e..a30435cdc62d4947596b9cee3b114f7c
|
||||
//PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); // CraftBukkit // Paper - handle ServerboundKeepAlivePacket async
|
||||
if (this.keepAlivePending && packet.getId() == this.keepAliveChallenge) {
|
||||
int i = (int) (Util.getMillis() - this.keepAliveTime);
|
||||
@@ -260,6 +271,21 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
@@ -261,6 +272,21 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
long currentTime = Util.getMillis();
|
||||
long elapsedTime = currentTime - this.keepAliveTime;
|
||||
|
||||
@@ -54,7 +54,7 @@ index a8edeb5a40cd9aac933805259407e32c544d181e..a30435cdc62d4947596b9cee3b114f7c
|
||||
+
|
||||
if (!this.isSingleplayerOwner() && elapsedTime >= 15000L) { // Paper - use vanilla's 15000L between keep alive packets
|
||||
if (this.keepAlivePending && !this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // Paper - check keepalive limit, don't fire if already disconnected
|
||||
this.disconnect(ServerCommonPacketListenerImpl.TIMEOUT_DISCONNECTION_MESSAGE, org.bukkit.event.player.PlayerKickEvent.Cause.TIMEOUT); // Paper - kick event cause
|
||||
this.disconnect(ServerCommonPacketListenerImpl.TIMEOUT_DISCONNECTION_MESSAGE, PlayerKickEvent.Cause.TIMEOUT); // Paper - kick event cause
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
index f80414b9bb7fb1f2849749481209648516fb28fb..e4c01fc54f832f895adec75ac855b614ff77d19a 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
@@ -17,10 +17,10 @@ index 96fb69ec6db2e7c8c728435f0c537b076259b2fb..3253361d91e2a2e68d354eaf3dd3e3cd
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/item/Items.java b/src/main/java/net/minecraft/world/item/Items.java
|
||||
index d00b59efb754594cf532f8598f4b6d3b29693232..6467358f5fdf4cd4f7c1e2cc65c834a9da39596a 100644
|
||||
index 07315232192f6e09910a028c4643d7f0544c62e3..4eef61323ba54f513e6f251ef7c804b2c91ff477 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/Items.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/Items.java
|
||||
@@ -338,7 +338,7 @@ public class Items {
|
||||
@@ -337,7 +337,7 @@ public class Items {
|
||||
public static final Item PURPUR_BLOCK = registerBlock(Blocks.PURPUR_BLOCK);
|
||||
public static final Item PURPUR_PILLAR = registerBlock(Blocks.PURPUR_PILLAR);
|
||||
public static final Item PURPUR_STAIRS = registerBlock(Blocks.PURPUR_STAIRS);
|
||||
@@ -100,7 +100,7 @@ index 4f190a40b8474aa06a92c8afcc06d0044120ff7b..66c17bdfecdfbcfb2d853e561432dd51
|
||||
int i = 15 + worldserver.random.nextInt(15) + worldserver.random.nextInt(15);
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 70f53ccb22de2c05c9ead68f8bd29d0b69d0993f..d4bca5b5f3d10c3a04befd8c365f46433491f299 100644
|
||||
index 2f2986f9f7a241c4d7a1e065126dbbae601f7fe5..4beb1df3b5bdeb2e3de7f8e7ca9a53bf0f6be277 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -108,6 +108,38 @@ public class PurpurWorldConfig {
|
||||
@@ -36,7 +36,7 @@ index a6f408e56fa6c9de82fd93555fe21e1b11ce1022..c7377d04ceac3ea624117439783a443c
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index d4bca5b5f3d10c3a04befd8c365f46433491f299..ac44ee7789b96e60e6d1d964d64ca33a3d3c2c62 100644
|
||||
index 4beb1df3b5bdeb2e3de7f8e7ca9a53bf0f6be277..aba1a09a949da1e1c70caf665b078c8979a5f746 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -140,6 +140,15 @@ public class PurpurWorldConfig {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Logger settings (suppressing pointless logs)
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerAdvancements.java b/src/main/java/net/minecraft/server/PlayerAdvancements.java
|
||||
index c7e1f2bac3eca9bb72bf1f8c26cccb2905e1ddfc..94893039363b5fe2d7d0622d0592bce2c867b1c3 100644
|
||||
index 9fabf9322acd663c4452b562494e74aa42eb19da..b286b157bba78021efa18f01bc91b067b0bd5874 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerAdvancements.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerAdvancements.java
|
||||
@@ -199,6 +199,7 @@ public class PlayerAdvancements {
|
||||
@@ -17,19 +17,19 @@ index c7e1f2bac3eca9bb72bf1f8c26cccb2905e1ddfc..94893039363b5fe2d7d0622d0592bce2
|
||||
} else {
|
||||
this.startProgress(advancementholder, advancementprogress);
|
||||
diff --git a/src/main/java/net/minecraft/server/level/WorldGenRegion.java b/src/main/java/net/minecraft/server/level/WorldGenRegion.java
|
||||
index a6c31a558794a6e626e83176a1cbe78b6bd90f6e..8487a793e7bb2f491f47a061f413246387bc25b0 100644
|
||||
index b26a4a38144ec1b171db911bbf949b53ed35708f..b324f442106767eb70be2dec224ac4f8b6302e2c 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/WorldGenRegion.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/WorldGenRegion.java
|
||||
@@ -326,6 +326,7 @@ public class WorldGenRegion implements WorldGenLevel {
|
||||
@@ -306,6 +306,7 @@ public class WorldGenRegion implements WorldGenLevel {
|
||||
return true;
|
||||
} else {
|
||||
// Paper start - Buffer OOB setBlock calls
|
||||
+ if (!org.purpurmc.purpur.PurpurConfig.loggerSuppressSetBlockFarChunk) // Purpur
|
||||
if (!hasSetFarWarned) {
|
||||
Util.logAndPauseIfInIde("Detected setBlock in a far chunk [" + i + ", " + j + "], pos: " + String.valueOf(pos) + ", status: " + String.valueOf(this.generatingStatus) + (this.currentlyGenerating == null ? "" : ", currently generating: " + (String) this.currentlyGenerating.get()));
|
||||
Util.logAndPauseIfInIde("Detected setBlock in a far chunk [" + i + ", " + j + "], pos: " + String.valueOf(pos) + ", status: " + String.valueOf(this.generatingStep.targetStatus()) + (this.currentlyGenerating == null ? "" : ", currently generating: " + (String) this.currentlyGenerating.get()));
|
||||
hasSetFarWarned = true;
|
||||
diff --git a/src/main/java/net/minecraft/stats/ServerRecipeBook.java b/src/main/java/net/minecraft/stats/ServerRecipeBook.java
|
||||
index 4103ddf16164e3992fef0765d368282572537e29..a0cb49233b1dbf53ce9d1bcc52b8967829d0530e 100644
|
||||
index 8a2584deccbf19de8a18fcfcb9c65318b60afe57..6146ca9fef0e33601c132d4867c9399e7f8f807c 100644
|
||||
--- a/src/main/java/net/minecraft/stats/ServerRecipeBook.java
|
||||
+++ b/src/main/java/net/minecraft/stats/ServerRecipeBook.java
|
||||
@@ -125,6 +125,7 @@ public class ServerRecipeBook extends RecipeBook {
|
||||
@@ -41,7 +41,7 @@ index 4103ddf16164e3992fef0765d368282572537e29..a0cb49233b1dbf53ce9d1bcc52b89678
|
||||
} else {
|
||||
handler.accept((RecipeHolder) optional.get());
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java b/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java
|
||||
index 62f4835309df2b2deeb799609f9b1b325bf58af3..53f2ab5b380649fca95b92948e6fb64aaf66c143 100644
|
||||
index dc591702d1ad41209bb80e8d05f4ca11f20816f2..a63f090e75cf7d6561276c4297305d92cb5bbdb5 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java
|
||||
@@ -265,6 +265,7 @@ public final class CraftLegacy {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Disable outdated build check
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
index fe181ec5f8e968ff78e694f7a213c7aac718704c..6d8e9cf4ee496b8748654e792ce438f512c3d946 100644
|
||||
index 48e8b7405270632130721e87579ee2438a0f0b75..930614ebfd3d6b6e011a58bbd5310620c02582db 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
@@ -303,7 +303,7 @@ public class Main {
|
||||
@@ -273,7 +273,7 @@ public class Main {
|
||||
System.setProperty(net.minecrell.terminalconsole.TerminalConsoleAppender.JLINE_OVERRIDE_PROPERTY, "false"); // Paper
|
||||
}
|
||||
|
||||
@@ -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 6247659f33c3d21d33ec1f510523403616ea9c4f..a95dbe12a188e6bc0e65759a34ccd89cb795a2b8 100644
|
||||
index 2e3e9f572c0d29dfd9544c41b2f02f34d6b50786..521b4b0a767e06db540dc73ff5c8b114813d3168 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -1006,10 +1006,18 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -643,10 +643,18 @@ 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 - Configurable spawn chances for skeleton horses
|
||||
|
||||
if (flag1) {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Charged creeper naturally spawn
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
index c64a544bd267204d963cfa213d832e7cea45a7f3..72152e1c8fcebd9eaf19d9ee2952b7d7348e79d1 100644
|
||||
index 4cb68050f93027225b63176724b2c882902d8b71..a3b8b874dba75b0b2dfb89d8a31f875c396c9a9a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
@@ -257,6 +257,14 @@ public class Creeper extends Monster implements PowerableMob {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Rabbit naturally spawn toast and killer
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
||||
index 9eb1158213064ddb37ae76e445b5861b963a1f55..4abcde662ed78b16632ee575f695ee4329f11b2f 100644
|
||||
index 826484123d864172a73e3d0d6e16923533748ea1..6cb70392a86b166c8f8a8f3944f7abe8521e620f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
||||
@@ -466,10 +466,23 @@ public class Rabbit extends Animal implements VariantHolder<Rabbit.Variant> {
|
||||
@@ -470,10 +470,23 @@ public class Rabbit extends Animal implements VariantHolder<Rabbit.Variant> {
|
||||
}
|
||||
|
||||
this.setVariant(entityrabbit_variant);
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Fix 'outdated server' showing in ping before server fully
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerStatusPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerStatusPacketListenerImpl.java
|
||||
index 6f1c9fa89e718cbc01a8d72de34154f49c5f46db..2455f8e9679914660ec4fcd081138dabfe9c225b 100644
|
||||
index 385457c7151f7e636e1ea2e38ef983f4f532b9b5..1a44694f4792b57a39f55065a3fbc9d06be15f55 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerStatusPacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerStatusPacketListenerImpl.java
|
||||
@@ -153,6 +153,7 @@ public class ServerStatusPacketListenerImpl implements ServerStatusPacketListene
|
||||
@@ -154,6 +154,7 @@ public class ServerStatusPacketListenerImpl implements ServerStatusPacketListene
|
||||
this.connection.send(new ClientboundStatusResponsePacket(ping));
|
||||
// CraftBukkit end
|
||||
*/
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Tulips change fox type
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Fox.java b/src/main/java/net/minecraft/world/entity/animal/Fox.java
|
||||
index 8666d82775570b812d5bdd80336c8e14db6ddf47..d1866f0f07e4d023241229a45b55031a37cc5c99 100644
|
||||
index 473c857b83b87d824800eb91b2019bcf106189ae..52c11b3621a9b834de8305ff98ad7671b7905055 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Fox.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Fox.java
|
||||
@@ -389,6 +389,11 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
|
||||
@@ -57,7 +57,7 @@ index 8666d82775570b812d5bdd80336c8e14db6ddf47..d1866f0f07e4d023241229a45b55031a
|
||||
+
|
||||
@Override
|
||||
// Paper start - Cancellable death event
|
||||
protected org.bukkit.event.entity.EntityDeathEvent dropAllDeathLoot(DamageSource source) {
|
||||
protected org.bukkit.event.entity.EntityDeathEvent dropAllDeathLoot(ServerLevel world, DamageSource damageSource) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 0a3a3a776e533b56ee3f67fca64bf76f514b1ab0..7d1dd19a08ff1d57f9c9bd4b19851804427d6ef9 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Breedable Polar Bears
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/PolarBear.java b/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
index 00afde0ec4811992aac306a42d473026b7e7e468..067bb175c457d6de089f18826dfce6c3661dad67 100644
|
||||
index 9bb4fd13e3c60ed889f4acd941b48922c9a4e8df..590b015102bd1ea22da34448de2f1b7581836325 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
@@ -98,6 +98,27 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
@@ -45,10 +45,10 @@ index 00afde0ec4811992aac306a42d473026b7e7e468..067bb175c457d6de089f18826dfce6c3
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -116,6 +137,12 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
this.goalSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HasRider(this)); // Purpur
|
||||
@@ -117,6 +138,12 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
this.goalSelector.addGoal(1, new PolarBear.PolarBearMeleeAttackGoal());
|
||||
this.goalSelector.addGoal(1, new PolarBear.PolarBearPanicGoal());
|
||||
this.goalSelector
|
||||
.addGoal(1, new PanicGoal(this, 2.0, polarBear -> polarBear.isBaby() ? DamageTypeTags.PANIC_CAUSES : DamageTypeTags.PANIC_ENVIRONMENTAL_CAUSES));
|
||||
+ // Purpur start
|
||||
+ if (level().purpurConfig.polarBearBreedableItem != null) {
|
||||
+ this.goalSelector.addGoal(2, new net.minecraft.world.entity.ai.goal.BreedGoal(this, 1.0D));
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Chickens can retaliate
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Chicken.java b/src/main/java/net/minecraft/world/entity/animal/Chicken.java
|
||||
index a7c76e1d89f54f0dc3b27a8a8db168ea4570bf60..14210dac8a4fa8caaf69ec830f83d15525bb1bea 100644
|
||||
index ca213cb0b8618b85c67066236eaba87c0439376f..1ff256f2a40403f0fbefc714e3609890be3d60b6 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Chicken.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Chicken.java
|
||||
@@ -74,13 +74,16 @@ public class Chicken extends Animal {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add option to set armorstand step height
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 28c8860d145eb34911e1a54a15597d8c873df872..5ebf68635f868c17bc56a3397e3ceed7b7507aa6 100644
|
||||
index 1e274b44ab975afb522874f073469bd10a68a404..55d5ab1582ea9f2bbc9c053d981da456e93c3264 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -339,6 +339,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -343,6 +343,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
public double xOld;
|
||||
public double yOld;
|
||||
public double zOld;
|
||||
@@ -16,7 +16,7 @@ index 28c8860d145eb34911e1a54a15597d8c873df872..5ebf68635f868c17bc56a3397e3ceed7
|
||||
public boolean noPhysics;
|
||||
public final RandomSource random;
|
||||
public int tickCount;
|
||||
@@ -4857,7 +4858,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -4546,7 +4547,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
}
|
||||
|
||||
public float maxUpStep() {
|
||||
@@ -26,10 +26,10 @@ index 28c8860d145eb34911e1a54a15597d8c873df872..5ebf68635f868c17bc56a3397e3ceed7
|
||||
|
||||
public void onExplosionHit(@Nullable Entity entity) {}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
|
||||
index a02ca704e98ef42f32c3c50b111ee3537f60bf7b..ebf1d6e3431e36811f14ed09d3b891a074fbdaf2 100644
|
||||
index 2f398750bfee5758ad8b1367b6fc14364e4de776..9e6e29b9eddc94b50a32713e8ba1a53deebf02f6 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
|
||||
@@ -676,6 +676,7 @@ public class ArmorStand extends LivingEntity {
|
||||
@@ -683,6 +683,7 @@ public class ArmorStand extends LivingEntity {
|
||||
|
||||
@Override
|
||||
public void tick() {
|
||||
@@ -38,7 +38,7 @@ index a02ca704e98ef42f32c3c50b111ee3537f60bf7b..ebf1d6e3431e36811f14ed09d3b891a0
|
||||
if (!this.canTick) {
|
||||
if (this.noTickPoseDirty) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 4cd6d9309ed81956d59063fe4d229c6f930922ed..6649787fc15ca06ec2d4e7ac7b0ff061c4d4de82 100644
|
||||
index ef4f35a59d716b7927a280c4da372268ad2ff395..bc42fbcb073b8b6f278e256ac66fd514e747a1fe 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -90,6 +90,11 @@ public class PurpurWorldConfig {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Pigs give saddle back
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Pig.java b/src/main/java/net/minecraft/world/entity/animal/Pig.java
|
||||
index a365573c5c5e640f165701bc79f7c605674c5709..4f84406304114abbaff9f96a5df6a48616983fa9 100644
|
||||
index 0f7e77e4f72be611a34ebe00d9979179519c54d9..7b5080993904a41083aa534a87a6eed29afe520c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Pig.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Pig.java
|
||||
@@ -178,6 +178,17 @@ public class Pig extends Animal implements ItemSteerable, Saddleable {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Ender dragon always drop full exp
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
|
||||
index ba4c479b68c9b23e2d4f2cffa0cc8dfb12fd8c9e..ff2faa3ad719378b21f84a7839b4e0c60ea5f66f 100644
|
||||
index 4218c84f3bef499bd6ebd4df224d4dcc95f5ce6c..bf2591f163b8482d35a6e532004677199685a593 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
|
||||
@@ -747,7 +747,7 @@ public class EnderDragon extends Mob implements Enemy {
|
||||
@@ -764,7 +764,7 @@ public class EnderDragon extends Mob implements Enemy {
|
||||
boolean flag = this.level().getGameRules().getBoolean(GameRules.RULE_DOMOBLOOT);
|
||||
short short0 = 500;
|
||||
|
||||
@@ -18,7 +18,7 @@ index d59e33e7326489c6d55d316d0130f22235f4c63c..da85fabd75e9bd5ebece7127ef5b512d
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index a9d6c6713a098ca87d62b43d491bc2d9a8590741..41b804abeab390a259eb0c8ed72f75ad403471dd 100644
|
||||
index 2e851587620aca4366da17f3fe1fd79eb4d48ca0..8665e24197df9001c58389c8b79716510d17743b 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -145,6 +145,11 @@ public class PurpurWorldConfig {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Minecart settings and WASD controls
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index 70838e5ee30733a71ad73330f69ea093f73b4bd2..65fa71b587bd14494c71ae265e56de768d6b8219 100644
|
||||
index 152b80e1c7402dd02c71ca7c6f6e70bdab6bd88b..b86bdf61be2776352dd6c59b66ecfcee269f8e51 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1190,6 +1190,7 @@ public class ServerPlayer extends Player {
|
||||
@@ -1146,6 +1146,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player {
|
||||
if (this.isInvulnerableTo(source)) {
|
||||
return false;
|
||||
} else {
|
||||
@@ -17,7 +17,7 @@ index 70838e5ee30733a71ad73330f69ea093f73b4bd2..65fa71b587bd14494c71ae265e56de76
|
||||
|
||||
if (!flag && this.spawnInvulnerableTime > 0 && !source.is(DamageTypeTags.BYPASSES_INVULNERABILITY)) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
index 4d7454e5a64fc18e63793a221daa94617f17c666..97172e9c53c381d451111227feb4d1fa19d38ad8 100644
|
||||
index f403fc311a974558233028663dbe14c27b27d3f9..9ad276a73cba04edbe48f828031a15727d768a5b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
@@ -102,12 +102,14 @@ public abstract class AbstractMinecart extends VehicleEntity {
|
||||
@@ -136,10 +136,10 @@ index d524fcc191cb95d6ec7f12ae7fceeb8077bb08fc..4b8cebb321eddc852b4ec7def7f51d78
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||
index 2034ca2edd3aff61d94416266e75402babd3e741..3c1091f2a729b7d06ba6e21c37f788edb2ad1775 100644
|
||||
index 6c4a339be29bb9c07b741a1ca12de2217c8687ba..52bd9fa49649ede9d29e1c0d348cb13abf2ef1b1 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||
@@ -94,7 +94,7 @@ public abstract class BlockBehaviour implements FeatureElement {
|
||||
@@ -93,7 +93,7 @@ public abstract class BlockBehaviour implements FeatureElement {
|
||||
protected final float jumpFactor;
|
||||
protected final boolean dynamicShape;
|
||||
protected final FeatureFlagSet requiredFeatures;
|
||||
@@ -149,7 +149,7 @@ index 2034ca2edd3aff61d94416266e75402babd3e741..3c1091f2a729b7d06ba6e21c37f788ed
|
||||
protected ResourceKey<LootTable> drops;
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 41b804abeab390a259eb0c8ed72f75ad403471dd..755d53e04bb0ed678bebc3497476e252dd5a736e 100644
|
||||
index 8665e24197df9001c58389c8b79716510d17743b..ce11e8ffb0853a4d1beb91248b255d785138893b 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -95,6 +95,68 @@ public class PurpurWorldConfig {
|
||||
@@ -5,27 +5,29 @@ 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 0b542d2cb370b4ca9d04256264c8e8592743aa2f..6bdb919fa0977e8fffab63f556d5409db5d56e8f 100644
|
||||
index 8f9756736b08fbaa78b7cff9fa78657c9877e89d..fa30e935c939c3aa7dab562a25aefb8370155da3 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1858,6 +1858,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1831,7 +1831,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
boolean flag = this.lastHurtByPlayerTime > 0;
|
||||
|
||||
this.dropEquipment(); // CraftBukkit - from below
|
||||
if (this.shouldDropLoot() && this.level().getGameRules().getBoolean(GameRules.RULE_DOMOBLOOT)) {
|
||||
+ if (!(source.is(net.minecraft.world.damagesource.DamageTypes.CRAMMING) && level().purpurConfig.disableDropsOnCrammingDeath)) { // Purpur
|
||||
this.dropFromLootTable(source, flag);
|
||||
- if (this.shouldDropLoot() && world.getGameRules().getBoolean(GameRules.RULE_DOMOBLOOT)) {
|
||||
+ if (this.shouldDropLoot() && this.level().getGameRules().getBoolean(GameRules.RULE_DOMOBLOOT)) {
|
||||
+ if (!(damageSource.is(net.minecraft.world.damagesource.DamageTypes.CRAMMING) && level().purpurConfig.disableDropsOnCrammingDeath)) { // Purpur
|
||||
this.dropFromLootTable(damageSource, flag);
|
||||
// Paper start
|
||||
final boolean prev = this.clearEquipmentSlots;
|
||||
@@ -1866,6 +1867,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1840,6 +1841,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
// Paper end
|
||||
this.dropCustomDeathLoot(source, i, flag);
|
||||
this.dropCustomDeathLoot(world, damageSource, flag);
|
||||
this.clearEquipmentSlots = prev; // Paper
|
||||
+ } // Purpur
|
||||
}
|
||||
// CraftBukkit start - Call death event // Paper start - call advancement triggers with correct entity equipment
|
||||
org.bukkit.event.entity.EntityDeathEvent deathEvent = CraftEventFactory.callEntityDeathEvent(this, source, this.drops, () -> {
|
||||
org.bukkit.event.entity.EntityDeathEvent deathEvent = CraftEventFactory.callEntityDeathEvent(this, damageSource, this.drops, () -> {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 755d53e04bb0ed678bebc3497476e252dd5a736e..b7bf1a6e59e33d13887ae3d98f37658f52030e37 100644
|
||||
index ce11e8ffb0853a4d1beb91248b255d785138893b..aec526d7d148c815cd724ea886486ac7508f4440 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -95,6 +95,11 @@ public class PurpurWorldConfig {
|
||||
@@ -5,21 +5,21 @@ Subject: [PATCH] Option to toggle milk curing bad omen
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/item/MilkBucketItem.java b/src/main/java/net/minecraft/world/item/MilkBucketItem.java
|
||||
index 0f83ae4b0d5f52ff9ccfff6bbcc31153d45bd619..d0751274e89042715cab8e9e72387042356e3244 100644
|
||||
index 43c9dea6b0db7f8d6070dedcb472883ab46d9eaf..15a1f9ffbf640bffadca97e28f72b6a5d43c65d7 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/MilkBucketItem.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/MilkBucketItem.java
|
||||
@@ -26,7 +26,9 @@ public class MilkBucketItem extends Item {
|
||||
@@ -25,7 +25,9 @@ public class MilkBucketItem extends Item {
|
||||
}
|
||||
|
||||
stack.consume(1, user);
|
||||
if (!world.isClientSide) {
|
||||
+ net.minecraft.world.effect.MobEffectInstance badOmen = user.getEffect(net.minecraft.world.effect.MobEffects.BAD_OMEN); // Purpur
|
||||
user.removeAllEffects(org.bukkit.event.entity.EntityPotionEffectEvent.Cause.MILK); // CraftBukkit
|
||||
+ if (!world.purpurConfig.milkCuresBadOmen && badOmen != null) user.addEffect(badOmen); // Purpur
|
||||
}
|
||||
|
||||
return stack.isEmpty() ? new ItemStack(Items.BUCKET) : stack;
|
||||
if (user instanceof Player entityhuman) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index b7bf1a6e59e33d13887ae3d98f37658f52030e37..40493cbb1b14f16549b95aa439e4c25c04a0627c 100644
|
||||
index aec526d7d148c815cd724ea886486ac7508f4440..8f219c6074c2ee882686f59ef5128e94d2e61578 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -96,8 +96,10 @@ public class PurpurWorldConfig {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Skip events if there's no listeners
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
|
||||
index 0126906e2afc8dd525f27a0c5e82116075c9d352..758fe6a1d197cf9ea1f1c959eb6bf8091fe2cccf 100644
|
||||
index d0a2581bc87df5335c064fa7854caf0bab512e91..f12f208c1c4669b0aae35cb86b122bbf06fd884a 100644
|
||||
--- a/src/main/java/net/minecraft/commands/Commands.java
|
||||
+++ b/src/main/java/net/minecraft/commands/Commands.java
|
||||
@@ -520,6 +520,7 @@ public class Commands {
|
||||
@@ -518,6 +518,7 @@ public class Commands {
|
||||
private void runSync(ServerPlayer player, Collection<String> bukkit, RootCommandNode<SharedSuggestionProvider> rootcommandnode) {
|
||||
// Paper end - Perf: Async command map building
|
||||
new com.destroystokyo.paper.event.brigadier.AsyncPlayerSendCommandsEvent<CommandSourceStack>(player.getBukkitEntity(), (RootCommandNode) rootcommandnode, false).callEvent(); // Paper - Brigadier API
|
||||
@@ -16,7 +16,7 @@ index 0126906e2afc8dd525f27a0c5e82116075c9d352..758fe6a1d197cf9ea1f1c959eb6bf809
|
||||
PlayerCommandSendEvent event = new PlayerCommandSendEvent(player.getBukkitEntity(), new LinkedHashSet<>(bukkit));
|
||||
event.getPlayer().getServer().getPluginManager().callEvent(event);
|
||||
|
||||
@@ -530,6 +531,7 @@ public class Commands {
|
||||
@@ -528,6 +529,7 @@ public class Commands {
|
||||
}
|
||||
}
|
||||
// CraftBukkit end
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add permission for F3+N debug
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
index f10dcc0debcdd2077ee53cb1aefca8abd12f3ecd..338808ba1138f62d89f3f1338a4c5068426df0e4 100644
|
||||
index 27391592eca984295c648edefce50f3360f5be1e..09595bbd536fc84d309163923317a860f606ea7c 100644
|
||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
@@ -1180,6 +1180,7 @@ public abstract class PlayerList {
|
||||
@@ -1132,6 +1132,7 @@ public abstract class PlayerList {
|
||||
} else {
|
||||
b0 = (byte) (24 + permissionLevel);
|
||||
}
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable TPS Catchup
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 87957873de7f8cea2ae84abf04c99a42c8c3a815..843169bf1600d2edcaad8eb6c8036be20ffc3d37 100644
|
||||
index dc6271173e27df036a264ba78b31d65ae6cfede8..75ef804dda665c19e54be32ad28370c5d7158902 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1236,6 +1236,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1208,6 +1208,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
this.profiler.popPush("nextTickWait");
|
||||
this.mayHaveDelayedTasks = true;
|
||||
this.delayedTasksMaxNextTickTimeNanos = Math.max(Util.getNanos() + i, this.nextTickTimeNanos);
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add option to allow loyalty on tridents to work in the void
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java b/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java
|
||||
index 3ff06cc6ad35567bcb1f29115db63c11a8e79dbb..f7dd785bdb0dbd0706b367b48235215ff1a0e08f 100644
|
||||
index cb71f468e90f076caf2c0dcc5f2ba2745c737c22..c8dbca9573060f7d9c2a0a96a532f06d3c17728f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java
|
||||
@@ -67,7 +67,7 @@ public class ThrownTrident extends AbstractArrow {
|
||||
@@ -68,7 +68,7 @@ public class ThrownTrident extends AbstractArrow {
|
||||
Entity entity = this.getOwner();
|
||||
byte b0 = (Byte) this.entityData.get(ThrownTrident.ID_LOYALTY);
|
||||
|
||||
@@ -18,7 +18,7 @@ index 3ff06cc6ad35567bcb1f29115db63c11a8e79dbb..f7dd785bdb0dbd0706b367b48235215f
|
||||
if (!this.level().isClientSide && this.pickup == AbstractArrow.Pickup.ALLOWED) {
|
||||
this.spawnAtLocation(this.getPickupItem(), 0.1F);
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 40493cbb1b14f16549b95aa439e4c25c04a0627c..a5ec746fc30af0093430bb7a7f6848081220ec57 100644
|
||||
index 8f219c6074c2ee882686f59ef5128e94d2e61578..ce91250794af7d121f6752509135f37d68cd3e7c 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -97,9 +97,11 @@ public class PurpurWorldConfig {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add enderman and creeper griefing controls
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
index 72152e1c8fcebd9eaf19d9ee2952b7d7348e79d1..bb40ce4aa53e3ba16354fc829af9c649479635d9 100644
|
||||
index a3b8b874dba75b0b2dfb89d8a31f875c396c9a9a..5ff5959bfd8e3fb90c4b4f9edffef1b631400574 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
@@ -361,7 +361,7 @@ public class Creeper extends Monster implements PowerableMob {
|
||||
@@ -14,14 +14,14 @@ index 72152e1c8fcebd9eaf19d9ee2952b7d7348e79d1..bb40ce4aa53e3ba16354fc829af9c649
|
||||
this.dead = true;
|
||||
- this.level().explode(this, this.getX(), this.getY(), this.getZ(), event.getRadius(), event.getFire(), Level.ExplosionInteraction.MOB); // CraftBukkit // Paper - fix DamageSource API (revert to vanilla, no, just no, don't change this)
|
||||
+ this.level().explode(this, this.getX(), this.getY(), this.getZ(), event.getRadius(), event.getFire(), this.level().getGameRules().getBoolean(net.minecraft.world.level.GameRules.RULE_MOBGRIEFING) && level().purpurConfig.creeperAllowGriefing ? Level.ExplosionInteraction.MOB : Level.ExplosionInteraction.NONE); // CraftBukkit // Paper - fix DamageSource API (revert to vanilla, no, just no, don't change this) // Purpur
|
||||
this.discard(EntityRemoveEvent.Cause.EXPLODE); // CraftBukkit - add Bukkit remove cause
|
||||
this.spawnLingeringCloud();
|
||||
// CraftBukkit start
|
||||
this.triggerOnDeathMobEffects(Entity.RemovalReason.KILLED);
|
||||
this.discard(EntityRemoveEvent.Cause.EXPLODE); // CraftBukkit - add Bukkit remove cause
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
index 3abfc4f449552ec60a1f7c4e3faa9fd0ebfdc300..89275ac02fcfab963b520efae6135d6f5ac13465 100644
|
||||
index 37b1d81f6a77affe345a78fefbd86a156e9db193..12422c069c64bae0e16b3edd39e8dbe574704584 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
@@ -524,6 +524,7 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
@@ -526,6 +526,7 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
|
||||
@Override
|
||||
public boolean canUse() {
|
||||
@@ -29,7 +29,7 @@ index 3abfc4f449552ec60a1f7c4e3faa9fd0ebfdc300..89275ac02fcfab963b520efae6135d6f
|
||||
return this.enderman.getCarriedBlock() == null ? false : (!this.enderman.level().getGameRules().getBoolean(GameRules.RULE_MOBGRIEFING) ? false : this.enderman.getRandom().nextInt(reducedTickDelay(2000)) == 0);
|
||||
}
|
||||
|
||||
@@ -569,6 +570,7 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
@@ -571,6 +572,7 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
|
||||
@Override
|
||||
public boolean canUse() {
|
||||
@@ -18,7 +18,7 @@ index 13f8c2cb42334ba3b573ca44ace1d3df76e41ff7..baca552e52c728867fcb0527b6c3eb39
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java
|
||||
index d323cf157f2a910916baa9ce3f7e5bc81648c47d..6cbbca1db5362fa2dd5c5704c7fbaa612d3cbab1 100644
|
||||
index 49b35fab8ee98a384ee12d36bbe2ac813342f1d6..142bcf71448e2c54991fd144269f74c7a2e94d14 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java
|
||||
@@ -48,6 +48,7 @@ import org.bukkit.event.entity.VillagerAcquireTradeEvent;
|
||||
@@ -30,7 +30,7 @@ index d323cf157f2a910916baa9ce3f7e5bc81648c47d..6cbbca1db5362fa2dd5c5704c7fbaa61
|
||||
// CraftBukkit start
|
||||
private CraftMerchant craftMerchant;
|
||||
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 ff86c7d4878e43fc9d375b9b60213a2271b92cff..fad0d393a96d818e90aaa42f3d8d32fa97f7b337 100644
|
||||
index cd024c26d0658aa150a7d516b9b447eb72ebf26a..4a8da72d81a1938fa82dd1d2d861defd2bdac4b7 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -154,6 +154,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -42,7 +42,7 @@ index ff86c7d4878e43fc9d375b9b60213a2271b92cff..fad0d393a96d818e90aaa42f3d8d32fa
|
||||
|
||||
// Purpur start
|
||||
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 ac3cca0db4478841f91d966bd49ca4e5b5e91229..30f13bc35a96950f05b065b5c77830834e5792d1 100644
|
||||
index a4ca761f6e8e6e8f86fc20ce5e3dcf92a66b3f2a..6990d6dc306b1d25544793b365fd6f7be8a37201 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
@@ -113,6 +113,7 @@ public class WanderingTrader extends net.minecraft.world.entity.npc.AbstractVill
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Implement infinite liquids
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/material/FlowingFluid.java b/src/main/java/net/minecraft/world/level/material/FlowingFluid.java
|
||||
index c2943d892b067b3f1fb3b93301a092e912d71f08..a091c51476214977d7a9729b5c72e8478fe4a391 100644
|
||||
index 1c0712295695727ee9c4d430d4157b8e17cbd71f..3b197331f51b12b55a40f2abb6ce99ef0fb65f17 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/material/FlowingFluid.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/material/FlowingFluid.java
|
||||
@@ -217,7 +217,7 @@ public abstract class FlowingFluid extends Fluid {
|
||||
@@ -17,7 +17,7 @@ index c2943d892b067b3f1fb3b93301a092e912d71f08..a091c51476214977d7a9729b5c72e847
|
||||
BlockState iblockdata2 = world.getBlockState(pos.below());
|
||||
FluidState fluid1 = iblockdata2.getFluidState();
|
||||
|
||||
@@ -301,6 +301,12 @@ public abstract class FlowingFluid extends Fluid {
|
||||
@@ -290,6 +290,12 @@ public abstract class FlowingFluid extends Fluid {
|
||||
|
||||
protected abstract boolean canConvertToSource(Level world);
|
||||
|
||||
@@ -67,7 +67,7 @@ index 109f71401c65f476ccf6813137386fc9fef10254..9dcdb2f4001115db0c26fdbf86531dbe
|
||||
@Override
|
||||
protected void beforeDestroyingBlock(LevelAccessor world, BlockPos pos, BlockState state, BlockPos source) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index c07064174a0ef81a9bbe628251ee1346af890ae0..5e9ce4502f5219b941ffc6f341c95d39755af664 100644
|
||||
index 851014c5c02491cdbe778844251d3ec6a4236ff8..72c5c766b20622713ed6971d1d78bf0a615a5cd1 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -221,6 +221,11 @@ public class PurpurWorldConfig {
|
||||
@@ -18,7 +18,7 @@ index 4c230136d832d50ae16ffa037b0b30ff1101b50a..2d492d849ff73a738dfbcb16507feb89
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 5e9ce4502f5219b941ffc6f341c95d39755af664..09c131e3b5282d1ac1230ddc2677f2a49449dc48 100644
|
||||
index 72c5c766b20622713ed6971d1d78bf0a615a5cd1..2e47b2d81d99b7f1c2e1ee1d658e890e64c7212f 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -222,8 +222,12 @@ public class PurpurWorldConfig {
|
||||
@@ -5,12 +5,12 @@ Subject: [PATCH] Add player death exp control options
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index d5383e9cbbee2f9d4223319ae38abed41a13cfb3..a838f339dd0085660164b0eb1597e0a14e4de6f4 100644
|
||||
index 560a878acbcb488528c70106b2a39cd0f49cc55c..db8b5a85895ef68f9c492103b0530951e2b71ba3 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -1962,9 +1962,19 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -1969,9 +1969,19 @@ public abstract class Player extends LivingEntity {
|
||||
@Override
|
||||
public int getExperienceReward() {
|
||||
protected int getBaseExperienceReward() {
|
||||
if (!this.level().getGameRules().getBoolean(GameRules.RULE_KEEPINVENTORY) && !this.isSpectator()) {
|
||||
- int i = this.experienceLevel * 7;
|
||||
-
|
||||
@@ -32,7 +32,7 @@ index d5383e9cbbee2f9d4223319ae38abed41a13cfb3..a838f339dd0085660164b0eb1597e0a1
|
||||
return 0;
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 09c131e3b5282d1ac1230ddc2677f2a49449dc48..66e12893bb9d8984a8cd2916834c5e86058f47bb 100644
|
||||
index 2e47b2d81d99b7f1c2e1ee1d658e890e64c7212f..ea0268f2b8a3fc7c1b25c8d80e98096cc607031e 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -171,6 +171,8 @@ public class PurpurWorldConfig {
|
||||
Reference in New Issue
Block a user