mirror of
https://github.com/LeavesMC/Leaves.git
synced 2025-12-19 14:59:32 +00:00
Update 1.19.3 DEV
This commit is contained in:
@@ -13,7 +13,7 @@ repositories {
|
|||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
remapper("net.fabricmc:tiny-remapper:0.8.6:fat")
|
remapper("net.fabricmc:tiny-remapper:0.8.6:fat")
|
||||||
decompiler("net.minecraftforge:forgeflower:1.5.605.7")
|
decompiler("net.minecraftforge:forgeflower:2.0.605.1")
|
||||||
paperclip("io.papermc:paperclip:3.0.2")
|
paperclip("io.papermc:paperclip:3.0.2")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
group=top.leavesmc.leaves
|
group=top.leavesmc.leaves
|
||||||
version=1.19.2-R0.1-SNAPSHOT
|
version=1.19.3-R0.1-SNAPSHOT
|
||||||
|
|
||||||
mcVersion=1.19.2
|
mcVersion=1.19.3
|
||||||
packageVersion=1_19_R1
|
packageVersion=1_19_R2
|
||||||
org.gradle.jvmargs=-Xmx2G
|
org.gradle.jvmargs=-Xmx2G
|
||||||
paperRef=407a445aacbc6d3dd2993e495064800ffff7dddf
|
paperRef=0baf2ff1b9a6e0bd7a7a369597256902fde47fc7
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Leaves Server Config
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
|
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
|
||||||
index e43fef0152468944d8a33036344a43e95fe58476..1b311ecc6a2e4ccb7437eb74dcb7b3a881d035fd 100644
|
index 2204336d8800311b65e894739ab1b27273e7c6f2..da7d83aee6dff653f131718233a21290e76242de 100644
|
||||||
--- a/src/main/java/org/bukkit/Server.java
|
--- a/src/main/java/org/bukkit/Server.java
|
||||||
+++ b/src/main/java/org/bukkit/Server.java
|
+++ b/src/main/java/org/bukkit/Server.java
|
||||||
@@ -1968,6 +1968,14 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
@@ -1970,6 +1970,14 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||||
throw new UnsupportedOperationException("Not supported yet.");
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
}
|
}
|
||||||
// Paper end
|
// Paper end
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Build changes
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||||
index b0e4f11e8af4b909a56bb5576d05ef0537fb25f7..abca7e9e3b26b0f4086b6ace2f35b87d58393575 100644
|
index d5d49bb2b47c889e12d17dc87b8c439a60b3fe67..97269144f53a3766e3ec646576ec06a55930a3a8 100644
|
||||||
--- a/build.gradle.kts
|
--- a/build.gradle.kts
|
||||||
+++ b/build.gradle.kts
|
+++ b/build.gradle.kts
|
||||||
@@ -7,8 +7,12 @@ plugins {
|
@@ -7,8 +7,12 @@ plugins {
|
||||||
@@ -16,14 +16,14 @@ index b0e4f11e8af4b909a56bb5576d05ef0537fb25f7..abca7e9e3b26b0f4086b6ace2f35b87d
|
|||||||
- implementation(project(":paper-mojangapi"))
|
- implementation(project(":paper-mojangapi"))
|
||||||
+ implementation(project(":leaves-api")) // Leaves
|
+ implementation(project(":leaves-api")) // Leaves
|
||||||
+ // Leaves start
|
+ // Leaves start
|
||||||
+ implementation("io.papermc.paper:paper-mojangapi:1.19.2-R0.1-SNAPSHOT") {
|
+ implementation("io.papermc.paper:paper-mojangapi:1.19.3-R0.1-SNAPSHOT") {
|
||||||
+ exclude("io.papermc.paper", "paper-api")
|
+ exclude("io.papermc.paper", "paper-api")
|
||||||
+ }
|
+ }
|
||||||
+ // Leaves end
|
+ // Leaves end
|
||||||
// Paper start
|
// Paper start
|
||||||
implementation("org.jline:jline-terminal-jansi:3.21.0")
|
implementation("org.jline:jline-terminal-jansi:3.21.0")
|
||||||
implementation("net.minecrell:terminalconsoleappender:1.3.0")
|
implementation("net.minecrell:terminalconsoleappender:1.3.0")
|
||||||
@@ -56,13 +60,13 @@ tasks.jar {
|
@@ -55,13 +59,13 @@ tasks.jar {
|
||||||
manifest {
|
manifest {
|
||||||
val git = Git(rootProject.layout.projectDirectory.path)
|
val git = Git(rootProject.layout.projectDirectory.path)
|
||||||
val gitHash = git("rev-parse", "--short=7", "HEAD").getText().trim()
|
val gitHash = git("rev-parse", "--short=7", "HEAD").getText().trim()
|
||||||
@@ -39,7 +39,7 @@ index b0e4f11e8af4b909a56bb5576d05ef0537fb25f7..abca7e9e3b26b0f4086b6ace2f35b87d
|
|||||||
"Implementation-Vendor" to date, // Paper
|
"Implementation-Vendor" to date, // Paper
|
||||||
"Specification-Title" to "Bukkit",
|
"Specification-Title" to "Bukkit",
|
||||||
"Specification-Version" to project.version,
|
"Specification-Version" to project.version,
|
||||||
@@ -134,7 +138,7 @@ fun TaskContainer.registerRunTask(
|
@@ -133,7 +137,7 @@ fun TaskContainer.registerRunTask(
|
||||||
name: String,
|
name: String,
|
||||||
block: JavaExec.() -> Unit
|
block: JavaExec.() -> Unit
|
||||||
): TaskProvider<JavaExec> = register<JavaExec>(name) {
|
): TaskProvider<JavaExec> = register<JavaExec>(name) {
|
||||||
@@ -71,7 +71,7 @@ index 7b1843e16745ca8db2244e17490d291401f22679..0ac8bcb0a4b7d1da3d0e016617db7a81
|
|||||||
metrics.addCustomChart(new Metrics.DrilldownPie("java_version", () -> {
|
metrics.addCustomChart(new Metrics.DrilldownPie("java_version", () -> {
|
||||||
Map<String, Map<String, Integer>> map = new HashMap<>();
|
Map<String, Map<String, Integer>> map = new HashMap<>();
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 6dc6c3bccb4ba34268a87b0754c87eb1e0df4135..80d0af51faadaca638fbbd4bb98950b73473b925 100644
|
index 710ca7d3a5659953f64bc6dccdd93b43300961cc..fd59a24743099e0599609bdb4d9b4578cd4c3940 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1654,7 +1654,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1654,7 +1654,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
@@ -84,10 +84,10 @@ index 6dc6c3bccb4ba34268a87b0754c87eb1e0df4135..80d0af51faadaca638fbbd4bb98950b7
|
|||||||
|
|
||||||
public SystemReport fillSystemReport(SystemReport details) {
|
public SystemReport fillSystemReport(SystemReport details) {
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
index 4212568bf8de6988c71f43d3e2152fa0fe51d0d7..54f25b3141779dc1b63674c9ecd923997f2849a1 100644
|
index 47df6f4268a63118da8187f4102c876bd37d1680..79c545b22c5ec202d66b3f6032f894c3de6b8520 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
@@ -248,7 +248,7 @@ import javax.annotation.Nullable; // Paper
|
@@ -261,7 +261,7 @@ import javax.annotation.Nullable; // Paper
|
||||||
import javax.annotation.Nonnull; // Paper
|
import javax.annotation.Nonnull; // Paper
|
||||||
|
|
||||||
public final class CraftServer implements Server {
|
public final class CraftServer implements Server {
|
||||||
@@ -97,7 +97,7 @@ index 4212568bf8de6988c71f43d3e2152fa0fe51d0d7..54f25b3141779dc1b63674c9ecd92399
|
|||||||
private final String bukkitVersion = Versioning.getBukkitVersion();
|
private final String bukkitVersion = Versioning.getBukkitVersion();
|
||||||
private final Logger logger = Logger.getLogger("Minecraft");
|
private final Logger logger = Logger.getLogger("Minecraft");
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||||
index f30621be24c6c3a4f173436fce1ad1c13507c84f..c39290555a2900ad552eb9f1514f81344649fc1f 100644
|
index e072a5475a64d110f25ebcc871aa7703c2fc1e70..ed66126214ebfe770a6be35362fc15d1a04bfa8e 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||||
@@ -278,7 +278,7 @@ public class Main {
|
@@ -278,7 +278,7 @@ public class Main {
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ index 06bff37e4c1fddd3be6343049a66787c63fb420c..15ed5a9af5583e2430804662e3b9fa95
|
|||||||
|
|
||||||
new TimingsExport(listeners, parent, history).start();
|
new TimingsExport(listeners, parent, history).start();
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 5d3b64419e2394d1e60c4bbcbad539354cc7fc5d..2f5ed2d41e9cd768b88b4aab974200e047f916ed 100644
|
index fd59a24743099e0599609bdb4d9b4578cd4c3940..cab8412d5183427b02c5f5d7b76aded8e9fbc491 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1120,6 +1120,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1120,6 +1120,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
@@ -31,10 +31,10 @@ index 5d3b64419e2394d1e60c4bbcbad539354cc7fc5d..2f5ed2d41e9cd768b88b4aab974200e0
|
|||||||
org.spigotmc.WatchdogThread.hasStarted = true; // Paper
|
org.spigotmc.WatchdogThread.hasStarted = true; // Paper
|
||||||
Arrays.fill( recentTps, 20 );
|
Arrays.fill( recentTps, 20 );
|
||||||
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||||
index 2932d2bb797a49e904cebec4285d24d69b429cd9..18d568093aeb8be69fa76c5f2e3ac6dd61d5479b 100644
|
index 51b3db0b6c2cede95b584268e035c0fb36d38094..deafca06331e19105a1e19ae11f271b05af7b982 100644
|
||||||
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||||
@@ -226,6 +226,9 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
@@ -221,6 +221,9 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
||||||
com.destroystokyo.paper.VersionHistoryManager.INSTANCE.getClass(); // load version history now
|
com.destroystokyo.paper.VersionHistoryManager.INSTANCE.getClass(); // load version history now
|
||||||
io.papermc.paper.brigadier.PaperBrigadierProviderImpl.INSTANCE.getClass(); // init PaperBrigadierProvider
|
io.papermc.paper.brigadier.PaperBrigadierProviderImpl.INSTANCE.getClass(); // init PaperBrigadierProvider
|
||||||
// Paper end
|
// Paper end
|
||||||
@@ -45,10 +45,10 @@ index 2932d2bb797a49e904cebec4285d24d69b429cd9..18d568093aeb8be69fa76c5f2e3ac6dd
|
|||||||
this.setPvpAllowed(dedicatedserverproperties.pvp);
|
this.setPvpAllowed(dedicatedserverproperties.pvp);
|
||||||
this.setFlightAllowed(dedicatedserverproperties.allowFlight);
|
this.setFlightAllowed(dedicatedserverproperties.allowFlight);
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index d89471935b2b5888cb5d1f6829ae479003451fda..a69b428d5465b2e434bfd21cd935997c1871bbb6 100644
|
index 3cbf801b2e5420c0e870f73788deb550e49ad54d..856055eeac058290b9b2146a11f5faccd1873df0 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -174,6 +174,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -173,6 +173,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
// Paper end
|
// Paper end
|
||||||
|
|
||||||
public final com.destroystokyo.paper.antixray.ChunkPacketBlockController chunkPacketBlockController; // Paper - Anti-Xray
|
public final com.destroystokyo.paper.antixray.ChunkPacketBlockController chunkPacketBlockController; // Paper - Anti-Xray
|
||||||
@@ -56,7 +56,7 @@ index d89471935b2b5888cb5d1f6829ae479003451fda..a69b428d5465b2e434bfd21cd935997c
|
|||||||
public final co.aikar.timings.WorldTimingsHandler timings; // Paper
|
public final co.aikar.timings.WorldTimingsHandler timings; // Paper
|
||||||
public static BlockPos lastPhysicsProblem; // Spigot
|
public static BlockPos lastPhysicsProblem; // Spigot
|
||||||
private org.spigotmc.TickLimiter entityLimiter;
|
private org.spigotmc.TickLimiter entityLimiter;
|
||||||
@@ -274,6 +275,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -273,6 +274,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - Async-Anti-Xray - Pass executor
|
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - Async-Anti-Xray - Pass executor
|
||||||
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
||||||
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper
|
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper
|
||||||
@@ -65,10 +65,10 @@ index d89471935b2b5888cb5d1f6829ae479003451fda..a69b428d5465b2e434bfd21cd935997c
|
|||||||
this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env);
|
this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env);
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
index 0880f7b55d1ce9ff42206fbb2f201500ec5e6ea5..3b738b215ffe6663560dc7a435f6d03905daba0c 100644
|
index 79c545b22c5ec202d66b3f6032f894c3de6b8520..4d22a40e7ff0b88aa204e0da81e71757ecc1dd7f 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
@@ -966,6 +966,7 @@ public final class CraftServer implements Server {
|
@@ -979,6 +979,7 @@ public final class CraftServer implements Server {
|
||||||
|
|
||||||
org.spigotmc.SpigotConfig.init((File) console.options.valueOf("spigot-settings")); // Spigot
|
org.spigotmc.SpigotConfig.init((File) console.options.valueOf("spigot-settings")); // Spigot
|
||||||
this.console.paperConfigurations.reloadConfigs(this.console);
|
this.console.paperConfigurations.reloadConfigs(this.console);
|
||||||
@@ -76,7 +76,7 @@ index 0880f7b55d1ce9ff42206fbb2f201500ec5e6ea5..3b738b215ffe6663560dc7a435f6d039
|
|||||||
for (ServerLevel world : this.console.getAllLevels()) {
|
for (ServerLevel world : this.console.getAllLevels()) {
|
||||||
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
|
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
|
||||||
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
|
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
|
||||||
@@ -981,6 +982,7 @@ public final class CraftServer implements Server {
|
@@ -994,6 +995,7 @@ public final class CraftServer implements Server {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
world.spigotConfig.init(); // Spigot
|
world.spigotConfig.init(); // Spigot
|
||||||
@@ -84,7 +84,7 @@ index 0880f7b55d1ce9ff42206fbb2f201500ec5e6ea5..3b738b215ffe6663560dc7a435f6d039
|
|||||||
}
|
}
|
||||||
|
|
||||||
Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper
|
Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper
|
||||||
@@ -996,6 +998,7 @@ public final class CraftServer implements Server {
|
@@ -1009,6 +1011,7 @@ public final class CraftServer implements Server {
|
||||||
this.reloadData();
|
this.reloadData();
|
||||||
org.spigotmc.SpigotConfig.registerCommands(); // Spigot
|
org.spigotmc.SpigotConfig.registerCommands(); // Spigot
|
||||||
io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper
|
io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper
|
||||||
@@ -92,7 +92,7 @@ index 0880f7b55d1ce9ff42206fbb2f201500ec5e6ea5..3b738b215ffe6663560dc7a435f6d039
|
|||||||
this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*");
|
this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*");
|
||||||
this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions");
|
this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions");
|
||||||
|
|
||||||
@@ -2735,6 +2738,14 @@ public final class CraftServer implements Server {
|
@@ -2759,6 +2762,14 @@ public final class CraftServer implements Server {
|
||||||
{
|
{
|
||||||
return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console);
|
return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console);
|
||||||
}
|
}
|
||||||
@@ -108,7 +108,7 @@ index 0880f7b55d1ce9ff42206fbb2f201500ec5e6ea5..3b738b215ffe6663560dc7a435f6d039
|
|||||||
@Override
|
@Override
|
||||||
public void restart() {
|
public void restart() {
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||||
index c39290555a2900ad552eb9f1514f81344649fc1f..ed6a0e62e57fe31d2317127c85fbaafdd73736c9 100644
|
index ed66126214ebfe770a6be35362fc15d1a04bfa8e..d8f6ada712c6345332e719ae46602cd84c060ecf 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||||
@@ -158,6 +158,14 @@ public class Main {
|
@@ -158,6 +158,14 @@ public class Main {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Fix gravity block duper
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
index a1421689445b9df3f25889845c21cf37a439afe2..e0cc8171151f9db0d4b29980f097f81cacfe9718 100644
|
index 7f94da8059147760cbdc2476d0e8beda4a105f40..9b3dda86d8094fa221f3cf88ef99b88b0edd105e 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
@@ -510,36 +510,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
@@ -510,36 +510,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||||
@@ -46,7 +46,7 @@ index a1421689445b9df3f25889845c21cf37a439afe2..e0cc8171151f9db0d4b29980f097f81c
|
|||||||
|
|
||||||
public Entity(EntityType<?> type, Level world) {
|
public Entity(EntityType<?> type, Level world) {
|
||||||
this.id = Entity.ENTITY_COUNTER.incrementAndGet();
|
this.id = Entity.ENTITY_COUNTER.incrementAndGet();
|
||||||
@@ -2898,7 +2870,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
@@ -2917,7 +2889,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||||
}
|
}
|
||||||
|
|
||||||
this.processPortalCooldown();
|
this.processPortalCooldown();
|
||||||
@@ -56,10 +56,10 @@ index a1421689445b9df3f25889845c21cf37a439afe2..e0cc8171151f9db0d4b29980f097f81c
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||||
index b2d1a17867cdbaad0c6e5c2376c716f9461af124..76bf5ec58d93164b5eeed63b5dae8a5d39ef15e0 100644
|
index 72f1866226269396ba0f0c1be269e237925d9322..f7585c4cbe9b22b6ddfe928763314e1f7af711c4 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||||
@@ -61,7 +61,7 @@ public class FallingBlockEntity extends Entity {
|
@@ -63,7 +63,7 @@ public class FallingBlockEntity extends Entity {
|
||||||
@Nullable
|
@Nullable
|
||||||
public CompoundTag blockData;
|
public CompoundTag blockData;
|
||||||
protected static final EntityDataAccessor<BlockPos> DATA_START_POS = SynchedEntityData.defineId(FallingBlockEntity.class, EntityDataSerializers.BLOCK_POS);
|
protected static final EntityDataAccessor<BlockPos> DATA_START_POS = SynchedEntityData.defineId(FallingBlockEntity.class, EntityDataSerializers.BLOCK_POS);
|
||||||
@@ -68,7 +68,7 @@ index b2d1a17867cdbaad0c6e5c2376c716f9461af124..76bf5ec58d93164b5eeed63b5dae8a5d
|
|||||||
|
|
||||||
public FallingBlockEntity(EntityType<? extends FallingBlockEntity> type, Level world) {
|
public FallingBlockEntity(EntityType<? extends FallingBlockEntity> type, Level world) {
|
||||||
super(type, world);
|
super(type, world);
|
||||||
@@ -127,11 +127,7 @@ public class FallingBlockEntity extends Entity {
|
@@ -129,11 +129,7 @@ public class FallingBlockEntity extends Entity {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void tick() {
|
public void tick() {
|
||||||
@@ -81,7 +81,7 @@ index b2d1a17867cdbaad0c6e5c2376c716f9461af124..76bf5ec58d93164b5eeed63b5dae8a5d
|
|||||||
if (this.blockState.isAir()) {
|
if (this.blockState.isAir()) {
|
||||||
this.discard();
|
this.discard();
|
||||||
} else {
|
} else {
|
||||||
@@ -144,11 +140,7 @@ public class FallingBlockEntity extends Entity {
|
@@ -146,11 +142,7 @@ public class FallingBlockEntity extends Entity {
|
||||||
|
|
||||||
this.move(MoverType.SELF, this.getDeltaMovement());
|
this.move(MoverType.SELF, this.getDeltaMovement());
|
||||||
|
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Fix trading with the void
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index 79aa3374fd47cd57d2e0810bb5afebbdb38a1892..bd3e6044de5a63c0372b4ed207feb5bb58de0d98 100644
|
index f3a19d00f78e19aa98c57461efb90d79f656a992..bca4022ffff45803984ffbffdaf919376df75af9 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -2619,11 +2619,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
@@ -2599,11 +2599,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||||
// Spigot end
|
// Spigot end
|
||||||
// Spigot Start
|
// Spigot Start
|
||||||
if (entity.getBukkitEntity() instanceof org.bukkit.inventory.InventoryHolder && (!(entity instanceof ServerPlayer) || entity.getRemovalReason() != Entity.RemovalReason.KILLED)) { // SPIGOT-6876: closeInventory clears death message
|
if (entity.getBukkitEntity() instanceof org.bukkit.inventory.InventoryHolder && (!(entity instanceof ServerPlayer) || entity.getRemovalReason() != Entity.RemovalReason.KILLED)) { // SPIGOT-6876: closeInventory clears death message
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Player can edit sign
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/block/SignBlock.java b/src/main/java/net/minecraft/world/level/block/SignBlock.java
|
diff --git a/src/main/java/net/minecraft/world/level/block/SignBlock.java b/src/main/java/net/minecraft/world/level/block/SignBlock.java
|
||||||
index ed3d78494735ceda14ad0ea23adeadc374f3b35e..d0e9fd987687d6a0642a9e312668697f98106a0a 100644
|
index aface9a9697095a29edaf73c9cdabc2c1414b9d7..c2053114c4e89418b9ae6e24a99d11a9542cd676 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/block/SignBlock.java
|
--- a/src/main/java/net/minecraft/world/level/block/SignBlock.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/block/SignBlock.java
|
+++ b/src/main/java/net/minecraft/world/level/block/SignBlock.java
|
||||||
@@ -3,6 +3,7 @@ package net.minecraft.world.level.block;
|
@@ -3,6 +3,7 @@ package net.minecraft.world.level.block;
|
||||||
@@ -16,7 +16,7 @@ index ed3d78494735ceda14ad0ea23adeadc374f3b35e..d0e9fd987687d6a0642a9e312668697f
|
|||||||
import net.minecraft.server.level.ServerPlayer;
|
import net.minecraft.server.level.ServerPlayer;
|
||||||
import net.minecraft.sounds.SoundEvents;
|
import net.minecraft.sounds.SoundEvents;
|
||||||
import net.minecraft.sounds.SoundSource;
|
import net.minecraft.sounds.SoundSource;
|
||||||
@@ -73,6 +74,7 @@ public abstract class SignBlock extends BaseEntityBlock implements SimpleWaterlo
|
@@ -73,15 +74,24 @@ public abstract class SignBlock extends BaseEntityBlock implements SimpleWaterlo
|
||||||
boolean bl2 = itemStack.is(Items.GLOW_INK_SAC);
|
boolean bl2 = itemStack.is(Items.GLOW_INK_SAC);
|
||||||
boolean bl3 = itemStack.is(Items.INK_SAC);
|
boolean bl3 = itemStack.is(Items.INK_SAC);
|
||||||
boolean bl4 = (bl2 || bl || bl3) && player.getAbilities().mayBuild;
|
boolean bl4 = (bl2 || bl || bl3) && player.getAbilities().mayBuild;
|
||||||
@@ -24,9 +24,14 @@ index ed3d78494735ceda14ad0ea23adeadc374f3b35e..d0e9fd987687d6a0642a9e312668697f
|
|||||||
if (world.isClientSide) {
|
if (world.isClientSide) {
|
||||||
return bl4 ? InteractionResult.SUCCESS : InteractionResult.CONSUME;
|
return bl4 ? InteractionResult.SUCCESS : InteractionResult.CONSUME;
|
||||||
} else {
|
} else {
|
||||||
@@ -82,6 +84,14 @@ public abstract class SignBlock extends BaseEntityBlock implements SimpleWaterlo
|
- BlockEntity bl5 = world.getBlockEntity(pos);
|
||||||
|
- if (!(bl5 instanceof SignBlockEntity)) {
|
||||||
|
+ BlockEntity blockEntity = world.getBlockEntity(pos);
|
||||||
|
+ if (!(blockEntity instanceof SignBlockEntity)) {
|
||||||
|
return InteractionResult.PASS;
|
||||||
} else {
|
} else {
|
||||||
SignBlockEntity signBlockEntity = (SignBlockEntity)blockEntity;
|
- SignBlockEntity signBlockEntity = (SignBlockEntity)bl5;
|
||||||
|
+ SignBlockEntity signBlockEntity = (SignBlockEntity)blockEntity;
|
||||||
boolean bl5 = signBlockEntity.hasGlowingText();
|
boolean bl5 = signBlockEntity.hasGlowingText();
|
||||||
+ // Leaves start - Player can edit sign
|
+ // Leaves start - Player can edit sign
|
||||||
+ if (top.leavesmc.leaves.LeavesConfig.playerCanEditSign && bl7 && !signBlockEntity.isEditable) {
|
+ if (top.leavesmc.leaves.LeavesConfig.playerCanEditSign && bl7 && !signBlockEntity.isEditable) {
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||||
From: violetc <58360096+s-yh-china@users.noreply.github.com>
|
From: violetc <58360096+s-yh-china@users.noreply.github.com>
|
||||||
Date: Thu, 3 Feb 2022 12:28:15 +0800
|
Date: Thu, 3 Feb 2022 12:28:15 +0800
|
||||||
Subject: [PATCH] Add fakeplayer support
|
Subject: [PATCH] Fakeplayer support
|
||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index b9af91e89c98d69e0708324f246e2879f476be1a..7516fb266706ddf0935cb622ea11ab096428cd41 100644
|
index cab8412d5183427b02c5f5d7b76aded8e9fbc491..9904aa8178bf64768a646dbc886cb774cb013af9 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -120,6 +120,7 @@ import net.minecraft.util.profiling.metrics.profiling.ServerMetricsSamplersProvi
|
@@ -125,6 +125,7 @@ import net.minecraft.util.profiling.metrics.profiling.ServerMetricsSamplersProvi
|
||||||
import net.minecraft.util.profiling.metrics.storage.MetricsPersister;
|
import net.minecraft.util.profiling.metrics.storage.MetricsPersister;
|
||||||
import net.minecraft.util.thread.ReentrantBlockableEventLoop;
|
import net.minecraft.util.thread.ReentrantBlockableEventLoop;
|
||||||
import net.minecraft.world.Difficulty;
|
import net.minecraft.world.Difficulty;
|
||||||
@@ -16,7 +16,7 @@ index b9af91e89c98d69e0708324f246e2879f476be1a..7516fb266706ddf0935cb622ea11ab09
|
|||||||
import net.minecraft.world.entity.Entity;
|
import net.minecraft.world.entity.Entity;
|
||||||
import net.minecraft.world.entity.ai.village.VillageSiege;
|
import net.minecraft.world.entity.ai.village.VillageSiege;
|
||||||
import net.minecraft.world.entity.npc.CatSpawner;
|
import net.minecraft.world.entity.npc.CatSpawner;
|
||||||
@@ -181,6 +182,7 @@ import org.bukkit.event.server.ServerLoadEvent;
|
@@ -193,6 +194,7 @@ import org.bukkit.event.server.ServerLoadEvent;
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
|
|
||||||
import co.aikar.timings.MinecraftTimings; // Paper
|
import co.aikar.timings.MinecraftTimings; // Paper
|
||||||
@@ -24,7 +24,7 @@ index b9af91e89c98d69e0708324f246e2879f476be1a..7516fb266706ddf0935cb622ea11ab09
|
|||||||
|
|
||||||
public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTask> implements CommandSource, AutoCloseable {
|
public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTask> implements CommandSource, AutoCloseable {
|
||||||
|
|
||||||
@@ -938,6 +940,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -939,6 +941,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
MinecraftServer.LOGGER.info("Stopping server");
|
MinecraftServer.LOGGER.info("Stopping server");
|
||||||
Commands.COMMAND_SENDING_POOL.shutdownNow(); // Paper - Shutdown and don't bother finishing
|
Commands.COMMAND_SENDING_POOL.shutdownNow(); // Paper - Shutdown and don't bother finishing
|
||||||
MinecraftTimings.stopServer(); // Paper
|
MinecraftTimings.stopServer(); // Paper
|
||||||
@@ -57,10 +57,10 @@ index a0c19503aabab5378d672a30163d35a5ba05b6c1..8873e12cbd3d6f9071efedb35ea3c69c
|
|||||||
AdvancementProgress advancementprogress = this.getOrStartProgress(advancement);
|
AdvancementProgress advancementprogress = this.getOrStartProgress(advancement);
|
||||||
boolean flag1 = advancementprogress.isDone();
|
boolean flag1 = advancementprogress.isDone();
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
index 9c9b4d7e0637348a94befce9377fdb69c1239694..8e955ae5a6a726b492d482517649f1de2846c50e 100644
|
index c0b0a7fdb75266a7064d54bda6441953184ecc64..3ed09fe9693b64105466e6102062bce500da0486 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
@@ -174,6 +174,7 @@ import org.bukkit.event.player.PlayerPortalEvent;
|
@@ -176,6 +176,7 @@ import org.bukkit.event.player.PlayerPortalEvent;
|
||||||
import org.bukkit.event.player.PlayerTeleportEvent;
|
import org.bukkit.event.player.PlayerTeleportEvent;
|
||||||
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
|
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
|
||||||
import org.bukkit.inventory.MainHand;
|
import org.bukkit.inventory.MainHand;
|
||||||
@@ -68,7 +68,7 @@ index 9c9b4d7e0637348a94befce9377fdb69c1239694..8e955ae5a6a726b492d482517649f1de
|
|||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
|
|
||||||
public class ServerPlayer extends Player {
|
public class ServerPlayer extends Player {
|
||||||
@@ -1189,6 +1190,13 @@ public class ServerPlayer extends Player {
|
@@ -1211,6 +1212,13 @@ public class ServerPlayer extends Player {
|
||||||
this.lastSentHealth = -1.0F;
|
this.lastSentHealth = -1.0F;
|
||||||
this.lastSentFood = -1;
|
this.lastSentFood = -1;
|
||||||
|
|
||||||
@@ -83,10 +83,10 @@ index 9c9b4d7e0637348a94befce9377fdb69c1239694..8e955ae5a6a726b492d482517649f1de
|
|||||||
PlayerChangedWorldEvent changeEvent = new PlayerChangedWorldEvent(this.getBukkitEntity(), worldserver1.getWorld());
|
PlayerChangedWorldEvent changeEvent = new PlayerChangedWorldEvent(this.getBukkitEntity(), worldserver1.getWorld());
|
||||||
this.level.getCraftServer().getPluginManager().callEvent(changeEvent);
|
this.level.getCraftServer().getPluginManager().callEvent(changeEvent);
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index 3be9352ae9b0b84acf07064b45562ceffd30391b..a2af1dae2cf9176bbfd33b198f75584662027074 100644
|
index b348d33726b2b14ea2d12ce3430df2c0b94295f4..83c38c8c9fb53274f391065d947df566861a3e99 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -76,6 +76,7 @@ import net.minecraft.server.ServerScoreboard;
|
@@ -80,6 +80,7 @@ import net.minecraft.server.ServerScoreboard;
|
||||||
import net.minecraft.tags.BlockTags;
|
import net.minecraft.tags.BlockTags;
|
||||||
import net.minecraft.tags.TagNetworkSerialization;
|
import net.minecraft.tags.TagNetworkSerialization;
|
||||||
import net.minecraft.util.Mth;
|
import net.minecraft.util.Mth;
|
||||||
@@ -94,7 +94,7 @@ index 3be9352ae9b0b84acf07064b45562ceffd30391b..a2af1dae2cf9176bbfd33b198f755846
|
|||||||
import net.minecraft.world.effect.MobEffectInstance;
|
import net.minecraft.world.effect.MobEffectInstance;
|
||||||
import net.minecraft.world.entity.Entity;
|
import net.minecraft.world.entity.Entity;
|
||||||
import net.minecraft.world.entity.EntityType;
|
import net.minecraft.world.entity.EntityType;
|
||||||
@@ -96,6 +97,7 @@ import net.minecraft.world.scores.Objective;
|
@@ -100,6 +101,7 @@ import net.minecraft.world.scores.Objective;
|
||||||
import net.minecraft.world.scores.PlayerTeam;
|
import net.minecraft.world.scores.PlayerTeam;
|
||||||
import net.minecraft.world.scores.Scoreboard; // Paper
|
import net.minecraft.world.scores.Scoreboard; // Paper
|
||||||
import net.minecraft.world.scores.Team;
|
import net.minecraft.world.scores.Team;
|
||||||
@@ -102,7 +102,7 @@ index 3be9352ae9b0b84acf07064b45562ceffd30391b..a2af1dae2cf9176bbfd33b198f755846
|
|||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
|
|
||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
@@ -113,7 +115,6 @@ import org.bukkit.Location;
|
@@ -117,7 +119,6 @@ import org.bukkit.Location;
|
||||||
import org.bukkit.craftbukkit.CraftServer;
|
import org.bukkit.craftbukkit.CraftServer;
|
||||||
import org.bukkit.craftbukkit.CraftWorld;
|
import org.bukkit.craftbukkit.CraftWorld;
|
||||||
import org.bukkit.craftbukkit.entity.CraftPlayer;
|
import org.bukkit.craftbukkit.entity.CraftPlayer;
|
||||||
@@ -110,7 +110,7 @@ index 3be9352ae9b0b84acf07064b45562ceffd30391b..a2af1dae2cf9176bbfd33b198f755846
|
|||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.player.PlayerChangedWorldEvent;
|
import org.bukkit.event.player.PlayerChangedWorldEvent;
|
||||||
import org.bukkit.event.player.PlayerJoinEvent;
|
import org.bukkit.event.player.PlayerJoinEvent;
|
||||||
@@ -375,6 +376,18 @@ public abstract class PlayerList {
|
@@ -384,6 +385,18 @@ public abstract class PlayerList {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -130,10 +130,10 @@ index 3be9352ae9b0b84acf07064b45562ceffd30391b..a2af1dae2cf9176bbfd33b198f755846
|
|||||||
|
|
||||||
if (jm != null && !jm.equals(net.kyori.adventure.text.Component.empty())) { // Paper - Adventure
|
if (jm != null && !jm.equals(net.kyori.adventure.text.Component.empty())) { // Paper - Adventure
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
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 0ea101f155936f7c340d9e1d1077c58b72551027..643dd0f28e47c479d91d5a3ac53c59ee098c99c6 100644
|
index 2e6557a19523d18aecff709de30cb4466b46a9fa..b884439a537a938f0636ccdcd1447891c10bb691 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||||
@@ -1300,7 +1300,7 @@ public abstract class Player extends LivingEntity {
|
@@ -1282,7 +1282,7 @@ public abstract class Player extends LivingEntity {
|
||||||
boolean flag3 = false;
|
boolean flag3 = false;
|
||||||
double d0 = (double) (this.walkDist - this.walkDistO);
|
double d0 = (double) (this.walkDist - this.walkDistO);
|
||||||
|
|
||||||
@@ -143,10 +143,10 @@ index 0ea101f155936f7c340d9e1d1077c58b72551027..643dd0f28e47c479d91d5a3ac53c59ee
|
|||||||
|
|
||||||
if (itemstack.getItem() instanceof SwordItem) {
|
if (itemstack.getItem() instanceof SwordItem) {
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||||
index 01132b10799034232e7e5cbb460d848601e04012..eb8a4b6590b7c177dd1b41b90d7991a48f387af0 100644
|
index 6cd6cb256bde958416a0e4b13fc1d3df74f230fd..e1f14b77a900fa269e72c53c12ca4a5929a5ddc5 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||||
@@ -189,6 +189,8 @@ import org.bukkit.plugin.Plugin;
|
@@ -190,6 +190,8 @@ import org.bukkit.plugin.Plugin;
|
||||||
import org.bukkit.util.BoundingBox;
|
import org.bukkit.util.BoundingBox;
|
||||||
import org.bukkit.util.NumberConversions;
|
import org.bukkit.util.NumberConversions;
|
||||||
import org.bukkit.util.Vector;
|
import org.bukkit.util.Vector;
|
||||||
@@ -155,7 +155,7 @@ index 01132b10799034232e7e5cbb460d848601e04012..eb8a4b6590b7c177dd1b41b90d7991a4
|
|||||||
|
|
||||||
public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||||
private static PermissibleBase perm;
|
private static PermissibleBase perm;
|
||||||
@@ -213,7 +215,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
@@ -214,7 +216,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||||
if (entity instanceof LivingEntity) {
|
if (entity instanceof LivingEntity) {
|
||||||
// Players
|
// Players
|
||||||
if (entity instanceof Player) {
|
if (entity instanceof Player) {
|
||||||
@@ -573,10 +573,10 @@ index 0000000000000000000000000000000000000000..daaece30b2a3983f1cc9ee9a851e8f37
|
|||||||
+}
|
+}
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/bot/ServerBot.java b/src/main/java/top/leavesmc/leaves/bot/ServerBot.java
|
diff --git a/src/main/java/top/leavesmc/leaves/bot/ServerBot.java b/src/main/java/top/leavesmc/leaves/bot/ServerBot.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..821d456d11b6f49ea8eba59e79d09980b494fa66
|
index 0000000000000000000000000000000000000000..7b1e786dd30e019b4fce88df6f4d3cbb1ad5d606
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/bot/ServerBot.java
|
+++ b/src/main/java/top/leavesmc/leaves/bot/ServerBot.java
|
||||||
@@ -0,0 +1,727 @@
|
@@ -0,0 +1,728 @@
|
||||||
+package top.leavesmc.leaves.bot;
|
+package top.leavesmc.leaves.bot;
|
||||||
+
|
+
|
||||||
+import com.google.common.collect.Lists;
|
+import com.google.common.collect.Lists;
|
||||||
@@ -589,7 +589,8 @@ index 0000000000000000000000000000000000000000..821d456d11b6f49ea8eba59e79d09980
|
|||||||
+import net.minecraft.network.protocol.Packet;
|
+import net.minecraft.network.protocol.Packet;
|
||||||
+import net.minecraft.network.protocol.PacketFlow;
|
+import net.minecraft.network.protocol.PacketFlow;
|
||||||
+import net.minecraft.network.protocol.game.ClientboundAddPlayerPacket;
|
+import net.minecraft.network.protocol.game.ClientboundAddPlayerPacket;
|
||||||
+import net.minecraft.network.protocol.game.ClientboundPlayerInfoPacket;
|
+import net.minecraft.network.protocol.game.ClientboundPlayerInfoRemovePacket;
|
||||||
|
+import net.minecraft.network.protocol.game.ClientboundPlayerInfoUpdatePacket;
|
||||||
+import net.minecraft.network.protocol.game.ClientboundRemoveEntitiesPacket;
|
+import net.minecraft.network.protocol.game.ClientboundRemoveEntitiesPacket;
|
||||||
+import net.minecraft.network.protocol.game.ClientboundRotateHeadPacket;
|
+import net.minecraft.network.protocol.game.ClientboundRotateHeadPacket;
|
||||||
+import net.minecraft.network.protocol.game.ClientboundSetEntityDataPacket;
|
+import net.minecraft.network.protocol.game.ClientboundSetEntityDataPacket;
|
||||||
@@ -666,7 +667,7 @@ index 0000000000000000000000000000000000000000..821d456d11b6f49ea8eba59e79d09980
|
|||||||
+ private static final Plugin MINECRAFT_PLUGIN = new MinecraftInternalPlugin();
|
+ private static final Plugin MINECRAFT_PLUGIN = new MinecraftInternalPlugin();
|
||||||
+
|
+
|
||||||
+ private ServerBot(MinecraftServer server, ServerLevel world, GameProfile profile) {
|
+ private ServerBot(MinecraftServer server, ServerLevel world, GameProfile profile) {
|
||||||
+ super(server, world, profile, null);
|
+ super(server, world, profile);
|
||||||
+ this.entityData.set(new EntityDataAccessor<>(16, EntityDataSerializers.INT), 0xFF);
|
+ this.entityData.set(new EntityDataAccessor<>(16, EntityDataSerializers.INT), 0xFF);
|
||||||
+
|
+
|
||||||
+ this.velocity = new Vector(0, 0, 0);
|
+ this.velocity = new Vector(0, 0, 0);
|
||||||
@@ -778,9 +779,9 @@ index 0000000000000000000000000000000000000000..821d456d11b6f49ea8eba59e79d09980
|
|||||||
+
|
+
|
||||||
+ private Packet<?>[] getRenderPackets() {
|
+ private Packet<?>[] getRenderPackets() {
|
||||||
+ return new Packet[]{
|
+ return new Packet[]{
|
||||||
+ new ClientboundPlayerInfoPacket(ClientboundPlayerInfoPacket.Action.ADD_PLAYER, this),
|
+ new ClientboundPlayerInfoUpdatePacket(ClientboundPlayerInfoUpdatePacket.Action.ADD_PLAYER, this),
|
||||||
+ new ClientboundAddPlayerPacket(this),
|
+ new ClientboundAddPlayerPacket(this),
|
||||||
+ new ClientboundSetEntityDataPacket(this.getId(), this.getEntityData(), true),
|
+ new ClientboundSetEntityDataPacket(this.getId(), this.getEntityData().packDirty()),
|
||||||
+ new ClientboundRotateHeadPacket(this, (byte) ((getYRot() * 256f) / 360f))
|
+ new ClientboundRotateHeadPacket(this, (byte) ((getYRot() * 256f) / 360f))
|
||||||
+ };
|
+ };
|
||||||
+ }
|
+ }
|
||||||
@@ -807,7 +808,7 @@ index 0000000000000000000000000000000000000000..821d456d11b6f49ea8eba59e79d09980
|
|||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ private void removeTab() {
|
+ private void removeTab() {
|
||||||
+ sendPacket(new ClientboundPlayerInfoPacket(ClientboundPlayerInfoPacket.Action.REMOVE_PLAYER, this));
|
+ sendPacket(new ClientboundPlayerInfoRemovePacket(List.of(this.getUUID())));
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ private void setDead() {
|
+ private void setDead() {
|
||||||
@@ -1108,7 +1109,7 @@ index 0000000000000000000000000000000000000000..821d456d11b6f49ea8eba59e79d09980
|
|||||||
+
|
+
|
||||||
+ public void setOnFirePackets(boolean onFire) {
|
+ public void setOnFirePackets(boolean onFire) {
|
||||||
+ entityData.set(new EntityDataAccessor<>(0, EntityDataSerializers.BYTE), onFire ? (byte) 1 : (byte) 0);
|
+ entityData.set(new EntityDataAccessor<>(0, EntityDataSerializers.BYTE), onFire ? (byte) 1 : (byte) 0);
|
||||||
+ sendPacket(new ClientboundSetEntityDataPacket(getId(), getEntityData(), false));
|
+ sendPacket(new ClientboundSetEntityDataPacket(getId(), getEntityData().packDirty()));
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ private void fallDamageCheck() {
|
+ private void fallDamageCheck() {
|
||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add isShrink to EntityResurrectEvent
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
index 11d7c42d65b91bf57b7bba7812aa17e60e018c67..3529f5fede54fbdf0a3783cce2e3322110685e99 100644
|
index 9e075de3542bda8ae086c9ca68bcd00b16d565d0..be1b2d83666a3d7cb67c864590e9b2fbbf583a10 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
@@ -1548,12 +1548,12 @@ public abstract class LivingEntity extends Entity {
|
@@ -1549,12 +1549,12 @@ public abstract class LivingEntity extends Entity {
|
||||||
}
|
}
|
||||||
|
|
||||||
org.bukkit.inventory.EquipmentSlot handSlot = (hand != null) ? org.bukkit.craftbukkit.CraftEquipmentSlot.getHand(hand) : null;
|
org.bukkit.inventory.EquipmentSlot handSlot = (hand != null) ? org.bukkit.craftbukkit.CraftEquipmentSlot.getHand(hand) : null;
|
||||||
@@ -23,7 +23,7 @@ index 11d7c42d65b91bf57b7bba7812aa17e60e018c67..3529f5fede54fbdf0a3783cce2e33221
|
|||||||
itemstack1.shrink(1);
|
itemstack1.shrink(1);
|
||||||
}
|
}
|
||||||
if (itemstack != null && this instanceof ServerPlayer) {
|
if (itemstack != null && this instanceof ServerPlayer) {
|
||||||
@@ -4414,3 +4414,4 @@ public abstract class LivingEntity extends Entity {
|
@@ -4436,3 +4436,4 @@ public abstract class LivingEntity extends Entity {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,52 +5,60 @@ Subject: [PATCH] No chat sign
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/io/papermc/paper/adventure/ChatProcessor.java b/src/main/java/io/papermc/paper/adventure/ChatProcessor.java
|
diff --git a/src/main/java/io/papermc/paper/adventure/ChatProcessor.java b/src/main/java/io/papermc/paper/adventure/ChatProcessor.java
|
||||||
index 28ddab1121e314e82bf764fd89f36714bd7445f8..786f89f9d75cf8ad6a6b097556a8d8b115e72abf 100644
|
index fd5cbb45e9894b7895ea488e2b9876c0391f6f11..ceb9f13a171ec3e115ef9037f211ca7ccd7d4741 100644
|
||||||
--- a/src/main/java/io/papermc/paper/adventure/ChatProcessor.java
|
--- a/src/main/java/io/papermc/paper/adventure/ChatProcessor.java
|
||||||
+++ b/src/main/java/io/papermc/paper/adventure/ChatProcessor.java
|
+++ b/src/main/java/io/papermc/paper/adventure/ChatProcessor.java
|
||||||
@@ -313,7 +313,7 @@ public final class ChatProcessor {
|
@@ -307,7 +307,7 @@ public final class ChatProcessor {
|
||||||
|
|
||||||
private void sendToServer(final ChatType.Bound chatType, final @Nullable Function<Audience, net.minecraft.network.chat.Component> msgFunction) {
|
private void sendToServer(final ChatType.Bound chatType, final @Nullable Function<Audience, net.minecraft.network.chat.Component> msgFunction) {
|
||||||
final PlayerChatMessage toConsoleMessage = msgFunction == null ? ChatProcessor.this.message : ChatProcessor.this.message.withUnsignedContent(msgFunction.apply(ChatProcessor.this.server.console));
|
final PlayerChatMessage toConsoleMessage = msgFunction == null ? ChatProcessor.this.message : ChatProcessor.this.message.withUnsignedContent(msgFunction.apply(ChatProcessor.this.server.console));
|
||||||
- ChatProcessor.this.server.logChatMessage(toConsoleMessage.serverContent(), chatType, ChatProcessor.this.server.getPlayerList().verifyChatTrusted(toConsoleMessage, ChatProcessor.this.player.asChatSender()) ? null : "Not Secure");
|
- ChatProcessor.this.server.logChatMessage(toConsoleMessage.decoratedContent(), chatType, ChatProcessor.this.server.getPlayerList().verifyChatTrusted(toConsoleMessage) ? null : "Not Secure");
|
||||||
+ ChatProcessor.this.server.logChatMessage(toConsoleMessage.serverContent(), chatType, ChatProcessor.this.server.getPlayerList().verifyChatTrusted(toConsoleMessage, ChatProcessor.this.player.asChatSender()) || top.leavesmc.leaves.LeavesConfig.noChatSign ? null : "Not Secure"); // Leaves - No Not Secure
|
+ ChatProcessor.this.server.logChatMessage(toConsoleMessage.decoratedContent(), chatType, ChatProcessor.this.server.getPlayerList().verifyChatTrusted(toConsoleMessage) || top.leavesmc.leaves.LeavesConfig.noChatSign ? null : "Not Secure"); // Leaves - No Not Secure
|
||||||
}
|
}
|
||||||
|
|
||||||
record ConstantFunction(net.minecraft.network.chat.Component component) implements Function<Audience, net.minecraft.network.chat.Component> {
|
record ConstantFunction(net.minecraft.network.chat.Component component) implements Function<Audience, net.minecraft.network.chat.Component> {
|
||||||
diff --git a/src/main/java/net/minecraft/network/protocol/game/ServerboundChatPacket.java b/src/main/java/net/minecraft/network/protocol/game/ServerboundChatPacket.java
|
diff --git a/src/main/java/net/minecraft/network/protocol/game/ServerboundChatPacket.java b/src/main/java/net/minecraft/network/protocol/game/ServerboundChatPacket.java
|
||||||
index 62ee3e8b03a4d67e5e9b78ed905c03f5302a7785..3ddc8605168117a84fc6cd18f09014b4c07b499d 100644
|
index d1d2fc0c57523c1abf1e8bfec913c78927c3dafc..7e0d49edb49a290b9e3ff4465b5e3c49f1aec9da 100644
|
||||||
--- a/src/main/java/net/minecraft/network/protocol/game/ServerboundChatPacket.java
|
--- a/src/main/java/net/minecraft/network/protocol/game/ServerboundChatPacket.java
|
||||||
+++ b/src/main/java/net/minecraft/network/protocol/game/ServerboundChatPacket.java
|
+++ b/src/main/java/net/minecraft/network/protocol/game/ServerboundChatPacket.java
|
||||||
@@ -10,9 +10,15 @@ import net.minecraft.server.level.ServerPlayer;
|
@@ -2,6 +2,8 @@ package net.minecraft.network.protocol.game;
|
||||||
|
|
||||||
public record ServerboundChatPacket(String message, Instant timeStamp, long salt, MessageSignature signature, boolean signedPreview, LastSeenMessages.Update lastSeenMessages) implements Packet<ServerGamePacketListener> {
|
import java.time.Instant;
|
||||||
public ServerboundChatPacket(FriendlyByteBuf buf) {
|
import javax.annotation.Nullable;
|
||||||
- this(buf.readUtf(256), buf.readInstant(), buf.readLong(), new MessageSignature(buf), buf.readBoolean(), new LastSeenMessages.Update(buf));
|
|
||||||
+ // Leaves start - EMPTY
|
|
||||||
+ this(buf.readUtf(256), buf.readInstant(), buf.readLong(), buf.readByteArray(), buf.readBoolean(), new LastSeenMessages.Update(buf));
|
|
||||||
}
|
|
||||||
|
|
||||||
+ private ServerboundChatPacket(String message, Instant timeStamp, long salt, byte[] bytes, boolean signedPreview, LastSeenMessages.Update lastSeenMessages) {
|
|
||||||
+ this(message, timeStamp, salt, MessageSignature.EMPTY, signedPreview, lastSeenMessages);
|
|
||||||
+ }
|
|
||||||
+ // Leaves end - EMPTY
|
|
||||||
+
|
+
|
||||||
|
+import io.netty.buffer.ByteBuf;
|
||||||
|
import net.minecraft.network.FriendlyByteBuf;
|
||||||
|
import net.minecraft.network.chat.LastSeenMessages;
|
||||||
|
import net.minecraft.network.chat.MessageSignature;
|
||||||
|
@@ -9,8 +11,14 @@ import net.minecraft.network.protocol.Packet;
|
||||||
|
|
||||||
|
public record ServerboundChatPacket(String message, Instant timeStamp, long salt, @Nullable MessageSignature signature, LastSeenMessages.Update lastSeenMessages) implements Packet<ServerGamePacketListener> {
|
||||||
|
public ServerboundChatPacket(FriendlyByteBuf buf) {
|
||||||
|
- this(buf.readUtf(256), buf.readInstant(), buf.readLong(), buf.readNullable(MessageSignature::read), new LastSeenMessages.Update(buf));
|
||||||
|
+ // Leaves start - EMPTY
|
||||||
|
+ this(buf.readUtf(256), buf.readInstant(), buf.readLong(), buf.readBytes(new byte[256]), new LastSeenMessages.Update(buf));
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ private ServerboundChatPacket(String message, Instant timeStamp, long salt, ByteBuf byteBuf, LastSeenMessages.Update lastSeenMessages) {
|
||||||
|
+ this(message, timeStamp, salt, (MessageSignature) null, lastSeenMessages);
|
||||||
|
}
|
||||||
|
+ // Leaves end - EMPTY
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void write(FriendlyByteBuf buf) {
|
public void write(FriendlyByteBuf buf) {
|
||||||
buf.writeUtf(this.message, 256);
|
|
||||||
diff --git a/src/main/java/net/minecraft/network/protocol/status/ServerStatus.java b/src/main/java/net/minecraft/network/protocol/status/ServerStatus.java
|
diff --git a/src/main/java/net/minecraft/network/protocol/status/ServerStatus.java b/src/main/java/net/minecraft/network/protocol/status/ServerStatus.java
|
||||||
index 11183b4a39b9897e1b1067eb2a3556d2b1d90f52..a335bcf8fd9330e2e275d78671c6e2647cb0bac5 100644
|
index 6e0a3086da142f1c42007a16bbec7edbab17da04..776be7f58746f96fe9bf7daf11053d3958690df2 100644
|
||||||
--- a/src/main/java/net/minecraft/network/protocol/status/ServerStatus.java
|
--- a/src/main/java/net/minecraft/network/protocol/status/ServerStatus.java
|
||||||
+++ b/src/main/java/net/minecraft/network/protocol/status/ServerStatus.java
|
+++ b/src/main/java/net/minecraft/network/protocol/status/ServerStatus.java
|
||||||
@@ -28,6 +28,7 @@ public class ServerStatus {
|
@@ -27,6 +27,7 @@ public class ServerStatus {
|
||||||
|
@Nullable
|
||||||
private String favicon;
|
private String favicon;
|
||||||
private boolean previewsChat;
|
|
||||||
private boolean enforcesSecureChat;
|
private boolean enforcesSecureChat;
|
||||||
+ private boolean preventsChatReports; // Leaves - preventsChatReports
|
+ private boolean preventsChatReports; // Leaves - preventsChatReports
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public Component getDescription() {
|
public Component getDescription() {
|
||||||
@@ -78,9 +79,19 @@ public class ServerStatus {
|
@@ -69,9 +70,19 @@ public class ServerStatus {
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean enforcesSecureChat() {
|
public boolean enforcesSecureChat() {
|
||||||
@@ -71,7 +79,7 @@ index 11183b4a39b9897e1b1067eb2a3556d2b1d90f52..a335bcf8fd9330e2e275d78671c6e264
|
|||||||
public static class Players {
|
public static class Players {
|
||||||
private final int maxPlayers;
|
private final int maxPlayers;
|
||||||
private final int numPlayers;
|
private final int numPlayers;
|
||||||
@@ -186,6 +197,10 @@ public class ServerStatus {
|
@@ -173,6 +184,10 @@ public class ServerStatus {
|
||||||
serverStatus.setEnforcesSecureChat(GsonHelper.getAsBoolean(jsonObject, "enforcesSecureChat"));
|
serverStatus.setEnforcesSecureChat(GsonHelper.getAsBoolean(jsonObject, "enforcesSecureChat"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -82,7 +90,7 @@ index 11183b4a39b9897e1b1067eb2a3556d2b1d90f52..a335bcf8fd9330e2e275d78671c6e264
|
|||||||
return serverStatus;
|
return serverStatus;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -210,6 +225,12 @@ public class ServerStatus {
|
@@ -196,6 +211,12 @@ public class ServerStatus {
|
||||||
jsonObject.addProperty("favicon", serverStatus.getFavicon());
|
jsonObject.addProperty("favicon", serverStatus.getFavicon());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -96,22 +104,22 @@ index 11183b4a39b9897e1b1067eb2a3556d2b1d90f52..a335bcf8fd9330e2e275d78671c6e264
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 3775a75a54807e50eded612f26fec5ad0229fbca..5dd308320b2e2049a8827cfd9bea3cd0621f03c8 100644
|
index 9904aa8178bf64768a646dbc886cb774cb013af9..7347cb4daf40996a559c2a4dec9b22b04d07ae53 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1109,6 +1109,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1109,6 +1109,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
this.status.setDescription(Component.literal(this.motd));
|
||||||
this.status.setVersion(new ServerStatus.Version(SharedConstants.getCurrentVersion().getName(), SharedConstants.getCurrentVersion().getProtocolVersion()));
|
this.status.setVersion(new ServerStatus.Version(SharedConstants.getCurrentVersion().getName(), SharedConstants.getCurrentVersion().getProtocolVersion()));
|
||||||
this.status.setPreviewsChat(this.previewsChat());
|
|
||||||
this.status.setEnforcesSecureChat(this.enforceSecureProfile());
|
this.status.setEnforcesSecureChat(this.enforceSecureProfile());
|
||||||
+ this.status.setPreventsChatReports(top.leavesmc.leaves.LeavesConfig.noChatSign); // Leaves - add preventsChatReports
|
+ this.status.setPreventsChatReports(top.leavesmc.leaves.LeavesConfig.noChatSign); // Leaves - add preventsChatReports
|
||||||
this.updateStatusIcon(this.status);
|
this.updateStatusIcon(this.status);
|
||||||
|
|
||||||
// Spigot start
|
// Spigot start
|
||||||
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||||
index 18d568093aeb8be69fa76c5f2e3ac6dd61d5479b..bfcaadc4bd70384d5cea975b18874cfc31d8909e 100644
|
index deafca06331e19105a1e19ae11f271b05af7b982..41d9f243c0b56c81b70e64cfd3ca05b90d45343c 100644
|
||||||
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||||
@@ -644,7 +644,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
@@ -633,7 +633,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean enforceSecureProfile() {
|
public boolean enforceSecureProfile() {
|
||||||
@@ -121,29 +129,19 @@ index 18d568093aeb8be69fa76c5f2e3ac6dd61d5479b..bfcaadc4bd70384d5cea975b18874cfc
|
|||||||
|
|
||||||
protected boolean convertOldUsers() {
|
protected boolean convertOldUsers() {
|
||||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
index 63c9040ed2349eec500ba6e9090440347c514a3b..3aa71562966a31cf2b535f55fd3cf5cf975a9489 100644
|
index 0c2255b6e2fb7752f85b0f83d4f84732758bd14d..f7870d551bf6045b649c9c8768b5ad5c8d3488ae 100644
|
||||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
@@ -75,6 +75,8 @@ import net.minecraft.network.protocol.game.ClientboundContainerSetSlotPacket;
|
@@ -2144,10 +2144,27 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||||
import net.minecraft.network.protocol.game.ClientboundDisconnectPacket;
|
|
||||||
import net.minecraft.network.protocol.game.ClientboundKeepAlivePacket;
|
|
||||||
import net.minecraft.network.protocol.game.ClientboundMoveVehiclePacket;
|
|
||||||
+import net.minecraft.network.protocol.game.ClientboundPlayerChatHeaderPacket;
|
|
||||||
+import net.minecraft.network.protocol.game.ClientboundPlayerChatPacket;
|
|
||||||
import net.minecraft.network.protocol.game.ClientboundPlayerPositionPacket;
|
|
||||||
import net.minecraft.network.protocol.game.ClientboundSetCarriedItemPacket;
|
|
||||||
import net.minecraft.network.protocol.game.ClientboundSetDefaultSpawnPositionPacket;
|
|
||||||
@@ -2148,10 +2150,30 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void send(Packet<?> packet) {
|
public void send(Packet<?> packet) {
|
||||||
+ // Leaves start - no ClientboundPlayerChatHeaderPacket and rebuild ClientboundPlayerChatPacket
|
+ // Leaves start - no ClientboundPlayerChatHeaderPacket and rebuild ClientboundPlayerChatPacket
|
||||||
+ if (top.leavesmc.leaves.LeavesConfig.noChatSign) {
|
+ if (top.leavesmc.leaves.LeavesConfig.noChatSign) {
|
||||||
+ if (packet instanceof ClientboundPlayerChatHeaderPacket) {
|
+ if (packet instanceof ClientboundPlayerChatPacket chat) {
|
||||||
+ return;
|
|
||||||
+ } else if (packet instanceof ClientboundPlayerChatPacket chat) {
|
|
||||||
+ packet = new ClientboundSystemChatPacket(chat.chatType().resolve(this.player.level.registryAccess())
|
+ packet = new ClientboundSystemChatPacket(chat.chatType().resolve(this.player.level.registryAccess())
|
||||||
+ .get().decorate(chat.message().serverContent()), false);
|
+ .get().decorate(chat.unsignedContent() != null ? chat.unsignedContent()
|
||||||
|
+ : Component.literal(chat.body().content())), false);
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+ // Leaves end - no ClientboundPlayerChatHeaderPacket and rebuild ClientboundPlayerChatPacket
|
+ // Leaves end - no ClientboundPlayerChatHeaderPacket and rebuild ClientboundPlayerChatPacket
|
||||||
@@ -153,9 +151,7 @@ index 63c9040ed2349eec500ba6e9090440347c514a3b..3aa71562966a31cf2b535f55fd3cf5cf
|
|||||||
public void send(Packet<?> packet, @Nullable PacketSendListener callbacks) {
|
public void send(Packet<?> packet, @Nullable PacketSendListener callbacks) {
|
||||||
+ // Leaves start - no ClientboundPlayerChatHeaderPacket and rebuild ClientboundPlayerChatPacket
|
+ // Leaves start - no ClientboundPlayerChatHeaderPacket and rebuild ClientboundPlayerChatPacket
|
||||||
+ if (top.leavesmc.leaves.LeavesConfig.noChatSign) {
|
+ if (top.leavesmc.leaves.LeavesConfig.noChatSign) {
|
||||||
+ if (packet instanceof ClientboundPlayerChatHeaderPacket) {
|
+ if (packet instanceof ClientboundPlayerChatPacket chat && callbacks != null) {
|
||||||
+ return;
|
|
||||||
+ } else if (packet instanceof ClientboundPlayerChatPacket chat && callbacks != null) {
|
|
||||||
+ this.send(chat);
|
+ this.send(chat);
|
||||||
+ return;
|
+ return;
|
||||||
+ }
|
+ }
|
||||||
@@ -164,50 +160,19 @@ index 63c9040ed2349eec500ba6e9090440347c514a3b..3aa71562966a31cf2b535f55fd3cf5cf
|
|||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
if (packet == null || this.processedDisconnect) { // Spigot
|
if (packet == null || this.processedDisconnect) { // Spigot
|
||||||
return;
|
return;
|
||||||
@@ -2566,6 +2588,11 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
|
||||||
}
|
|
||||||
|
|
||||||
private void broadcastChatMessage(PlayerChatMessage message) {
|
|
||||||
+ // Leaves start - no sign
|
|
||||||
+ if (top.leavesmc.leaves.LeavesConfig.noChatSign) {
|
|
||||||
+ message = PlayerChatMessage.unsigned(message.signer(), message.signedContent());
|
|
||||||
+ }
|
|
||||||
+ // Leaves end - no sign
|
|
||||||
// CraftBukkit start
|
|
||||||
String s = message.signedContent().plain();
|
|
||||||
if (s.isEmpty()) {
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index 68233891ccb0f9389e22561421e743aa5c3ba02b..680ad9d8896aa0ce58ceefc4f9deb624b7384f5b 100644
|
index 83c38c8c9fb53274f391065d947df566861a3e99..3c1ea8850c5d482d77c0bc137d72fc59dc337979 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -1452,7 +1452,7 @@ public abstract class PlayerList {
|
@@ -1481,7 +1481,7 @@ public abstract class PlayerList {
|
||||||
// Paper end
|
}
|
||||||
boolean flag = this.verifyChatTrusted(message, sourceProfile);
|
|
||||||
|
|
||||||
- this.server.logChatMessage((unsignedFunction == null ? message : message.withUnsignedContent(unsignedFunction.apply(this.server.console))).serverContent(), params, flag ? null : "Not Secure"); // Paper
|
public boolean verifyChatTrusted(PlayerChatMessage message) { // Paper - private -> public
|
||||||
+ this.server.logChatMessage((unsignedFunction == null ? message : message.withUnsignedContent(unsignedFunction.apply(this.server.console))).serverContent(), params, flag || top.leavesmc.leaves.LeavesConfig.noChatSign ? null : "Not Secure"); // Paper // Leaves - No Not Secure
|
- return message.hasSignature() && !message.hasExpiredServer(Instant.now());
|
||||||
OutgoingPlayerChatMessage outgoingplayerchatmessage = OutgoingPlayerChatMessage.create(message);
|
+ return top.leavesmc.leaves.LeavesConfig.noChatSign || (message.hasSignature() && !message.hasExpiredServer(Instant.now())); // Leaves - No Not Secure
|
||||||
boolean flag1 = message.isFullyFiltered();
|
}
|
||||||
boolean flag2 = false;
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
// CraftBukkit start
|
||||||
index e2305caf0b3ce21810a31e05c943a6d859870bd5..ee8bc19a049a9f0235d959d41e4124865d5dabb1 100644
|
|
||||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
||||||
@@ -205,7 +205,13 @@ public abstract class Player extends LivingEntity {
|
|
||||||
this.lastDeathLocation = Optional.empty();
|
|
||||||
this.setUUID(UUIDUtil.getOrCreatePlayerUUID(gameProfile));
|
|
||||||
this.gameProfile = gameProfile;
|
|
||||||
- this.profilePublicKey = publicKey;
|
|
||||||
+ // Leaves start - no public key
|
|
||||||
+ if (top.leavesmc.leaves.LeavesConfig.noChatSign) {
|
|
||||||
+ this.profilePublicKey = null;
|
|
||||||
+ } else {
|
|
||||||
+ this.profilePublicKey = publicKey;
|
|
||||||
+ }
|
|
||||||
+ // Leaves end - no public key
|
|
||||||
this.inventoryMenu = new InventoryMenu(this.inventory, !world.isClientSide, this);
|
|
||||||
this.containerMenu = this.inventoryMenu;
|
|
||||||
this.moveTo((double) pos.getX() + 0.5D, (double) (pos.getY() + 1), (double) pos.getZ() + 0.5D, yaw, 0.0F);
|
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 06bf70f13432f557a65d3dad563f9014998839a6..857b8881ba2d526ee366aa04228b72bc8d7c8c47 100644
|
index 06bf70f13432f557a65d3dad563f9014998839a6..857b8881ba2d526ee366aa04228b72bc8d7c8c47 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Optimize mob spawning
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 595d2bf02a30d91535f8bc509aa8c37a840c274a..c4984f0d27e66e201b126a0f3649f6534b0cef53 100644
|
index 7347cb4daf40996a559c2a4dec9b22b04d07ae53..81699351c4f9aa3a66270bcee060a504263cbed4 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -301,6 +301,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -312,6 +312,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
public volatile boolean abnormalExit = false; // Paper
|
public volatile boolean abnormalExit = false; // Paper
|
||||||
public boolean isIteratingOverLevels = false; // Paper
|
public boolean isIteratingOverLevels = false; // Paper
|
||||||
|
|
||||||
@@ -19,10 +19,10 @@ index 595d2bf02a30d91535f8bc509aa8c37a840c274a..c4984f0d27e66e201b126a0f3649f653
|
|||||||
AtomicReference<S> atomicreference = new AtomicReference();
|
AtomicReference<S> atomicreference = new AtomicReference();
|
||||||
Thread thread = new io.papermc.paper.util.TickThread(() -> { // Paper - rewrite chunk system
|
Thread thread = new io.papermc.paper.util.TickThread(() -> { // Paper - rewrite chunk system
|
||||||
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||||
index 03989bb74e56c743fbb115518971061ad72355d3..12dd19556a13990f3ed0b50384e8352b5d944822 100644
|
index 41d9f243c0b56c81b70e64cfd3ca05b90d45343c..34df346cd337683a8f479f49a53319bae4f3fd07 100644
|
||||||
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
||||||
@@ -341,6 +341,11 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
@@ -335,6 +335,11 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
||||||
DedicatedServer.LOGGER.info("JMX monitoring enabled");
|
DedicatedServer.LOGGER.info("JMX monitoring enabled");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -35,10 +35,10 @@ index 03989bb74e56c743fbb115518971061ad72355d3..12dd19556a13990f3ed0b50384e8352b
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
index 55d8ced734a408c990c6c4fbc81707bcb1f27daa..132bb7595af5106edd84ff2a6efa823aceee35bc 100644
|
index 2212f9f48636357265d8e44aba415ea4f09f1fe7..b592f5fa1d235c2c3906dd893d079cd4211794ac 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
@@ -334,7 +334,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
@@ -342,7 +342,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||||
this.dataRegionManager = new io.papermc.paper.chunk.SingleThreadChunkRegionManager(this.level, 2, (1.0 / 3.0), 1, 6, "Data", DataRegionData::new, DataRegionSectionData::new);
|
this.dataRegionManager = new io.papermc.paper.chunk.SingleThreadChunkRegionManager(this.level, 2, (1.0 / 3.0), 1, 6, "Data", DataRegionData::new, DataRegionSectionData::new);
|
||||||
this.regionManagers.add(this.dataRegionManager);
|
this.regionManagers.add(this.dataRegionManager);
|
||||||
// Paper end
|
// Paper end
|
||||||
@@ -48,10 +48,10 @@ index 55d8ced734a408c990c6c4fbc81707bcb1f27daa..132bb7595af5106edd84ff2a6efa823a
|
|||||||
this.playerEntityTrackerTrackMaps = new com.destroystokyo.paper.util.misc.PlayerAreaMap[TRACKING_RANGE_TYPES.length];
|
this.playerEntityTrackerTrackMaps = new com.destroystokyo.paper.util.misc.PlayerAreaMap[TRACKING_RANGE_TYPES.length];
|
||||||
this.entityTrackerTrackRanges = new int[TRACKING_RANGE_TYPES.length];
|
this.entityTrackerTrackRanges = new int[TRACKING_RANGE_TYPES.length];
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
index 4ff563d903633f181e1268daa77f250cfec204a0..b9c1d62b13465db6d435d1cda72ca759d8f0d22d 100644
|
index ca84eddbdb1e198b899750e5f6b3eafd25ce970f..b4e780f5b050b01ecb6b485b509235f735d71141 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
@@ -76,6 +76,11 @@ public class ServerChunkCache extends ChunkSource {
|
@@ -77,6 +77,11 @@ public class ServerChunkCache extends ChunkSource {
|
||||||
|
|
||||||
private final LevelChunk[] lastLoadedChunks = new LevelChunk[4 * 4];
|
private final LevelChunk[] lastLoadedChunks = new LevelChunk[4 * 4];
|
||||||
|
|
||||||
@@ -63,7 +63,7 @@ index 4ff563d903633f181e1268daa77f250cfec204a0..b9c1d62b13465db6d435d1cda72ca759
|
|||||||
private static int getChunkCacheKey(int x, int z) {
|
private static int getChunkCacheKey(int x, int z) {
|
||||||
return x & 3 | ((z & 3) << 2);
|
return x & 3 | ((z & 3) << 2);
|
||||||
}
|
}
|
||||||
@@ -711,18 +716,25 @@ public class ServerChunkCache extends ChunkSource {
|
@@ -712,18 +717,25 @@ public class ServerChunkCache extends ChunkSource {
|
||||||
// Paper start - per player mob spawning
|
// Paper start - per player mob spawning
|
||||||
NaturalSpawner.SpawnState spawnercreature_d; // moved down
|
NaturalSpawner.SpawnState spawnercreature_d; // moved down
|
||||||
if ((this.spawnFriendlies || this.spawnEnemies) && this.chunkMap.playerMobDistanceMap != null) { // don't count mobs when animals and monsters are disabled
|
if ((this.spawnFriendlies || this.spawnEnemies) && this.chunkMap.playerMobDistanceMap != null) { // don't count mobs when animals and monsters are disabled
|
||||||
@@ -95,7 +95,7 @@ index 4ff563d903633f181e1268daa77f250cfec204a0..b9c1d62b13465db6d435d1cda72ca759
|
|||||||
gameprofilerfiller.popPush("filteringLoadedChunks");
|
gameprofilerfiller.popPush("filteringLoadedChunks");
|
||||||
// Paper - moved down
|
// Paper - moved down
|
||||||
this.level.timings.chunkTicks.startTiming(); // Paper
|
this.level.timings.chunkTicks.startTiming(); // Paper
|
||||||
@@ -760,8 +772,8 @@ public class ServerChunkCache extends ChunkSource {
|
@@ -761,8 +773,8 @@ public class ServerChunkCache extends ChunkSource {
|
||||||
|
|
||||||
if ((true || this.level.isNaturalSpawningAllowed(chunkcoordintpair)) && this.chunkMap.anyPlayerCloseEnoughForSpawning(holder, chunkcoordintpair, false)) { // Paper - optimise anyPlayerCloseEnoughForSpawning // Paper - the chunk is known ticking
|
if ((true || this.level.isNaturalSpawningAllowed(chunkcoordintpair)) && this.chunkMap.anyPlayerCloseEnoughForSpawning(holder, chunkcoordintpair, false)) { // Paper - optimise anyPlayerCloseEnoughForSpawning // Paper - the chunk is known ticking
|
||||||
chunk1.incrementInhabitedTime(j);
|
chunk1.incrementInhabitedTime(j);
|
||||||
@@ -106,7 +106,7 @@ index 4ff563d903633f181e1268daa77f250cfec204a0..b9c1d62b13465db6d435d1cda72ca759
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (true || this.level.shouldTickBlocksAt(chunkcoordintpair.toLong())) { // Paper - the chunk is known ticking
|
if (true || this.level.shouldTickBlocksAt(chunkcoordintpair.toLong())) { // Paper - the chunk is known ticking
|
||||||
@@ -822,6 +834,30 @@ public class ServerChunkCache extends ChunkSource {
|
@@ -823,6 +835,30 @@ public class ServerChunkCache extends ChunkSource {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Paper end - controlled flush for entity tracker packets
|
// Paper end - controlled flush for entity tracker packets
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Dont send useless entity packets
|
|||||||
This patch is Powered by Purpur(https://github.com/PurpurMC/Purpur)
|
This patch is Powered by Purpur(https://github.com/PurpurMC/Purpur)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
index 2358bb1788cfb902bac9b3b7588954af2d2cd823..52a1fc859c4b494bcac9f6f6f971e477a3acbf85 100644
|
index 190e9761087baec5827d722a8281f0ffb6798341..158da4c3b002a4948bfb214337aa28a55b358fc9 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java
|
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
@@ -166,20 +166,29 @@ public class ServerEntity {
|
@@ -170,20 +170,29 @@ public class ServerEntity {
|
||||||
boolean flag4 = k < -32768L || k > 32767L || l < -32768L || l > 32767L || i1 < -32768L || i1 > 32767L;
|
boolean flag4 = k < -32768L || k > 32767L || l < -32768L || l > 32767L || i1 < -32768L || i1 > 32767L;
|
||||||
|
|
||||||
if (!flag4 && this.teleportDelay <= 400 && !this.wasRiding && this.wasOnGround == this.entity.isOnGround() && !(io.papermc.paper.configuration.GlobalConfiguration.get().collisions.sendFullPosForHardCollidingEntities && this.entity.hardCollides())) { // Paper - send full pos for hard colliding entities to prevent collision problems due to desync
|
if (!flag4 && this.teleportDelay <= 400 && !this.wasRiding && this.wasOnGround == this.entity.isOnGround() && !(io.papermc.paper.configuration.GlobalConfiguration.get().collisions.sendFullPosForHardCollidingEntities && this.entity.hardCollides())) { // Paper - send full pos for hard colliding entities to prevent collision problems due to desync
|
||||||
@@ -46,7 +46,7 @@ index 2358bb1788cfb902bac9b3b7588954af2d2cd823..52a1fc859c4b494bcac9f6f6f971e477
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((this.trackDelta || this.entity.hasImpulse || this.entity instanceof LivingEntity && ((LivingEntity) this.entity).isFallFlying()) && this.tickCount > 0) {
|
if ((this.trackDelta || this.entity.hasImpulse || this.entity instanceof LivingEntity && ((LivingEntity) this.entity).isFallFlying()) && this.tickCount > 0) {
|
||||||
@@ -246,6 +255,21 @@ public class ServerEntity {
|
@@ -250,6 +259,21 @@ public class ServerEntity {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -31,10 +31,10 @@ index f597d65d56964297eeeed6c7e77703764178fee0..a584f2d0829db0bb220b2934ae2934da
|
|||||||
public ChunkHolder.FullChunkStatus status;
|
public ChunkHolder.FullChunkStatus status;
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
index 322d7e06d014d7f69cd990c096e056074fa7066f..8d14c04e1cbc5de312bf47e4851e79f4176427da 100644
|
index b592f5fa1d235c2c3906dd893d079cd4211794ac..634cde8069fc5ba467170a597e02da7c6b4e7b80 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
@@ -1236,8 +1236,38 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
@@ -1248,8 +1248,38 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||||
entity.tracker = null; // Paper - We're no longer tracked
|
entity.tracker = null; // Paper - We're no longer tracked
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -73,11 +73,11 @@ index 322d7e06d014d7f69cd990c096e056074fa7066f..8d14c04e1cbc5de312bf47e4851e79f4
|
|||||||
this.level.timings.tracker1.startTiming();
|
this.level.timings.tracker1.startTiming();
|
||||||
try {
|
try {
|
||||||
for (TrackedEntity tracker : this.entityMap.values()) {
|
for (TrackedEntity tracker : this.entityMap.values()) {
|
||||||
@@ -1461,11 +1491,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
@@ -1496,11 +1526,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||||
|
|
||||||
public class TrackedEntity {
|
public class TrackedEntity {
|
||||||
|
|
||||||
- final ServerEntity serverEntity;
|
- public final ServerEntity serverEntity;
|
||||||
- final Entity entity;
|
- final Entity entity;
|
||||||
+ public final ServerEntity serverEntity; // Leaves - package -> public
|
+ public final ServerEntity serverEntity; // Leaves - package -> public
|
||||||
+ public final Entity entity; // Leaves - package -> public
|
+ public final Entity entity; // Leaves - package -> public
|
||||||
@@ -88,7 +88,7 @@ index 322d7e06d014d7f69cd990c096e056074fa7066f..8d14c04e1cbc5de312bf47e4851e79f4
|
|||||||
|
|
||||||
public TrackedEntity(Entity entity, int i, int j, boolean flag) {
|
public TrackedEntity(Entity entity, int i, int j, boolean flag) {
|
||||||
this.serverEntity = new ServerEntity(ChunkMap.this.level, entity, j, flag, this::broadcast, this.seenBy); // CraftBukkit
|
this.serverEntity = new ServerEntity(ChunkMap.this.level, entity, j, flag, this::broadcast, this.seenBy); // CraftBukkit
|
||||||
@@ -1477,7 +1507,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
@@ -1512,7 +1542,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||||
// Paper start - use distance map to optimise tracker
|
// Paper start - use distance map to optimise tracker
|
||||||
com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> lastTrackerCandidates;
|
com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> lastTrackerCandidates;
|
||||||
|
|
||||||
@@ -97,7 +97,7 @@ index 322d7e06d014d7f69cd990c096e056074fa7066f..8d14c04e1cbc5de312bf47e4851e79f4
|
|||||||
com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> oldTrackerCandidates = this.lastTrackerCandidates;
|
com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> oldTrackerCandidates = this.lastTrackerCandidates;
|
||||||
this.lastTrackerCandidates = newTrackerCandidates;
|
this.lastTrackerCandidates = newTrackerCandidates;
|
||||||
|
|
||||||
@@ -1549,7 +1579,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
@@ -1584,7 +1614,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||||
}
|
}
|
||||||
|
|
||||||
public void removePlayer(ServerPlayer player) {
|
public void removePlayer(ServerPlayer player) {
|
||||||
@@ -106,7 +106,7 @@ index 322d7e06d014d7f69cd990c096e056074fa7066f..8d14c04e1cbc5de312bf47e4851e79f4
|
|||||||
if (this.seenBy.remove(player.connection)) {
|
if (this.seenBy.remove(player.connection)) {
|
||||||
this.serverEntity.removePairing(player);
|
this.serverEntity.removePairing(player);
|
||||||
}
|
}
|
||||||
@@ -1557,7 +1587,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
@@ -1592,7 +1622,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||||
}
|
}
|
||||||
|
|
||||||
public void updatePlayer(ServerPlayer player) {
|
public void updatePlayer(ServerPlayer player) {
|
||||||
@@ -129,10 +129,10 @@ index ca42c2642a729b90d22b968af7258f3aee72e14b..464678e973513b5c9e0cf0910cac1b3b
|
|||||||
public boolean visible = true;
|
public boolean visible = true;
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
index 52a1fc859c4b494bcac9f6f6f971e477a3acbf85..52cfe588f49444f198db2e40c3073bc6583ca142 100644
|
index 158da4c3b002a4948bfb214337aa28a55b358fc9..2f8e77692811604fdc19bff6ba0faeeadcd9bba6 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java
|
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
@@ -272,14 +272,18 @@ public class ServerEntity {
|
@@ -276,14 +276,18 @@ public class ServerEntity {
|
||||||
|
|
||||||
public void removePairing(ServerPlayer player) {
|
public void removePairing(ServerPlayer player) {
|
||||||
this.entity.stopSeenByPlayer(player);
|
this.entity.stopSeenByPlayer(player);
|
||||||
@@ -153,19 +153,7 @@ index 52a1fc859c4b494bcac9f6f6f971e477a3acbf85..52cfe588f49444f198db2e40c3073bc6
|
|||||||
this.entity.startSeenByPlayer(player);
|
this.entity.startSeenByPlayer(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -385,19 +389,28 @@ public class ServerEntity {
|
@@ -398,12 +402,17 @@ public class ServerEntity {
|
||||||
SynchedEntityData datawatcher = this.entity.getEntityData();
|
|
||||||
|
|
||||||
if (datawatcher.isDirty()) {
|
|
||||||
- this.broadcastAndSend(new ClientboundSetEntityDataPacket(this.entity.getId(), datawatcher, false));
|
|
||||||
+ // Leaves start - ensure main thread
|
|
||||||
+ ((ServerLevel) this.entity.level).chunkSource.chunkMap.runOnTrackerMainThread(() ->
|
|
||||||
+ this.broadcastAndSend(new ClientboundSetEntityDataPacket(this.entity.getId(), datawatcher, false))
|
|
||||||
+ );
|
|
||||||
+ // Leaves end - ensure main thread
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.entity instanceof LivingEntity) {
|
|
||||||
Set<AttributeInstance> set = ((LivingEntity) this.entity).getAttributes().getDirtyAttributes();
|
Set<AttributeInstance> set = ((LivingEntity) this.entity).getAttributes().getDirtyAttributes();
|
||||||
|
|
||||||
if (!set.isEmpty()) {
|
if (!set.isEmpty()) {
|
||||||
|
|||||||
@@ -6,19 +6,19 @@ Subject: [PATCH] Optimize suffocation
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
index 3529f5fede54fbdf0a3783cce2e3322110685e99..6451507ab1e99be308b741bf6269110415bdb46e 100644
|
index be1b2d83666a3d7cb67c864590e9b2fbbf583a10..87e576b6e070e5d7bed803906e1f10817f18d965 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
@@ -400,7 +400,7 @@ public abstract class LivingEntity extends Entity {
|
@@ -402,7 +402,7 @@ public abstract class LivingEntity extends Entity {
|
||||||
if (this.isAlive()) {
|
|
||||||
boolean flag = this instanceof net.minecraft.world.entity.player.Player;
|
boolean flag = this instanceof net.minecraft.world.entity.player.Player;
|
||||||
|
|
||||||
- if (this.isInWall()) {
|
if (!this.level.isClientSide) {
|
||||||
+ if ((!top.leavesmc.leaves.LeavesConfig.enableSuffocationOptimization || (tickCount % 10 == 0 && couldPossiblyBeHurt(1.0F))) && this.isInWall()) { // Leaves - optimize suffocation
|
- if (this.isInWall()) {
|
||||||
this.hurt(DamageSource.IN_WALL, 1.0F);
|
+ if ((!top.leavesmc.leaves.LeavesConfig.enableSuffocationOptimization || (tickCount % 10 == 0 && couldPossiblyBeHurt(1.0F))) && this.isInWall()) { // Leaves - optimize suffocation
|
||||||
} else if (flag && !this.level.getWorldBorder().isWithinBounds(this.getBoundingBox())) {
|
this.hurt(DamageSource.IN_WALL, 1.0F);
|
||||||
double d0 = this.level.getWorldBorder().getDistanceToBorder(this) + this.level.getWorldBorder().getDamageSafeZone();
|
} else if (flag && !this.level.getWorldBorder().isWithinBounds(this.getBoundingBox())) {
|
||||||
@@ -1328,6 +1328,15 @@ public abstract class LivingEntity extends Entity {
|
double d0 = this.level.getWorldBorder().getDistanceToBorder(this) + this.level.getWorldBorder().getDamageSafeZone();
|
||||||
|
@@ -1327,6 +1327,15 @@ public abstract class LivingEntity extends Entity {
|
||||||
return this.getHealth() <= 0.0F;
|
return this.getHealth() <= 0.0F;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Strip raytracing for EntityLiving#hasLineOfSight
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
index 6451507ab1e99be308b741bf6269110415bdb46e..6e569efe8c5695a875b97126bd4dcd05a86ccf1d 100644
|
index 87e576b6e070e5d7bed803906e1f10817f18d965..1d52da0e31a1969b99339c510924ede8851449d4 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
@@ -3631,7 +3631,13 @@ public abstract class LivingEntity extends Entity {
|
@@ -3656,7 +3656,13 @@ public abstract class LivingEntity extends Entity {
|
||||||
Vec3 vec3d1 = new Vec3(entity.getX(), entity.getEyeY(), entity.getZ());
|
Vec3 vec3d1 = new Vec3(entity.getX(), entity.getEyeY(), entity.getZ());
|
||||||
|
|
||||||
// Paper - diff on change - used in CraftLivingEntity#hasLineOfSight(Location) and CraftWorld#lineOfSightExists
|
// Paper - diff on change - used in CraftLivingEntity#hasLineOfSight(Location) and CraftWorld#lineOfSightExists
|
||||||
@@ -46,10 +46,10 @@ index d1eefa6ef3e9abfe7af4d8310aa64465fa2d5463..c91735828dc99af0b880a5a105025b42
|
|||||||
default BlockHitResult clip(ClipContext raytrace1, BlockPos blockposition) {
|
default BlockHitResult clip(ClipContext raytrace1, BlockPos blockposition) {
|
||||||
// Paper start - Prevent raytrace from loading chunks
|
// Paper start - Prevent raytrace from loading chunks
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index 4d880d9b56dc39a298e047cda3f2a31adef45cbc..daa3eb43727bbf8aefd2c69e711aa1709fba7eba 100644
|
index 856055eeac058290b9b2146a11f5faccd1873df0..3fd487f9302f428171539e18f09f05c93037fab1 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -410,6 +410,91 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -409,6 +409,91 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Only check for spooky season once an hour
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/ambient/Bat.java b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
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 50d4595b81f24949011c7565c5e3fc8c26c86019..8de1653e3fbf29e9de550a1976344bd8967485e3 100644
|
index 320c558bbe80d4bbc641e895ec43cfa2b45e8d70..f57572620288d8f0e024d43a4e11e2125d45515c 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
--- a/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
+++ b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
||||||
@@ -253,13 +253,30 @@ public class Bat extends AmbientCreature {
|
@@ -256,13 +256,30 @@ public class Bat extends AmbientCreature {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ Subject: [PATCH] Move ThreadUnsafeRandom Initialization
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index bd3e6044de5a63c0372b4ed207feb5bb58de0d98..a8c7ecbd7191fcdb2e012cafcf7a0ac63db75055 100644
|
index bca4022ffff45803984ffbffdaf919376df75af9..fcb0488725618382394096d61cc83d6afc099044 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -795,7 +795,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
@@ -795,7 +795,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||||
@@ -19,10 +19,10 @@ index bd3e6044de5a63c0372b4ed207feb5bb58de0d98..a8c7ecbd7191fcdb2e012cafcf7a0ac6
|
|||||||
|
|
||||||
public void tickChunk(LevelChunk chunk, int randomTickSpeed) {
|
public void tickChunk(LevelChunk chunk, int randomTickSpeed) {
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index daa3eb43727bbf8aefd2c69e711aa1709fba7eba..776aeb1ea8bb76d098452c72caf8d941c99f0f60 100644
|
index 3fd487f9302f428171539e18f09f05c93037fab1..7d6fe65dc64afa00ecef0d1be2e13507086ab81a 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -272,6 +272,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -271,6 +271,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
|
|
||||||
public abstract ResourceKey<LevelStem> getTypeKey();
|
public abstract ResourceKey<LevelStem> getTypeKey();
|
||||||
|
|
||||||
@@ -31,7 +31,7 @@ index daa3eb43727bbf8aefd2c69e711aa1709fba7eba..776aeb1ea8bb76d098452c72caf8d941
|
|||||||
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - Async-Anti-Xray - Pass executor
|
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - Async-Anti-Xray - Pass executor
|
||||||
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
||||||
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper
|
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper
|
||||||
@@ -360,6 +362,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -359,6 +361,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
this.chunkPacketBlockController = this.paperConfig().anticheat.antiXray.enabled ? new com.destroystokyo.paper.antixray.ChunkPacketBlockControllerAntiXray(this, executor) : com.destroystokyo.paper.antixray.ChunkPacketBlockController.NO_OPERATION_INSTANCE; // Paper - Anti-Xray
|
this.chunkPacketBlockController = this.paperConfig().anticheat.antiXray.enabled ? new com.destroystokyo.paper.antixray.ChunkPacketBlockControllerAntiXray(this, executor) : com.destroystokyo.paper.antixray.ChunkPacketBlockController.NO_OPERATION_INSTANCE; // Paper - Anti-Xray
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -43,4 +43,4 @@ index daa3eb43727bbf8aefd2c69e711aa1709fba7eba..776aeb1ea8bb76d098452c72caf8d941
|
|||||||
+
|
+
|
||||||
// Paper start
|
// Paper start
|
||||||
// ret true if no collision
|
// ret true if no collision
|
||||||
public final boolean checkEntityCollision(BlockState data, Entity source, CollisionContext voxelshapedcollision,
|
public final boolean checkEntityCollision(BlockState data, Entity source, net.minecraft.world.phys.shapes.CollisionContext voxelshapedcollision,
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Optimize random calls in chunk ticking
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
index b9c1d62b13465db6d435d1cda72ca759d8f0d22d..70b7ef1309db9e61cab5cf9601fc9fc374265b11 100644
|
index b4e780f5b050b01ecb6b485b509235f735d71141..1f1a9af7375bdadce325f8e755a64041320db055 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
@@ -707,6 +707,11 @@ public class ServerChunkCache extends ChunkSource {
|
@@ -708,6 +708,11 @@ public class ServerChunkCache extends ChunkSource {
|
||||||
ProfilerFiller gameprofilerfiller = this.level.getProfiler();
|
ProfilerFiller gameprofilerfiller = this.level.getProfiler();
|
||||||
|
|
||||||
gameprofilerfiller.push("pollingChunks");
|
gameprofilerfiller.push("pollingChunks");
|
||||||
@@ -22,7 +22,7 @@ index b9c1d62b13465db6d435d1cda72ca759d8f0d22d..70b7ef1309db9e61cab5cf9601fc9fc3
|
|||||||
boolean flag1 = level.ticksPerSpawnCategory.getLong(org.bukkit.entity.SpawnCategory.ANIMAL) != 0L && worlddata.getGameTime() % level.ticksPerSpawnCategory.getLong(org.bukkit.entity.SpawnCategory.ANIMAL) == 0L; // CraftBukkit
|
boolean flag1 = level.ticksPerSpawnCategory.getLong(org.bukkit.entity.SpawnCategory.ANIMAL) != 0L && worlddata.getGameTime() % level.ticksPerSpawnCategory.getLong(org.bukkit.entity.SpawnCategory.ANIMAL) == 0L; // CraftBukkit
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index a8c7ecbd7191fcdb2e012cafcf7a0ac63db75055..d59cab4f6a243d9f2448cc7b396d7a4cf9378684 100644
|
index fcb0488725618382394096d61cc83d6afc099044..1f3d26bdcd4c949d2cb57ac6313b3936fdcfb1e6 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -798,6 +798,13 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
@@ -798,6 +798,13 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||||
@@ -48,17 +48,17 @@ index a8c7ecbd7191fcdb2e012cafcf7a0ac63db75055..d59cab4f6a243d9f2448cc7b396d7a4c
|
|||||||
blockposition.set(this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15))); // Paper
|
blockposition.set(this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15))); // Paper
|
||||||
if (this.isRainingAt(blockposition)) {
|
if (this.isRainingAt(blockposition)) {
|
||||||
DifficultyInstance difficultydamagescaler = this.getCurrentDifficultyAt(blockposition);
|
DifficultyInstance difficultydamagescaler = this.getCurrentDifficultyAt(blockposition);
|
||||||
@@ -832,7 +839,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
@@ -838,7 +845,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||||
}
|
|
||||||
|
|
||||||
gameprofilerfiller.popPush("iceandsnow");
|
gameprofilerfiller.popPush("iceandsnow");
|
||||||
|
int l;
|
||||||
|
|
||||||
- if (!this.paperConfig().environment.disableIceAndSnow && this.random.nextInt(16) == 0) { // Paper - Disable ice and snow
|
- if (!this.paperConfig().environment.disableIceAndSnow && this.random.nextInt(16) == 0) { // Paper - Disable ice and snow
|
||||||
+ if (!this.paperConfig().environment.disableIceAndSnow && (top.leavesmc.leaves.LeavesConfig.optimizeChunkTicking ? (this.currentIceAndSnowTick++ & 15) == 0 : this.random.nextInt(16) == 0)) { // Paper - Disable ice and snow // Paper - optimise random ticking // Leaves - optimize further random ticking
|
+ if (!this.paperConfig().environment.disableIceAndSnow && (top.leavesmc.leaves.LeavesConfig.optimizeChunkTicking ? (this.currentIceAndSnowTick++ & 15) == 0 : this.random.nextInt(16) == 0)) { // Paper - Disable ice and snow // Paper - optimise random ticking // Leaves - optimize further random ticking
|
||||||
// Paper start - optimise chunk ticking
|
// Paper start - optimise chunk ticking
|
||||||
this.getRandomBlockPosition(j, 0, k, 15, blockposition);
|
this.getRandomBlockPosition(j, 0, k, 15, blockposition);
|
||||||
int normalY = chunk.getHeight(Heightmap.Types.MOTION_BLOCKING, blockposition.getX() & 15, blockposition.getZ() & 15) + 1;
|
int normalY = chunk.getHeight(Heightmap.Types.MOTION_BLOCKING, blockposition.getX() & 15, blockposition.getZ() & 15) + 1;
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
||||||
index 5e54cf312160e537d2fe6e6fedc618160359330e..c75ddded71d32bc8e9d219a8acc52482f776c526 100644
|
index 28e4b302284f955a73e75d0f4276d55fb51826f5..1bf1af06fbd6501e98def7997c487c425d6a1623 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
||||||
@@ -88,6 +88,18 @@ public class LevelChunk extends ChunkAccess {
|
@@ -88,6 +88,18 @@ public class LevelChunk extends ChunkAccess {
|
||||||
|
|||||||
@@ -6,17 +6,21 @@ Subject: [PATCH] Skip POI finding if stuck in vehicle
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/ai/behavior/AcquirePoi.java b/src/main/java/net/minecraft/world/entity/ai/behavior/AcquirePoi.java
|
diff --git a/src/main/java/net/minecraft/world/entity/ai/behavior/AcquirePoi.java b/src/main/java/net/minecraft/world/entity/ai/behavior/AcquirePoi.java
|
||||||
index 43243537b765a2d270be6de3f053fea77ff67d18..7d8a137068ab2b33690c369f4da46e90b5f98e2e 100644
|
index d4c91e0a0c64fcb7f1145de3f30134cb1f1f8ee6..44fc394dbab7e05a3bd7cab493300a964a6c46a5 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/ai/behavior/AcquirePoi.java
|
--- a/src/main/java/net/minecraft/world/entity/ai/behavior/AcquirePoi.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/ai/behavior/AcquirePoi.java
|
+++ b/src/main/java/net/minecraft/world/entity/ai/behavior/AcquirePoi.java
|
||||||
@@ -72,6 +72,7 @@ public class AcquirePoi extends Behavior<PathfinderMob> {
|
@@ -47,6 +47,11 @@ public class AcquirePoi {
|
||||||
@Override
|
return false;
|
||||||
protected void start(ServerLevel world, PathfinderMob entity, long time) {
|
} else {
|
||||||
this.nextScheduledStart = time + 20L + (long)world.getRandom().nextInt(20);
|
mutableLong.setValue(time + 20L + (long)world.getRandom().nextInt(20));
|
||||||
+ if (top.leavesmc.leaves.LeavesConfig.skipPOIFindingInVehicle && entity.getNavigation().isStuck()) this.nextScheduledStart += 200L; // Leaves - wait an additional 10s to check again if they're stuck
|
+ // Leaves start - wait an additional 10s to check again if they're stuck
|
||||||
PoiManager poiManager = world.getPoiManager();
|
+ if (top.leavesmc.leaves.LeavesConfig.skipPOIFindingInVehicle && entity.getNavigation().isStuck()) {
|
||||||
this.batchCache.long2ObjectEntrySet().removeIf((entry) -> {
|
+ mutableLong.add(200L);
|
||||||
return !entry.getValue().isStillValid(time);
|
+ }
|
||||||
|
+ // Leaves end - wait an additional 10s to check again if they're stuck
|
||||||
|
PoiManager poiManager = world.getPoiManager();
|
||||||
|
long2ObjectMap.long2ObjectEntrySet().removeIf((entry) -> {
|
||||||
|
return !entry.getValue().isStillValid(time);
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 3647b4fe0d875af39bf55c5f8bf1bd9cf08709a8..179cb93d9dc77bcfef6a8d6bc73a3290483a67f5 100644
|
index 3647b4fe0d875af39bf55c5f8bf1bd9cf08709a8..179cb93d9dc77bcfef6a8d6bc73a3290483a67f5 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Use thread unsafe random for mob spawning
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/NaturalSpawner.java b/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
diff --git a/src/main/java/net/minecraft/world/level/NaturalSpawner.java b/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
||||||
index df83b6f0e217eec4c9e9707be0030c129fdeb545..e41e87258da5594c5ec164d76bb59bb327c1d94a 100644
|
index 01b21f520ef1c834b9bafc3de85c1fa4fcf539d6..1a239af1c3fc254927979752d2ee18e780d17dab 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
--- a/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
+++ b/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
||||||
@@ -417,12 +417,21 @@ public final class NaturalSpawner {
|
@@ -419,12 +419,21 @@ public final class NaturalSpawner {
|
||||||
|
|
||||||
private static BlockPos getRandomPosWithin(Level world, LevelChunk chunk) {
|
private static BlockPos getRandomPosWithin(Level world, LevelChunk chunk) {
|
||||||
ChunkPos chunkcoordintpair = chunk.getPos();
|
ChunkPos chunkcoordintpair = chunk.getPos();
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Config to disable method profiler
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 3d78ecf4a28b18af11b5ca46e10b4dae503063a3..1fab2e3a2206a897338c9b18f81f2de8c14e626b 100644
|
index 81699351c4f9aa3a66270bcee060a504263cbed4..f834a809431ca3667be0c74d8fcbe9db46cbda22 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -2240,6 +2240,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -2246,6 +2246,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
|
|
||||||
public ProfilerFiller getProfiler() {
|
public ProfilerFiller getProfiler() {
|
||||||
@@ -22,10 +22,10 @@ index 3d78ecf4a28b18af11b5ca46e10b4dae503063a3..1fab2e3a2206a897338c9b18f81f2de8
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index 2e19e8cf66063a789770531fe399d81ebb20cfda..2668f11411b4f95fd254b139e758a563007d6625 100644
|
index 7d6fe65dc64afa00ecef0d1be2e13507086ab81a..dda31b5eea92ce3de9de0e4054ee9c7f6df631e4 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -1483,6 +1483,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -1545,6 +1545,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
}
|
}
|
||||||
|
|
||||||
public ProfilerFiller getProfiler() {
|
public ProfilerFiller getProfiler() {
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ Subject: [PATCH] Reduce entity allocations
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
index a20930d2c09005a210e5242401cfb2e6c6082a01..2d8af400a75324b57bae87ceaee79e74da180cbd 100644
|
index 5e0a0a578522628d440aafd63212256ef5cfc262..d20952301a4ab745ac769316cb16de3d54d17693 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
@@ -413,6 +413,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
@@ -413,6 +413,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||||
@@ -19,10 +19,10 @@ index a20930d2c09005a210e5242401cfb2e6c6082a01..2d8af400a75324b57bae87ceaee79e74
|
|||||||
return this.yRot;
|
return this.yRot;
|
||||||
}
|
}
|
||||||
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
|
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 c770ee21b7b699522941f6a1584d532001c04082..a0672f21797ff90e8bb6b16d3aaa671b317d6912 100644
|
index dd1102d5291ef6f18e82400a6d8a0a376cc071e9..53c094c8a674b2842009727569e7e1f6ac6510b7 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
|
--- a/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
|
+++ b/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
|
||||||
@@ -22,9 +22,11 @@ public class AttributeMap {
|
@@ -23,9 +23,11 @@ public class AttributeMap {
|
||||||
private final Map<Attribute, AttributeInstance> attributes = Maps.newHashMap();
|
private final Map<Attribute, AttributeInstance> attributes = Maps.newHashMap();
|
||||||
private final Set<AttributeInstance> dirtyAttributes = Sets.newHashSet();
|
private final Set<AttributeInstance> dirtyAttributes = Sets.newHashSet();
|
||||||
private final AttributeSupplier supplier;
|
private final AttributeSupplier supplier;
|
||||||
@@ -34,7 +34,7 @@ index c770ee21b7b699522941f6a1584d532001c04082..a0672f21797ff90e8bb6b16d3aaa671b
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void onAttributeModified(AttributeInstance instance) {
|
private void onAttributeModified(AttributeInstance instance) {
|
||||||
@@ -46,9 +48,15 @@ public class AttributeMap {
|
@@ -47,9 +49,15 @@ public class AttributeMap {
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public AttributeInstance getInstance(Attribute attribute) {
|
public AttributeInstance getInstance(Attribute attribute) {
|
||||||
@@ -52,7 +52,7 @@ index c770ee21b7b699522941f6a1584d532001c04082..a0672f21797ff90e8bb6b16d3aaa671b
|
|||||||
+ // Leaves end - cache lambda, as for some reason java allocates it anyways
|
+ // Leaves end - cache lambda, as for some reason java allocates it anyways
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasAttribute(Attribute attribute) {
|
@Nullable
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 0bba3458e6fc75a9d542691054cc255a521496c6..a557ea7adbb82dfff5c383b1d9acb8e0487fd4e9 100644
|
index 0bba3458e6fc75a9d542691054cc255a521496c6..a557ea7adbb82dfff5c383b1d9acb8e0487fd4e9 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Remove lambda from ticking guard
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index d59cab4f6a243d9f2448cc7b396d7a4cf9378684..3fa46ef92fc7be51e61361b1918162c563022094 100644
|
index 1f3d26bdcd4c949d2cb57ac6313b3936fdcfb1e6..0f622e9efeb2a53fa0b73b74d1b410708b9c3269 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -728,7 +728,24 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
@@ -730,7 +730,24 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||||
}
|
}
|
||||||
|
|
||||||
gameprofilerfiller.push("tick");
|
gameprofilerfiller.push("tick");
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ Subject: [PATCH] Remove iterators from inventory contains
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Inventory.java b/src/main/java/net/minecraft/world/entity/player/Inventory.java
|
diff --git a/src/main/java/net/minecraft/world/entity/player/Inventory.java b/src/main/java/net/minecraft/world/entity/player/Inventory.java
|
||||||
index a1a625a8dacf4d2bbf75ddd90dce1b1be663c919..038c5fae763c5d387a23aaacc3264ab340588ab4 100644
|
index 5bc033bf59d49eda1f8f2574165bbcbeab7faa0f..cf89cbffabf8b88265b5ffbc42b55fe617a32c82 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/player/Inventory.java
|
--- a/src/main/java/net/minecraft/world/entity/player/Inventory.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/player/Inventory.java
|
+++ b/src/main/java/net/minecraft/world/entity/player/Inventory.java
|
||||||
@@ -681,21 +681,35 @@ public class Inventory implements Container, Nameable {
|
@@ -681,21 +681,35 @@ public class Inventory implements Container, Nameable {
|
||||||
@@ -41,9 +41,9 @@ index a1a625a8dacf4d2bbf75ddd90dce1b1be663c919..038c5fae763c5d387a23aaacc3264ab3
|
|||||||
+ while (iterator1.hasNext()) {
|
+ while (iterator1.hasNext()) {
|
||||||
+ ItemStack itemstack1 = (ItemStack) iterator1.next();
|
+ ItemStack itemstack1 = (ItemStack) iterator1.next();
|
||||||
|
|
||||||
- if (!itemstack1.isEmpty() && itemstack1.sameItem(stack)) {
|
- if (!itemstack1.isEmpty() && ItemStack.isSameItemSameTags(itemstack1, stack)) {
|
||||||
- return true;
|
- return true;
|
||||||
+ if (!itemstack1.isEmpty() && itemstack1.sameItem(stack)) {
|
+ if (!itemstack1.isEmpty() && ItemStack.isSameItemSameTags(itemstack1, stack)) {
|
||||||
+ return true;
|
+ return true;
|
||||||
+ }
|
+ }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Remove streams and iterators from range check
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
index 7179137194040ee29f05227aa67bd5f1ec5b4045..39d0cc12f39c4ec77f32ee123e6b557948f0e303 100644
|
index 634cde8069fc5ba467170a597e02da7c6b4e7b80..893475f58f649a40e3962092a3608636c1a996e1 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
@@ -1619,19 +1619,45 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
@@ -1654,19 +1654,45 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||||
return ChunkMap.this.level.getServer().getScaledTrackingDistance(initialDistance);
|
return ChunkMap.this.level.getServer().getScaledTrackingDistance(initialDistance);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -6,10 +6,10 @@ Subject: [PATCH] Cache climbing check for activation
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
index 6e569efe8c5695a875b97126bd4dcd05a86ccf1d..d82af313939322c54099b90c99c4b8fb4e93fb4c 100644
|
index 1d52da0e31a1969b99339c510924ede8851449d4..d131f76617f8fe09b1d81fad5a9c1ea58b9a0407 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
@@ -1930,6 +1930,22 @@ public abstract class LivingEntity extends Entity {
|
@@ -1943,6 +1943,22 @@ public abstract class LivingEntity extends Entity {
|
||||||
return this.lastClimbablePos;
|
return this.lastClimbablePos;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -46,10 +46,10 @@ index 1b42c98956342832c37f0aa266f85271daa4ba5b..b255456f7b9e154f128eace3e220e001
|
|||||||
return 1; // Paper
|
return 1; // Paper
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 84bbe8d232be70c87e460b5ef28fca1b7d17f32d..70756c650b1e891569a4910590770688552e1228 100644
|
index 92f27779e8fdf827c2305c4531f478f2b179ecb9..a144420ff6a351e567c3dade9e5a7d02510a9b70 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
@@ -354,6 +354,11 @@ public final class LeavesConfig {
|
@@ -355,6 +355,11 @@ public final class LeavesConfig {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ Subject: [PATCH] Use aging cache for biome temperatures
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/biome/Biome.java b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
diff --git a/src/main/java/net/minecraft/world/level/biome/Biome.java b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
||||||
index ca259e278ad10347567c021376abca0287610432..968937e86bca8568a17988409506bcc0130b7790 100644
|
index c4f1173aab1e53412a65793e06238e637910475a..44bb45b391a365d4ca4dcd7e284edbb04ed12a80 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/biome/Biome.java
|
--- a/src/main/java/net/minecraft/world/level/biome/Biome.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
+++ b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
||||||
@@ -66,23 +66,37 @@ public final class Biome {
|
@@ -66,23 +66,37 @@ public final class Biome {
|
||||||
@@ -102,10 +102,10 @@ index ca259e278ad10347567c021376abca0287610432..968937e86bca8568a17988409506bcc0
|
|||||||
|
|
||||||
public boolean shouldFreeze(LevelReader world, BlockPos blockPos) {
|
public boolean shouldFreeze(LevelReader world, BlockPos blockPos) {
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 70756c650b1e891569a4910590770688552e1228..c274f9068a2d317723f6b5da9348d73236a987fc 100644
|
index a144420ff6a351e567c3dade9e5a7d02510a9b70..1fc965f3f082ec4ab4c4d45458d9512998ebb57b 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
@@ -359,6 +359,15 @@ public final class LeavesConfig {
|
@@ -360,6 +360,15 @@ public final class LeavesConfig {
|
||||||
cacheClimbCheck = getBoolean("settings.performance.cache-climb-check", cacheClimbCheck);
|
cacheClimbCheck = getBoolean("settings.performance.cache-climb-check", cacheClimbCheck);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Reduce entity fluid lookups if no fluids
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
index 0f40e5437f0d8e6e3f170eb72caae0ecd164a31c..02f9224a333cd400d1fe1f78684ab2a433c038fe 100644
|
index b058ccd484fdf8294a3be203fdfec5ed67ef5a42..80dc0fa45c8c7ad157e7b456cbe65665dda0bd95 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
@@ -4030,16 +4030,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
@@ -4074,16 +4074,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean updateFluidHeightAndDoFluidPushing(TagKey<Fluid> tag, double speed) {
|
public boolean updateFluidHeightAndDoFluidPushing(TagKey<Fluid> tag, double speed) {
|
||||||
@@ -35,7 +35,7 @@ index 0f40e5437f0d8e6e3f170eb72caae0ecd164a31c..02f9224a333cd400d1fe1f78684ab2a4
|
|||||||
double d1 = 0.0D;
|
double d1 = 0.0D;
|
||||||
boolean flag = this.isPushedByFluid();
|
boolean flag = this.isPushedByFluid();
|
||||||
boolean flag1 = false;
|
boolean flag1 = false;
|
||||||
@@ -4047,38 +4049,123 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
@@ -4091,38 +4093,123 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||||
int k1 = 0;
|
int k1 = 0;
|
||||||
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos();
|
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos();
|
||||||
|
|
||||||
@@ -217,10 +217,10 @@ index b0c9fce9d4e06cac139e341d218d0b6aac1f1943..f53fee91b78ba4c1e17360a40d5a94fe
|
|||||||
|
|
||||||
});
|
});
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index c274f9068a2d317723f6b5da9348d73236a987fc..ed73527cf29c4f08e3f4d98d968d5f5f489d357f 100644
|
index 1fc965f3f082ec4ab4c4d45458d9512998ebb57b..cbf22dc0723b623f44aab059644c439984e21ec4 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
@@ -368,6 +368,11 @@ public final class LeavesConfig {
|
@@ -369,6 +369,11 @@ public final class LeavesConfig {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Reduce chunk loading & lookups
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
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 f22e615dba31619c97bf58930da060476a52facf..c330e65310821248409655953b88717f634b0db5 100644
|
index f4002ac7cba7d5e41b4f11b98212c625f6a92a65..6feeb3d30e45c5aba4e8204fe7e76f8f0357ad08 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
--- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
+++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java
|
||||||
@@ -317,11 +317,28 @@ public class EnderMan extends Monster implements NeutralMob {
|
@@ -322,11 +322,28 @@ public class EnderMan extends Monster implements NeutralMob {
|
||||||
private boolean teleport(double x, double y, double z) {
|
private boolean teleport(double x, double y, double z) {
|
||||||
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos(x, y, z);
|
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos(x, y, z);
|
||||||
|
|
||||||
@@ -42,10 +42,10 @@ index f22e615dba31619c97bf58930da060476a52facf..c330e65310821248409655953b88717f
|
|||||||
boolean flag1 = iblockdata.getFluidState().is(FluidTags.WATER);
|
boolean flag1 = iblockdata.getFluidState().is(FluidTags.WATER);
|
||||||
|
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index ed73527cf29c4f08e3f4d98d968d5f5f489d357f..71a65447a60d8a0d265cfa4c47d0ab1f7437ac76 100644
|
index cbf22dc0723b623f44aab059644c439984e21ec4..724917fda96daa17da900cfc226a076f68cd8ca6 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
@@ -373,6 +373,11 @@ public final class LeavesConfig {
|
@@ -374,6 +374,11 @@ public final class LeavesConfig {
|
||||||
reduceEntityFluidLookup = getBoolean("settings.performance.reduce-entity-fluid-lookup", reduceEntityFluidLookup);
|
reduceEntityFluidLookup = getBoolean("settings.performance.reduce-entity-fluid-lookup", reduceEntityFluidLookup);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,31 +6,32 @@ Subject: [PATCH] Simpler ShapelessRecipes comparison for Vanilla
|
|||||||
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java b/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java
|
diff --git a/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java b/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java
|
||||||
index ffe5476d8ed15ee4384b679c341688787205ce59..d83377d264130893d13f9c323489858164bafe20 100644
|
index e7c06d98532160499f2610f69de27e30a326b16f..1e454e36a4fc6de4bd245ee8a908ed4fea16e611 100644
|
||||||
--- a/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java
|
--- a/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java
|
||||||
+++ b/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java
|
+++ b/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java
|
||||||
@@ -25,12 +25,20 @@ public class ShapelessRecipe implements CraftingRecipe {
|
@@ -26,13 +26,21 @@ public class ShapelessRecipe implements CraftingRecipe {
|
||||||
final String group;
|
final CraftingBookCategory category;
|
||||||
final ItemStack result;
|
final ItemStack result;
|
||||||
final NonNullList<Ingredient> ingredients;
|
final NonNullList<Ingredient> ingredients;
|
||||||
+ private final boolean isBukkit; // Leaves
|
+ private final boolean isBukkit; // Leaves
|
||||||
|
|
||||||
public ShapelessRecipe(ResourceLocation id, String group, ItemStack output, NonNullList<Ingredient> input) {
|
public ShapelessRecipe(ResourceLocation id, String group, CraftingBookCategory category, ItemStack output, NonNullList<Ingredient> input) {
|
||||||
+ // Leaves start
|
+ // Leaves start
|
||||||
+ this(id, group, output, input, false);
|
+ this(id, group, category, output, input, false);
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ public ShapelessRecipe(ResourceLocation id, String group, ItemStack output, NonNullList<Ingredient> input, boolean isBukkit) {
|
+ public ShapelessRecipe(ResourceLocation id, String group, CraftingBookCategory category, ItemStack output, NonNullList<Ingredient> input, boolean isBukkit) {
|
||||||
+ // Leaves end
|
+ // Leaves end
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.group = group;
|
this.group = group;
|
||||||
|
this.category = category;
|
||||||
this.result = output;
|
this.result = output;
|
||||||
this.ingredients = input;
|
this.ingredients = input;
|
||||||
+ this.isBukkit = isBukkit; // Leaves
|
+ this.isBukkit = isBukkit; // Leaves
|
||||||
}
|
}
|
||||||
|
|
||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
@@ -73,6 +81,28 @@ public class ShapelessRecipe implements CraftingRecipe {
|
@@ -81,6 +89,28 @@ public class ShapelessRecipe implements CraftingRecipe {
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean matches(CraftingContainer inventory, Level world) {
|
public boolean matches(CraftingContainer inventory, Level world) {
|
||||||
@@ -60,22 +61,22 @@ index ffe5476d8ed15ee4384b679c341688787205ce59..d83377d264130893d13f9c3234898581
|
|||||||
int i = 0;
|
int i = 0;
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java
|
||||||
index 0b3b46348ac9195bff1492ffc11fcbff7d3f5c6f..5d4a0081a69f9917aae15a9f2d3d239186e45611 100644
|
index f7ea77dd82d978ad307f99c743efacfb34478b3d..96be7a7b030b2f82ac91f0c5c8e66f282fd4d6bc 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java
|
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java
|
||||||
@@ -43,6 +43,6 @@ public class CraftShapelessRecipe extends ShapelessRecipe implements CraftRecipe
|
@@ -44,6 +44,6 @@ public class CraftShapelessRecipe extends ShapelessRecipe implements CraftRecipe
|
||||||
data.set(i, toNMS(ingred.get(i), true));
|
data.set(i, toNMS(ingred.get(i), true));
|
||||||
}
|
}
|
||||||
|
|
||||||
- MinecraftServer.getServer().getRecipeManager().addRecipe(new net.minecraft.world.item.crafting.ShapelessRecipe(CraftNamespacedKey.toMinecraft(this.getKey()), this.getGroup(), CraftItemStack.asNMSCopy(this.getResult()), data));
|
- MinecraftServer.getServer().getRecipeManager().addRecipe(new net.minecraft.world.item.crafting.ShapelessRecipe(CraftNamespacedKey.toMinecraft(this.getKey()), this.getGroup(), CraftRecipe.getCategory(this.getCategory()), CraftItemStack.asNMSCopy(this.getResult()), data));
|
||||||
+ MinecraftServer.getServer().getRecipeManager().addRecipe(new net.minecraft.world.item.crafting.ShapelessRecipe(CraftNamespacedKey.toMinecraft(this.getKey()), this.getGroup(), CraftItemStack.asNMSCopy(this.getResult()), data, true)); // Leaves - is bukkit recipe
|
+ MinecraftServer.getServer().getRecipeManager().addRecipe(new net.minecraft.world.item.crafting.ShapelessRecipe(CraftNamespacedKey.toMinecraft(this.getKey()), this.getGroup(), CraftRecipe.getCategory(this.getCategory()), CraftItemStack.asNMSCopy(this.getResult()), data, true)); // Leaves - is bukkit recipe
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 71a65447a60d8a0d265cfa4c47d0ab1f7437ac76..40d1d67172a90123a23020e71e06ced9d859d752 100644
|
index 724917fda96daa17da900cfc226a076f68cd8ca6..d4a65880aed6f7bc2973e8e6011f3959f37caf15 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
@@ -378,6 +378,11 @@ public final class LeavesConfig {
|
@@ -379,6 +379,11 @@ public final class LeavesConfig {
|
||||||
reduceChuckLoadAndLookup = getBoolean("settings.performance.reduce-chuck-load-and-lookup", reduceChuckLoadAndLookup);
|
reduceChuckLoadAndLookup = getBoolean("settings.performance.reduce-chuck-load-and-lookup", reduceChuckLoadAndLookup);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] PCA sync protocol
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
index c910fe0ed602d2444c0695159961867f9472d66f..6c6032bbf09a47319e9bc2dcccbb9a4b54598f12 100644
|
index f7870d551bf6045b649c9c8768b5ad5c8d3488ae..ca4ff892bf647f9ee7c05e6afb1d88c5c8b46eaf 100644
|
||||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
@@ -245,6 +245,7 @@ import org.bukkit.inventory.CraftingInventory;
|
@@ -241,6 +241,7 @@ import org.bukkit.inventory.CraftingInventory;
|
||||||
import org.bukkit.inventory.EquipmentSlot;
|
import org.bukkit.inventory.EquipmentSlot;
|
||||||
import org.bukkit.inventory.InventoryView;
|
import org.bukkit.inventory.InventoryView;
|
||||||
import org.bukkit.inventory.SmithingInventory;
|
import org.bukkit.inventory.SmithingInventory;
|
||||||
@@ -16,7 +16,7 @@ index c910fe0ed602d2444c0695159961867f9472d66f..6c6032bbf09a47319e9bc2dcccbb9a4b
|
|||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
|
|
||||||
public class ServerGamePacketListenerImpl implements ServerPlayerConnection, TickablePacketListener, ServerGamePacketListener {
|
public class ServerGamePacketListenerImpl implements ServerPlayerConnection, TickablePacketListener, ServerGamePacketListener {
|
||||||
@@ -3698,6 +3699,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
@@ -3547,6 +3548,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||||
this.disconnect("Invalid payload UNREGISTER!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause
|
this.disconnect("Invalid payload UNREGISTER!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -34,10 +34,10 @@ index c910fe0ed602d2444c0695159961867f9472d66f..6c6032bbf09a47319e9bc2dcccbb9a4b
|
|||||||
byte[] data = new byte[packet.data.readableBytes()];
|
byte[] data = new byte[packet.data.readableBytes()];
|
||||||
packet.data.readBytes(data);
|
packet.data.readBytes(data);
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index d0dfbb0341a0d614a38975dec82eee4a5c950526..4e3e0f7bfe54616fb6733ef2f8f05959eee0f47e 100644
|
index 3c1ea8850c5d482d77c0bc137d72fc59dc337979..0f5c3159ed9d15024b35d32d282994f67568b2eb 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -387,6 +387,7 @@ public abstract class PlayerList {
|
@@ -396,6 +396,7 @@ public abstract class PlayerList {
|
||||||
bot1.render(playerconnection, true,player.getBukkitEntity().getWorld() == bot1.getBukkitEntity().getWorld())); // Leaves - render bot
|
bot1.render(playerconnection, true,player.getBukkitEntity().getWorld() == bot1.getBukkitEntity().getWorld())); // Leaves - render bot
|
||||||
}
|
}
|
||||||
// Leaves end - bot support
|
// Leaves end - bot support
|
||||||
@@ -46,10 +46,10 @@ index d0dfbb0341a0d614a38975dec82eee4a5c950526..4e3e0f7bfe54616fb6733ef2f8f05959
|
|||||||
final net.kyori.adventure.text.Component jm = playerJoinEvent.joinMessage();
|
final net.kyori.adventure.text.Component jm = playerJoinEvent.joinMessage();
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
||||||
index a8da601b8342aa6e4902b452eb588c76c98a7adf..1fac7a290d22ca4becea60282dc5f4eea97d0015 100644
|
index 821b88d0c32f946af9af1c2e211b38446fab4ecb..5655f6800a03cb5f31523b9a2e94e47666d3bf0e 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
--- a/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
||||||
@@ -324,6 +324,11 @@ public abstract class AbstractHorse extends Animal implements ContainerListener,
|
@@ -340,6 +340,11 @@ public abstract class AbstractHorse extends Animal implements ContainerListener,
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void containerChanged(Container sender) {
|
public void containerChanged(Container sender) {
|
||||||
@@ -62,7 +62,7 @@ index a8da601b8342aa6e4902b452eb588c76c98a7adf..1fac7a290d22ca4becea60282dc5f4ee
|
|||||||
|
|
||||||
this.updateContainerEquipment();
|
this.updateContainerEquipment();
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java
|
diff --git a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java
|
||||||
index 5eab7d50734551d96128dfebee126a1da4c51375..bf5b421cddfd2fe6cce3b9cf14415e4ec8cecd42 100644
|
index ca96b893e22de3ae7c11d5cded51edf70bdcb6f2..a0380713ff1e3faa285c76ea45f75c9c480caafe 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java
|
--- a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java
|
+++ b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java
|
||||||
@@ -65,6 +65,15 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa
|
@@ -65,6 +65,15 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa
|
||||||
@@ -101,10 +101,10 @@ index b8fb7b5a347298ada16bc8b818edf1863e3f6040..ca71b5b61d85df4a3e74c69823184b52
|
|||||||
@Override
|
@Override
|
||||||
public boolean stillValid(Player player) {
|
public boolean stillValid(Player player) {
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
|
diff --git a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
|
||||||
index c6aeda6497cb59673b469588142f5f15a338389d..ed09bac5e6ddb1f134353af70615dcce707363bb 100644
|
index cac2768fe520b591990c7bc943ae7e95f49efb31..59938c323ad2597af03a310e930d1a61f1a456c7 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
|
--- a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
|
+++ b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
|
||||||
@@ -574,6 +574,16 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit
|
@@ -568,6 +568,16 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -122,7 +122,7 @@ index c6aeda6497cb59673b469588142f5f15a338389d..ed09bac5e6ddb1f134353af70615dcce
|
|||||||
public boolean stillValid(net.minecraft.world.entity.player.Player player) {
|
public boolean stillValid(net.minecraft.world.entity.player.Player player) {
|
||||||
return this.level.getBlockEntity(this.worldPosition) != this ? false : player.distanceToSqr((double) this.worldPosition.getX() + 0.5D, (double) this.worldPosition.getY() + 0.5D, (double) this.worldPosition.getZ() + 0.5D) <= 64.0D;
|
return this.level.getBlockEntity(this.worldPosition) != this ? false : player.distanceToSqr((double) this.worldPosition.getX() + 0.5D, (double) this.worldPosition.getY() + 0.5D, (double) this.worldPosition.getZ() + 0.5D) <= 64.0D;
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/block/entity/BarrelBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BarrelBlockEntity.java
|
diff --git a/src/main/java/net/minecraft/world/level/block/entity/BarrelBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BarrelBlockEntity.java
|
||||||
index f52487e1cfcfab1bf22ab2cb52f998283a86e340..82f883f678eae83b028f78861de9ff2fd3471440 100644
|
index 416aa989ebb18a8741cc9d605a1180ab830f6643..213bc3c11ff4ed9bc761e8153aa669d1e2301960 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/block/entity/BarrelBlockEntity.java
|
--- a/src/main/java/net/minecraft/world/level/block/entity/BarrelBlockEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/block/entity/BarrelBlockEntity.java
|
+++ b/src/main/java/net/minecraft/world/level/block/entity/BarrelBlockEntity.java
|
||||||
@@ -131,6 +131,16 @@ public class BarrelBlockEntity extends RandomizableContainerBlockEntity {
|
@@ -131,6 +131,16 @@ public class BarrelBlockEntity extends RandomizableContainerBlockEntity {
|
||||||
@@ -321,7 +321,7 @@ index ccad692aba2ed77259f6814d88f01b91ed9d229b..01bf32fd730000bdf3a71abe0ad9546c
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity.java
|
diff --git a/src/main/java/net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity.java
|
||||||
index 137bdf1168b9e1d00164471e4e79f56c000c2696..47522524ca4e7105f5fa624fc7c438f0c4f9a8c5 100644
|
index b7686fd63b7c5d88c3a12ec4ee9bc01a17f997e0..25a9c38c60d183bb65b14f4d7550ab98b431c218 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity.java
|
--- a/src/main/java/net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity.java
|
+++ b/src/main/java/net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity.java
|
||||||
@@ -259,6 +259,16 @@ public class ShulkerBoxBlockEntity extends RandomizableContainerBlockEntity impl
|
@@ -259,6 +259,16 @@ public class ShulkerBoxBlockEntity extends RandomizableContainerBlockEntity impl
|
||||||
@@ -342,10 +342,10 @@ index 137bdf1168b9e1d00164471e4e79f56c000c2696..47522524ca4e7105f5fa624fc7c438f0
|
|||||||
public int[] getSlotsForFace(Direction side) {
|
public int[] getSlotsForFace(Direction side) {
|
||||||
return ShulkerBoxBlockEntity.SLOTS;
|
return ShulkerBoxBlockEntity.SLOTS;
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
index eb7733699a417d1ee73bc0c9d08eba61a34d8b7b..23be24cfc89abb7474464be3bb56e47f1d2e971b 100644
|
index 4d22a40e7ff0b88aa204e0da81e71757ecc1dd7f..d52f9d6685a17f46186ed706d59cbe3819234a0d 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
@@ -372,6 +372,7 @@ public final class CraftServer implements Server {
|
@@ -385,6 +385,7 @@ public final class CraftServer implements Server {
|
||||||
MapPalette.setMapColorCache(new CraftMapColorCache(this.logger));
|
MapPalette.setMapColorCache(new CraftMapColorCache(this.logger));
|
||||||
}
|
}
|
||||||
datapackManager = new io.papermc.paper.datapack.PaperDatapackManager(console.getPackRepository()); // Paper
|
datapackManager = new io.papermc.paper.datapack.PaperDatapackManager(console.getPackRepository()); // Paper
|
||||||
@@ -353,7 +353,7 @@ index eb7733699a417d1ee73bc0c9d08eba61a34d8b7b..23be24cfc89abb7474464be3bb56e47f
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean getCommandBlockOverride(String command) {
|
public boolean getCommandBlockOverride(String command) {
|
||||||
@@ -967,6 +968,13 @@ public final class CraftServer implements Server {
|
@@ -980,6 +981,13 @@ public final class CraftServer implements Server {
|
||||||
org.spigotmc.SpigotConfig.init((File) console.options.valueOf("spigot-settings")); // Spigot
|
org.spigotmc.SpigotConfig.init((File) console.options.valueOf("spigot-settings")); // Spigot
|
||||||
this.console.paperConfigurations.reloadConfigs(this.console);
|
this.console.paperConfigurations.reloadConfigs(this.console);
|
||||||
top.leavesmc.leaves.LeavesConfig.init((File) console.options.valueOf("leaves-settings")); // Leaves - Server Config
|
top.leavesmc.leaves.LeavesConfig.init((File) console.options.valueOf("leaves-settings")); // Leaves - Server Config
|
||||||
@@ -368,10 +368,10 @@ index eb7733699a417d1ee73bc0c9d08eba61a34d8b7b..23be24cfc89abb7474464be3bb56e47f
|
|||||||
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
|
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
|
||||||
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
|
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 40d1d67172a90123a23020e71e06ced9d859d752..51a576f75c065a896f4f2a223c3e87241c925720 100644
|
index d4a65880aed6f7bc2973e8e6011f3959f37caf15..cb09cbb64bfe8de91a78b2dd1dc135f5d5688477 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
@@ -383,6 +383,21 @@ public final class LeavesConfig {
|
@@ -384,6 +384,21 @@ public final class LeavesConfig {
|
||||||
simplerVanillaShapelessRecipes = getBoolean("settings.performance.simpler-vanilla-shapeless-recipes", simplerVanillaShapelessRecipes);
|
simplerVanillaShapelessRecipes = getBoolean("settings.performance.simpler-vanilla-shapeless-recipes", simplerVanillaShapelessRecipes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] BBOR Protocol
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index c95d1fb9854ed303200d9800d5c230a8b8c0a177..fd71694e3c21926851d91b2f1a5a9be577add443 100644
|
index f834a809431ca3667be0c74d8fcbe9db46cbda22..f6bc15c331f22aba5cbb41261dbc10a4dc1e2a8d 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1581,6 +1581,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1581,6 +1581,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
@@ -18,10 +18,10 @@ index c95d1fb9854ed303200d9800d5c230a8b8c0a177..fd71694e3c21926851d91b2f1a5a9be5
|
|||||||
for (int i = 0; i < this.tickables.size(); ++i) {
|
for (int i = 0; i < this.tickables.size(); ++i) {
|
||||||
((Runnable) this.tickables.get(i)).run();
|
((Runnable) this.tickables.get(i)).run();
|
||||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
index 6c6032bbf09a47319e9bc2dcccbb9a4b54598f12..4bb6153345dd87b86fc226779e3e1b2cb0de0a09 100644
|
index ca4ff892bf647f9ee7c05e6afb1d88c5c8b46eaf..cd8a6f64064786ff46a8330d95b3aa7e6acc86dc 100644
|
||||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
@@ -3704,6 +3704,9 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
@@ -3553,6 +3553,9 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||||
if (top.leavesmc.leaves.LeavesConfig.pcaSyncProtocol && ProtocolUtils.isNamespacePacket(packet, top.leavesmc.leaves.protocol.PcaSyncProtocol.PROTOCOL_ID)) {
|
if (top.leavesmc.leaves.LeavesConfig.pcaSyncProtocol && ProtocolUtils.isNamespacePacket(packet, top.leavesmc.leaves.protocol.PcaSyncProtocol.PROTOCOL_ID)) {
|
||||||
top.leavesmc.leaves.protocol.PcaSyncProtocol.handlePacket(server, player, packet);
|
top.leavesmc.leaves.protocol.PcaSyncProtocol.handlePacket(server, player, packet);
|
||||||
}
|
}
|
||||||
@@ -32,10 +32,10 @@ index 6c6032bbf09a47319e9bc2dcccbb9a4b54598f12..4bb6153345dd87b86fc226779e3e1b2c
|
|||||||
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t dispatch custom payload", ex);
|
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t dispatch custom payload", ex);
|
||||||
this.disconnect("Invalid custom payload!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD);
|
this.disconnect("Invalid custom payload!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD);
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index 4e3e0f7bfe54616fb6733ef2f8f05959eee0f47e..0ddde154bf753e1fa483df8dd58c71b7a17e4779 100644
|
index 0f5c3159ed9d15024b35d32d282994f67568b2eb..ec3b537819dc741b53be679f353b647895d2bd2d 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -388,6 +388,7 @@ public abstract class PlayerList {
|
@@ -397,6 +397,7 @@ public abstract class PlayerList {
|
||||||
}
|
}
|
||||||
// Leaves end - bot support
|
// Leaves end - bot support
|
||||||
top.leavesmc.leaves.protocol.PcaSyncProtocol.onJoin(player); // Leaves - pca
|
top.leavesmc.leaves.protocol.PcaSyncProtocol.onJoin(player); // Leaves - pca
|
||||||
@@ -43,7 +43,7 @@ index 4e3e0f7bfe54616fb6733ef2f8f05959eee0f47e..0ddde154bf753e1fa483df8dd58c71b7
|
|||||||
|
|
||||||
final net.kyori.adventure.text.Component jm = playerJoinEvent.joinMessage();
|
final net.kyori.adventure.text.Component jm = playerJoinEvent.joinMessage();
|
||||||
|
|
||||||
@@ -626,6 +627,7 @@ public abstract class PlayerList {
|
@@ -634,6 +635,7 @@ public abstract class PlayerList {
|
||||||
return this.remove(entityplayer, net.kyori.adventure.text.Component.translatable("multiplayer.player.left", net.kyori.adventure.text.format.NamedTextColor.YELLOW, io.papermc.paper.configuration.GlobalConfiguration.get().messages.useDisplayNameInQuitMessage ? entityplayer.getBukkitEntity().displayName() : net.kyori.adventure.text.Component.text(entityplayer.getScoreboardName())));
|
return this.remove(entityplayer, net.kyori.adventure.text.Component.translatable("multiplayer.player.left", net.kyori.adventure.text.format.NamedTextColor.YELLOW, io.papermc.paper.configuration.GlobalConfiguration.get().messages.useDisplayNameInQuitMessage ? entityplayer.getBukkitEntity().displayName() : net.kyori.adventure.text.Component.text(entityplayer.getScoreboardName())));
|
||||||
}
|
}
|
||||||
public net.kyori.adventure.text.Component remove(ServerPlayer entityplayer, net.kyori.adventure.text.Component leaveMessage) {
|
public net.kyori.adventure.text.Component remove(ServerPlayer entityplayer, net.kyori.adventure.text.Component leaveMessage) {
|
||||||
@@ -52,7 +52,7 @@ index 4e3e0f7bfe54616fb6733ef2f8f05959eee0f47e..0ddde154bf753e1fa483df8dd58c71b7
|
|||||||
ServerLevel worldserver = entityplayer.getLevel();
|
ServerLevel worldserver = entityplayer.getLevel();
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
||||||
index c75ddded71d32bc8e9d219a8acc52482f776c526..c7c7b2eb30ffa5d9ed1c76ae9c6d13afea9cb60c 100644
|
index 1bf1af06fbd6501e98def7997c487c425d6a1623..15f9978e9c1ccb7f64a5f43c564842f93836b1d7 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
||||||
@@ -1050,6 +1050,11 @@ public class LevelChunk extends ChunkAccess {
|
@@ -1050,6 +1050,11 @@ public class LevelChunk extends ChunkAccess {
|
||||||
@@ -68,10 +68,10 @@ index c75ddded71d32bc8e9d219a8acc52482f776c526..c7c7b2eb30ffa5d9ed1c76ae9c6d13af
|
|||||||
|
|
||||||
public Level getLevel() {
|
public Level getLevel() {
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
index 23be24cfc89abb7474464be3bb56e47f1d2e971b..03740189a2dbe7985e16ebf3facaeec4cf7ff57f 100644
|
index d52f9d6685a17f46186ed706d59cbe3819234a0d..5cef8260a3e5f10a808ec77d6e5b24e729fddee4 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
@@ -975,6 +975,13 @@ public final class CraftServer implements Server {
|
@@ -988,6 +988,13 @@ public final class CraftServer implements Server {
|
||||||
top.leavesmc.leaves.protocol.PcaSyncProtocol.disablePcaSyncProtocolGlobal();
|
top.leavesmc.leaves.protocol.PcaSyncProtocol.disablePcaSyncProtocolGlobal();
|
||||||
}
|
}
|
||||||
// Leaves end - pca
|
// Leaves end - pca
|
||||||
@@ -86,10 +86,10 @@ index 23be24cfc89abb7474464be3bb56e47f1d2e971b..03740189a2dbe7985e16ebf3facaeec4
|
|||||||
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
|
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
|
||||||
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
|
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 51a576f75c065a896f4f2a223c3e87241c925720..3e5855c5eef8038c5af69ef447fe0c2b90c33acb 100644
|
index cb09cbb64bfe8de91a78b2dd1dc135f5d5688477..25a86927e6616a9b2105c06d789bc74c7efa6e60 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
@@ -398,6 +398,11 @@ public final class LeavesConfig {
|
@@ -399,6 +399,11 @@ public final class LeavesConfig {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -103,15 +103,17 @@ index 51a576f75c065a896f4f2a223c3e87241c925720..3e5855c5eef8038c5af69ef447fe0c2b
|
|||||||
public final String worldName;
|
public final String worldName;
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/protocol/BBORProtocol.java b/src/main/java/top/leavesmc/leaves/protocol/BBORProtocol.java
|
diff --git a/src/main/java/top/leavesmc/leaves/protocol/BBORProtocol.java b/src/main/java/top/leavesmc/leaves/protocol/BBORProtocol.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..407e754c2845f3685d4353627e952008cd76487a
|
index 0000000000000000000000000000000000000000..9e0b0ab11cf83c49fbb6680dc848515dd23d495a
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/protocol/BBORProtocol.java
|
+++ b/src/main/java/top/leavesmc/leaves/protocol/BBORProtocol.java
|
||||||
@@ -0,0 +1,193 @@
|
@@ -0,0 +1,195 @@
|
||||||
+package top.leavesmc.leaves.protocol;
|
+package top.leavesmc.leaves.protocol;
|
||||||
+
|
+
|
||||||
+import io.netty.buffer.Unpooled;
|
+import io.netty.buffer.Unpooled;
|
||||||
+import net.minecraft.core.BlockPos;
|
+import net.minecraft.core.BlockPos;
|
||||||
+import net.minecraft.core.Registry;
|
+import net.minecraft.core.Registry;
|
||||||
|
+import net.minecraft.core.registries.BuiltInRegistries;
|
||||||
|
+import net.minecraft.core.registries.Registries;
|
||||||
+import net.minecraft.network.FriendlyByteBuf;
|
+import net.minecraft.network.FriendlyByteBuf;
|
||||||
+import net.minecraft.resources.ResourceLocation;
|
+import net.minecraft.resources.ResourceLocation;
|
||||||
+import net.minecraft.server.MinecraftServer;
|
+import net.minecraft.server.MinecraftServer;
|
||||||
@@ -180,7 +182,7 @@ index 0000000000000000000000000000000000000000..407e754c2845f3685d4353627e952008
|
|||||||
+ public static void onChunkLoaded(@NotNull LevelChunk chunk) {
|
+ public static void onChunkLoaded(@NotNull LevelChunk chunk) {
|
||||||
+ if (LeavesConfig.bborProtocol) {
|
+ if (LeavesConfig.bborProtocol) {
|
||||||
+ Map<String, StructureStart> structures = new HashMap<>();
|
+ Map<String, StructureStart> structures = new HashMap<>();
|
||||||
+ final Registry<Structure> structureFeatureRegistry = chunk.getLevel().registryAccess().registryOrThrow(Registry.STRUCTURE_REGISTRY);
|
+ final Registry<Structure> structureFeatureRegistry = chunk.getLevel().registryAccess().registryOrThrow(Registries.STRUCTURE);
|
||||||
+ for (var es : chunk.getAllStarts().entrySet()) {
|
+ for (var es : chunk.getAllStarts().entrySet()) {
|
||||||
+ final var optional = structureFeatureRegistry.getResourceKey(es.getKey());
|
+ final var optional = structureFeatureRegistry.getResourceKey(es.getKey());
|
||||||
+ optional.ifPresent(key -> structures.put(key.location().toString(), es.getValue()));
|
+ optional.ifPresent(key -> structures.put(key.location().toString(), es.getValue()));
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] InstantBlockUpdater Reintroduced
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index 1070d33c3df23f0ed6073eee2e67680e831e53fc..53a5507692c89dd3584e9d356b802cd03364bf91 100644
|
index dda31b5eea92ce3de9de0e4054ee9c7f6df631e4..dd3868045923eed8c6eaf87a57d9bf7dcd466433 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -70,6 +70,7 @@ import net.minecraft.world.level.lighting.LevelLightEngine;
|
@@ -72,6 +72,7 @@ import net.minecraft.world.level.lighting.LevelLightEngine;
|
||||||
import net.minecraft.world.level.material.FluidState;
|
import net.minecraft.world.level.material.FluidState;
|
||||||
import net.minecraft.world.level.material.Fluids;
|
import net.minecraft.world.level.material.Fluids;
|
||||||
import net.minecraft.world.level.redstone.CollectingNeighborUpdater;
|
import net.minecraft.world.level.redstone.CollectingNeighborUpdater;
|
||||||
@@ -16,7 +16,7 @@ index 1070d33c3df23f0ed6073eee2e67680e831e53fc..53a5507692c89dd3584e9d356b802cd0
|
|||||||
import net.minecraft.world.level.redstone.NeighborUpdater;
|
import net.minecraft.world.level.redstone.NeighborUpdater;
|
||||||
import net.minecraft.world.level.saveddata.maps.MapItemSavedData;
|
import net.minecraft.world.level.saveddata.maps.MapItemSavedData;
|
||||||
import net.minecraft.world.level.storage.LevelData;
|
import net.minecraft.world.level.storage.LevelData;
|
||||||
@@ -318,7 +319,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -317,7 +318,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
this.thread = Thread.currentThread();
|
this.thread = Thread.currentThread();
|
||||||
this.biomeManager = new BiomeManager(this, i);
|
this.biomeManager = new BiomeManager(this, i);
|
||||||
this.isDebug = flag1;
|
this.isDebug = flag1;
|
||||||
@@ -32,10 +32,10 @@ index 1070d33c3df23f0ed6073eee2e67680e831e53fc..53a5507692c89dd3584e9d356b802cd0
|
|||||||
this.getWorldBorder().world = (ServerLevel) this;
|
this.getWorldBorder().world = (ServerLevel) this;
|
||||||
// From PlayerList.setPlayerFileData
|
// From PlayerList.setPlayerFileData
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 3e5855c5eef8038c5af69ef447fe0c2b90c33acb..5d1a6ed87f4139dce18343e4a0d70a8922cab308 100644
|
index 25a86927e6616a9b2105c06d789bc74c7efa6e60..3dc43c3e292724d199b973273006350a594e754e 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
@@ -403,6 +403,15 @@ public final class LeavesConfig {
|
@@ -404,6 +404,15 @@ public final class LeavesConfig {
|
||||||
bborProtocol = getBoolean("settings.protocol.bbor-protocol", bborProtocol);
|
bborProtocol = getBoolean("settings.protocol.bbor-protocol", bborProtocol);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -25,10 +25,10 @@ index ff1ad1024419182f7f3de578442c1c033d4c9ebb..d93f3eeea17d58ccc01c6010b2d49f81
|
|||||||
|
|
||||||
default void consumeCount(int count) {
|
default void consumeCount(int count) {
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 5d1a6ed87f4139dce18343e4a0d70a8922cab308..3740b315b07a3d6450b11a24d6a4793fc14193d3 100644
|
index 3dc43c3e292724d199b973273006350a594e754e..04fa3429d0725446565c01d9ae1b28193b599c4f 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
@@ -412,6 +412,11 @@ public final class LeavesConfig {
|
@@ -413,6 +413,11 @@ public final class LeavesConfig {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Jade Protocol
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
index 4bb6153345dd87b86fc226779e3e1b2cb0de0a09..f6f9ae994c06fea9e0382d69726e4bbc944784af 100644
|
index cd8a6f64064786ff46a8330d95b3aa7e6acc86dc..d89e347a83a7dbc4d775075a35d67764ffcb66b0 100644
|
||||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
@@ -3707,6 +3707,9 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
@@ -3556,6 +3556,9 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||||
if (top.leavesmc.leaves.LeavesConfig.bborProtocol && packet.identifier.equals(top.leavesmc.leaves.protocol.BBORProtocol.SUBSCRIBE)) {
|
if (top.leavesmc.leaves.LeavesConfig.bborProtocol && packet.identifier.equals(top.leavesmc.leaves.protocol.BBORProtocol.SUBSCRIBE)) {
|
||||||
top.leavesmc.leaves.protocol.BBORProtocol.onPlayerSubscribed(player);
|
top.leavesmc.leaves.protocol.BBORProtocol.onPlayerSubscribed(player);
|
||||||
}
|
}
|
||||||
@@ -19,10 +19,10 @@ index 4bb6153345dd87b86fc226779e3e1b2cb0de0a09..f6f9ae994c06fea9e0382d69726e4bbc
|
|||||||
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t dispatch custom payload", ex);
|
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t dispatch custom payload", ex);
|
||||||
this.disconnect("Invalid custom payload!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD);
|
this.disconnect("Invalid custom payload!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD);
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index 0ddde154bf753e1fa483df8dd58c71b7a17e4779..761b0f00a52b2d3a9b7f2f2e3a27eda3a0e4325e 100644
|
index ec3b537819dc741b53be679f353b647895d2bd2d..4d0668ba0e1051094e735dc28224fa9f78c38730 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -389,6 +389,7 @@ public abstract class PlayerList {
|
@@ -398,6 +398,7 @@ public abstract class PlayerList {
|
||||||
// Leaves end - bot support
|
// Leaves end - bot support
|
||||||
top.leavesmc.leaves.protocol.PcaSyncProtocol.onJoin(player); // Leaves - pca
|
top.leavesmc.leaves.protocol.PcaSyncProtocol.onJoin(player); // Leaves - pca
|
||||||
top.leavesmc.leaves.protocol.BBORProtocol.onPlayerLoggedIn(player); // Leaves - bbor
|
top.leavesmc.leaves.protocol.BBORProtocol.onPlayerLoggedIn(player); // Leaves - bbor
|
||||||
@@ -31,10 +31,10 @@ index 0ddde154bf753e1fa483df8dd58c71b7a17e4779..761b0f00a52b2d3a9b7f2f2e3a27eda3
|
|||||||
final net.kyori.adventure.text.Component jm = playerJoinEvent.joinMessage();
|
final net.kyori.adventure.text.Component jm = playerJoinEvent.joinMessage();
|
||||||
|
|
||||||
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
|
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 3dd4e6d622a6daafa00ae971edd88a147e34beef..d18950885dd6636e8cd4774f0c37e47c423bd47e 100644
|
index e8574bd4b412c1db82aaec9dced47b63de9dbf28..066b0dbbb6d4d6f4526bd1f622162ffe582ad369 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
|
--- a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
|
+++ b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
|
||||||
@@ -245,7 +245,7 @@ public class Tadpole extends AbstractFish {
|
@@ -247,7 +247,7 @@ public class Tadpole extends AbstractFish {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -44,10 +44,10 @@ index 3dd4e6d622a6daafa00ae971edd88a147e34beef..d18950885dd6636e8cd4774f0c37e47c
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
index 03740189a2dbe7985e16ebf3facaeec4cf7ff57f..b104432053cca743e02cbf74abbbc0ae9a6df3d2 100644
|
index 5cef8260a3e5f10a808ec77d6e5b24e729fddee4..0cf052a3b2de082ef8cb25147d4a73a673bc04da 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
@@ -373,6 +373,7 @@ public final class CraftServer implements Server {
|
@@ -386,6 +386,7 @@ public final class CraftServer implements Server {
|
||||||
}
|
}
|
||||||
datapackManager = new io.papermc.paper.datapack.PaperDatapackManager(console.getPackRepository()); // Paper
|
datapackManager = new io.papermc.paper.datapack.PaperDatapackManager(console.getPackRepository()); // Paper
|
||||||
top.leavesmc.leaves.protocol.PcaSyncProtocol.init(); // Leaves - pca
|
top.leavesmc.leaves.protocol.PcaSyncProtocol.init(); // Leaves - pca
|
||||||
@@ -55,7 +55,7 @@ index 03740189a2dbe7985e16ebf3facaeec4cf7ff57f..b104432053cca743e02cbf74abbbc0ae
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean getCommandBlockOverride(String command) {
|
public boolean getCommandBlockOverride(String command) {
|
||||||
@@ -982,6 +983,11 @@ public final class CraftServer implements Server {
|
@@ -995,6 +996,11 @@ public final class CraftServer implements Server {
|
||||||
top.leavesmc.leaves.protocol.BBORProtocol.loggedOutAllPlayer();
|
top.leavesmc.leaves.protocol.BBORProtocol.loggedOutAllPlayer();
|
||||||
}
|
}
|
||||||
// Leaves end - bbor
|
// Leaves end - bbor
|
||||||
@@ -68,10 +68,10 @@ index 03740189a2dbe7985e16ebf3facaeec4cf7ff57f..b104432053cca743e02cbf74abbbc0ae
|
|||||||
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
|
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
|
||||||
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
|
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 3740b315b07a3d6450b11a24d6a4793fc14193d3..88544d0972e0f1d4339b8a5da8085c0643b799d5 100644
|
index 04fa3429d0725446565c01d9ae1b28193b599c4f..82bb440e8f724dd1310b3c068f6d4c4e5296a9aa 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
@@ -417,6 +417,11 @@ public final class LeavesConfig {
|
@@ -418,6 +418,11 @@ public final class LeavesConfig {
|
||||||
flattenTriangularDistribution = getBoolean("settings.modify.flatten-triangular-distribution", flattenTriangularDistribution);
|
flattenTriangularDistribution = getBoolean("settings.modify.flatten-triangular-distribution", flattenTriangularDistribution);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -85,10 +85,10 @@ index 3740b315b07a3d6450b11a24d6a4793fc14193d3..88544d0972e0f1d4339b8a5da8085c06
|
|||||||
public final String worldName;
|
public final String worldName;
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/protocol/JadeProtocol.java b/src/main/java/top/leavesmc/leaves/protocol/JadeProtocol.java
|
diff --git a/src/main/java/top/leavesmc/leaves/protocol/JadeProtocol.java b/src/main/java/top/leavesmc/leaves/protocol/JadeProtocol.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..a5d076e67efe46c7ad2c0ae896c1903100c5fadf
|
index 0000000000000000000000000000000000000000..569ccfc9ac059abdc5690e686889ed03047c2517
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/protocol/JadeProtocol.java
|
+++ b/src/main/java/top/leavesmc/leaves/protocol/JadeProtocol.java
|
||||||
@@ -0,0 +1,571 @@
|
@@ -0,0 +1,572 @@
|
||||||
+package top.leavesmc.leaves.protocol;
|
+package top.leavesmc.leaves.protocol;
|
||||||
+
|
+
|
||||||
+import com.google.common.cache.Cache;
|
+import com.google.common.cache.Cache;
|
||||||
@@ -102,6 +102,7 @@ index 0000000000000000000000000000000000000000..a5d076e67efe46c7ad2c0ae896c19031
|
|||||||
+import io.netty.buffer.Unpooled;
|
+import io.netty.buffer.Unpooled;
|
||||||
+import net.minecraft.core.BlockPos;
|
+import net.minecraft.core.BlockPos;
|
||||||
+import net.minecraft.core.Registry;
|
+import net.minecraft.core.Registry;
|
||||||
|
+import net.minecraft.core.registries.BuiltInRegistries;
|
||||||
+import net.minecraft.nbt.CompoundTag;
|
+import net.minecraft.nbt.CompoundTag;
|
||||||
+import net.minecraft.nbt.ListTag;
|
+import net.minecraft.nbt.ListTag;
|
||||||
+import net.minecraft.network.FriendlyByteBuf;
|
+import net.minecraft.network.FriendlyByteBuf;
|
||||||
@@ -467,7 +468,7 @@ index 0000000000000000000000000000000000000000..a5d076e67efe46c7ad2c0ae896c19031
|
|||||||
+ tag.putInt("x", pos.getX());
|
+ tag.putInt("x", pos.getX());
|
||||||
+ tag.putInt("y", pos.getY());
|
+ tag.putInt("y", pos.getY());
|
||||||
+ tag.putInt("z", pos.getZ());
|
+ tag.putInt("z", pos.getZ());
|
||||||
+ tag.putString("id", Registry.BLOCK_ENTITY_TYPE.getKey(tile.getType()).toString());
|
+ tag.putString("id", BuiltInRegistries.BLOCK_ENTITY_TYPE.getKey(tile.getType()).toString());
|
||||||
+
|
+
|
||||||
+ FriendlyByteBuf buf1 = new FriendlyByteBuf(Unpooled.buffer());
|
+ FriendlyByteBuf buf1 = new FriendlyByteBuf(Unpooled.buffer());
|
||||||
+ buf1.writeNbt(tag);
|
+ buf1.writeNbt(tag);
|
||||||
|
|||||||
@@ -5,23 +5,23 @@ Subject: [PATCH] Carpet alternative block placement Protocol
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
index f6f9ae994c06fea9e0382d69726e4bbc944784af..b2d5218bd97be400cd18185e9a5305df76635d6e 100644
|
index d89e347a83a7dbc4d775075a35d67764ffcb66b0..41d551d322f3d41945a8dcfb22eb536d50307b37 100644
|
||||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
@@ -1960,7 +1960,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
@@ -1952,7 +1952,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||||
Vec3 vec3d2 = vec3d.subtract(vec3d1);
|
Vec3 vec3d2 = vec3d.subtract(vec3d1);
|
||||||
double d0 = 1.0000001D;
|
double d0 = 1.0000001D;
|
||||||
|
|
||||||
- if (Math.abs(vec3d2.x()) < 1.0000001D && Math.abs(vec3d2.y()) < 1.0000001D && Math.abs(vec3d2.z()) < 1.0000001D) {
|
- if (Math.abs(vec3d2.x()) < 1.0000001D && Math.abs(vec3d2.y()) < 1.0000001D && Math.abs(vec3d2.z()) < 1.0000001D) {
|
||||||
+ if (top.leavesmc.leaves.LeavesConfig.carpetAlternativeBlockPlacement || (Math.abs(vec3d2.x()) < 1.0000001D && Math.abs(vec3d2.y()) < 1.0000001D && Math.abs(vec3d2.z()) < 1.0000001D)) { // Leaves - carpetAlternativeBlockPlacement
|
+ if (top.leavesmc.leaves.LeavesConfig.carpetAlternativeBlockPlacement || (Math.abs(vec3d2.x()) < 1.0000001D && Math.abs(vec3d2.y()) < 1.0000001D && Math.abs(vec3d2.z()) < 1.0000001D)) { // Leaves - carpetAlternativeBlockPlacement
|
||||||
Direction enumdirection = movingobjectpositionblock.getDirection();
|
Direction enumdirection = movingobjectpositionblock.getDirection();
|
||||||
|
|
||||||
this.player.resetLastActionTime();
|
this.player.resetLastActionTime();
|
||||||
diff --git a/src/main/java/net/minecraft/world/item/BlockItem.java b/src/main/java/net/minecraft/world/item/BlockItem.java
|
diff --git a/src/main/java/net/minecraft/world/item/BlockItem.java b/src/main/java/net/minecraft/world/item/BlockItem.java
|
||||||
index 62d6c5b7590ff4faef5d8c7a8be03155b7338480..753d81a8daabfc424af323f9ebf52415b2fb618f 100644
|
index b0204af850ee182773ad458208cccd946ad148d5..3ab714721b51b039291b8e8a4b4da5118e18f5b7 100644
|
||||||
--- a/src/main/java/net/minecraft/world/item/BlockItem.java
|
--- a/src/main/java/net/minecraft/world/item/BlockItem.java
|
||||||
+++ b/src/main/java/net/minecraft/world/item/BlockItem.java
|
+++ b/src/main/java/net/minecraft/world/item/BlockItem.java
|
||||||
@@ -156,7 +156,7 @@ public class BlockItem extends Item {
|
@@ -158,7 +158,7 @@ public class BlockItem extends Item {
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
protected BlockState getPlacementState(BlockPlaceContext context) {
|
protected BlockState getPlacementState(BlockPlaceContext context) {
|
||||||
@@ -31,10 +31,10 @@ index 62d6c5b7590ff4faef5d8c7a8be03155b7338480..753d81a8daabfc424af323f9ebf52415
|
|||||||
return iblockdata != null && this.canPlace(context, iblockdata) ? iblockdata : null;
|
return iblockdata != null && this.canPlace(context, iblockdata) ? iblockdata : null;
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/world/item/StandingAndWallBlockItem.java b/src/main/java/net/minecraft/world/item/StandingAndWallBlockItem.java
|
diff --git a/src/main/java/net/minecraft/world/item/StandingAndWallBlockItem.java b/src/main/java/net/minecraft/world/item/StandingAndWallBlockItem.java
|
||||||
index d48fca67718290dd22133e72715646b3e1de4099..e0ab3f5bb3bc1da1941d10821b38bf4c0d66d6b7 100644
|
index 39b8b3675ac58409e05fac07e07c8016c5280d81..928b1ece5b094dee8a5e37bfd3afd626cb1bd03a 100644
|
||||||
--- a/src/main/java/net/minecraft/world/item/StandingAndWallBlockItem.java
|
--- a/src/main/java/net/minecraft/world/item/StandingAndWallBlockItem.java
|
||||||
+++ b/src/main/java/net/minecraft/world/item/StandingAndWallBlockItem.java
|
+++ b/src/main/java/net/minecraft/world/item/StandingAndWallBlockItem.java
|
||||||
@@ -27,7 +27,7 @@ public class StandingAndWallBlockItem extends BlockItem {
|
@@ -34,7 +34,7 @@ public class StandingAndWallBlockItem extends BlockItem {
|
||||||
@Nullable
|
@Nullable
|
||||||
@Override
|
@Override
|
||||||
protected BlockState getPlacementState(BlockPlaceContext context) {
|
protected BlockState getPlacementState(BlockPlaceContext context) {
|
||||||
@@ -43,20 +43,20 @@ index d48fca67718290dd22133e72715646b3e1de4099..e0ab3f5bb3bc1da1941d10821b38bf4c
|
|||||||
BlockState iblockdata1 = null;
|
BlockState iblockdata1 = null;
|
||||||
Level world = context.getLevel();
|
Level world = context.getLevel();
|
||||||
BlockPos blockposition = context.getClickedPos();
|
BlockPos blockposition = context.getClickedPos();
|
||||||
@@ -38,7 +38,7 @@ public class StandingAndWallBlockItem extends BlockItem {
|
@@ -45,7 +45,7 @@ public class StandingAndWallBlockItem extends BlockItem {
|
||||||
Direction enumdirection = aenumdirection[j];
|
Direction enumdirection = aenumdirection[j];
|
||||||
|
|
||||||
if (enumdirection != Direction.UP) {
|
if (enumdirection != this.attachmentDirection.getOpposite()) {
|
||||||
- BlockState iblockdata2 = enumdirection == Direction.DOWN ? this.getBlock().getStateForPlacement(context) : iblockdata;
|
- BlockState iblockdata2 = enumdirection == this.attachmentDirection ? this.getBlock().getStateForPlacement(context) : iblockdata;
|
||||||
+ BlockState iblockdata2 = enumdirection == Direction.DOWN ? this.getBlock().getRealStateForPlacement(context) : iblockdata; // Leaves - carpetAlternativeBlockPlacement
|
+ BlockState iblockdata2 = enumdirection == this.attachmentDirection ? this.getBlock().getRealStateForPlacement(context) : iblockdata; // Leaves - carpetAlternativeBlockPlacement
|
||||||
|
|
||||||
if (iblockdata2 != null && iblockdata2.canSurvive(world, blockposition)) {
|
if (iblockdata2 != null && this.canPlace(world, iblockdata2, blockposition)) {
|
||||||
iblockdata1 = iblockdata2;
|
iblockdata1 = iblockdata2;
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java
|
diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java
|
||||||
index 2e65b44f10aeb44fd524a58e7eb815a566c1ad61..138e7c233f087da4c7f0c7adb58648b9da45ec1b 100644
|
index 7b71073027f4cf79736546500ededdfbb83d968e..085097d454869e46adafd1cff5908e39211bb91e 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/block/Block.java
|
--- a/src/main/java/net/minecraft/world/level/block/Block.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/block/Block.java
|
+++ b/src/main/java/net/minecraft/world/level/block/Block.java
|
||||||
@@ -429,6 +429,19 @@ public class Block extends BlockBehaviour implements ItemLike {
|
@@ -427,6 +427,19 @@ public class Block extends BlockBehaviour implements ItemLike {
|
||||||
|
|
||||||
public void stepOn(Level world, BlockPos pos, BlockState state, Entity entity) {}
|
public void stepOn(Level world, BlockPos pos, BlockState state, Entity entity) {}
|
||||||
|
|
||||||
@@ -77,10 +77,10 @@ index 2e65b44f10aeb44fd524a58e7eb815a566c1ad61..138e7c233f087da4c7f0c7adb58648b9
|
|||||||
public BlockState getStateForPlacement(BlockPlaceContext ctx) {
|
public BlockState getStateForPlacement(BlockPlaceContext ctx) {
|
||||||
return this.defaultBlockState();
|
return this.defaultBlockState();
|
||||||
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
index 88544d0972e0f1d4339b8a5da8085c0643b799d5..ae6fa6d4dbd350841ed1924477d02a2c974f5aed 100644
|
index 82bb440e8f724dd1310b3c068f6d4c4e5296a9aa..43b0083d51e8d78092595a93755ed2e1b84c4694 100644
|
||||||
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
|
||||||
@@ -422,6 +422,15 @@ public final class LeavesConfig {
|
@@ -423,6 +423,15 @@ public final class LeavesConfig {
|
||||||
jadeProtocol = getBoolean("settings.protocol.jade-protocol", jadeProtocol);
|
jadeProtocol = getBoolean("settings.protocol.jade-protocol", jadeProtocol);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user