Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@934cd77 Lifecycle Event System (#9629)
PaperMC/Paper@534659e Fix NotNull locales (#10216)
PaperMC/Paper@9c04729 Add Arrow/Stinger Removal Time API (#10193)
PaperMC/Paper@69b52b4 Check for server JARs in plugin directory (#10228)
PaperMC/Paper@cbe62d9 Add Conduit API (#10195)
PaperMC/Paper@97c0120 Fix fox drops on death (#8862)
PaperMC/Paper@581fb30 itemstack expose tooltip lines (#10185)
This commit is contained in:
granny
2024-02-10 02:48:26 -08:00
parent 00d3fac468
commit 17c5a77773
27 changed files with 108 additions and 95 deletions

View File

@@ -2,7 +2,7 @@ group = org.purpurmc.purpur
version = 1.20.4-R0.1-SNAPSHOT
mcVersion = 1.20.4
paperCommit = 9e171ef8ff0a0ec57ebc75772fc9de578c987059
paperCommit = 581fb30a4c80a8b10e41ddb0801747da53f57e62
org.gradle.caching = true
org.gradle.parallel = true

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] LivingEntity safeFallDistance
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
index 47b0154928b3d36e2602da202df07defbcf82108..d34ef2581a7f51eb484994253e3307b7952751cc 100644
index e67455efc84f1e06d3396291d104ce65fee4591b..11194fc3c63ed301d281fc4b41c4d80bbf3d9e27 100644
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
@@ -1276,4 +1276,20 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
@@ -1310,4 +1310,20 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
*/
void setBodyYaw(float bodyYaw);
// Paper end

View File

@@ -50,7 +50,7 @@ index f9af60356da4668cec8b24e73f5747ab82e35a91..b304ad1307cdd6785653b1eab9781e07
+ // Purpur end
}
diff --git a/src/main/java/org/bukkit/inventory/ItemStack.java b/src/main/java/org/bukkit/inventory/ItemStack.java
index 7adf54c561d64e6337af8a2d86f6b574b083edb5..c4c5c01132a5a43e78d004e6fc223aabc917f073 100644
index 245a730a54c4b241a9a67eccceefafd2763bd238..414e350e486a23260675778800576738fc843ed8 100644
--- a/src/main/java/org/bukkit/inventory/ItemStack.java
+++ b/src/main/java/org/bukkit/inventory/ItemStack.java
@@ -17,6 +17,18 @@ import org.bukkit.inventory.meta.ItemMeta;
@@ -72,10 +72,10 @@ index 7adf54c561d64e6337af8a2d86f6b574b083edb5..c4c5c01132a5a43e78d004e6fc223aab
/**
* Represents a stack of items.
@@ -1016,4 +1028,626 @@ public class ItemStack implements Cloneable, ConfigurationSerializable, Translat
return type.isAir() || amount <= 0;
@@ -1033,4 +1045,626 @@ public class ItemStack implements Cloneable, ConfigurationSerializable, Translat
return Bukkit.getUnsafe().computeTooltipLines(this, tooltipContext, player);
}
// Paper end
// Paper end - expose itemstack tooltip lines
+
+ // Purpur start
+ /**

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] LivingEntity#broadcastItemBreak
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
index d34ef2581a7f51eb484994253e3307b7952751cc..11493047fd7bbceed1b566bf0aae8790e4291601 100644
index 11194fc3c63ed301d281fc4b41c4d80bbf3d9e27..229edcfb9de39e2ef10597c1d65044f26eaeba48 100644
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
@@ -1291,5 +1291,12 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
@@ -1325,5 +1325,12 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
* @param safeFallDistance Safe fall distance
*/
void setSafeFallDistance(float safeFallDistance);

View File

@@ -6,7 +6,7 @@ Subject: [PATCH] API for any mob to burn daylight
Co-authored by: Encode42 <me@encode42.dev>
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
index 566c74756c66db859a4f738a7716a61d012c6df1..c20f29e1ddfd1d73df19f6d6f730fa23dc23dc7a 100644
index 8cca7e7128e2438372b5c802f76bdd14d86d874c..d3a0df7b895898578a7473c4c4b4f71694fc2bb2 100644
--- a/src/main/java/org/bukkit/entity/Entity.java
+++ b/src/main/java/org/bukkit/entity/Entity.java
@@ -1137,5 +1137,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
@@ -23,10 +23,10 @@ index 566c74756c66db859a4f738a7716a61d012c6df1..c20f29e1ddfd1d73df19f6d6f730fa23
// Purpur end
}
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
index 11493047fd7bbceed1b566bf0aae8790e4291601..7498179f6df47008c4da6ad6d67b2ce16f49e7a6 100644
index 229edcfb9de39e2ef10597c1d65044f26eaeba48..744b869c028324d5de30d2d64ab080b050fa3c47 100644
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
@@ -1298,5 +1298,19 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
@@ -1332,5 +1332,19 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
* @param slot Equipment slot to play break animation for
*/
void broadcastItemBreak(@NotNull org.bukkit.inventory.EquipmentSlot slot);

View File

@@ -24,10 +24,10 @@ index f680545b6b59bf8d2ad154b0472dda4cba42a162..58a62ba0635f9158bf18043da89aba75
+ // Purpur end
}
diff --git a/src/main/java/org/bukkit/inventory/ItemStack.java b/src/main/java/org/bukkit/inventory/ItemStack.java
index c4c5c01132a5a43e78d004e6fc223aabc917f073..d4f54956554ff66212f4f22dd21c69513ac14e0b 100644
index 414e350e486a23260675778800576738fc843ed8..54dd0bd043a37f6519fc8a318856a4825d389669 100644
--- a/src/main/java/org/bukkit/inventory/ItemStack.java
+++ b/src/main/java/org/bukkit/inventory/ItemStack.java
@@ -1649,5 +1649,14 @@ public class ItemStack implements Cloneable, ConfigurationSerializable, Translat
@@ -1666,5 +1666,14 @@ public class ItemStack implements Cloneable, ConfigurationSerializable, Translat
}
return random.nextInt(unbreaking + 1) > 0;
}

View File

@@ -2136,7 +2136,7 @@ index 6523795e715e5d472739e9bc6433143115c3de8f..317ff325f0a30d9ed83d3049cf96c538
if (this.isSpectator()) {
return false;
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 24629412d2b4acaa81788ce70412b03387cc777c..a181a298334212847166409a2121476ba5871cb2 100644
index 209090870e1a4aa2f59cfa2e29419dbcc9665635..195c86a52b1757c7aadf45babc52bfef58de1dc3 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -221,14 +221,16 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -3271,7 +3271,7 @@ index ebe65474a4a05ff1637d7f37ebcfe690af59def5..42142c512b12e5b269c19f1e821c50e7
@Nullable
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 4df3b94c8126f00188f5e125757411a0359728fa..b69c1af655a26615982f0256626bc8c9992bf694 100644
index 14d3986ae6ec721f07dc82b37d62d3bea484ad15..694995883b68bbea05e0a31b9aac413353721657 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -264,7 +264,7 @@ import javax.annotation.Nullable; // Paper
@@ -3283,7 +3283,7 @@ index 4df3b94c8126f00188f5e125757411a0359728fa..b69c1af655a26615982f0256626bc8c9
private final String serverVersion;
private final String bukkitVersion = Versioning.getBukkitVersion();
private final Logger logger = Logger.getLogger("Minecraft");
@@ -1120,6 +1120,11 @@ public final class CraftServer implements Server {
@@ -1125,6 +1125,11 @@ public final class CraftServer implements Server {
plugin.getPluginMeta().getDisplayName(),
"This plugin is not properly shutting down its async tasks when it is being shut down. This task may throw errors during the final shutdown logs and might not complete before process dies."
));
@@ -3308,7 +3308,7 @@ index 96d772eb02f79f8c478f5e6f065e387aa7665b18..c5ce412f321b8b4f31cc042893659e21
}
}
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index ca5312febcdd467889ad725c0263367bc5fe69f6..91992a5e329ea335d9e60543f9636cb5c3620a0e 100644
index 8036ed91714d638eb2a8e8c2bea4bf62bc18cb57..604c7a270349b440c87b92ab51e5aab5cdde15e2 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -482,7 +482,7 @@ public final class CraftMagicNumbers implements UnsafeValues {

View File

@@ -177,7 +177,7 @@ index 99c5038672b09d0874125e3df280174c1e8151e6..f91ea723a1c85f6cf8c4f6dd7f182b94
stringbuilder.append(CrashReport.getErrorComment());
stringbuilder.append("\n\n");
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 1dc91ef47d336abe06be1cfd90e8164605e5f37e..efebfd62ec415ca47cb116ab66a24478489fe080 100644
index d1c21d36de331905aedb08b0a8d4fbf97e100a13..a6d3f90f7867cfbda0ef406ff3ce1bd8b9f787b0 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -953,7 +953,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -199,7 +199,7 @@ index 1dc91ef47d336abe06be1cfd90e8164605e5f37e..efebfd62ec415ca47cb116ab66a24478
public SystemReport fillSystemReport(SystemReport details) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 8344f9f693879639c484edf575c7df14df616776..09f976c3a98327d95515fce5f7881b826baa11a6 100644
index 694995883b68bbea05e0a31b9aac413353721657..863c19db0ee0bdc96fa20943257fb19d32cde3fc 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -264,7 +264,7 @@ import javax.annotation.Nullable; // Paper
@@ -239,10 +239,10 @@ index 4e56018b64d11f76c8da43fd8f85c6de72204e36..9607675e6c5bff2183c4420d11fc63ee
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 4afc1c9d2a7638e84a55fe30932dc36db465c31a..ea966037755ba552dc6cf2f4792e9d23f0e77b1c 100644
index b057d4d4226e1b6f2db92f81f4efb69ce207f829..4a838de77a88d868266da286952990d898b95ee7 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -915,7 +915,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@@ -940,7 +940,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
return EntityCategory.WATER;
}
@@ -265,7 +265,7 @@ index e85b9bb3f9c225d289a4959921970b9963881199..c1e2d3a75b9d4710ab6d8b5c62af4bc1
// (async tasks must live with race-conditions if they attempt to cancel between these few lines of code)
}
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index 91992a5e329ea335d9e60543f9636cb5c3620a0e..dd9ae7cc51386550ec2c30698b55babd87615a9b 100644
index 604c7a270349b440c87b92ab51e5aab5cdde15e2..570f33eeb8cfd61db843c9915a832c4e59372978 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -482,7 +482,7 @@ public final class CraftMagicNumbers implements UnsafeValues {

View File

@@ -112,10 +112,10 @@ index d6a08f06812bc15813559eb8ff66eddf7cf22888..bce8df10ac9dfb7a9bba76fc05357c8b
this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index d564c7107fe2ac887a55461ea5107a0fb325a150..4925d320748fa62e63f2dce0a52c3869ee1ff432 100644
index 863c19db0ee0bdc96fa20943257fb19d32cde3fc..c0460e51363649d8f635e4c34a76062f69baaa08 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1037,6 +1037,7 @@ public final class CraftServer implements Server {
@@ -1042,6 +1042,7 @@ public final class CraftServer implements Server {
org.spigotmc.SpigotConfig.init((File) this.console.options.valueOf("spigot-settings")); // Spigot
this.console.paperConfigurations.reloadConfigs(this.console);
@@ -123,7 +123,7 @@ index d564c7107fe2ac887a55461ea5107a0fb325a150..4925d320748fa62e63f2dce0a52c3869
for (ServerLevel world : this.console.getAllLevels()) {
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
@@ -1052,6 +1053,7 @@ public final class CraftServer implements Server {
@@ -1057,6 +1058,7 @@ public final class CraftServer implements Server {
}
}
world.spigotConfig.init(); // Spigot
@@ -131,7 +131,7 @@ index d564c7107fe2ac887a55461ea5107a0fb325a150..4925d320748fa62e63f2dce0a52c3869
}
Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper
@@ -1067,6 +1069,7 @@ public final class CraftServer implements Server {
@@ -1072,6 +1074,7 @@ public final class CraftServer implements Server {
this.reloadData();
org.spigotmc.SpigotConfig.registerCommands(); // Spigot
io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper
@@ -139,7 +139,7 @@ index d564c7107fe2ac887a55461ea5107a0fb325a150..4925d320748fa62e63f2dce0a52c3869
this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*");
this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions");
@@ -3001,6 +3004,18 @@ public final class CraftServer implements Server {
@@ -3006,6 +3009,18 @@ public final class CraftServer implements Server {
return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console);
}

View File

@@ -46,7 +46,7 @@ index 0982d44b9dd30c13d9d879095cc9a839bbda8bdc..cdc17904cdf3d6669503e09debfbb156
public LevelChunk getChunkIfLoaded(int x, int z) {
return this.chunkSource.getChunkAtIfLoadedImmediately(x, z); // Paper - Use getChunkIfLoadedImmediately
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 6c3e5ad96ff1c33181663d89c3c227e1a96e4912..62fd29f19b93f07a87377f26d9e5b169b9d80f4f 100644
index d39a3359249e2a312da0645d5abb625d98fe4034..44409eed0b603a1e8203a35ff0263d360d81be32 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -763,6 +763,15 @@ public class ServerPlayer extends Player {
@@ -268,7 +268,7 @@ index 317ff325f0a30d9ed83d3049cf96c53838c050ee..2a3fa4cf65ba2c79de34256ae29a35b5
// Paper end - Add EntityMoveEvent
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 a181a298334212847166409a2121476ba5871cb2..76729680ea74eedd648eeaafbdfed4ee817b5675 100644
index 195c86a52b1757c7aadf45babc52bfef58de1dc3..155e2c928edb63e15c36dd831051c08a8cf2a3fc 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -148,8 +148,8 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -282,7 +282,7 @@ index a181a298334212847166409a2121476ba5871cb2..76729680ea74eedd648eeaafbdfed4ee
this.jumpControl = new JumpControl(this);
this.bodyRotationControl = this.createBodyControl();
this.navigation = this.createNavigation(world);
@@ -1390,7 +1390,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1397,7 +1397,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
protected void onOffspringSpawnedFromEgg(Player player, Mob child) {}
protected InteractionResult mobInteract(Player player, InteractionHand hand) {
@@ -291,7 +291,7 @@ index a181a298334212847166409a2121476ba5871cb2..76729680ea74eedd648eeaafbdfed4ee
}
public boolean isWithinRestriction() {
@@ -1779,4 +1779,56 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1786,4 +1786,56 @@ public abstract class Mob extends LivingEntity implements Targeting {
return itemmonsteregg == null ? null : new ItemStack(itemmonsteregg);
}
@@ -1090,7 +1090,7 @@ index 178e1e75fcd0e60a1dd2729a894df08cf4129526..2412cdb1bdaf7a558ad7235fca7ea5c7
this.setAirSupply(this.getMaxAirSupply());
} else {
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 287e52dc844c2a64dac74dad117b775f46631157..9133fc6cf8ecc5670b5c3745c882430308e7c184 100644
index 12b49510deb0494c4a70b63679f8818960f2af06..142e45f4b5f2eb90b980f5085abe104505fa7dab 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Fox.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Fox.java
@@ -144,6 +144,44 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
@@ -1154,7 +1154,7 @@ index 287e52dc844c2a64dac74dad117b775f46631157..9133fc6cf8ecc5670b5c3745c8824303
this.targetSelector.addGoal(3, new Fox.DefendTrustedTargetGoal(LivingEntity.class, false, false, (entityliving) -> {
return Fox.TRUSTED_TARGET_SELECTOR.test(entityliving) && !this.trusts(entityliving.getUUID());
}));
@@ -769,16 +809,16 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
@@ -781,16 +821,16 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
return new Vec3(0.0D, (double) (0.55F * this.getEyeHeight()), (double) (this.getBbWidth() * 0.4F));
}
@@ -1174,7 +1174,7 @@ index 287e52dc844c2a64dac74dad117b775f46631157..9133fc6cf8ecc5670b5c3745c8824303
}
}
@@ -789,16 +829,16 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
@@ -801,16 +841,16 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
}
}

View File

@@ -17,10 +17,10 @@ index bab2471616404821671264ccefd729cab8d0bf58..ae75edfaa9e4c72f11fbb7ffc66294be
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 2f0b2807b35c4d3a172e85fb8b60ef8b764ca48e..86843c71839e56e9c67eefc2604d7020688dc6f3 100644
index c0460e51363649d8f635e4c34a76062f69baaa08..b0b8c77473d1e81c753cc657c90d8fbdbdda9570 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -3247,4 +3247,11 @@ public final class CraftServer implements Server {
@@ -3252,4 +3252,11 @@ public final class CraftServer implements Server {
}
// Paper end

View File

@@ -69,10 +69,10 @@ index 2a30499fd6f4a1340f6911f0f7f079bcbe8576a3..c3c0fbe71c9af1125c80698865cb9eaf
// Purpur start
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index ea966037755ba552dc6cf2f4792e9d23f0e77b1c..32392a780eb078b792991c6f00b8eb161a3ff509 100644
index 4a838de77a88d868266da286952990d898b95ee7..d78d47a7c8583d3a8c92883e6b2e44ea1d4b8d45 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -1118,4 +1118,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@@ -1143,4 +1143,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
getHandle().knockback(strength, directionX, directionZ);
};
// Paper end

View File

@@ -5,7 +5,7 @@ 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 bc90dd132e56dbc445261c27f4cd96a54d1ab8f1..c58a727c8bbff81e719ee2a3712dd3f397eee53e 100644
index c90a488e41ef65b57818cd91403e65e5f5e19cd9..feece6ec8fda944e2fcbf7c59327d0a11d9b2885 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -308,6 +308,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -25,10 +25,10 @@ index bc90dd132e56dbc445261c27f4cd96a54d1ab8f1..c58a727c8bbff81e719ee2a3712dd3f3
}
// 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 86843c71839e56e9c67eefc2604d7020688dc6f3..b9aee99b96f46bf32866159325d0f1711156c48e 100644
index b0b8c77473d1e81c753cc657c90d8fbdbdda9570..19a306262a617ea3f72ba117a4e0de5ff6bf9a37 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -3253,5 +3253,10 @@ public final class CraftServer implements Server {
@@ -3258,5 +3258,10 @@ public final class CraftServer implements Server {
public String getServerName() {
return this.getProperties().serverName;
}

View File

@@ -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 21c0431dd8abc06773b6a8ae76908a4227225326..88e26b2653eac1898f266b7c8f9f6e0fba422a52 100644
index 310f7b5ad4d1441c186045c296aded01610c1b4a..586d6453b45efc75b4c150707f9034576ad140e1 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Fox.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Fox.java
@@ -36,6 +36,7 @@ import net.minecraft.util.RandomSource;
@@ -36,9 +36,9 @@ index 21c0431dd8abc06773b6a8ae76908a4227225326..88e26b2653eac1898f266b7c8f9f6e0f
}
List<UUID> getTrustedUUIDs() {
@@ -762,6 +769,29 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
return this.getTrustedUUIDs().contains(uuid);
@@ -769,6 +776,29 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
}
// Paper end
+ // Purpur start
+ @Override

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Allow leashing villagers
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 749de94a6e41d44a6041f67c7d0e2205e10a26ab..3cbfdb6cc09ef6fc13ecb110c751c93f93ab01bf 100644
index 155e2c928edb63e15c36dd831051c08a8cf2a3fc..9101ac55f26f130e5d4aa4b4d4a4d5003a3d1043 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -1317,6 +1317,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1324,6 +1324,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
if (!this.isAlive()) {
return InteractionResult.PASS;
} else if (this.getLeashHolder() == player) {
@@ -17,7 +17,7 @@ index 749de94a6e41d44a6041f67c7d0e2205e10a26ab..3cbfdb6cc09ef6fc13ecb110c751c93f
// Paper start - Expand EntityUnleashEvent
org.bukkit.event.player.PlayerUnleashEntityEvent event = CraftEventFactory.callPlayerUnleashEntityEvent(this, player, hand, !player.getAbilities().instabuild);
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 3a9de6da37bf12a86723f185a9cfefde123047be..1c75cbd9f998829f200c9ad679b9cd0213915607 100644
index ac8915163a7bf0bae24d7d40e9561a76a6ff02ef..7e8a0c818247b4d283e3451226db83a3bb35408b 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -185,6 +185,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Dispenser curse of binding protection
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index c77da33c38ddb9a383cb39e8a8837e67cf545bda..a05a7cf2c28b62011a3477c5155a05a93ecab548 100644
index 9101ac55f26f130e5d4aa4b4d4a4d5003a3d1043..e9b82e27730221778e38d3417d58484b139d40af 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -66,6 +66,7 @@ import net.minecraft.world.item.ProjectileWeaponItem;
@@ -16,7 +16,7 @@ index c77da33c38ddb9a383cb39e8a8837e67cf545bda..a05a7cf2c28b62011a3477c5155a05a9
import net.minecraft.world.level.GameRules;
import net.minecraft.world.level.ItemLike;
import net.minecraft.world.level.Level;
@@ -1175,6 +1176,12 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1182,6 +1183,12 @@ public abstract class Mob extends LivingEntity implements Targeting {
}
@@ -43,7 +43,7 @@ index 42d87800a328f71c5127ce5599ca4c71cc9bb1cd..7868c2f7b563792f8902d9a77dca46e0
// CraftBukkit start
Level world = pointer.level();
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index e39048f5dd6b54bd2488ac450fa2260a6c2754dd..4240c9ce3fec8ae6883fa5762e01349136fe4067 100644
index cd320e5dd330accc51d5eef34ab9429c4dd9b05d..122d17a89ac88409eecfb5a51146e21bad3055cb 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -224,6 +224,11 @@ public class PurpurWorldConfig {

View File

@@ -18,7 +18,7 @@ index 039a86034928a5eb7aaa2d7ca76a7bddcca346bd..308f67d0616e2d6bb135258f1fda53cc
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 3bf8cea369eec31b59850c0eeabaa053ac9f2e7e..bbadd5e2611b919b6931277c0225e5bdc1d3baaf 100644
index 904c87a7c21c7f0a159a3ddedfe750639946e4b1..7528aa9cdc7378536b9523c7d7f181fc9e254b35 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -303,7 +303,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -74,10 +74,10 @@ index 38fe7e5014332f45e41a3d5d91c28dd0acfdc3b0..479657ddef21f0279b361117b82549f7
this.values[this.vp++ & 255] = (int)(l * 100L / Runtime.getRuntime().maxMemory());
this.repaint();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index b9aee99b96f46bf32866159325d0f1711156c48e..22c57a3408f14a64efbcdd6550bf73166f50618e 100644
index 19a306262a617ea3f72ba117a4e0de5ff6bf9a37..d7db1bc00036184d9ac6d6edaf343ab20a29d368 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -3045,6 +3045,7 @@ public final class CraftServer implements Server {
@@ -3050,6 +3050,7 @@ public final class CraftServer implements Server {
@Override
public double[] getTPS() {
return new double[] {

View File

@@ -17,7 +17,7 @@ index cd740e4f7555a33f16bbec51e02130dbc7bb00ac..01d9a2aa583280dc3bbb035205798c09
private void performInteraction(InteractionHand enumhand, ServerGamePacketListenerImpl.EntityInteraction playerconnection_a, PlayerInteractEntityEvent event) { // CraftBukkit
ItemStack itemstack = ServerGamePacketListenerImpl.this.player.getItemInHand(enumhand);
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index fe9c41287a9e5adc8179f581fc93649a846e839e..c31cfdb7ce2964dcf61cecf441f5bc275e7ef2db 100644
index e9b82e27730221778e38d3417d58484b139d40af..8a8ddfffe83554352f1e97fd33e8afd4bb4d82c0 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -136,6 +136,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -85,7 +85,7 @@ index fe9c41287a9e5adc8179f581fc93649a846e839e..c31cfdb7ce2964dcf61cecf441f5bc27
}
@Override
@@ -1709,6 +1737,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1716,6 +1744,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
this.setLastHurtMob(target);
}

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] LivingEntity#broadcastItemBreak
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index a79273b50233cbabad37392b57e6236ad78a981a..12c7505c2ce562b3188c079952e57ae1fab5268b 100644
index d78d47a7c8583d3a8c92883e6b2e44ea1d4b8d45..a666498dd39e88d92e8bf46deb3a28e471cceedb 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -1129,5 +1129,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@@ -1154,5 +1154,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
public void setSafeFallDistance(float safeFallDistance) {
getHandle().safeFallDistance = safeFallDistance;
}

View File

@@ -22,7 +22,7 @@ index 0cc411dd39d981187c9e9a3c5eb8043b19a09b98..f7032f4ea55f5aca293c2640686238b7
// CraftBukkit end
world.broadcastEntityEvent(entityvillager2, (byte) 12);
diff --git a/src/main/java/net/minecraft/world/entity/animal/Animal.java b/src/main/java/net/minecraft/world/entity/animal/Animal.java
index 0116f6057f7db02f9971698871bf893f2dee0939..8df8a48bd1dbbb4a6835f68bd700eac2b5acf91b 100644
index d94928a78d166dd3d836261b4f99fb4f533019e7..a64ab2058d4e3439bf6ee418f3192b83c346eb85 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Animal.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Animal.java
@@ -42,6 +42,7 @@ public abstract class Animal extends AgeableMob {
@@ -47,7 +47,7 @@ index 0116f6057f7db02f9971698871bf893f2dee0939..8df8a48bd1dbbb4a6835f68bd700eac2
entityanimal.resetLove();
worldserver.broadcastEntityEvent(this, (byte) 18);
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 9496bf72eb4cda6c2675daabe5ad82e90d12e173..6d3e16e9fb043d538b9c093fb79d092fce90d75a 100644
index c1f71bf53dac227e6b8c6dbd88473fe79b6a2c64..2b69a3e860f95d4294dda8d05126f431eb7dd5b6 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Bee.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Bee.java
@@ -483,6 +483,11 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal {
@@ -63,7 +63,7 @@ index 9496bf72eb4cda6c2675daabe5ad82e90d12e173..6d3e16e9fb043d538b9c093fb79d092f
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 87642c1c2c1f39a1c2029797bab73f60c19a1080..a5b1cc957b824f8cc36693128ce05f5d556cf7d7 100644
index 83e715c9604efc9586171fd32c7cd2b339bc2349..cc665002c9aeaf9e5a0dbe83239757a544d0b976 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Cat.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Cat.java
@@ -128,6 +128,11 @@ public class Cat extends TamableAnimal implements VariantHolder<CatVariant> {
@@ -111,7 +111,7 @@ index d42c8bcd85ffb1e00d2883485bf22981611b0bc3..c501704251e5b23f697efc307ebdc906
protected void registerGoals() {
this.goalSelector.addGoal(0, new FloatGoal(this));
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 88e26b2653eac1898f266b7c8f9f6e0fba422a52..fdab9a9ad76a0ad8f83ddbff278096637fd34a50 100644
index 586d6453b45efc75b4c150707f9034576ad140e1..bc91862958fe18602d301f748ebeb73f65a4ee89 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Fox.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Fox.java
@@ -188,6 +188,11 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
@@ -126,7 +126,7 @@ index 88e26b2653eac1898f266b7c8f9f6e0fba422a52..fdab9a9ad76a0ad8f83ddbff27809663
@Override
protected void defineSynchedData() {
super.defineSynchedData();
@@ -991,8 +996,10 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
@@ -1003,8 +1008,10 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
CriteriaTriggers.BRED_ANIMALS.trigger(entityplayer2, this.animal, this.partner, entityfox);
}
@@ -140,7 +140,7 @@ index 88e26b2653eac1898f266b7c8f9f6e0fba422a52..fdab9a9ad76a0ad8f83ddbff27809663
this.partner.resetLove();
worldserver.addFreshEntityWithPassengers(entityfox, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.BREEDING); // CraftBukkit - added SpawnReason
diff --git a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
index c58b3ff4e7e5dba4543a77c2c4d9bad3911fba98..db0170fb22ee8424c29fc0d4f3c93c9eac79611c 100644
index e21fc50313052fe38ad54e5b44b3739c881ccd22..56427c987439c2d6d5652dae0f2c0a72d4eba26e 100644
--- a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
+++ b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
@@ -85,6 +85,11 @@ public class MushroomCow extends Cow implements Shearable, VariantHolder<Mushroo
@@ -172,7 +172,7 @@ index 14daac1a87e32e0ff0a610aef256e20cbfe50001..3fe751839e4a1bc266b0d9508e1e3384
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 6c7354ca03efdaf9e01d4a63f8ac38e74c0c35c8..0d5cc20029e1876b79927a89716e2ecc144791e3 100644
index 846cbac0f862ec881347325dcd6db8eaedbd0e75..fe6323d131acc3885108d18f884a4c7d6d2f4905 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,11 @@ public class Panda extends Animal {
@@ -188,7 +188,7 @@ index 6c7354ca03efdaf9e01d4a63f8ac38e74c0c35c8..0d5cc20029e1876b79927a89716e2ecc
public boolean canTakeItem(ItemStack stack) {
EquipmentSlot enumitemslot = Mob.getEquipmentSlotForItem(stack);
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 c3e8d3f2212a8e8d12e8d233c9d12463f8a44439..1bc595bb8b475aecdb106b53472678520621fcda 100644
index 9334fb348e559ee27ba38bbd51c30876206c2af4..3bb216b678eee290a9ec636fe4d8af9db687405a 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Parrot.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Parrot.java
@@ -198,6 +198,11 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
@@ -268,7 +268,7 @@ index 1d69558cccc6add5f02f1ff070c985bd5ec406c0..df7deec204ebf99afdbfe49f9a113857
protected void registerGoals() {
this.eatBlockGoal = new EatBlockGoal(this);
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 ee34cb8ee470c6ea4527ddca456d1b6d6f906f2c..f16b2d368ca247cad5764d11efa4fe754eadc6d6 100644
index 3fcc57ed165203a36b35e121c2c0cc88ba5f73b8..0e2c4140f2772b7df3222343e17e3a973d3667a9 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Turtle.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Turtle.java
@@ -108,6 +108,11 @@ public class Turtle extends Animal {
@@ -284,7 +284,7 @@ index ee34cb8ee470c6ea4527ddca456d1b6d6f906f2c..f16b2d368ca247cad5764d11efa4fe75
this.entityData.set(Turtle.HOME_POS, pos.immutable()); // Paper - called with mutablepos...
}
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 eecdb1f1d49951cb8a294d176afd12c68fb6c3b1..39a923e48750bd960f64aad248c10dd390afc239 100644
index b5c1efc1a67cdf163420b55e49baef9d78d9518f..ac184dce0f81ee0437111755c08e15c84b0dadff 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
@@ -132,6 +132,11 @@ public class Wolf extends TamableAnimal implements NeutralMob {
@@ -300,7 +300,7 @@ index eecdb1f1d49951cb8a294d176afd12c68fb6c3b1..39a923e48750bd960f64aad248c10dd3
protected void registerGoals() {
this.goalSelector.addGoal(1, new FloatGoal(this));
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 c7d9c34582b52d0bb088c624bd909ad5acb248fa..4e8f5d80949f251af2740f2e1ceee203783cc839 100644
index 48b0df2acccd0d406ba05aaeb6dfbfde57cc1366..8bad919c44f7c4c4c524ea9ad5c8e38ab891bd08 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
@@ -120,6 +120,11 @@ public class Axolotl extends Animal implements LerpingModel, VariantHolder<Axolo
@@ -316,7 +316,7 @@ index c7d9c34582b52d0bb088c624bd909ad5acb248fa..4e8f5d80949f251af2740f2e1ceee203
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 909d32553ffd7a32f44f7201fdab850e4bcfdcc7..bfdd33beb8206c8b0c96aad5b5002c8db02ae912 100644
index aace7991c198ccfe1338625e7b64b88921cefe0c..d1ada87d222e5b35c2df5a0e7b0075ec3413fa66 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
@@ -91,6 +91,10 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
@@ -346,7 +346,7 @@ index 156fd7b01853f4ad50235646a15893bb03d631b2..3be70e054c658d34c4aa598ff70c63fa
protected Brain.Provider<Frog> brainProvider() {
return Brain.provider(MEMORY_TYPES, SENSOR_TYPES);
diff --git a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java
index fef3b7d193d20c4fdd50b38c6a0371f05165a49d..93295d9683293121f2267350194f18e97b2421c2 100644
index 961f808caa60aba70075572161bcb91cd7201008..0282498c7375a73b6982efb02f3cf3215f4211b0 100644
--- a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java
+++ b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java
@@ -109,6 +109,11 @@ public class Goat extends Animal {
@@ -394,7 +394,7 @@ index 92339f5a07dcb6bf7eb1bce6d584464ebd8430b5..0251ded48eb5bdf96f0e67f6456aa159
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 7b329fa3af99742d83eca7825e2da3b6e55431ee..6045f29c641d1958371c77701e9514d9ca44b85e 100644
index b9b66f22ef39cb38bfb4dcbf4e73a0a7da596660..e11fc274f893d501235422839301a5128268199d 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
@@ -140,6 +140,11 @@ public class Llama extends AbstractChestedHorse implements VariantHolder<Llama.V
@@ -474,7 +474,7 @@ index 4835950272c2a95cbcbfe3423bb83997ec6ee2c1..aaec706b7eaa6afdf7959e6dd53cc393
return createBaseHorseAttributes().add(Attributes.MAX_HEALTH, 15.0D).add(Attributes.MOVEMENT_SPEED, (double)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 a5fd822713b56ebb2bec51364be715570ec056bb..42bfc59462f320e95c13075c8541c4c4c98a6879 100644
index 074835d3e315eb78d318e81c5fd04e5e786e9127..4d1071546f523c63b9c981e90a09393e9e4400fa 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
@@ -113,6 +113,11 @@ public class Sniffer extends Animal {
@@ -506,7 +506,7 @@ index 9b853fd05a3a851cb08d7f849b51f2b220780982..10136a5062d154456c962e7d1a99c2de
BlockPos.MutableBlockPos blockposition_mutableblockposition = pos.mutable();
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 22788892f7286f3fa6b40059b2bedaf0c6ec5ef3..80f91a11c04763c1c9ed2bd242b88b5a473560d7 100644
index 9748b32692b14bffde1506e88149939c4ed25900..fae14f6ab139e7d7a0e8625488c472f0d0c1a1e2 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
@@ -91,6 +91,11 @@ public class Hoglin extends Animal implements Enemy, HoglinBase {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Changeable Mob Left Handed Chance
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 906f3ed7883cd220734a92a5f032ec89674f5b97..f04fd84be60d5fc866aa6bf0b711c7e34c5c6369 100644
index 8a8ddfffe83554352f1e97fd33e8afd4bb4d82c0..a7b22c652ed8876a1a8da14ffcba69fccedb578f 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -1304,7 +1304,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1311,7 +1311,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
RandomSource randomsource = world.getRandom();
this.getAttribute(Attributes.FOLLOW_RANGE).addPermanentModifier(new AttributeModifier("Random spawn bonus", randomsource.triangle(0.0D, 0.11485000000000001D), AttributeModifier.Operation.MULTIPLY_BASE));
@@ -18,7 +18,7 @@ index 906f3ed7883cd220734a92a5f032ec89674f5b97..f04fd84be60d5fc866aa6bf0b711c7e3
} else {
this.setLeftHanded(false);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 06558480c2f3b9b1e81ba48fe7c7a80ea5652599..d1792d16fe745c22a2408ca7b6446348563e5b63 100644
index 26d0491025361ca2c898d9daa5a47430f9b8ed5e..8ccfa4ff11ca26ff3ac9785daa11d5a03d22649a 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -156,8 +156,10 @@ public class PurpurWorldConfig {

View File

@@ -18,7 +18,7 @@ index 2d73af861457b41447c66ce84e38bb91e0aa7bf6..2688d7d5a9427bc55f8661c7337cdeed
BlockState iblockdata = Blocks.WITHER_ROSE.defaultBlockState();
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 004d6a378d2fb4b2f6429fd10d63a73aefef6a3f..de8c9905e4fec3d77501871ae3041860f1ce2e50 100644
index a7b22c652ed8876a1a8da14ffcba69fccedb578f..a20d7b26fa032539ea8d5534280d2402b866d339 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -705,7 +705,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -92,10 +92,10 @@ index 5580a396a56c6e0f364a5368985ee99b9e2be0a8..3facfd6eee17cb0b59425494c966e198
} else if (this.nextStartTick > 0) {
--this.nextStartTick;
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 78558d24d0434fd6d90af81c38d8d9d03d79253f..292504cb09ac94f593fdde317030c7662f9e500c 100644
index bc91862958fe18602d301f748ebeb73f65a4ee89..ef2f07cd030d66797cc00932ad61282c634e8047 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Fox.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Fox.java
@@ -1385,7 +1385,7 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
@@ -1397,7 +1397,7 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
}
protected void onReachedTarget() {

View File

@@ -92,10 +92,10 @@ index 4ef9f18b59c5ff6d0dc108e82db1ec17fccd79b8..a8d7992fc2d263f6898cf3025fa15cef
public boolean isSensitiveToWater() {
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index de8c9905e4fec3d77501871ae3041860f1ce2e50..2cf0d698b341d418d0ac4760f95e3ea52c193098 100644
index a20d7b26fa032539ea8d5534280d2402b866d339..86e070c18d8127d534d2614b61b5433ace946391 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -1758,17 +1758,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1765,17 +1765,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
}
public boolean isSunBurnTick() {
@@ -370,10 +370,10 @@ index a260e3768892dcf7ddd955cf8753d4d19cd2e8d3..9304a2d06400dfa244ddb4d9591de988
Preconditions.checkArgument(entity != null, "Unknown entity");
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 9bad55be51db41252f60fd976b2c1e54945a5b01..aa45eea710cdb4bd7aa0e12eacc879826b2e98c6 100644
index a666498dd39e88d92e8bf46deb3a28e471cceedb..2e47e0d28407695569143e6c6bea4a160fa7ca45 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -1135,5 +1135,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@@ -1160,5 +1160,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
if (slot == null) return;
getHandle().broadcastBreakEvent(org.bukkit.craftbukkit.CraftEquipmentSlot.getNMS(slot));
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Conduit behavior configuration
diff --git a/src/main/java/net/minecraft/world/level/block/entity/ConduitBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/ConduitBlockEntity.java
index 963a596154091b79ca139af6274aa323518ad1ad..4dcac3899a500d8586580bcfd5b4516e1dcdcd4a 100644
index 58f2619fab37a1e2d2093ca89f66f3a8bb47d192..bcf8a30786a1da86223244cb054cd01d81a61c61 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/ConduitBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/ConduitBlockEntity.java
@@ -171,7 +171,7 @@ public class ConduitBlockEntity extends BlockEntity {
@@ -21,8 +21,8 @@ index 963a596154091b79ca139af6274aa323518ad1ad..4dcac3899a500d8586580bcfd5b4516e
private static void applyEffects(Level world, BlockPos pos, List<BlockPos> activatingBlocks) {
int i = activatingBlocks.size();
- int j = i / 7 * 16;
+ int j = i / 7 * world.purpurConfig.conduitDistance; // Purpur
- int j = i / 7 * 16; // Paper - Conduit API; diff on change
+ int j = i / 7 * world.purpurConfig.conduitDistance; // Paper - Conduit API; diff on change // Purpur
int k = pos.getX();
int l = pos.getY();
int i1 = pos.getZ();
@@ -76,6 +76,19 @@ index 963a596154091b79ca139af6274aa323518ad1ad..4dcac3899a500d8586580bcfd5b4516e
return entityliving.getUUID().equals(uuid);
});
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java b/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java
index f0b0348e105fb27c829ec29e638433c57bfd5f64..57ce4b7c5fcfe7a88928cd4124f29af39e117ed9 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java
@@ -29,7 +29,7 @@ public class CraftConduit extends CraftBlockEntityState<ConduitBlockEntity> impl
@Override
public int getRange() {
requirePlaced();
- return this.getTileEntity().effectBlocks.size() / 7 * 16;
+ return this.getTileEntity().effectBlocks.size() / 7 * this.world.getHandle().purpurConfig.conduitDistance; // Purpur
}
@Override
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 52363f3ee615bbb86ea54a72d5c0274c7699c9dd..3302b7f88ba82620e09ec900b7409267ea55c7b4 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java

View File

@@ -51,10 +51,10 @@ index acfacda5001ef188acfef8ac0d319d66ce1883fb..1d179e9485df78657ce67ab7ca4c4b1b
private int maxStack = MAX_STACK;
public List<HumanEntity> transaction = new java.util.ArrayList<HumanEntity>();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 555cffaf05116c7c0a3071c83221d10710be62e8..4e8ff16b5ca3cd2ddf2a44c7cd625fbf2311706d 100644
index d7db1bc00036184d9ac6d6edaf343ab20a29d368..2038163bd97d25560a0778d7fbdd0680ccfad46f 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1572,6 +1572,19 @@ public final class CraftServer implements Server {
@@ -1577,6 +1577,19 @@ public final class CraftServer implements Server {
return true;
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Config for mob last hurt by player time
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 1ea0a19f7acc2276c21de55d84175e38e2dad9a6..4c75007bc1b700b9c4b79dce0b63c21fec6a742e 100644
index 4207d5be195680769a5fefac1feccd925d500740..38c639d0c38e07908ac26a9c998ff06f28a09089 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -1546,13 +1546,13 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -25,10 +25,10 @@ index 1ea0a19f7acc2276c21de55d84175e38e2dad9a6..4c75007bc1b700b9c4b79dce0b63c21f
if (entityliving2 instanceof net.minecraft.world.entity.player.Player) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 10ca0fdb5b92cc4f1d346540c9129d5c55732985..a2d1c22e778aa4c3c44c3a1a604c1656cc86f0da 100644
index 2e47e0d28407695569143e6c6bea4a160fa7ca45..3811b773f8601b233db94fec765dd10bdcfb7a21 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -452,7 +452,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@@ -477,7 +477,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
net.minecraft.server.level.ServerPlayer entityPlayer = killer == null ? null : ((CraftPlayer) killer).getHandle();
getHandle().lastHurtByPlayer = entityPlayer;
getHandle().lastHurtByMob = entityPlayer;
@@ -38,7 +38,7 @@ index 10ca0fdb5b92cc4f1d346540c9129d5c55732985..a2d1c22e778aa4c3c44c3a1a604c1656
// Paper end
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 440ba9fb9c30973ea3268298923812962034b2db..6d1a29d5b9695c4f2392a82f8c1b11db220ea727 100644
index 72a96e93a67b5d745070244604fab331a1656f0b..bd053d7ca653d34d64f2773a0306f2175dff67be 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -142,6 +142,7 @@ public class PurpurWorldConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Debug Marker API
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 1718f52b4673f138fb6942839b05ae246e90d0a2..a71d49c80bc8b74216cbc83fa2af87974d85dddd 100644
index 2038163bd97d25560a0778d7fbdd0680ccfad46f..29c0c4247e94c0668c55fd5ef00f736ff76c8210 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1583,6 +1583,42 @@ public final class CraftServer implements Server {
@@ -1588,6 +1588,42 @@ public final class CraftServer implements Server {
public void removeFuel(org.bukkit.Material material) {
net.minecraft.world.level.block.entity.AbstractFurnaceBlockEntity.removeFuel(net.minecraft.world.item.ItemStack.fromBukkitCopy(new ItemStack(material)));
}