Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
c40e04e9e7 Remove wrong update call in distance map add method
58c41d0f60 [ci skip] Update log4j-api in Paper-API to 2.17.1 (#7227)
fa438331e0 [ci skip] Update shadow and remove semicolons from kotlin code
8b1734123e Fix vanilla LocalMobCapCalculator being used when per-player mob spawning is enabled (#7230)
3a43821c38 Updated Upstream (Bukkit/CraftBukkit/Spigot)
4bf2aef745 Validate usernames
3c5284dae9 Allow . in usernames
This commit is contained in:
BillyGalbreath
2022-01-01 16:01:07 -06:00
parent 5593d17308
commit 12e0430097
26 changed files with 107 additions and 104 deletions

View File

@@ -6,12 +6,12 @@ Subject: [PATCH] Build System Changes
todo: merge with rebrand patch
diff --git a/build.gradle.kts b/build.gradle.kts
index a23b2bd8e1ca1ff8d0ad5ed5d5e41c89e4795090..46877e24c8e676fcc229090b96738ea79dceeaa1 100644
index 001c2b963205012f340db0d539e4033c748124ce..1ab728d05891b3a17094a4a61b5af4ad6de5e074 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -40,6 +40,7 @@ dependencies {
apiAndDocs("net.kyori:adventure-text-serializer-plain")
api("org.apache.logging.log4j:log4j-api:2.17.0")
api("org.apache.logging.log4j:log4j-api:2.17.1")
api("org.slf4j:slf4j-api:1.8.0-beta4")
+ api("net.kyori:adventure-text-minimessage:4.1.0-SNAPSHOT") // Purpur

View File

@@ -5,12 +5,12 @@ Subject: [PATCH] ItemStack convenience methods
diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java
index f24820f14d689d49dfea25605199d5299ec28e7c..4e4fcce337047da575a9318c7094614d5270040e 100644
index 56e5ab93096801277ec5162981ddf5275d2c7669..bfcd5b17898ae97340d813bb46506234bc03e229 100644
--- a/src/main/java/org/bukkit/Material.java
+++ b/src/main/java/org/bukkit/Material.java
@@ -9832,4 +9832,40 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata
// </editor-fold>
}
@@ -9857,4 +9857,40 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata
return Bukkit.getUnsafe().getDefaultAttributeModifiers(this, slot);
}
+
+ // Purpur start

View File

@@ -503,10 +503,10 @@ index fa2a5c8ed947cd2beed01df82fcc5e450e3e5782..d5e7538f7c7f288e1710fb383b57683f
@NotNull
diff --git a/src/main/java/org/bukkit/UnsafeValues.java b/src/main/java/org/bukkit/UnsafeValues.java
index 81e17ebb54f8b5c085842f223081f3d6d33a317d..9b17e6920dc3612e1787be1b74988a24bb6ad5a7 100644
index f59030893eba2bf653207b040a5f54fdf7b7b50f..430525a74bd727c6c831aaa86784430bf7b221a8 100644
--- a/src/main/java/org/bukkit/UnsafeValues.java
+++ b/src/main/java/org/bukkit/UnsafeValues.java
@@ -88,6 +88,8 @@ public interface UnsafeValues {
@@ -94,6 +94,8 @@ public interface UnsafeValues {
/**
* Called once by the version command on first use, then cached.
@@ -515,7 +515,7 @@ index 81e17ebb54f8b5c085842f223081f3d6d33a317d..9b17e6920dc3612e1787be1b74988a24
*/
default com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {
return new com.destroystokyo.paper.util.VersionFetcher.DummyVersionFetcher();
@@ -114,6 +116,8 @@ public interface UnsafeValues {
@@ -120,6 +122,8 @@ public interface UnsafeValues {
/**
* Return the translation key for the Material, so the client can translate it into the active
* locale when using a {@link net.kyori.adventure.text.TranslatableComponent}.
@@ -524,7 +524,7 @@ index 81e17ebb54f8b5c085842f223081f3d6d33a317d..9b17e6920dc3612e1787be1b74988a24
* @return the translation key
*/
String getTranslationKey(Material mat);
@@ -121,6 +125,8 @@ public interface UnsafeValues {
@@ -127,6 +131,8 @@ public interface UnsafeValues {
/**
* Return the translation key for the Block, so the client can translate it into the active
* locale when using a {@link net.kyori.adventure.text.TranslatableComponent}.
@@ -533,7 +533,7 @@ index 81e17ebb54f8b5c085842f223081f3d6d33a317d..9b17e6920dc3612e1787be1b74988a24
* @return the translation key
*/
String getTranslationKey(org.bukkit.block.Block block);
@@ -129,6 +135,8 @@ public interface UnsafeValues {
@@ -135,6 +141,8 @@ public interface UnsafeValues {
* Return the translation key for the EntityType, so the client can translate it into the active
* locale when using a {@link net.kyori.adventure.text.TranslatableComponent}.<br>
* This is <code>null</code>, when the EntityType isn't known to NMS (custom entities)
@@ -542,7 +542,7 @@ index 81e17ebb54f8b5c085842f223081f3d6d33a317d..9b17e6920dc3612e1787be1b74988a24
* @return the translation key
*/
String getTranslationKey(org.bukkit.entity.EntityType type);
@@ -144,6 +152,8 @@ public interface UnsafeValues {
@@ -150,6 +158,8 @@ public interface UnsafeValues {
* Creates and returns the next EntityId available.
* <p>
* Use this when sending custom packets, so that there are no collisions on the client or server.

View File

@@ -17,10 +17,10 @@ index 7b23535a680d2a8534dcb8dd87770f66fb982c13..4b842e78d3e8fbca90f5f3d975bee654
public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 3c7e3d5b06409bf2e98a35d678564f0e477481a9..2e60ee66d091f01128c6467b02d0791726b5813a 100644
index 926d0a80cbb55184955ac6720948d2e86683cc57..7842e8098f044f20bee462a3c1c9ca8553b77e6a 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -3141,6 +3141,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3142,6 +3142,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
private static final ResourceLocation CUSTOM_UNREGISTER = new ResourceLocation("unregister");
private static final ResourceLocation MINECRAFT_BRAND = new ResourceLocation("brand"); // Paper - Brand support
@@ -28,7 +28,7 @@ index 3c7e3d5b06409bf2e98a35d678564f0e477481a9..2e60ee66d091f01128c6467b02d07917
@Override
public void handleCustomPayload(ServerboundCustomPayloadPacket packet) {
@@ -3165,6 +3166,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3166,6 +3167,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t unregister custom payload", ex);
this.disconnect("Invalid payload UNREGISTER!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause
}

View File

@@ -73,18 +73,18 @@ index c516ad43cac2419bcf63e11eaa183785b462de5c..618595add09eef5381307ba2fe154adf
+
}
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 2e60ee66d091f01128c6467b02d0791726b5813a..ff01b193a1f2372bc79bd864a689a6b36d53b4b8 100644
index 7842e8098f044f20bee462a3c1c9ca8553b77e6a..1b50ee29ab8721807745e052e19c67e7db6cfd18 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2452,6 +2452,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -2453,6 +2453,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
ServerGamePacketListenerImpl.this.cserver.getPluginManager().callEvent(event);
+ player.processClick(enumhand); // Purpur
+
// Fish bucket - SPIGOT-4048
if ((entity instanceof AbstractFish && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) {
ServerGamePacketListenerImpl.this.send(new ClientboundAddMobPacket((AbstractFish) entity));
// Entity in bucket - SPIGOT-4048 and SPIGOT-6859
if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) {
ServerGamePacketListenerImpl.this.send(new ClientboundAddMobPacket((LivingEntity) entity));
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 605a0e9cf68a4f698ac03b3477585861aeb354c7..43697061ddbbdf160453d3ab189097a6a56e6246 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
@@ -270,7 +270,7 @@ index fe7e22d9a69d69dfcce63faa28e90945ea45fc49..5d9e460c54068e0e05f975fa057a099c
// Paper end
if (!this.level.isClientSide && this.isSensitiveToWater() && this.isInWaterRainOrBubble()) {
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 8200e33ed4ebcae8a27cccf2a28daba5e10cf75d..b7e3091e9ce5b634c73ac573cf205278507270d5 100644
index 153d866a09f598ae08cab7dedbcddfc9ce969d4b..184798f148fd6d3224de61747bce3142c0aefa7e 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -143,6 +143,8 @@ public abstract class Mob extends LivingEntity {
@@ -2308,10 +2308,10 @@ index 51821a71bb0eb9cd22c657a46ef148c84a2355c1..a67061b875468777ee6256c0b28894c6
protected SoundEvent getAmbientSound() {
super.getAmbientSound();
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
index 5f0ccd0181dd1c84580b91fdccdcbce0a619d10d..a693f5ff830662e3a958af28503bd55a52130952 100644
index 80340a7543ff8287621c90b99b85886a5483810a..235dae1b47641fb69e6b34e419797a1a8bf499f2 100644
--- a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
@@ -29,6 +29,13 @@ public class SkeletonHorse extends AbstractHorse {
@@ -30,6 +30,13 @@ public class SkeletonHorse extends AbstractHorse {
super(type, world);
}
@@ -2323,17 +2323,18 @@ index 5f0ccd0181dd1c84580b91fdccdcbce0a619d10d..a693f5ff830662e3a958af28503bd55a
+ // Purpur end
+
public static AttributeSupplier.Builder createAttributes() {
return createBaseHorseAttributes().add(Attributes.MAX_HEALTH, 15.0D).add(Attributes.MOVEMENT_SPEED, (double)0.2F);
return createBaseHorseAttributes().add(Attributes.MAX_HEALTH, 15.0D).add(Attributes.MOVEMENT_SPEED, 0.20000000298023224D);
}
@@ -40,6 +47,7 @@ public class SkeletonHorse extends AbstractHorse {
@Override
protected void addBehaviourGoals() {
+ if (level.purpurConfig.skeletonHorseCanSwim) goalSelector.addGoal(0, new net.minecraft.world.entity.ai.goal.FloatGoal(this)); // Purpur
@@ -40,7 +47,7 @@ public class SkeletonHorse extends AbstractHorse {
}
@Override
@@ -135,7 +143,7 @@ public class SkeletonHorse extends AbstractHorse {
- protected void addBehaviourGoals() {}
+ protected void addBehaviourGoals() { if (level.purpurConfig.skeletonHorseCanSwim) goalSelector.addGoal(0, new net.minecraft.world.entity.ai.goal.FloatGoal(this)); } // Purpur
@Override
protected SoundEvent getAmbientSound() {
@@ -135,7 +142,7 @@ public class SkeletonHorse extends AbstractHorse {
@Override
public boolean rideableUnderWater() {
@@ -4101,10 +4102,10 @@ index 8ff606567297296e30e7e543890d9971d6c165b0..660b12722adbad6d80ed447b23e4718a
Vec3 vec3d1 = Vex.this.getDeltaMovement();
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 85294ab8eaa654be9358f489cec7e1ae665fc34b..84af15aae78f9f50f358a3aee43eba683bd418dd 100644
index b3a00bff85ade49b476c883350ff3563e1a4b842..489f604fda644f6cb576f1377fa31d23b1d83c48 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
+++ b/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
@@ -57,14 +57,28 @@ public class Vindicator extends AbstractIllager {
@@ -58,15 +58,29 @@ public class Vindicator extends AbstractIllager {
super(type, world);
}
@@ -4129,10 +4130,12 @@ index 85294ab8eaa654be9358f489cec7e1ae665fc34b..84af15aae78f9f50f358a3aee43eba68
this.goalSelector.addGoal(2, new AbstractIllager.RaiderOpenDoorGoal(this));
this.goalSelector.addGoal(3, new Raider.HoldGroundAttackGoal(this, 10.0F));
this.goalSelector.addGoal(4, new Vindicator.VindicatorMeleeAttackGoal(this));
- this.targetSelector.addGoal(1, (new HurtByTargetGoal(this, new Class[]{Raider.class})).setAlertOthers());
+ this.targetSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HasRider(this)); // Purpur
this.targetSelector.addGoal(1, (new HurtByTargetGoal(this, Raider.class)).setAlertOthers());
+ this.targetSelector.addGoal(1, (new HurtByTargetGoal(this, Raider.class)).setAlertOthers());
this.targetSelector.addGoal(2, new NearestAttackableTargetGoal<>(this, Player.class, true));
this.targetSelector.addGoal(3, new NearestAttackableTargetGoal<>(this, AbstractVillager.class, true));
this.targetSelector.addGoal(3, new NearestAttackableTargetGoal<>(this, IronGolem.class, true));
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 43e4562dcb0de8db42ff556134f649b5e0aa4284..75bc4ade487e92aa939b7a04bf3d22170bc6ea9e 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Witch.java
@@ -4425,7 +4428,7 @@ index ea0040a3494709efb4819c7530dbcc37aa62e86a..5025d4571a34fe9e0e58ada6b81b0647
this.level.getProfiler().pop();
PiglinBruteAi.updateActivity(this);
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 0ac3d6b25857bc5af0a4909a70053eeb86ea48ea..1b174af3c47cb49d4ee4b7a6968e24510b3730eb 100644
index ea612b3c3ed7305b504d65eb6d38ed99547fd488..ed56e4f4e35d0425546a37455af3776c65d45f66 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -151,6 +151,23 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -4561,10 +4564,10 @@ index 15744949537430d8d8ae71ea72481126c9aff7bd..36417466ae30e9f7f3e953fd4ff98ed3
Projectile(EntityType<? extends Projectile> type, Level world) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index 5893d2028679d23315a32433f6affa0c8d63c01c..f79cd24ce66fa7ea79308912a1696b3ca9bdffba 100644
index 69223b13e894d86d9529f2ef8b60a08a1f7a9267..c2581fb017f6579e59bd25e46b781aa95985abb2 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -1292,4 +1292,27 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@@ -1293,4 +1293,27 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
return getHandle().isInPowderSnow || getHandle().wasInPowderSnow; // depending on the location in the entity "tick" either could be needed.
}
// Paper end

View File

@@ -641,10 +641,10 @@ index a67061b875468777ee6256c0b28894c62ebb926c..1ba32a3ba56974425762026026d1e5ba
@Override
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
index a693f5ff830662e3a958af28503bd55a52130952..8bc2c6a3ee0eec08900b96eea3d0d545616bc513 100644
index 235dae1b47641fb69e6b34e419797a1a8bf499f2..3c3be1a40f04def3f2ffb6567fa5be0581b5608d 100644
--- a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
@@ -34,6 +34,21 @@ public class SkeletonHorse extends AbstractHorse {
@@ -35,6 +35,21 @@ public class SkeletonHorse extends AbstractHorse {
public boolean isTamed() {
return true;
}
@@ -1207,10 +1207,10 @@ index 660b12722adbad6d80ed447b23e4718a1a21d706..8747ebbc637ceb1c61a38baf063a3352
@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 84af15aae78f9f50f358a3aee43eba683bd418dd..780172760fbfe60216ac624598403c22a2fe30df 100644
index 489f604fda644f6cb576f1377fa31d23b1d83c48..c92c948989543248b22db0830a3cb1b6f7940d60 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 {
@@ -68,6 +68,11 @@ public class Vindicator extends AbstractIllager {
public boolean rideableUnderWater() {
return level.purpurConfig.vindicatorRidableInWater;
}
@@ -1390,7 +1390,7 @@ index 5025d4571a34fe9e0e58ada6b81b064716b8f672..f6734f2eb44af7b2389de5079831e0e4
public static AttributeSupplier.Builder createAttributes() {
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
index 1b174af3c47cb49d4ee4b7a6968e24510b3730eb..9a8e08e9a44900ad3899a63992948941abe7c5d8 100644
index ed56e4f4e35d0425546a37455af3776c65d45f66..6dcc96a2c939ebd0ca5e1934e69d61dfc2b5fa21 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -166,6 +166,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler

View File

@@ -68,10 +68,10 @@ index 618595add09eef5381307ba2fe154adfc97b2a0e..100d01814aca6cbb26c721f55851df27
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 ff01b193a1f2372bc79bd864a689a6b36d53b4b8..5267750302a16b43ec1ac5563322b798496234c8 100644
index 1b50ee29ab8721807745e052e19c67e7db6cfd18..5ad2118d07c190eae3e76a7c8cb6e216d12c915e 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -294,6 +294,20 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -295,6 +295,20 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
private boolean justTeleported = false;
private boolean hasMoved; // Spigot
@@ -92,7 +92,7 @@ index ff01b193a1f2372bc79bd864a689a6b36d53b4b8..5267750302a16b43ec1ac5563322b798
public CraftPlayer getCraftPlayer() {
return (this.player == null) ? null : (CraftPlayer) this.player.getBukkitEntity();
}
@@ -390,6 +404,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -391,6 +405,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
}
if (this.player.getLastActionTime() > 0L && this.server.getPlayerIdleTimeout() > 0 && Util.getMillis() - this.player.getLastActionTime() > (long) (this.server.getPlayerIdleTimeout() * 1000 * 60) && !this.player.wonGame) { // Paper - Prevent AFK kick while watching end credits.
@@ -105,7 +105,7 @@ index ff01b193a1f2372bc79bd864a689a6b36d53b4b8..5267750302a16b43ec1ac5563322b798
this.player.resetLastActionTime(); // CraftBukkit - SPIGOT-854
this.disconnect(new TranslatableComponent("multiplayer.disconnect.idling"), org.bukkit.event.player.PlayerKickEvent.Cause.IDLING); // Paper - kick event cause
}
@@ -675,6 +695,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -676,6 +696,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
this.lastYaw = to.getYaw();
this.lastPitch = to.getPitch();
@@ -114,7 +114,7 @@ index ff01b193a1f2372bc79bd864a689a6b36d53b4b8..5267750302a16b43ec1ac5563322b798
// Skip the first time we do this
if (true) { // Spigot - don't skip any move events
Location oldTo = to.clone();
@@ -1438,7 +1460,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1439,7 +1461,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
if (!this.player.isChangingDimension() && d11 > org.spigotmc.SpigotConfig.movedWronglyThreshold && !this.player.isSleeping() && !this.player.gameMode.isCreative() && this.player.gameMode.getGameModeForPlayer() != GameType.SPECTATOR) { // Spigot
flag1 = true; // Paper - diff on change, this should be moved wrongly
@@ -123,7 +123,7 @@ index ff01b193a1f2372bc79bd864a689a6b36d53b4b8..5267750302a16b43ec1ac5563322b798
}
this.player.absMoveTo(d0, d1, d2, f, f1);
@@ -1488,6 +1510,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1489,6 +1511,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
this.lastYaw = to.getYaw();
this.lastPitch = to.getPitch();
@@ -305,10 +305,10 @@ index 373bdce6590564bd9de4a571a91bbf05e287ee08..27d70e8e29902fe4275200cf75082980
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 feec2b3b832fd2c490276e4360fcf6e2b40f01cf..f5eb57fa723941f50b94ed8efb08a47a8da90e4e 100644
index 1732e753ea7748a66abecafb2136f93383f5ec4e..068238bc911d8458a321a920c3638d368449ac95 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -194,6 +194,7 @@ public class ActivationRange
@@ -195,6 +195,7 @@ public class ActivationRange
{
player.activatedTick = MinecraftServer.currentTick;

View File

@@ -82,10 +82,10 @@ index 100d01814aca6cbb26c721f55851df27dc654880..7d8853191eadf5f5d909dcc0269740d6
public Scoreboard getScoreboard() {
return this.getBukkitEntity().getScoreboard().getHandle();
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 5267750302a16b43ec1ac5563322b798496234c8..9a2920d61111fd9ff99424ea356a6b64b47eead5 100644
index 5ad2118d07c190eae3e76a7c8cb6e216d12c915e..728d6829d9fdf20176e7c8568b8acbf43fdf4d1e 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1962,12 +1962,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1963,12 +1963,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@Override
public void handleResourcePackResponse(ServerboundResourcePackPacket packet) {
PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel());
@@ -108,7 +108,7 @@ index 5267750302a16b43ec1ac5563322b798496234c8..9a2920d61111fd9ff99424ea356a6b64
this.cserver.getPluginManager().callEvent(new PlayerResourcePackStatusEvent(this.getCraftPlayer(), packStatus)); // CraftBukkit
// Paper end
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 6ec5a8a52ec06be917f2ca682f5920ed5ae1a82c..aca10a81a90c7ef81b4167b868f3893a7f67ea62 100644
index e07dd4a0d0918d306512487ee7e989c8b39a7222..0ae8af3be8d269a74dc9f64804891613a5d229b1 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -993,6 +993,8 @@ public abstract class PlayerList {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Alternative Keepalive Handling
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 9a2920d61111fd9ff99424ea356a6b64b47eead5..96f2beae139609535a4ff79809ece95d99d0f01a 100644
index 728d6829d9fdf20176e7c8568b8acbf43fdf4d1e..727f75ec771f68268904ea93b9da30427b8579fa 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -227,6 +227,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -228,6 +228,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
private long keepAliveTime = Util.getMillis();
private boolean keepAlivePending;
private long keepAliveChallenge;
@@ -16,7 +16,7 @@ index 9a2920d61111fd9ff99424ea356a6b64b47eead5..96f2beae139609535a4ff79809ece95d
// CraftBukkit start - multithreaded fields
private final AtomicInteger chatSpamTickCount = new AtomicInteger();
private final java.util.concurrent.atomic.AtomicInteger tabSpamLimiter = new java.util.concurrent.atomic.AtomicInteger(); // Paper - configurable tab spam limits
@@ -372,6 +373,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -373,6 +374,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
long currentTime = Util.getMillis();
long elapsedTime = currentTime - this.keepAliveTime;
@@ -38,7 +38,7 @@ index 9a2920d61111fd9ff99424ea356a6b64b47eead5..96f2beae139609535a4ff79809ece95d
if (this.keepAlivePending) {
if (!this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // check keepalive limit, don't fire if already disconnected
ServerGamePacketListenerImpl.LOGGER.warn("{} was kicked due to keepalive timeout!", this.player.getScoreboardName()); // more info
@@ -3133,6 +3149,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3134,6 +3150,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@Override
public void handleKeepAlive(ServerboundKeepAlivePacket packet) {

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Implement configurable search radius for villagers to spawn
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
index 7396963b9b405f7c0ff022176ce55b6f27ac3f4c..6e047f7d9a77e8da563c377e65b428479e4ca346 100644
index bda88f38a2fb24a2fb6c405ab05259defa63543d..ed97980cc89e086099ff5c343a99a12d8f3e469d 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -1032,6 +1032,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -1037,6 +1037,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@Nullable
private IronGolem trySpawnGolem(ServerLevel world) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Item entity immunities
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index cd85d1d97b8fbc8979100f2097e77070a840f3b1..07edfbf3bfb21f1c1cd2ce210aa3aafa0286ab1e 100644
index b127949def00b312266b9207264758bf60f5c136..45e2bb4d4b03f77cbf69d6bac382be39d5e28cae 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -2209,7 +2209,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -2206,7 +2206,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
public class TrackedEntity {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Allow color codes in books
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 96f2beae139609535a4ff79809ece95d99d0f01a..cceeff0b32a5b2f9fd625b28cb64c4fc24130b5f 100644
index 727f75ec771f68268904ea93b9da30427b8579fa..36b2015e9639441744fec5babcf46475d14ed13a 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1232,13 +1232,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1233,13 +1233,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
itemstack1.setTag(nbttagcompound.copy());
}
@@ -28,7 +28,7 @@ index 96f2beae139609535a4ff79809ece95d99d0f01a..cceeff0b32a5b2f9fd625b28cb64c4fc
this.updateBookPages(pages, (s) -> {
return Component.Serializer.toJson(new TextComponent(s));
@@ -1250,10 +1253,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1251,10 +1254,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
private void updateBookPages(List<TextFilter.FilteredText> list, UnaryOperator<String> unaryoperator, ItemStack itemstack, int slot, ItemStack handItem) { // CraftBukkit
ListTag nbttaglist = new ListTag();
@@ -44,7 +44,7 @@ index 96f2beae139609535a4ff79809ece95d99d0f01a..cceeff0b32a5b2f9fd625b28cb64c4fc
Objects.requireNonNull(nbttaglist);
stream.forEach(nbttaglist::add);
@@ -1263,10 +1269,10 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1264,10 +1270,10 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
for (int j = list.size(); i < j; ++i) {
TextFilter.FilteredText itextfilter_a = (TextFilter.FilteredText) list.get(i);
@@ -57,7 +57,7 @@ index 96f2beae139609535a4ff79809ece95d99d0f01a..cceeff0b32a5b2f9fd625b28cb64c4fc
if (!s.equals(s1)) {
nbttagcompound.putString(String.valueOf(i), (String) unaryoperator.apply(s1));
@@ -1282,6 +1288,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1283,6 +1289,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
this.player.getInventory().setItem(slot, CraftEventFactory.handleEditBookEvent(player, slot, handItem, itemstack)); // CraftBukkit // Paper - Don't ignore result (see other callsite for handleEditBookEvent)
}

View File

@@ -25,10 +25,10 @@ index b5d48e3979361e1b6407a1dcf0f5271542273974..71eef6cc623db385db98d3fe98ea6574
public boolean spiderRidable = false;
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
index f5eb57fa723941f50b94ed8efb08a47a8da90e4e..d96a5bc1bba1a5ed86bc5f096b7a69c34391fb9e 100644
index 068238bc911d8458a321a920c3638d368449ac95..8ab99ce9dd678d45928c262b68741f10fd38f9a3 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -14,6 +14,7 @@ import net.minecraft.world.entity.ambient.AmbientCreature;
@@ -15,6 +15,7 @@ import net.minecraft.world.entity.ambient.AmbientCreature;
import net.minecraft.world.entity.animal.Animal;
import net.minecraft.world.entity.animal.Bee;
import net.minecraft.world.entity.animal.Sheep;
@@ -36,7 +36,7 @@ index f5eb57fa723941f50b94ed8efb08a47a8da90e4e..d96a5bc1bba1a5ed86bc5f096b7a69c3
import net.minecraft.world.entity.animal.WaterAnimal;
import net.minecraft.world.entity.animal.horse.Llama;
import net.minecraft.world.entity.boss.EnderDragonPart;
@@ -357,6 +358,7 @@ public class ActivationRange
@@ -362,6 +363,7 @@ public class ActivationRange
*/
public static boolean checkIfActive(Entity entity)
{

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable villager breeding
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
index 6e047f7d9a77e8da563c377e65b428479e4ca346..4e26e288a5bccd778a405b95f3a1d61931a398d1 100644
index ed97980cc89e086099ff5c343a99a12d8f3e469d..854efbee2b67ed805ab10882a1be0a845fbbd825 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -754,7 +754,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -759,7 +759,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@Override
public boolean canBreed() {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add vindicator johnny spawn chance
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 780172760fbfe60216ac624598403c22a2fe30df..66ad217d541ce6a2071209abeedd1b688cc5d8eb 100644
index c92c948989543248b22db0830a3cb1b6f7940d60..9db267a9a52aa1bde4423711bd0ac6b9949de61b 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
+++ b/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
@@ -7,6 +7,7 @@ import java.util.function.Predicate;
@@ -16,8 +16,8 @@ index 780172760fbfe60216ac624598403c22a2fe30df..66ad217d541ce6a2071209abeedd1b68
import net.minecraft.server.level.ServerLevel;
import net.minecraft.sounds.SoundEvent;
import net.minecraft.sounds.SoundEvents;
@@ -147,6 +148,12 @@ public class Vindicator extends AbstractIllager {
((GroundPathNavigation)this.getNavigation()).setCanOpenDoors(true);
@@ -146,6 +147,12 @@ public class Vindicator extends AbstractIllager {
((GroundPathNavigation) this.getNavigation()).setCanOpenDoors(true);
this.populateDefaultEquipmentSlots(difficulty);
this.populateDefaultEquipmentEnchantments(difficulty);
+ // Purpur start
@@ -26,7 +26,7 @@ index 780172760fbfe60216ac624598403c22a2fe30df..66ad217d541ce6a2071209abeedd1b68
+ setCustomName(new TranslatableComponent("Johnny"));
+ }
+ // Purpur end
return spawnGroupData;
return groupdataentity1;
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java

View File

@@ -396,10 +396,10 @@ index 1ba32a3ba56974425762026026d1e5ba21540b3b..88e61572f5dd8d05fadab131046f74bd
@Override
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
index 8bc2c6a3ee0eec08900b96eea3d0d545616bc513..9c6c7d3bdf6dad329bca4a64dc6ea1cf8db345c6 100644
index 3c3be1a40f04def3f2ffb6567fa5be0581b5608d..e7910b0bbb061f524909757dab4c7e59c0dc40c9 100644
--- a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
@@ -49,6 +49,11 @@ public class SkeletonHorse extends AbstractHorse {
@@ -50,6 +50,11 @@ public class SkeletonHorse extends AbstractHorse {
public double generateRandomSpeed() {
return generateRandomSpeed(this.level.purpurConfig.skeletonHorseMovementSpeedMin, this.level.purpurConfig.skeletonHorseMovementSpeedMax);
}

View File

@@ -145,7 +145,7 @@ index b615dc2a2127f0874775d1707e96edfb4d95b987..72ae6b3282aac806ae11b87024ee940e
brain.setMemory(MemoryModuleType.SECONDARY_JOB_SITE, list);
} else {
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
index 4e26e288a5bccd778a405b95f3a1d61931a398d1..2c9f0dc3db951befa9152c6fe17a5c5a788df774 100644
index 854efbee2b67ed805ab10882a1be0a845fbbd825..a78b5416a850d6533b71e3d288224141d5077a77 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -215,7 +215,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -157,7 +157,7 @@ index 4e26e288a5bccd778a405b95f3a1d61931a398d1..2c9f0dc3db951befa9152c6fe17a5c5a
}
brain.addActivity(Activity.CORE, VillagerGoalPackages.getCorePackage(villagerprofession, 0.5F));
@@ -969,6 +969,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -974,6 +974,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
}
public boolean hasFarmSeeds() {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] PlayerBookTooLargeEvent
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index cceeff0b32a5b2f9fd625b28cb64c4fc24130b5f..e95c07f01730613f2df8a093b12e05b8d31a2409 100644
index 36b2015e9639441744fec5babcf46475d14ed13a..93f8d5b707811b73fb15cedc4bac83d825ba9e15 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1154,10 +1154,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1155,10 +1155,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
int maxBookPageSize = com.destroystokyo.paper.PaperConfig.maxBookPageSize;
double multiplier = Math.max(0.3D, Math.min(1D, com.destroystokyo.paper.PaperConfig.maxBookTotalSizeMultiplier));
long byteAllowed = maxBookPageSize;
@@ -21,7 +21,7 @@ index cceeff0b32a5b2f9fd625b28cb64c4fc24130b5f..e95c07f01730613f2df8a093b12e05b8
server.scheduleOnMain(() -> this.disconnect("Book too large!", org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION)); // Paper - kick event cause
return;
}
@@ -1181,6 +1183,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1182,6 +1184,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
if (byteTotal > byteAllowed) {
ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " tried to send too large of a book. Book Size: " + byteTotal + " - Allowed: "+ byteAllowed + " - Pages: " + pageList.size());

View File

@@ -21,7 +21,7 @@ index ca2bf36120ba09ed27ad7b1064431f9feffa3420..2feec97ffe62cfe063085e3767937e8a
@Override
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 861dd2603a82b26cb0f003b5defc34446feb6fdf..1c819db60f278ba902471ae69720f6ff30930886 100644
index aa0b3e5ce098660cea74d3703cdd3106d6b26be4..d2049c5d4cf2dc6469450b6ee83961adafa7736d 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -868,7 +868,7 @@ public abstract class Mob extends LivingEntity {
@@ -511,10 +511,10 @@ index 88e61572f5dd8d05fadab131046f74bd8131f42b..610282c7be7355f0800c1265cc8b19dd
@Override
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
index 9c6c7d3bdf6dad329bca4a64dc6ea1cf8db345c6..75b85b5a6ff38f32d0344a76d9f626c2d8f8077b 100644
index e7910b0bbb061f524909757dab4c7e59c0dc40c9..5683136ec1ebf6671092a635f026decfc6d7733d 100644
--- a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
@@ -54,6 +54,11 @@ public class SkeletonHorse extends AbstractHorse {
@@ -55,6 +55,11 @@ public class SkeletonHorse extends AbstractHorse {
public int getPurpurBreedTime() {
return 6000;
}
@@ -982,10 +982,10 @@ index 8747ebbc637ceb1c61a38baf063a3352aa093a1f..1606f15ee56383533b3e2bfca9cf00b6
@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 66ad217d541ce6a2071209abeedd1b688cc5d8eb..626784961ac0ee2de987ee8e5a996683960ff878 100644
index 9db267a9a52aa1bde4423711bd0ac6b9949de61b..9ce98a7682d648cf8ba9cb4892b67d764477fbc2 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
+++ b/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
@@ -73,6 +73,11 @@ public class Vindicator extends AbstractIllager {
@@ -74,6 +74,11 @@ public class Vindicator extends AbstractIllager {
public void initAttributes() {
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level.purpurConfig.vindicatorMaxHealth);
}
@@ -1142,7 +1142,7 @@ index f6734f2eb44af7b2389de5079831e0e4f8a1c742..d3a298734e4434d29b66e94fc6c299d3
public static AttributeSupplier.Builder createAttributes() {
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
index 2c9f0dc3db951befa9152c6fe17a5c5a788df774..f82d4019aba5fd89e0f8d41a4dc6e42abd228510 100644
index a78b5416a850d6533b71e3d288224141d5077a77..4420cc8f05f98a2f69507386f7f2893602ef3a59 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -179,6 +179,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Dont run with scissors!
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index e95c07f01730613f2df8a093b12e05b8d31a2409..6ac5f27c24363814961f0494ca8ca42b4da28eff 100644
index 93f8d5b707811b73fb15cedc4bac83d825ba9e15..6ce4f59b25d8b546bc7c9c1f544b49ba529ee45c 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1587,6 +1587,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1588,6 +1588,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
this.player.resetFallDistance();
}
@@ -22,7 +22,7 @@ index e95c07f01730613f2df8a093b12e05b8d31a2409..6ac5f27c24363814961f0494ca8ca42b
this.player.checkMovementStatistics(this.player.getX() - d3, this.player.getY() - d4, this.player.getZ() - d5);
this.lastGoodX = this.player.getX();
this.lastGoodY = this.player.getY();
@@ -1620,6 +1627,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1621,6 +1628,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
}
// Paper end - optimise out extra getCubes

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Config for unverified username message
diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
index 33a29890435d6065a2cc4f8e8bf8209c01d5d114..b86d5e736d786ac3c74fec3ad1285400f6f4e583 100644
index 96593919db8b140e55fe1a120c2835b679771e92..c25df7de9adf6cc06d8d49d53c51d843f61565fa 100644
--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
@@ -310,7 +310,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener
@@ -338,7 +338,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener
ServerLoginPacketListenerImpl.this.gameProfile = ServerLoginPacketListenerImpl.this.createFakeProfile(gameprofile);
ServerLoginPacketListenerImpl.this.state = ServerLoginPacketListenerImpl.State.READY_TO_ACCEPT;
} else {

View File

@@ -36,10 +36,10 @@ index 61d0fcaf3c96a2b241b35b2b21104b9fbf403160..c5c7fd414953fb432549e46918fe7e32
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 6ac5f27c24363814961f0494ca8ca42b4da28eff..6175444c9cbe1d0e00a22f9a0e877bd110c47b72 100644
index 6ce4f59b25d8b546bc7c9c1f544b49ba529ee45c..9a57f6ad29798adbd0b1d55deb47745c353fdac4 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1958,6 +1958,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1959,6 +1959,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
boolean cancelled;
if (movingobjectposition == null || movingobjectposition.getType() != HitResult.Type.BLOCK) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Option for beds to explode on villager sleep
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
index fae4a7c79baac15a06b737b6081956a55b024c8d..e95210c6deee2c6431ef01d23953174465f199e0 100644
index 9688755b7d5e8125d411404ea23a06f38c6a7a0c..5b058a8c4ecb7a8b8f5600d761b6df234c35f574 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -1156,6 +1156,12 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -1161,6 +1161,12 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@Override
public void startSleeping(BlockPos pos) {

View File

@@ -17,10 +17,10 @@ index e2e83d8b39ddb154c0e69b63d5b996644926ac43..a9885f92e0a3494b27376a7a01edbd0e
this.connection.send(new ClientboundBlockUpdatePacket(this.level, sign.getBlockPos()));
this.connection.send(new ClientboundOpenSignEditorPacket(sign.getBlockPos()));
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 6175444c9cbe1d0e00a22f9a0e877bd110c47b72..1b77d003513bb03616bb584997a2b8a3a04c3761 100644
index 9a57f6ad29798adbd0b1d55deb47745c353fdac4..05d2e761dba6351c39a5927bbb2480e0c3dc0030 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -3156,11 +3156,15 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3157,11 +3157,15 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
}
// Paper end

View File

@@ -501,10 +501,10 @@ index 610282c7be7355f0800c1265cc8b19dd557d065a..7c52b316c24c8cf55bf4a68337dd7051
@Override
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
index 75b85b5a6ff38f32d0344a76d9f626c2d8f8077b..63269c9788fdc860fdde79f1bf56f4f3b28dc72f 100644
index 5683136ec1ebf6671092a635f026decfc6d7733d..2b8c7458775363813eb6f996a008284f59e0ea40 100644
--- a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
@@ -59,6 +59,11 @@ public class SkeletonHorse extends AbstractHorse {
@@ -60,6 +60,11 @@ public class SkeletonHorse extends AbstractHorse {
public boolean isSensitiveToWater() {
return this.level.purpurConfig.skeletonHorseTakeDamageFromWater;
}
@@ -965,10 +965,10 @@ index 1606f15ee56383533b3e2bfca9cf00b63c7c474a..6b450486e50d95a65b3ef8d0521d14e3
@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 626784961ac0ee2de987ee8e5a996683960ff878..fe9acbae2ddf69c97582d283fa3d8a266298df3f 100644
index 9ce98a7682d648cf8ba9cb4892b67d764477fbc2..9c0af17c7732216e4c2e9f62fe4523dac0aea8c2 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
+++ b/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
@@ -78,6 +78,11 @@ public class Vindicator extends AbstractIllager {
@@ -79,6 +79,11 @@ public class Vindicator extends AbstractIllager {
public boolean isSensitiveToWater() {
return this.level.purpurConfig.vindicatorTakeDamageFromWater;
}
@@ -1125,7 +1125,7 @@ index d3a298734e4434d29b66e94fc6c299d34e0ad432..eb194daac43571a5eb6282c1465a695d
public static AttributeSupplier.Builder createAttributes() {
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
index e95210c6deee2c6431ef01d23953174465f199e0..efb98dd788b5b8ce51c92847c585e5ee9c0465f3 100644
index 5b058a8c4ecb7a8b8f5600d761b6df234c35f574..be19a48e9127b24856212ab39a11e00ec1941a52 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -184,6 +184,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler