mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 08:27:43 +01:00
temporarily remove pufferfish, closes #1625
This commit is contained in:
@@ -5,12 +5,12 @@ Subject: [PATCH] Rebrand
|
||||
|
||||
|
||||
diff --git a/src/main/java/io/papermc/paper/ServerBuildInfo.java b/src/main/java/io/papermc/paper/ServerBuildInfo.java
|
||||
index a7c0936a1ee80618f9a504087c88814f738f4693..7196594e07af19a14c320d77df893978525fe386 100644
|
||||
index 652ff54e7c50412503725d628bfe72ed03059790..fb1fe2651e53a9bf46b3632c638e13eea9dcda93 100644
|
||||
--- a/src/main/java/io/papermc/paper/ServerBuildInfo.java
|
||||
+++ b/src/main/java/io/papermc/paper/ServerBuildInfo.java
|
||||
@@ -26,6 +26,13 @@ public interface ServerBuildInfo {
|
||||
Key BRAND_PUFFERFISH_ID = Key.key("pufferfish", "pufferfish");
|
||||
// Purpur end
|
||||
@@ -19,6 +19,12 @@ public interface ServerBuildInfo {
|
||||
*/
|
||||
Key BRAND_PAPER_ID = Key.key("papermc", "paper");
|
||||
|
||||
+ // Purpur start
|
||||
+ /**
|
||||
@@ -18,7 +18,6 @@ index a7c0936a1ee80618f9a504087c88814f738f4693..7196594e07af19a14c320d77df893978
|
||||
+ */
|
||||
+ Key BRAND_PURPUR_ID = Key.key("purpurmc", "purpur");
|
||||
+ // Purpur end
|
||||
+
|
||||
/**
|
||||
* Gets the {@code ServerBuildInfo}.
|
||||
*
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Build System Changes
|
||||
|
||||
|
||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||
index 5ceaca1bd75335f85b4876a394ea8c2643cda694..49546dfbb4dd006b5a2419908890ba4c2a0e207a 100644
|
||||
index 571534b42cd9c33d6a7bb6fe3bf3a28e33f8e5de..ff4b6b735bf0117845cdb316af115079937792ed 100644
|
||||
--- a/build.gradle.kts
|
||||
+++ b/build.gradle.kts
|
||||
@@ -170,6 +170,8 @@ tasks.jar {
|
||||
@@ -162,6 +162,8 @@ tasks.jar {
|
||||
}
|
||||
|
||||
tasks.withType<Javadoc> {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add log suppression for LibraryLoader
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
index 45a9ca8969f635d20cc44c062fda85bbccd8f8ff..e2b631fc160f13ea6e27b69f835bbdf83d6d3dec 100644
|
||||
index b412aaf08901d169ac9fc89b36f9d6ccb95c53d3..43a0de7394eb786e9c87611003cc820424979205 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
@@ -55,6 +55,7 @@ public final class JavaPluginLoader implements PluginLoader {
|
||||
@@ -5,21 +5,21 @@ Subject: [PATCH] Rebrand
|
||||
|
||||
|
||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||
index 83e2c8784eaa77851e9efc6b889d673c1fd046d0..624588207afdc52adae14e5de3d18fe1c330d832 100644
|
||||
index 2da91ed6363c0851e4c459188f5e8ef5475e0c97..8e1d6848e5da82db4c38c27af6bef71c6d843036 100644
|
||||
--- a/build.gradle.kts
|
||||
+++ b/build.gradle.kts
|
||||
@@ -25,7 +25,7 @@ abstract class MockitoAgentProvider : CommandLineArgumentProvider {
|
||||
// Paper end - configure mockito agent that is needed in newer java versions
|
||||
|
||||
dependencies {
|
||||
- implementation(project(":pufferfish-api")) // Pufferfish // Paper
|
||||
- implementation(project(":paper-api"))
|
||||
+ implementation(project(":purpur-api")) // Pufferfish // Paper // Purpur - Rebrand
|
||||
implementation("ca.spottedleaf:concurrentutil:0.0.2") // Paper - Add ConcurrentUtil dependency
|
||||
// Paper start
|
||||
implementation("org.jline:jline-terminal-ffm:3.27.1") // use ffm on java 22+
|
||||
@@ -68,6 +68,10 @@ dependencies {
|
||||
}
|
||||
// Pufferfish end
|
||||
@@ -61,6 +61,10 @@ dependencies {
|
||||
runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.18")
|
||||
runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.18")
|
||||
|
||||
+ implementation("org.mozilla:rhino-runtime:1.7.14") // Purpur - Rebrand
|
||||
+ implementation("org.mozilla:rhino-engine:1.7.14") // Purpur - Rebrand
|
||||
@@ -28,27 +28,27 @@ index 83e2c8784eaa77851e9efc6b889d673c1fd046d0..624588207afdc52adae14e5de3d18fe1
|
||||
testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test
|
||||
testImplementation("org.junit.jupiter:junit-jupiter:5.10.2")
|
||||
testImplementation("org.junit.platform:junit-platform-suite-engine:1.10.0")
|
||||
@@ -115,14 +119,14 @@ tasks.jar {
|
||||
@@ -100,14 +104,14 @@ tasks.jar {
|
||||
val gitBranch = git("rev-parse", "--abbrev-ref", "HEAD").getText().trim() // Paper
|
||||
attributes(
|
||||
"Main-Class" to "org.bukkit.craftbukkit.Main",
|
||||
- "Implementation-Title" to "Pufferfish", // Pufferfish
|
||||
- "Implementation-Title" to "Paper",
|
||||
+ "Implementation-Title" to "Purpur", // Pufferfish // Purpur - Rebrand
|
||||
"Implementation-Version" to implementationVersion,
|
||||
"Implementation-Vendor" to date, // Paper
|
||||
- "Specification-Title" to "Pufferfish", // Pufferfish
|
||||
- "Specification-Title" to "Paper",
|
||||
+ "Specification-Title" to "Purpur", // Pufferfish // Purpur - Rebrand
|
||||
"Specification-Version" to project.version,
|
||||
- "Specification-Vendor" to "Pufferfish Studios LLC", // Pufferfish
|
||||
- "Brand-Id" to "pufferfish:pufferfish", // Pufferfish
|
||||
- "Brand-Name" to "Pufferfish", // Pufferfish
|
||||
- "Specification-Vendor" to "Paper Team",
|
||||
- "Brand-Id" to "papermc:paper",
|
||||
- "Brand-Name" to "Paper",
|
||||
+ "Specification-Vendor" to "Purpur Team", // Pufferfish // Purpur - Rebrand
|
||||
+ "Brand-Id" to "purpurmc:purpur", // Pufferfish // Purpur - Rebrand
|
||||
+ "Brand-Name" to "Purpur", // Pufferfish // Purpur - Rebrand
|
||||
"Build-Number" to (build ?: ""),
|
||||
"Build-Time" to Instant.now().toString(),
|
||||
"Git-Branch" to gitBranch, // Paper
|
||||
@@ -188,7 +192,7 @@ fun TaskContainer.registerRunTask(
|
||||
@@ -173,7 +177,7 @@ fun TaskContainer.registerRunTask(
|
||||
name: String,
|
||||
block: JavaExec.() -> Unit
|
||||
): TaskProvider<JavaExec> = register<JavaExec>(name) {
|
||||
@@ -151,35 +151,35 @@ index 6ee39b534b8d992655bc0cef3c299d12cbae0034..bc7e4e5560708fea89c584b1d8b471f4
|
||||
.completer(new ConsoleCommandCompleter(this.server))
|
||||
.option(LineReader.Option.COMPLETE_IN_WORD, true);
|
||||
diff --git a/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java b/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java
|
||||
index 19d602e4e6fa5abf59559eab4132677b09a967a1..0843e7c5c335a58d955a0841f2e02a9e4ac824d9 100644
|
||||
index 790bad0494454ca12ee152e3de6da3da634d9b20..b36e30fd4057a938e4d90cb42a2dca661f16478e 100644
|
||||
--- a/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java
|
||||
+++ b/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java
|
||||
@@ -32,6 +32,7 @@ public record ServerBuildInfoImpl(
|
||||
@@ -31,6 +31,7 @@ public record ServerBuildInfoImpl(
|
||||
private static final String ATTRIBUTE_GIT_COMMIT = "Git-Commit";
|
||||
|
||||
private static final String BRAND_PAPER_NAME = "Paper";
|
||||
private static final String BRAND_PUFFERFISH_NAME = "Pufferfish"; // Purpur - Fix pufferfish issues
|
||||
+ private static final String BRAND_PURPUR_NAME = "Purpur"; // Purpur - Rebrand
|
||||
|
||||
private static final String BUILD_DEV = "DEV";
|
||||
|
||||
@@ -43,9 +44,9 @@ public record ServerBuildInfoImpl(
|
||||
@@ -42,9 +43,9 @@ public record ServerBuildInfoImpl(
|
||||
this(
|
||||
getManifestAttribute(manifest, ATTRIBUTE_BRAND_ID)
|
||||
.map(Key::key)
|
||||
- .orElse(BRAND_PUFFERFISH_ID), // Purpur - Fix pufferfish issues
|
||||
- .orElse(BRAND_PAPER_ID),
|
||||
+ .orElse(BRAND_PURPUR_ID), // Purpur - Fix pufferfish issues // Purpur - Rebrand
|
||||
getManifestAttribute(manifest, ATTRIBUTE_BRAND_NAME)
|
||||
- .orElse(BRAND_PUFFERFISH_NAME), // Purpur - Fix pufferfish issues
|
||||
- .orElse(BRAND_PAPER_NAME),
|
||||
+ .orElse(BRAND_PURPUR_NAME), // Purpur - Fix pufferfish issues // Purpur - Rebrand
|
||||
SharedConstants.getCurrentVersion().getId(),
|
||||
SharedConstants.getCurrentVersion().getName(),
|
||||
getManifestAttribute(manifest, ATTRIBUTE_BUILD_NUMBER)
|
||||
@@ -62,7 +63,7 @@ public record ServerBuildInfoImpl(
|
||||
@@ -61,7 +62,7 @@ public record ServerBuildInfoImpl(
|
||||
|
||||
@Override
|
||||
public boolean isBrandCompatible(final @NotNull Key brandId) {
|
||||
- return brandId.equals(this.brandId) || brandId.equals(BRAND_PAPER_ID); // Purpur - Fix pufferfish issues
|
||||
+ return brandId.equals(this.brandId) || brandId.equals(BRAND_PAPER_ID) || brandId.equals(BRAND_PUFFERFISH_ID); // Purpur - Fix pufferfish issues // Purpur - Rebrand
|
||||
- return brandId.equals(this.brandId);
|
||||
+ return brandId.equals(this.brandId) || brandId.equals(BRAND_PAPER_ID); // Purpur - Fix pufferfish issues // Purpur - Rebrand
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -267,27 +267,27 @@ index 1354ccfbf525e5e64483ac5f443cc2325ba63850..2e7c3d4befeb6256ce81ecaa9ed4e8fb
|
||||
// (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 6ef651e6dc16bad45aeb76f8e17b97871c506a64..d60e190ce5bfb0f57d282b8471faf61de5977076 100644
|
||||
index 15892c7769caa15f3d52a1ee2147cf9615aa0e25..d60e190ce5bfb0f57d282b8471faf61de5977076 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -505,7 +505,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
// Paper start
|
||||
@Override
|
||||
public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {
|
||||
- return new gg.pufferfish.pufferfish.PufferfishVersionFetcher(); // Pufferfish
|
||||
- return new com.destroystokyo.paper.PaperVersionFetcher();
|
||||
+ return new com.destroystokyo.paper.PaperVersionFetcher(); // Pufferfish // Purpur - Rebrand
|
||||
}
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
|
||||
index 80553face9c70c2a3d897681e7761df85b22d464..99eb04643fce44c37fd96c99756837ccafe7b559 100644
|
||||
index 774556a62eb240da42e84db4502e2ed43495be17..99eb04643fce44c37fd96c99756837ccafe7b559 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
|
||||
@@ -11,7 +11,7 @@ public final class Versioning {
|
||||
public static String getBukkitVersion() {
|
||||
String result = "Unknown-Version";
|
||||
|
||||
- InputStream stream = Bukkit.class.getClassLoader().getResourceAsStream("META-INF/maven/gg.pufferfish.pufferfish/pufferfish-api/pom.properties"); // Pufferfish
|
||||
- InputStream stream = Bukkit.class.getClassLoader().getResourceAsStream("META-INF/maven/io.papermc.paper/paper-api/pom.properties");
|
||||
+ InputStream stream = Bukkit.class.getClassLoader().getResourceAsStream("META-INF/maven/org.purpurmc.purpur/purpur-api/pom.properties"); // Pufferfish // Purpur - Rebrand
|
||||
Properties properties = new Properties();
|
||||
|
||||
@@ -5,14 +5,14 @@ Subject: [PATCH] Purpur config files
|
||||
|
||||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java
|
||||
index 8433c3ac440faa969069d1929b8b77fcb1080be7..be1bb14dca9367b9685841985b6198376986c496 100644
|
||||
index 8f62879582195d8ae4f64bd23f752fa133b1c973..be1bb14dca9367b9685841985b6198376986c496 100644
|
||||
--- a/src/main/java/com/destroystokyo/paper/Metrics.java
|
||||
+++ b/src/main/java/com/destroystokyo/paper/Metrics.java
|
||||
@@ -592,7 +592,7 @@ public class Metrics {
|
||||
boolean logFailedRequests = config.getBoolean("logFailedRequests", false);
|
||||
// Only start Metrics, if it's enabled in the config
|
||||
if (config.getBoolean("enabled", true)) {
|
||||
- Metrics metrics = new Metrics("Pufferfish", serverUUID, logFailedRequests, Bukkit.getLogger()); // Pufferfish
|
||||
- Metrics metrics = new Metrics("Paper", serverUUID, logFailedRequests, Bukkit.getLogger());
|
||||
+ Metrics metrics = new Metrics("Purpur", serverUUID, logFailedRequests, Bukkit.getLogger()); // Pufferfish // Purpur - Purpur config files
|
||||
|
||||
metrics.addCustomChart(new Metrics.SimplePie("minecraft_version", () -> {
|
||||
@@ -26,11 +26,11 @@ index 8433c3ac440faa969069d1929b8b77fcb1080be7..be1bb14dca9367b9685841985b619837
|
||||
- final String implVersion = org.bukkit.craftbukkit.Main.class.getPackage().getImplementationVersion();
|
||||
- if (implVersion != null) {
|
||||
- final String buildOrHash = implVersion.substring(implVersion.lastIndexOf('-') + 1);
|
||||
- paperVersion = "git-Pufferfish-%s-%s".formatted(Bukkit.getServer().getMinecraftVersion(), buildOrHash); // Pufferfish
|
||||
- paperVersion = "git-Paper-%s-%s".formatted(Bukkit.getServer().getMinecraftVersion(), buildOrHash);
|
||||
- } else {
|
||||
- paperVersion = "unknown";
|
||||
- }
|
||||
- metrics.addCustomChart(new Metrics.SimplePie("pufferfish_version", () -> paperVersion)); // Pufferfish
|
||||
- metrics.addCustomChart(new Metrics.SimplePie("paper_version", () -> paperVersion));
|
||||
+ metrics.addCustomChart(new Metrics.SimplePie("online_mode", () -> Bukkit.getOnlineMode() ? "online" : (io.papermc.paper.configuration.GlobalConfiguration.get().proxies.isProxyOnlineMode() ? "bungee" : "offline"))); // Purpur - Purpur config files
|
||||
+ metrics.addCustomChart(new Metrics.SimplePie("purpur_version", () -> (org.bukkit.craftbukkit.Main.class.getPackage().getImplementationVersion() != null) ? org.bukkit.craftbukkit.Main.class.getPackage().getImplementationVersion() : "unknown")); // Purpur - Purpur config files
|
||||
|
||||
@@ -72,7 +72,7 @@ index 13bd145b1e8006a53c22f5dc0c78f29b540c7663..7b2daf47e411362a462019a1612a99c9
|
||||
boolean flag1 = this.source.acceptsSuccess() && !this.silent;
|
||||
boolean flag2 = broadcastToOps && this.source.shouldInformAdmins() && !this.silent;
|
||||
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
index 8ccf355a2541c8fb725c312c6955bb6cf624ff0f..135dd18f143e2cfe21ac35019aee61f6cdc80ef7 100644
|
||||
index 17a158ff6ce6520b69a5a0032ba4c05449dd0cf8..cf63c64b8c2ac148b83325209940713a91b91bad 100644
|
||||
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
@@ -235,6 +235,15 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
||||
@@ -89,10 +89,10 @@ index 8ccf355a2541c8fb725c312c6955bb6cf624ff0f..135dd18f143e2cfe21ac35019aee61f6
|
||||
+ org.purpurmc.purpur.PurpurConfig.registerCommands();
|
||||
+ // Purpur end - Purpur config files
|
||||
com.destroystokyo.paper.VersionHistoryManager.INSTANCE.getClass(); // Paper - load version history now
|
||||
gg.pufferfish.pufferfish.PufferfishConfig.pufferfishFile = (java.io.File) options.valueOf("pufferfish-settings"); // Purpur - Fix pufferfish issues
|
||||
gg.pufferfish.pufferfish.PufferfishConfig.load(); // Pufferfish
|
||||
|
||||
this.setPvpAllowed(dedicatedserverproperties.pvp);
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 6470f145e2470574a40ddce6ca5bf924c1bb094c..62d4ccafc005ff00c17db9863db56b9ec77735c7 100644
|
||||
index 27f9d167b5ae9ce5117798ea44324107df59425f..f3c5e076558cd8d7b9d9b3212872f8675670b2dd 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -175,6 +175,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||
@@ -159,13 +159,13 @@ index 97b5d6ba2b19a7c730730c74175a29157aed1840..cc2f23613644126c3f7506b26db8e6a8
|
||||
public void restart() {
|
||||
org.spigotmc.RestartCommand.restart();
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
index d74f885fcdf686359f761aa7356fe03cf293ee59..31b08d0c879ca7af6e186bf93095cd01e2565fcf 100644
|
||||
index 1c2439ffc1e407ff69286817d22f127470ce07ba..d313f3a9b31d4ecc3b48f8fc2e44d3b445e8e2c5 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
@@ -183,6 +183,13 @@ public class Main {
|
||||
.defaultsTo(new File("pufferfish.yml"))
|
||||
.describedAs("Yml file");
|
||||
// Purpur end - Fix pufferfish issues
|
||||
@@ -176,6 +176,13 @@ public class Main {
|
||||
.describedAs("Jar file");
|
||||
// Paper end
|
||||
|
||||
+ // Purpur start - Purpur config files
|
||||
+ acceptsAll(asList("purpur", "purpur-settings"), "File for purpur settings")
|
||||
+ .withRequiredArg()
|
||||
@@ -22,10 +22,10 @@ index faffd87c357511ef00646971a16acf1009362c59..6714b4a39180affd101f1cab0d587cf2
|
||||
super(x, y, z);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 312edb4c47a404c1d20e6bdf748a4ccb49a330f4..1e00cdcf16f1c7ca8dde8eaabea400819c2ebdb5 100644
|
||||
index ae4ebf509837e8d44255781c61d02873f8b74be8..ce4ce361061932162ace58070d44d1aa70189dbd 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1864,6 +1864,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1857,6 +1857,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
worldserver.hasEntityMoveEvent = io.papermc.paper.event.entity.EntityMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper - Add EntityMoveEvent
|
||||
net.minecraft.world.level.block.entity.HopperBlockEntity.skipHopperEvents = worldserver.paperConfig().hopper.disableMoveEvent || org.bukkit.event.inventory.InventoryMoveItemEvent.getHandlerList().getRegisteredListeners().length == 0; // Paper - Perf: Optimize Hoppers
|
||||
worldserver.updateLagCompensationTick(); // Paper - lag compensation
|
||||
@@ -34,7 +34,7 @@ index 312edb4c47a404c1d20e6bdf748a4ccb49a330f4..1e00cdcf16f1c7ca8dde8eaabea40081
|
||||
gameprofilerfiller.push(() -> {
|
||||
String s = String.valueOf(worldserver);
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index fe295515b8043d988eb87c2caf516a4ae4169451..0a919b04cdc9599f0b8ddea3c8e0a77c261750aa 100644
|
||||
index 1f898500d0e9b18a880645ceb0a8ff0fe75f4e48..4b9434b2d03cd24f5dac7098d2f1318fd12baddb 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -232,6 +232,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
|
||||
@@ -46,7 +46,7 @@ index fe295515b8043d988eb87c2caf516a4ae4169451..0a919b04cdc9599f0b8ddea3c8e0a77c
|
||||
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 a8c89328222f84dd69ee5dc69b07ddd5705d3259..0c4ccba73aab8a000d9cf1342aca4509383ac96f 100644
|
||||
index 09a7809b89a4f302a1149850d4daeb471365d189..8207208d6fb3f982e9909add9e74a0dda69e8120 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1030,6 +1030,15 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -66,10 +66,10 @@ index a8c89328222f84dd69ee5dc69b07ddd5705d3259..0c4ccba73aab8a000d9cf1342aca4509
|
||||
|
||||
private void updatePlayerAttributes() {
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index dedd8b3644699c4bdb33c9a7046342b620889b87..7f03d81ac3a1cc87f73c5580caa6acbc7ebed8f5 100644
|
||||
index 84fa24880d02dc7ba1ec8bda3575be38447fd4b2..fbc59503316d566e88b037851afd74e5469c281b 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -2888,6 +2888,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
@@ -2887,6 +2887,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
|
||||
ServerGamePacketListenerImpl.this.cserver.getPluginManager().callEvent(event);
|
||||
|
||||
@@ -79,7 +79,7 @@ index dedd8b3644699c4bdb33c9a7046342b620889b87..7f03d81ac3a1cc87f73c5580caa6acbc
|
||||
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)) {
|
||||
entity.resendPossiblyDesyncedEntityData(ServerGamePacketListenerImpl.this.player); // Paper - The entire mob gets deleted, so resend it
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index c156b2197d02d4b2b96f3b918f1c5f817b4fc086..b8fc7775d2decc300b0bff3161a2b16e5834448e 100644
|
||||
index 7ac7d0729705cb02f22277be3c467aed4f69ec0e..5c14180d92e1baebe59b08311746418e7d9f6a24 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -340,7 +340,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -91,7 +91,7 @@ index c156b2197d02d4b2b96f3b918f1c5f817b4fc086..b8fc7775d2decc300b0bff3161a2b16e
|
||||
private float eyeHeight;
|
||||
public boolean isInPowderSnow;
|
||||
public boolean wasInPowderSnow;
|
||||
@@ -3327,6 +3327,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -3324,6 +3324,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
this.passengers = ImmutableList.copyOf(list);
|
||||
}
|
||||
|
||||
@@ -105,7 +105,7 @@ index c156b2197d02d4b2b96f3b918f1c5f817b4fc086..b8fc7775d2decc300b0bff3161a2b16e
|
||||
this.gameEvent(GameEvent.ENTITY_MOUNT, passenger);
|
||||
}
|
||||
}
|
||||
@@ -3366,6 +3373,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -3363,6 +3370,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
return false;
|
||||
}
|
||||
// CraftBukkit end
|
||||
@@ -120,7 +120,7 @@ index c156b2197d02d4b2b96f3b918f1c5f817b4fc086..b8fc7775d2decc300b0bff3161a2b16e
|
||||
if (this.passengers.size() == 1 && this.passengers.get(0) == entity) {
|
||||
this.passengers = ImmutableList.of();
|
||||
} else {
|
||||
@@ -5358,4 +5373,44 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -5355,4 +5370,44 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
return ((net.minecraft.server.level.ServerLevel) this.level).isPositionEntityTicking(this.blockPosition());
|
||||
}
|
||||
// Paper end - Expose entity id counter
|
||||
@@ -190,7 +190,7 @@ index 397765b1547ae47b64963b3807b206c50a6650e1..293ffe990de70f4f8872f063388a3a50
|
||||
protected ParticleOptions getInkParticle() {
|
||||
return ParticleTypes.GLOW_SQUID_INK;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index ee2c88638f058172ef730de9b112ce6506211d3b..6a22888927194f1f08377e0f9afe8d3dab8d0b1a 100644
|
||||
index 96b4fbe4a4655777ff10b32e3257e2fac2aba12a..715b76bd0ccc0c29583a55f82a8ecd889ab49b56 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -246,9 +246,9 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -223,7 +223,7 @@ index ee2c88638f058172ef730de9b112ce6506211d3b..6a22888927194f1f08377e0f9afe8d3d
|
||||
|
||||
@Override
|
||||
protected void checkFallDamage(double heightDifference, boolean onGround, BlockState state, BlockPos landedPosition) {
|
||||
@@ -3730,8 +3731,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3703,8 +3704,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.pushEntities();
|
||||
gameprofilerfiller.pop();
|
||||
// Paper start - Add EntityMoveEvent
|
||||
@@ -236,7 +236,7 @@ index ee2c88638f058172ef730de9b112ce6506211d3b..6a22888927194f1f08377e0f9afe8d3d
|
||||
Location from = new Location(this.level().getWorld(), this.xo, this.yo, this.zo, this.yRotO, this.xRotO);
|
||||
Location to = new Location(this.level().getWorld(), this.getX(), this.getY(), this.getZ(), this.getYRot(), this.getXRot());
|
||||
io.papermc.paper.event.entity.EntityMoveEvent event = new io.papermc.paper.event.entity.EntityMoveEvent(this.getBukkitLivingEntity(), from, to.clone());
|
||||
@@ -3741,6 +3744,21 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3714,6 +3717,21 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.absMoveTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch());
|
||||
}
|
||||
}
|
||||
@@ -259,7 +259,7 @@ index ee2c88638f058172ef730de9b112ce6506211d3b..6a22888927194f1f08377e0f9afe8d3d
|
||||
// Paper end - Add EntityMoveEvent
|
||||
world = this.level();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
index 8ebe26c46db485ee0bdf64a313681d465051f436..3217ab08325733eb095a26df58f97fd7d58b13a2 100644
|
||||
index 5a0b51342f4a646101f4588697bcae7d1ca8a010..261288f51ed47b0eac80cc965c76683f3e13687f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
@@ -159,8 +159,8 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab
|
||||
@@ -273,7 +273,7 @@ index 8ebe26c46db485ee0bdf64a313681d465051f436..3217ab08325733eb095a26df58f97fd7
|
||||
this.jumpControl = new JumpControl(this);
|
||||
this.bodyRotationControl = this.createBodyControl();
|
||||
this.navigation = this.createNavigation(world);
|
||||
@@ -1502,7 +1502,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab
|
||||
@@ -1496,7 +1496,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab
|
||||
protected void onOffspringSpawnedFromEgg(Player player, Mob child) {}
|
||||
|
||||
protected InteractionResult mobInteract(Player player, InteractionHand hand) {
|
||||
@@ -282,7 +282,7 @@ index 8ebe26c46db485ee0bdf64a313681d465051f436..3217ab08325733eb095a26df58f97fd7
|
||||
}
|
||||
|
||||
public boolean isWithinRestriction() {
|
||||
@@ -1822,4 +1822,58 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab
|
||||
@@ -1816,4 +1816,58 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab
|
||||
public float[] getArmorDropChances() {
|
||||
return this.armorDropChances;
|
||||
}
|
||||
@@ -342,13 +342,13 @@ index 8ebe26c46db485ee0bdf64a313681d465051f436..3217ab08325733eb095a26df58f97fd7
|
||||
+ // Purpur end - Ridables
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java b/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
|
||||
index b4cfae23709b7c3aed28317846e37c9311c948c1..98fa43c8a34650795a0ae1ebc28ce17ec1ba5271 100644
|
||||
index fb967ac7b3e7828301f08a7fe9b039441cf7da30..d6c98612ca15e506657d85f6872c1278e0b73652 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
|
||||
@@ -24,15 +24,22 @@ public class AttributeMap {
|
||||
@@ -23,14 +23,21 @@ public class AttributeMap {
|
||||
private final Set<AttributeInstance> attributesToSync = new ObjectOpenHashSet<>();
|
||||
private final Set<AttributeInstance> attributesToUpdate = new ObjectOpenHashSet<>();
|
||||
private final AttributeSupplier supplier;
|
||||
private final java.util.function.Function<Holder<Attribute>, AttributeInstance> createInstance; // Pufferfish
|
||||
+ private final net.minecraft.world.entity.LivingEntity entity; // Purpur - Ridables
|
||||
|
||||
public AttributeMap(AttributeSupplier defaultAttributes) {
|
||||
@@ -359,7 +359,6 @@ index b4cfae23709b7c3aed28317846e37c9311c948c1..98fa43c8a34650795a0ae1ebc28ce17e
|
||||
+ this.entity = entity;
|
||||
+ // Purpur end - Ridables
|
||||
this.supplier = defaultAttributes;
|
||||
this.createInstance = attributex -> this.supplier.createInstance(this::onAttributeModified, attributex); // Pufferfish
|
||||
}
|
||||
|
||||
private void onAttributeModified(AttributeInstance instance) {
|
||||
@@ -369,7 +368,7 @@ index b4cfae23709b7c3aed28317846e37c9311c948c1..98fa43c8a34650795a0ae1ebc28ce17e
|
||||
this.attributesToSync.add(instance);
|
||||
}
|
||||
}
|
||||
@@ -46,7 +53,7 @@ public class AttributeMap {
|
||||
@@ -44,7 +51,7 @@ public class AttributeMap {
|
||||
}
|
||||
|
||||
public Collection<AttributeInstance> getSyncableAttributes() {
|
||||
@@ -377,7 +376,7 @@ index b4cfae23709b7c3aed28317846e37c9311c948c1..98fa43c8a34650795a0ae1ebc28ce17e
|
||||
+ return this.attributes.values().stream().filter(attribute -> attribute.getAttribute().value().isClientSyncable() && (entity == null || entity.shouldSendAttribute(attribute.getAttribute().value()))).collect(Collectors.toList()); // Purpur - Ridables
|
||||
}
|
||||
|
||||
|
||||
@Nullable
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/ai/attributes/DefaultAttributes.java b/src/main/java/net/minecraft/world/entity/ai/attributes/DefaultAttributes.java
|
||||
index c76438d5ce2330eca16dc0b381f97e9506f84aef..8ccbf0386aa453e82fc0f82d2aefd1e08b6c3345 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/ai/attributes/DefaultAttributes.java
|
||||
@@ -439,7 +438,7 @@ index fbfc2f2515ad709b2c1212aef9521e795547d66b..ebe941aeb959fc34372bfc59bc3a1342
|
||||
this.lookAtCooldown--;
|
||||
this.getYRotD().ifPresent(yaw -> this.mob.yHeadRot = this.rotateTowards(this.mob.yHeadRot, yaw + 20.0F, this.yMaxRotSpeed));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/ambient/Bat.java b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
||||
index 3de177a40649183b5b210e5f0c610a527287e9ec..3fe64a0164804dff2589035e3ec0adec7d0ba10f 100644
|
||||
index 60c2868f255d372226e0c1389caaa5477bbef41e..add1c146cd7428547d9ef8810841b4cf39a6a05e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
||||
@@ -47,12 +47,59 @@ public class Bat extends AmbientCreature {
|
||||
@@ -2000,7 +1999,7 @@ index c57fac6b5a17f39699298a58d9d25c12da929e64..5ac51a56c451a8fde4b98cec165143b2
|
||||
this.targetSelector.addGoal(2, new OwnerHurtTargetGoal(this));
|
||||
this.targetSelector.addGoal(3, (new HurtByTargetGoal(this, new Class[0])).setAlertOthers());
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
|
||||
index f4788104b1bb73810fdf0dc7f5311d5b078a81d5..62a52e87448ef6d73a91a6ace2cc8525a0ba0e63 100644
|
||||
index b86f638390d386c838318a4d9b6571ac5514df8f..76779074ceea0d79b01c6744e6cc0a50b8cf111d 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
|
||||
@@ -104,10 +104,23 @@ public class Allay extends PathfinderMob implements InventoryCarrier, VibrationS
|
||||
@@ -2057,12 +2056,11 @@ index f4788104b1bb73810fdf0dc7f5311d5b078a81d5..62a52e87448ef6d73a91a6ace2cc8525
|
||||
@Override
|
||||
protected Brain.Provider<Allay> brainProvider() {
|
||||
return Brain.provider(Allay.MEMORY_TYPES, Allay.SENSOR_TYPES);
|
||||
@@ -229,7 +264,7 @@ public class Allay extends PathfinderMob implements InventoryCarrier, VibrationS
|
||||
@@ -228,6 +263,7 @@ public class Allay extends PathfinderMob implements InventoryCarrier, VibrationS
|
||||
ProfilerFiller gameprofilerfiller = Profiler.get();
|
||||
|
||||
gameprofilerfiller.push("allayBrain");
|
||||
- if (this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish
|
||||
+ if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
+ //if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
this.getBrain().tick(world, this);
|
||||
gameprofilerfiller.pop();
|
||||
gameprofilerfiller.push("allayActivityUpdate");
|
||||
@@ -2095,7 +2093,7 @@ index c1ef714096159608752d744b98f615cd45fe459a..4c9771725f9567790841094dae72c2bb
|
||||
protected void defineSynchedData(SynchedEntityData.Builder builder) {
|
||||
super.defineSynchedData(builder);
|
||||
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 cb47876a13cb1990bb0ab4cff1bbe57b3b2d0a5e..02db50fca37e8e820936ddf17c75a530b0930279 100644
|
||||
index 31b10cd404b672d7ce21c2107d8f83e32de26ef4..b414edf515890066bd970f65c073964839851840 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
|
||||
@@ -100,6 +100,23 @@ public class Axolotl extends Animal implements VariantHolder<Axolotl.Variant>, B
|
||||
@@ -2122,16 +2120,15 @@ index cb47876a13cb1990bb0ab4cff1bbe57b3b2d0a5e..02db50fca37e8e820936ddf17c75a530
|
||||
@Override
|
||||
public float getWalkTargetValue(BlockPos pos, LevelReader world) {
|
||||
return 0.0F;
|
||||
@@ -298,7 +315,7 @@ public class Axolotl extends Animal implements VariantHolder<Axolotl.Variant>, B
|
||||
@@ -297,6 +314,7 @@ public class Axolotl extends Animal implements VariantHolder<Axolotl.Variant>, B
|
||||
ProfilerFiller gameprofilerfiller = Profiler.get();
|
||||
|
||||
gameprofilerfiller.push("axolotlBrain");
|
||||
- if (this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish
|
||||
+ if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
+ //if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
this.getBrain().tick(world, this);
|
||||
gameprofilerfiller.pop();
|
||||
gameprofilerfiller.push("axolotlActivityUpdate");
|
||||
@@ -522,14 +539,22 @@ public class Axolotl extends Animal implements VariantHolder<Axolotl.Variant>, B
|
||||
@@ -520,14 +538,22 @@ public class Axolotl extends Animal implements VariantHolder<Axolotl.Variant>, B
|
||||
private static class AxolotlMoveControl extends SmoothSwimmingMoveControl {
|
||||
|
||||
private final Axolotl axolotl;
|
||||
@@ -2154,7 +2151,7 @@ index cb47876a13cb1990bb0ab4cff1bbe57b3b2d0a5e..02db50fca37e8e820936ddf17c75a530
|
||||
if (!this.axolotl.isPlayingDead()) {
|
||||
super.tick();
|
||||
}
|
||||
@@ -544,9 +569,9 @@ public class Axolotl extends Animal implements VariantHolder<Axolotl.Variant>, B
|
||||
@@ -542,9 +568,9 @@ public class Axolotl extends Animal implements VariantHolder<Axolotl.Variant>, B
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -2185,7 +2182,7 @@ index f3c884ab9c09f04dd01cabf2ee9de3b5b620563d..f794ac7af227d413ed030457cbe4cd68
|
||||
public void addAdditionalSaveData(CompoundTag nbt) {
|
||||
super.addAdditionalSaveData(nbt);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
|
||||
index db91b8018591fe248efda417fcde7fd2071c4cb6..f4a133546dd54cd84a3c1dfefc0fad92ed92c040 100644
|
||||
index ca04e5d829331551a2c2f44e223ff05c6ce04e76..b42e1e1749c9f18b3bf842517522e90ba60330ff 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
|
||||
@@ -106,6 +106,8 @@ public class Frog extends Animal implements VariantHolder<Holder<FrogVariant>> {
|
||||
@@ -2253,16 +2250,15 @@ index db91b8018591fe248efda417fcde7fd2071c4cb6..f4a133546dd54cd84a3c1dfefc0fad92
|
||||
|
||||
@Override
|
||||
protected Brain.Provider<Frog> brainProvider() {
|
||||
@@ -189,7 +239,7 @@ public class Frog extends Animal implements VariantHolder<Holder<FrogVariant>> {
|
||||
@@ -188,6 +238,7 @@ public class Frog extends Animal implements VariantHolder<Holder<FrogVariant>> {
|
||||
protected void customServerAiStep(ServerLevel world) {
|
||||
ProfilerFiller profilerFiller = Profiler.get();
|
||||
profilerFiller.push("frogBrain");
|
||||
- if (this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish
|
||||
+ if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
+ //if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
this.getBrain().tick(world, this);
|
||||
profilerFiller.pop();
|
||||
profilerFiller.push("frogActivityUpdate");
|
||||
@@ -386,7 +436,7 @@ public class Frog extends Animal implements VariantHolder<Holder<FrogVariant>> {
|
||||
@@ -384,7 +435,7 @@ public class Frog extends Animal implements VariantHolder<Holder<FrogVariant>> {
|
||||
return world.getBlockState(pos.below()).is(BlockTags.FROGS_SPAWNABLE_ON) && isBrightEnoughToSpawn(world, pos);
|
||||
}
|
||||
|
||||
@@ -2272,7 +2268,7 @@ index db91b8018591fe248efda417fcde7fd2071c4cb6..f4a133546dd54cd84a3c1dfefc0fad92
|
||||
super(entity);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
|
||||
index cf326ef35bac732e7addf75537963593d5b268ae..33429a9afeefce9238969b2894d0a9c033baca51 100644
|
||||
index 48ac8c3f6e00c3c2dc67b6c994be7c0ac6dfcf81..87a2825d4e198e152a601f20105596a793695885 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
|
||||
@@ -51,13 +51,50 @@ public class Tadpole extends AbstractFish {
|
||||
@@ -2327,17 +2323,16 @@ index cf326ef35bac732e7addf75537963593d5b268ae..33429a9afeefce9238969b2894d0a9c0
|
||||
@Override
|
||||
protected PathNavigation createNavigation(Level world) {
|
||||
return new WaterBoundPathNavigation(this, world);
|
||||
@@ -89,7 +126,7 @@ public class Tadpole extends AbstractFish {
|
||||
@@ -88,6 +125,7 @@ public class Tadpole extends AbstractFish {
|
||||
ProfilerFiller gameprofilerfiller = Profiler.get();
|
||||
|
||||
gameprofilerfiller.push("tadpoleBrain");
|
||||
- if (this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish
|
||||
+ if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
+ //if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
this.getBrain().tick(world, this);
|
||||
gameprofilerfiller.pop();
|
||||
gameprofilerfiller.push("tadpoleActivityUpdate");
|
||||
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 fb92cd4b0c15b614c0c06d2867039aee1a6212a2..e8185de995af8749356f05b28f69d33db367e749 100644
|
||||
index 76aca47d8638d5c37c57d3a59fa7f8ceaa5a53b4..307d11e5ad6d0b47af36b1469a73ae1caa100232 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
|
||||
@@ -93,6 +93,23 @@ public class Goat extends Animal {
|
||||
@@ -2364,12 +2359,11 @@ index fb92cd4b0c15b614c0c06d2867039aee1a6212a2..e8185de995af8749356f05b28f69d33d
|
||||
@Override
|
||||
protected Brain.Provider<Goat> brainProvider() {
|
||||
return Brain.provider(Goat.MEMORY_TYPES, Goat.SENSOR_TYPES);
|
||||
@@ -198,7 +215,7 @@ public class Goat extends Animal {
|
||||
@@ -197,6 +214,7 @@ public class Goat extends Animal {
|
||||
ProfilerFiller gameprofilerfiller = Profiler.get();
|
||||
|
||||
gameprofilerfiller.push("goatBrain");
|
||||
- if (this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish
|
||||
+ if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
+ //if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
this.getBrain().tick(world, this);
|
||||
gameprofilerfiller.pop();
|
||||
gameprofilerfiller.push("goatActivityUpdate");
|
||||
@@ -2827,7 +2821,7 @@ index d5fc74dbc2c5f6b65fee46e7797b151144c8fd41..d51675bb8660eb9d5e4d1263c28ada32
|
||||
this.dragonFight.updateDragon(this);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
index 2ce65ef77e4b28e1fd5ac7bd6a304cc115b8aca2..e53163af7eaf716cc5ff21410375e0e53c81b958 100644
|
||||
index bd9e10f79eaf0d23908229b3ebc2227946a14843..236e8ea79119dcf21c066b7c250fe20e6752df9e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
@@ -86,16 +86,30 @@ public class WitherBoss extends Monster implements RangedAttackMob {
|
||||
@@ -2977,7 +2971,7 @@ index 2ce65ef77e4b28e1fd5ac7bd6a304cc115b8aca2..e53163af7eaf716cc5ff21410375e0e5
|
||||
this.targetSelector.addGoal(1, new HurtByTargetGoal(this, new Class[0]));
|
||||
this.targetSelector.addGoal(2, new NearestAttackableTargetGoal<>(this, LivingEntity.class, 0, false, false, WitherBoss.LIVING_ENTITY_SELECTOR));
|
||||
}
|
||||
@@ -267,6 +382,15 @@ public class WitherBoss extends Monster implements RangedAttackMob {
|
||||
@@ -260,6 +375,15 @@ public class WitherBoss extends Monster implements RangedAttackMob {
|
||||
|
||||
@Override
|
||||
protected void customServerAiStep(ServerLevel world) {
|
||||
@@ -2993,7 +2987,7 @@ index 2ce65ef77e4b28e1fd5ac7bd6a304cc115b8aca2..e53163af7eaf716cc5ff21410375e0e5
|
||||
int i;
|
||||
|
||||
if (this.getInvulnerableTicks() > 0) {
|
||||
@@ -585,11 +709,11 @@ public class WitherBoss extends Monster implements RangedAttackMob {
|
||||
@@ -578,11 +702,11 @@ public class WitherBoss extends Monster implements RangedAttackMob {
|
||||
}
|
||||
|
||||
public int getAlternativeTarget(int headIndex) {
|
||||
@@ -3364,7 +3358,7 @@ index 378694a38115c012978e1fea59d049d1ebd04110..bff963a1a0d89b57a686ed06aa630e78
|
||||
return Guardian.createAttributes().add(Attributes.MOVEMENT_SPEED, 0.30000001192092896D).add(Attributes.ATTACK_DAMAGE, 8.0D).add(Attributes.MAX_HEALTH, 80.0D);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
index 4e4dab5bc202f6f421dcff98f0e36e8e70378b49..0fbf9d6c1df24024572aae86e32c10a96d41e36e 100644
|
||||
index 2a394381a4ad46359359ba402b65c62b331480b4..f3013664d21f70c2650306f2406e93b21de8f9e0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
@@ -94,9 +94,27 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
@@ -3412,7 +3406,7 @@ index 4e4dab5bc202f6f421dcff98f0e36e8e70378b49..0fbf9d6c1df24024572aae86e32c10a9
|
||||
float f = this.getLightLevelDependentMagicValue();
|
||||
|
||||
if (f > 0.5F && world.canSeeSky(this.blockPosition()) && this.random.nextFloat() * 30.0F < (f - 0.4F) * 2.0F && this.tryEscape(com.destroystokyo.paper.event.entity.EndermanEscapeEvent.Reason.RUNAWAY)) { // Paper - EndermanEscapeEvent
|
||||
@@ -388,6 +407,7 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
@@ -382,6 +401,7 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
public boolean hurtServer(ServerLevel world, DamageSource source, float amount) {
|
||||
if (this.isInvulnerableTo(world, source)) {
|
||||
return false;
|
||||
@@ -4819,7 +4813,7 @@ index 6a7e725edece3043c8523d387e2929d5ba8932cb..6716bfa903be5ab34b80c963cc9d6a8a
|
||||
|
||||
}
|
||||
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 9c20651b74157582e60793ceba8adde2c354f2a8..a32d150ba04605b8b39c723df7fa29da3c602365 100644
|
||||
index 92270912ef26924f611a1df7cb3d5b485b0a262d..4ab971e86b48ce3010928fe9046e8f68224719ca 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
|
||||
@@ -71,6 +71,23 @@ public class Hoglin extends Animal implements Enemy, HoglinBase {
|
||||
@@ -4846,17 +4840,16 @@ index 9c20651b74157582e60793ceba8adde2c354f2a8..a32d150ba04605b8b39c723df7fa29da
|
||||
@VisibleForTesting
|
||||
public void setTimeInOverworld(int timeInOverworld) {
|
||||
this.timeInOverworld = timeInOverworld;
|
||||
@@ -144,7 +161,7 @@ public class Hoglin extends Animal implements Enemy, HoglinBase {
|
||||
@@ -143,6 +160,7 @@ public class Hoglin extends Animal implements Enemy, HoglinBase {
|
||||
ProfilerFiller gameprofilerfiller = Profiler.get();
|
||||
|
||||
gameprofilerfiller.push("hoglinBrain");
|
||||
- if (this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish
|
||||
+ if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
+ //if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
this.getBrain().tick(world, this);
|
||||
gameprofilerfiller.pop();
|
||||
HoglinAi.updateActivity(this);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java
|
||||
index 74ab50723056fef2a96dcc9e2de0e58526738011..40cf7f540146e38592a7a29f3f0c8b166497087f 100644
|
||||
index 2121d2a2e1aa1d0f0390cc515317096431f6dcb0..b19e3b442a650f773df462e32088648a2b7eafd4 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java
|
||||
@@ -99,6 +99,23 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento
|
||||
@@ -4883,12 +4876,11 @@ index 74ab50723056fef2a96dcc9e2de0e58526738011..40cf7f540146e38592a7a29f3f0c8b16
|
||||
@Override
|
||||
public void addAdditionalSaveData(CompoundTag nbt) {
|
||||
super.addAdditionalSaveData(nbt);
|
||||
@@ -313,7 +330,7 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento
|
||||
@@ -312,6 +329,7 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento
|
||||
ProfilerFiller gameprofilerfiller = Profiler.get();
|
||||
|
||||
gameprofilerfiller.push("piglinBrain");
|
||||
- if (this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish
|
||||
+ if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
+ //if ((getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish // Purpur - only use brain if no rider
|
||||
this.getBrain().tick(world, this);
|
||||
gameprofilerfiller.pop();
|
||||
PiglinAi.updateActivity(this);
|
||||
@@ -4929,7 +4921,7 @@ index 24eaeb93284fe1a573026b85818a93a34fd9e1ec..3dc234f8cea8769f715a4913ae4ecf7d
|
||||
profilerFiller.pop();
|
||||
PiglinBruteAi.updateActivity(this);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
||||
index 4331ada8bed7ade7b53fd8ba000c1c1b34fa4331..74011f1ab7e48490109ad93d658bba216eef9e80 100644
|
||||
index c47ed605f0822effd58df4f875297ed015e1e57e..19f7a6d55144adb5217fbea590d8f23d79ed05e0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
||||
@@ -127,8 +127,32 @@ public class Warden extends Monster implements VibrationSystem {
|
||||
@@ -4965,7 +4957,7 @@ index 4331ada8bed7ade7b53fd8ba000c1c1b34fa4331..74011f1ab7e48490109ad93d658bba21
|
||||
@Override
|
||||
public Packet<ClientGamePacketListener> getAddEntityPacket(ServerEntity entityTrackerEntry) {
|
||||
return new ClientboundAddEntityPacket(this, entityTrackerEntry, this.hasPose(Pose.EMERGING) ? 1 : 0);
|
||||
@@ -398,17 +422,14 @@ public class Warden extends Monster implements VibrationSystem {
|
||||
@@ -396,17 +420,14 @@ public class Warden extends Monster implements VibrationSystem {
|
||||
|
||||
@Contract("null->false")
|
||||
public boolean canTargetEntity(@Nullable Entity entity) {
|
||||
@@ -4987,10 +4979,10 @@ index 4331ada8bed7ade7b53fd8ba000c1c1b34fa4331..74011f1ab7e48490109ad93d658bba21
|
||||
|
||||
public static void applyDarknessAround(ServerLevel world, Vec3 pos, @Nullable Entity entity, int range) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index 3fd86782134a674f58ef37288c8963a4a92f685c..1c3c0f8c376fb1b662dcca714b598ecadcfc5552 100644
|
||||
index 2d8ba55906c8da16fde850e3412f4a6bda3d56e7..066836e450ca8d104990c3c5fba5fe3dad2e136e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -158,6 +158,28 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -156,6 +156,28 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
this.setVillagerData(this.getVillagerData().setType(type).setProfession(VillagerProfession.NONE));
|
||||
}
|
||||
|
||||
@@ -5019,18 +5011,20 @@ index 3fd86782134a674f58ef37288c8963a4a92f685c..1c3c0f8c376fb1b662dcca714b598eca
|
||||
@Override
|
||||
public Brain<Villager> getBrain() {
|
||||
return (Brain<Villager>) super.getBrain(); // CraftBukkit - decompile error
|
||||
@@ -259,8 +281,8 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -255,7 +277,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
ProfilerFiller gameprofilerfiller = Profiler.get();
|
||||
|
||||
gameprofilerfiller.push("villagerBrain");
|
||||
// Pufferfish start
|
||||
- if (!inactive && this.behaviorTick++ % this.activatedPriority == 0) {
|
||||
- this.getBrain().tick((ServerLevel) this.level(), this); // Paper
|
||||
+ if (!inactive && (getRider() == null || !this.isControllable()) && this.behaviorTick++ % this.activatedPriority == 0) {
|
||||
- if (!inactive) this.getBrain().tick(world, this);
|
||||
+ // Pufferfish start
|
||||
+ if (!inactive && (getRider() == null || !this.isControllable()) /*&& this.behaviorTick++ % this.activatedPriority == 0*/) {
|
||||
+ this.getBrain().tick(world, this); // Paper // Purpur - Ridables
|
||||
}
|
||||
// Pufferfish end
|
||||
+ }
|
||||
+ // Pufferfish end
|
||||
gameprofilerfiller.pop();
|
||||
@@ -319,7 +341,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
if (this.assignProfessionWhenSpawned) {
|
||||
this.assignProfessionWhenSpawned = false;
|
||||
@@ -312,7 +338,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
if (!itemstack.is(Items.VILLAGER_SPAWN_EGG) && this.isAlive() && !this.isTrading() && !this.isSleeping()) {
|
||||
if (this.isBaby()) {
|
||||
this.setUnhappy();
|
||||
@@ -5039,7 +5033,7 @@ index 3fd86782134a674f58ef37288c8963a4a92f685c..1c3c0f8c376fb1b662dcca714b598eca
|
||||
} else {
|
||||
if (!this.level().isClientSide) {
|
||||
boolean flag = this.getOffers().isEmpty();
|
||||
@@ -333,9 +355,10 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -326,9 +352,10 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
}
|
||||
|
||||
if (flag) {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable entity base attributes
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index b8fc7775d2decc300b0bff3161a2b16e5834448e..26e0a212e45c325fb0ef7d55c6e2f4dc3d768366 100644
|
||||
index 5c14180d92e1baebe59b08311746418e7d9f6a24..755861185bd8434027acca7f03ed0bfdf9fa2cde 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -177,7 +177,7 @@ import org.bukkit.plugin.PluginManager;
|
||||
@@ -35,7 +35,7 @@ index 293ffe990de70f4f8872f063388a3a50c60b68e6..66a5c485ed2d29d0079ae714c2dd7b01
|
||||
protected ParticleOptions getInkParticle() {
|
||||
return ParticleTypes.GLOW_SQUID_INK;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 6a22888927194f1f08377e0f9afe8d3dab8d0b1a..d37f3f671b56c26bfbd2cff62a35f107a50f3987 100644
|
||||
index 715b76bd0ccc0c29583a55f82a8ecd889ab49b56..6884475a5217acb8073dc38e5f7a7b341c8b1dd1 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -324,6 +324,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -56,7 +56,7 @@ index 6a22888927194f1f08377e0f9afe8d3dab8d0b1a..d37f3f671b56c26bfbd2cff62a35f107
|
||||
return this.brain;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/ambient/Bat.java b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
||||
index 3fe64a0164804dff2589035e3ec0adec7d0ba10f..f706ceb6de0415e87d2b6dcbca4e9a3d9332f3d4 100644
|
||||
index add1c146cd7428547d9ef8810841b4cf39a6a05e..5f11c687df87015261d1d39c957e241fbeb5476a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
||||
@@ -100,6 +100,20 @@ public class Bat extends AmbientCreature {
|
||||
@@ -503,7 +503,7 @@ index 5ac51a56c451a8fde4b98cec165143b2128fd9eb..d86bad821e781d698cc2bf0b3179eb4d
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(1, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
|
||||
index 62a52e87448ef6d73a91a6ace2cc8525a0ba0e63..67ff60909dee395d42619c310bafc381b9bfce5d 100644
|
||||
index 76779074ceea0d79b01c6744e6cc0a50b8cf111d..10e293dd38ad2c140e1ae0fd558989aa9eeff8dc 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
|
||||
@@ -156,6 +156,13 @@ public class Allay extends PathfinderMob implements InventoryCarrier, VibrationS
|
||||
@@ -539,7 +539,7 @@ index 4c9771725f9567790841094dae72c2bbf0d5ba62..1a6c88558a11066ec2a78d40e6a1b0f2
|
||||
protected void defineSynchedData(SynchedEntityData.Builder builder) {
|
||||
super.defineSynchedData(builder);
|
||||
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 02db50fca37e8e820936ddf17c75a530b0930279..63a51c0be69298f23f2e0e995ec6ed0a3bac06a4 100644
|
||||
index b414edf515890066bd970f65c073964839851840..f95b9be60c3725fe279a07300f706abb25e152f1 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
|
||||
@@ -117,6 +117,13 @@ public class Axolotl extends Animal implements VariantHolder<Axolotl.Variant>, B
|
||||
@@ -875,7 +875,7 @@ index d51675bb8660eb9d5e4d1263c28ada321b40470c..1e1cd061203ab3ca2f1feb4a3f9fe281
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
index e53163af7eaf716cc5ff21410375e0e53c81b958..437160075ea83b2dbd0482e48aa45057d8599a0a 100644
|
||||
index 236e8ea79119dcf21c066b7c250fe20e6752df9e..57cf253fc69c087cfa0270225166f926ce6829f7 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
@@ -113,7 +113,13 @@ public class WitherBoss extends Monster implements RangedAttackMob {
|
||||
@@ -893,7 +893,7 @@ index e53163af7eaf716cc5ff21410375e0e53c81b958..437160075ea83b2dbd0482e48aa45057
|
||||
@Override
|
||||
protected PathNavigation createNavigation(Level world) {
|
||||
FlyingPathNavigation navigationflying = new FlyingPathNavigation(this, world);
|
||||
@@ -432,7 +438,7 @@ public class WitherBoss extends Monster implements RangedAttackMob {
|
||||
@@ -425,7 +431,7 @@ public class WitherBoss extends Monster implements RangedAttackMob {
|
||||
|
||||
this.setInvulnerableTicks(i);
|
||||
if (this.tickCount % 10 == 0) {
|
||||
@@ -1016,7 +1016,7 @@ index bff963a1a0d89b57a686ed06aa630e789a602d82..011327ea9bf9ef3497f2183ef149f8ec
|
||||
return Guardian.createAttributes().add(Attributes.MOVEMENT_SPEED, 0.30000001192092896D).add(Attributes.ATTACK_DAMAGE, 8.0D).add(Attributes.MAX_HEALTH, 80.0D);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
index 0fbf9d6c1df24024572aae86e32c10a96d41e36e..1823b0dd705ff2a4eb4b7dd22675819863e5bfa9 100644
|
||||
index f3013664d21f70c2650306f2406e93b21de8f9e0..9f7261bd22803f0b094e2bfd4a0eb66ad727211e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
@@ -111,6 +111,13 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
@@ -1639,7 +1639,7 @@ index 6716bfa903be5ab34b80c963cc9d6a8a26272621..1f37384368c26b4bdd69533887a8e9b8
|
||||
protected BodyRotationControl createBodyControl() {
|
||||
return new Creaking.CreakingBodyRotationControl(this);
|
||||
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 a32d150ba04605b8b39c723df7fa29da3c602365..718f671b2db46638fbbeb0624d375ad17b7e9c60 100644
|
||||
index 4ab971e86b48ce3010928fe9046e8f68224719ca..476dcc613f566d88273f195b847e6b4dec777e44 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
|
||||
@@ -88,6 +88,13 @@ public class Hoglin extends Animal implements Enemy, HoglinBase {
|
||||
@@ -1657,7 +1657,7 @@ index a32d150ba04605b8b39c723df7fa29da3c602365..718f671b2db46638fbbeb0624d375ad1
|
||||
public void setTimeInOverworld(int timeInOverworld) {
|
||||
this.timeInOverworld = timeInOverworld;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java
|
||||
index 40cf7f540146e38592a7a29f3f0c8b166497087f..ed9ca1a16a6c929bb8b7202df8ae614465384a5e 100644
|
||||
index b19e3b442a650f773df462e32088648a2b7eafd4..1a40babc8f6b3f56377cb2af45e9d17d0028a77b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java
|
||||
@@ -116,6 +116,13 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento
|
||||
@@ -1693,10 +1693,10 @@ index 3dc234f8cea8769f715a4913ae4ecf7d47433577..a0fa32a1217bbdae2c91e5a51598d7bd
|
||||
return Monster.createMonsterAttributes()
|
||||
.add(Attributes.MAX_HEALTH, 50.0)
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index 1c3c0f8c376fb1b662dcca714b598ecadcfc5552..845af8a8976bd81b3d7221b7b3284c31a6fda136 100644
|
||||
index 066836e450ca8d104990c3c5fba5fe3dad2e136e..39f2091391222bcd4ab0f2677f896c5ecdc6e86c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -180,6 +180,13 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -178,6 +178,13 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
}
|
||||
// Purpur end - Ridables
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Barrels and enderchests 6 rows
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
index b973a07d199bc856643b23c090eb56bd1aeb0104..88678fb527f170c81d5e2d4a28f65e398dab8939 100644
|
||||
index 98e803eaf5ce4c773f35fd752c21c7176707427c..b9136fcec3f36549ddd572cbb8cd01ecae45590f 100644
|
||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
@@ -1116,6 +1116,27 @@ public abstract class PlayerList {
|
||||
@@ -37,7 +37,7 @@ index b973a07d199bc856643b23c090eb56bd1aeb0104..88678fb527f170c81d5e2d4a28f65e39
|
||||
|
||||
public boolean isWhiteListed(GameProfile profile) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index e4d8fadd6ef32823f8581dab68567c5da9270566..e5c11504f85abdf49cea4ebd2aaaccdaff35a75c 100644
|
||||
index 28a4cf814ec4b34dce883ba4f24ca55008c8f6c1..87c6378104ff47549c751e09afb6cfcd9b8dcf5d 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -200,6 +200,7 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -253,7 +253,7 @@ index c6159c70f7a37b9bffe268b91905ce848d1d2927..d02adaaa6fbdc1c0eff44cb4a1f1642f
|
||||
for (int i = 0; i < this.getSize(); i++) {
|
||||
if (i >= items.length) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
index 09e7a11a241b6e306d5043fe66f14fd4f2aae963..a83117ed0a0c98d7ae18e925338b58930946c96a 100644
|
||||
index e8c9393760108f2549b52a61d973ea2b4a64a312..1321955eb23272d96e3028c1c46e75f6c1eaade0 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
@@ -180,4 +180,39 @@ public class PurpurConfig {
|
||||
@@ -78,7 +78,7 @@ index 8207208d6fb3f982e9909add9e74a0dda69e8120..5e8a5e8e4120420a170c4733ae217e79
|
||||
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 7f03d81ac3a1cc87f73c5580caa6acbc7ebed8f5..bca70bc3eb38920bd0d6a781c1e49922bdb71cf7 100644
|
||||
index fbc59503316d566e88b037851afd74e5469c281b..830e0705f3a3d45fcf0eab6b8eea403c3023f3f9 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -344,6 +344,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
@@ -124,7 +124,7 @@ index 7f03d81ac3a1cc87f73c5580caa6acbc7ebed8f5..bca70bc3eb38920bd0d6a781c1e49922
|
||||
Location oldTo = to.clone();
|
||||
PlayerMoveEvent event = new PlayerMoveEvent(player, from, to);
|
||||
this.cserver.getPluginManager().callEvent(event);
|
||||
@@ -1555,7 +1577,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
@@ -1554,7 +1576,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
movedWrongly = true;
|
||||
if (event.getLogWarning())
|
||||
// Paper end
|
||||
@@ -133,7 +133,7 @@ index 7f03d81ac3a1cc87f73c5580caa6acbc7ebed8f5..bca70bc3eb38920bd0d6a781c1e49922
|
||||
} // Paper
|
||||
}
|
||||
|
||||
@@ -1623,6 +1645,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
@@ -1622,6 +1644,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||
this.lastYaw = to.getYaw();
|
||||
this.lastPitch = to.getPitch();
|
||||
|
||||
@@ -317,10 +317,10 @@ index ee9bcb7d011f20575cbbbe2e0ded1e53087aba7a..9b1a4502aa6c26c7524ec17697250317
|
||||
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 bc525c7843b9cc0f7705c0dc6795c05f4e5b4bb1..a017374f2027946ef465cf41fd6ed6de7f00e19f 100644
|
||||
index 1d438ef44cbe4d1eedfba36d8fe5d2ad53464921..24d7eca3f0b06602a1026eda3432f0a4255d8b01 100644
|
||||
--- a/src/main/java/org/spigotmc/ActivationRange.java
|
||||
+++ b/src/main/java/org/spigotmc/ActivationRange.java
|
||||
@@ -203,6 +203,8 @@ public class ActivationRange
|
||||
@@ -199,6 +199,8 @@ public class ActivationRange
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ index c3ec370b83b895be0f03662e3884fa4a2442a2a6..05e16103af3fd276f0196ddf1a2e5b72
|
||||
public final boolean allowFlight = this.get("allow-flight", false);
|
||||
public final String motd = this.get("motd", "A Minecraft Server");
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 48a8bdd45c063797144e98e76f6007ae9025124e..96f0ff6877e2959fe1ab26728ee64b9c9b777d26 100644
|
||||
index cc2f23613644126c3f7506b26db8e6a865f78dde..3259d5796287f2e7886b5742b25d9f1f1bc22d6d 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -3285,4 +3285,11 @@ public final class CraftServer implements Server {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable server mod name
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 48e40ef7fba63d9354152a02440656ceb3a9b7a6..5a85471d26130c893ad619dbfc9b61c0ee1b938b 100644
|
||||
index ce4ce361061932162ace58070d44d1aa70189dbd..d61f6cf5a5d3320516339a7078f2e9fb2ab59dfa 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -2020,7 +2020,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -2013,7 +2013,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
|
||||
@DontObfuscate
|
||||
public String getServerModName() {
|
||||
@@ -18,7 +18,7 @@ index 48e40ef7fba63d9354152a02440656ceb3a9b7a6..5a85471d26130c893ad619dbfc9b61c0
|
||||
|
||||
public SystemReport fillSystemReport(SystemReport details) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
index a6728ce7ac27512676cfa06fdfbfb8652f8ff6a5..df2be3351bcaaf1ffb73261da6c840314f5c11a1 100644
|
||||
index 82f0ae89ef3f0dc614edb4ccd3caa66cb387044c..47ffe5ef0429101414b33a41e91631712a92b32d 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
@@ -191,6 +191,11 @@ public class PurpurConfig {
|
||||
@@ -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 e9aaa471c5a21307af9c9c15c59dd98eba1a7675..00808ffd5b9afd16fb0c7353ef834d0479598ac8 100644
|
||||
index d61f6cf5a5d3320516339a7078f2e9fb2ab59dfa..18dc66b78f91c0b9efdf9008c0a38c52fdfc93ad 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -329,6 +329,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -16,7 +16,7 @@ index e9aaa471c5a21307af9c9c15c59dd98eba1a7675..00808ffd5b9afd16fb0c7353ef834d04
|
||||
|
||||
public volatile Thread shutdownThread; // Paper
|
||||
public volatile boolean abnormalExit = false; // Paper
|
||||
@@ -1305,6 +1306,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1304,6 +1305,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
this.recentTps[0] = tps1.getAverage();
|
||||
this.recentTps[1] = tps5.getAverage();
|
||||
this.recentTps[2] = tps15.getAverage();
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] PlayerSetSpawnerTypeWithEggEvent
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
index 8c1dad4b7f6461aca5ac37a25c880c550b0dcf5f..fa15b22e464f1dfe83f3d07ff7a28b6740df79b4 100644
|
||||
index d23914a3ab3723d532ae867db6b954c843030f75..426d47c14d137906ed70fc3082e3d77e7f48c8d7 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
@@ -405,6 +405,16 @@ public class EntityType<T extends Entity> implements FeatureElement, EntityTypeT
|
||||
@@ -404,6 +404,16 @@ public class EntityType<T extends Entity> implements FeatureElement, EntityTypeT
|
||||
return EntityType.register(EntityType.vanillaEntityId(id), type);
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ index 8c1dad4b7f6461aca5ac37a25c880c550b0dcf5f..fa15b22e464f1dfe83f3d07ff7a28b67
|
||||
public static ResourceLocation getKey(EntityType<?> type) {
|
||||
return BuiltInRegistries.ENTITY_TYPE.getKey(type);
|
||||
}
|
||||
@@ -615,6 +625,16 @@ public class EntityType<T extends Entity> implements FeatureElement, EntityTypeT
|
||||
@@ -614,6 +624,16 @@ public class EntityType<T extends Entity> implements FeatureElement, EntityTypeT
|
||||
return this.category;
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Alternative Keepalive Handling
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
index b6dd6bde947ac7502f25d3160399596130e8064f..7d276c191b391bca24948ddb36b8b7d0f1f03b03 100644
|
||||
index 92749b57d3a2b2ffee79436319513248846296b6..df48c2754dc1ebd52addd8ae768cba5916ce3969 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
@@ -80,6 +80,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
@@ -56,7 +56,7 @@ index b6dd6bde947ac7502f25d3160399596130e8064f..7d276c191b391bca24948ddb36b8b7d0
|
||||
if (this.keepAlivePending && !this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // Paper - check keepalive limit, don't fire if already disconnected
|
||||
this.disconnect(ServerCommonPacketListenerImpl.TIMEOUT_DISCONNECTION_MESSAGE, PlayerKickEvent.Cause.TIMEOUT); // Paper - kick event cause
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
index a6c90de7726a264ca44c3e795e9b6a4e1c313bc3..3b4a8c9d5a60de94ad79a781414de8de44973e6f 100644
|
||||
index bfa985913f3f750a0727a567d3b5951b4d6ed4ca..2ca6cc6ba72339459d9591a89995521a3c81d111 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
@@ -201,6 +201,11 @@ public class PurpurConfig {
|
||||
@@ -53,7 +53,7 @@ index 51ae8eddadc87b143b93521a3cef374f1e3a24dc..a7b45602d9d86aec235eef06d252fb62
|
||||
if (MinecraftServer.getServer() != null && MinecraftServer.getServer().isDebugging()) {
|
||||
new Exception().printStackTrace();
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
index 3b4a8c9d5a60de94ad79a781414de8de44973e6f..1103935e49081c560b024b87f872e9b8c788bad2 100644
|
||||
index 2ca6cc6ba72339459d9591a89995521a3c81d111..59b257051ed3040891f0a32b9c732f8bfabd6f7d 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
@@ -240,4 +240,15 @@ public class PurpurConfig {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Disable outdated build check
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
index 31b08d0c879ca7af6e186bf93095cd01e2565fcf..10aa600fab7146b330d46b5fd2fe596da222a70a 100644
|
||||
index d313f3a9b31d4ecc3b48f8fc2e44d3b445e8e2c5..b8cacfbd6f8f3a37db21586f6febb55d42170e5b 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
@@ -273,7 +273,7 @@ public class Main {
|
||||
@@ -266,7 +266,7 @@ public class Main {
|
||||
System.setProperty(net.minecrell.terminalconsole.TerminalConsoleAppender.JLINE_OVERRIDE_PROPERTY, "false"); // Paper
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Zombie horse naturally spawn
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index d571b4a56807bcc4206d54573604c01290cd3dd7..9451c6fa2307bc12b47a106f2d82508548b109a8 100644
|
||||
index 4b9434b2d03cd24f5dac7098d2f1318fd12baddb..7ab130afddb0893016fb558ed624198316ca191d 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -954,10 +954,18 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
|
||||
@@ -940,10 +940,18 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
|
||||
boolean flag1 = this.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING) && this.random.nextDouble() < (double) difficultydamagescaler.getEffectiveDifficulty() * this.paperConfig().entities.spawning.skeletonHorseThunderSpawnChance.or(0.01D) && !this.getBlockState(blockposition.below()).is(Blocks.LIGHTNING_ROD); // Paper - Configurable spawn chances for skeleton horses
|
||||
|
||||
if (flag1) {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add option to set armorstand step height
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index fddc4a5e5c4f9f3552b3254fec8254774b20f9f1..2e57077a184809e70481c9bba1891e01a9e203f7 100644
|
||||
index 755861185bd8434027acca7f03ed0bfdf9fa2cde..fe5e8009d16fe9292312e37538b02b92b9fea9ed 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -300,6 +300,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -16,7 +16,7 @@ index fddc4a5e5c4f9f3552b3254fec8254774b20f9f1..2e57077a184809e70481c9bba1891e01
|
||||
public boolean noPhysics;
|
||||
private boolean wasOnFire;
|
||||
public final RandomSource random;
|
||||
@@ -5172,7 +5173,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -5169,7 +5170,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
}
|
||||
|
||||
public float maxUpStep() {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Minecart settings and WASD controls
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index 0f979af9131678991860765163fcc4b0453ef52a..664b43e4442d3c07995840d756ced8c3c96d3f7d 100644
|
||||
index 5e8a5e8e4120420a170c4733ae217e7948cef46c..3ea226168519e07b10d015f4c9b2b369569daf11 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1439,6 +1439,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Disable loot drops on death by cramming
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index a16c7069a2ac349a6de366229b77da9a7cec71c0..9c31efc4d8c16c8f3c3e384ad247db28e82628d2 100644
|
||||
index 6884475a5217acb8073dc38e5f7a7b341c8b1dd1..34f2c17831c6edd16b6dc32f3d344b3c209244fc 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1938,6 +1938,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1925,6 +1925,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
|
||||
this.dropEquipment(world); // CraftBukkit - from below
|
||||
if (this.shouldDropLoot() && world.getGameRules().getBoolean(GameRules.RULE_DOMOBLOOT)) {
|
||||
@@ -16,7 +16,7 @@ index a16c7069a2ac349a6de366229b77da9a7cec71c0..9c31efc4d8c16c8f3c3e384ad247db28
|
||||
this.dropFromLootTable(world, damageSource, flag);
|
||||
// Paper start
|
||||
final boolean prev = this.clearEquipmentSlots;
|
||||
@@ -1946,6 +1947,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1933,6 +1934,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
// Paper end
|
||||
this.dropCustomDeathLoot(world, damageSource, flag);
|
||||
this.clearEquipmentSlots = prev; // Paper
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Skip events if there's no listeners
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
|
||||
index 64bf4444ffba25cb40743a32267aa790ad1738f9..1210305bcfc8a1158dbdc3c21647502a01b138a3 100644
|
||||
index 517cb238ec280aadd1fc54bcb675ed386e798eaf..832930024b0d642496efe17f7e2f8e02413275f0 100644
|
||||
--- a/src/main/java/net/minecraft/commands/Commands.java
|
||||
+++ b/src/main/java/net/minecraft/commands/Commands.java
|
||||
@@ -515,6 +515,7 @@ public class Commands {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add permission for F3+N debug
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
index 88678fb527f170c81d5e2d4a28f65e398dab8939..98992aae7c7724a25fc6f6aaee27b07dccbe2292 100644
|
||||
index b9136fcec3f36549ddd572cbb8cd01ecae45590f..8596e1c016c51a840b8c0c6a8d5c8e0893c4f1c7 100644
|
||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
@@ -1108,6 +1108,7 @@ public abstract class PlayerList {
|
||||
@@ -5,18 +5,22 @@ Subject: [PATCH] Configurable TPS Catchup
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 00808ffd5b9afd16fb0c7353ef834d0479598ac8..07752c1348ef11f91bd0ba57d2ec97b10b446b5a 100644
|
||||
index 18dc66b78f91c0b9efdf9008c0a38c52fdfc93ad..22cbe00a19a2ac0ad25b1107b1290b793903e3aa 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1346,7 +1346,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1344,6 +1344,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
gameprofilerfiller.popPush("nextTickWait");
|
||||
this.mayHaveDelayedTasks = true;
|
||||
this.delayedTasksMaxNextTickTimeNanos = Math.max(Util.getNanos() + i, this.nextTickTimeNanos);
|
||||
// Pufferfish start - tps catchup
|
||||
- if (!gg.pufferfish.pufferfish.PufferfishConfig.tpsCatchup) {
|
||||
+ if (!org.purpurmc.purpur.PurpurConfig.tpsCatchup || !gg.pufferfish.pufferfish.PufferfishConfig.tpsCatchup) { // Purpur
|
||||
this.nextTickTimeNanos = currentTime + i;
|
||||
this.delayedTasksMaxNextTickTimeNanos = nextTickTimeNanos;
|
||||
}
|
||||
+ // Pufferfish start - tps catchup
|
||||
+ if (!org.purpurmc.purpur.PurpurConfig.tpsCatchup /*|| !gg.pufferfish.pufferfish.PufferfishConfig.tpsCatchup*/) { // Purpur
|
||||
+ this.nextTickTimeNanos = currentTime + i;
|
||||
+ this.delayedTasksMaxNextTickTimeNanos = nextTickTimeNanos;
|
||||
+ }
|
||||
+ // Pufferfish end
|
||||
this.startMeasuringTaskExecutionTime();
|
||||
this.waitUntilNextTick();
|
||||
this.finishMeasuringTaskExecutionTime();
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
index 59b257051ed3040891f0a32b9c732f8bfabd6f7d..46d06b6887eac6b2e7b3fd9834fdd9284a773f39 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
@@ -18,10 +18,10 @@ index d67136ccf5e23accb656f2532e2ced93669f2a8d..4711f5e5d9f1738d739be68f586f744e
|
||||
this.triggerOnDeathMobEffects(worldserver, Entity.RemovalReason.KILLED);
|
||||
this.discard(EntityRemoveEvent.Cause.EXPLODE); // CraftBukkit - add Bukkit remove cause
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
index 1823b0dd705ff2a4eb4b7dd22675819863e5bfa9..c350bdd31b2b8397aadf0642ee34adcb05db42d6 100644
|
||||
index 9f7261bd22803f0b094e2bfd4a0eb66ad727211e..13eaf1e8b12c3b4cba6b202f2d31e99a8a9bae92 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||
@@ -520,6 +520,7 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
@@ -514,6 +514,7 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
|
||||
@Override
|
||||
public boolean canUse() {
|
||||
@@ -29,7 +29,7 @@ index 1823b0dd705ff2a4eb4b7dd22675819863e5bfa9..c350bdd31b2b8397aadf0642ee34adcb
|
||||
return this.enderman.getCarriedBlock() == null ? false : (!getServerLevel((Entity) this.enderman).getGameRules().getBoolean(GameRules.RULE_MOBGRIEFING) ? false : this.enderman.getRandom().nextInt(reducedTickDelay(2000)) == 0);
|
||||
}
|
||||
|
||||
@@ -565,6 +566,7 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
@@ -559,6 +560,7 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||
|
||||
@Override
|
||||
public boolean canUse() {
|
||||
@@ -43,10 +43,10 @@ index 3c037cabd8331eb96a6523b37abab4e73ab79a02..94ba68e063e63f77f7951d482af7a358
|
||||
// CraftBukkit start
|
||||
@Override
|
||||
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 845af8a8976bd81b3d7221b7b3284c31a6fda136..ca92e0a0ccb31f698fafbd2ad74a5758c6cf5dcc 100644
|
||||
index 39f2091391222bcd4ab0f2677f896c5ecdc6e86c..129833b7ecd644e4180fadca15015276961725c6 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -177,6 +177,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -175,6 +175,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HasRider(this));
|
||||
@@ -54,7 +54,7 @@ index 845af8a8976bd81b3d7221b7b3284c31a6fda136..ca92e0a0ccb31f698fafbd2ad74a5758
|
||||
}
|
||||
// Purpur end - Ridables
|
||||
|
||||
@@ -185,6 +186,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -183,6 +184,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
public void initAttributes() {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.villagerMaxHealth);
|
||||
this.getAttribute(Attributes.SCALE).setBaseValue(this.level().purpurConfig.villagerScale);
|
||||
@@ -62,7 +62,7 @@ index 845af8a8976bd81b3d7221b7b3284c31a6fda136..ca92e0a0ccb31f698fafbd2ad74a5758
|
||||
}
|
||||
// Purpur end - Configurable entity base attributes
|
||||
@Override
|
||||
@@ -248,7 +250,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -246,7 +248,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
}
|
||||
|
||||
public static AttributeSupplier.Builder createAttributes() {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Allow leashing villagers
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 14bdc3f61960ec272d6cf83af0635bec839a73bd..91f31af898dd6620e09efa59170c455f35babcfe 100644
|
||||
index fe5e8009d16fe9292312e37538b02b92b9fea9ed..7b017806dde98a33b64223f098cc63c286dac02b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -3118,6 +3118,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -3115,6 +3115,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
if (this.isAlive() && this instanceof Leashable leashable) {
|
||||
if (leashable.getLeashHolder() == player) {
|
||||
if (!this.level().isClientSide()) {
|
||||
@@ -17,10 +17,10 @@ index 14bdc3f61960ec272d6cf83af0635bec839a73bd..91f31af898dd6620e09efa59170c455f
|
||||
// Paper start - Expand EntityUnleashEvent
|
||||
org.bukkit.event.player.PlayerUnleashEntityEvent event = CraftEventFactory.callPlayerUnleashEntityEvent(this, player, hand, !player.hasInfiniteMaterials());
|
||||
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 ca92e0a0ccb31f698fafbd2ad74a5758c6cf5dcc..8020c505c70938d4da4748484def33581bde564d 100644
|
||||
index 129833b7ecd644e4180fadca15015276961725c6..f89c82db6333dc64ac57e225f5522943eb959f46 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -189,6 +189,12 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -187,6 +187,12 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
this.getAttribute(Attributes.TEMPT_RANGE).setBaseValue(this.level().purpurConfig.villagerTemptRange); // Purpur - Villagers follow emerald blocks
|
||||
}
|
||||
// Purpur end - Configurable entity base attributes
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add player death exp control options
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index 47d2f1af81d64054e30b353b66c0a6ad68583298..108eb7557877093e866b5996abdb3fbf4542e62b 100644
|
||||
index 2f69a511db8d43fbd3a17387cded1d3573579fce..8ccc760e84aec8aabbe5b8112b332cee13849b23 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -1924,7 +1924,23 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -41,10 +41,10 @@ index b1c917d65076a3805e5b78cb946753f0c101e214..82210667376fd466d5d4cdcb56b62f61
|
||||
|
||||
public class FrostedIce extends ConfigurationPart {
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 3014da3cb3053cda965fd3f8480dbb4decf71f70..902cacf2172650e693ead22cb42f184145385ad4 100644
|
||||
index 22cbe00a19a2ac0ad25b1107b1290b793903e3aa..6cec325942c44da6455f0b349ad83e1dc2b8b7d4 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1271,7 +1271,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1270,7 +1270,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
LOGGER.info("*************************************************************************************");
|
||||
}
|
||||
// Paper end - Add onboarding message for initial server start
|
||||
@@ -62,7 +62,7 @@ index 3014da3cb3053cda965fd3f8480dbb4decf71f70..902cacf2172650e693ead22cb42f1841
|
||||
long i;
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
index fca644c904fe5f4b2637ed9d3062ae247751b9f1..7ced95af8da7150caf115508f8cb694ad737a27f 100644
|
||||
index cf63c64b8c2ac148b83325209940713a91b91bad..59a8007add25bf947b87eef3ece55bca192ba358 100644
|
||||
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
@@ -219,6 +219,15 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add canSaveToDisk to Entity
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 91f31af898dd6620e09efa59170c455f35babcfe..b739929ad53940a218a777056f05df4c8b8d0974 100644
|
||||
index 7b017806dde98a33b64223f098cc63c286dac02b..eea1053e0ec1446e117d3ac4732deaba191db8f2 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -572,6 +572,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -569,6 +569,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
}
|
||||
}
|
||||
// Paper end - optimise entity tracker
|
||||
@@ -18,10 +18,10 @@ index bf8c511739265c6a9cd277752e844481598f8966..ffe2399ab6b1f311536475d8216238b5
|
||||
|
||||
// CraftBukkit start
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 9c31efc4d8c16c8f3c3e384ad247db28e82628d2..b73315809aaf2306c09ec41e8fe74c2c9ec071a7 100644
|
||||
index 34f2c17831c6edd16b6dc32f3d344b3c209244fc..8829e613e1c307e9a40b30a797cada500971453d 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -4726,7 +4726,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -4699,7 +4699,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
if (equippable != null && equippable.dispensable()) {
|
||||
EquipmentSlot enumitemslot = equippable.slot();
|
||||
|
||||
@@ -30,7 +30,7 @@ index 9c31efc4d8c16c8f3c3e384ad247db28e82628d2..b73315809aaf2306c09ec41e8fe74c2c
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
@@ -4751,6 +4751,12 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -4724,6 +4724,12 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
return equippable == null ? slot == EquipmentSlot.MAINHAND && this.canUseSlot(EquipmentSlot.MAINHAND) : slot == equippable.slot() && this.canUseSlot(equippable.slot()) && equippable.canBeEquippedBy(this.getType());
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user