mirror of
https://github.com/BX-Team/DivineMC.git
synced 2025-12-19 14:59:25 +00:00
Update to 1.21.7
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
name: Build DivineMC 1.21.6
|
||||
name: Build DivineMC 1.21.7
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -58,7 +58,7 @@ For anything else you can refer to our [contribution guide](https://bxteam.org/d
|
||||
<dependency>
|
||||
<groupId>org.bxteam.divinemc</groupId>
|
||||
<artifactId>divinemc-api</artifactId>
|
||||
<version>1.21.6-R0.1-SNAPSHOT</version>
|
||||
<version>1.21.7-R0.1-SNAPSHOT</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
```
|
||||
@@ -71,11 +71,11 @@ repositories {
|
||||
```
|
||||
```kotlin
|
||||
dependencies {
|
||||
compileOnly("org.bxteam.divinemc:divinemc-api:1.21.6-R0.1-SNAPSHOT")
|
||||
compileOnly("org.bxteam.divinemc:divinemc-api:1.21.7-R0.1-SNAPSHOT")
|
||||
}
|
||||
```
|
||||
|
||||
We also have a [Javadoc](https://repo.bxteam.org/javadoc/snapshots/org/bxteam/divinemc/divinemc-api/1.21.6-R0.1-SNAPSHOT/raw/index.html) for the API.
|
||||
We also have a [Javadoc](https://repo.bxteam.org/javadoc/snapshots/org/bxteam/divinemc/divinemc-api/1.21.7-R0.1-SNAPSHOT/raw/index.html) for the API.
|
||||
|
||||
## ⚖️ License
|
||||
DivineMC is licensed under the GNU General Public License v3.0. You can find the license [here](LICENSE).
|
||||
|
||||
@@ -2914,18 +2914,18 @@ index 59fada9b1eb78238d280c6bbb711f52facba52c6..eb4d78c6111a530d015a0b91d14c40ad
|
||||
return i >= j && i <= k;
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/command/SimpleCommandMap.java b/src/main/java/org/bukkit/command/SimpleCommandMap.java
|
||||
index 26c214a3570120a2fd32b715113f897e0055fd00..67d7b41a3f15a9873b76f828d7466c33d6f188fc 100644
|
||||
index 4b9b9c12d2b468153f95737d639e630450f6c39b..388884b0ced9ecbaff8d4d0041cafc98472aacdd 100644
|
||||
--- a/src/main/java/org/bukkit/command/SimpleCommandMap.java
|
||||
+++ b/src/main/java/org/bukkit/command/SimpleCommandMap.java
|
||||
@@ -32,7 +32,6 @@ public class SimpleCommandMap implements CommandMap {
|
||||
|
||||
private void setDefaultCommands() {
|
||||
register("bukkit", new ReloadCommand("reload"));
|
||||
@@ -34,7 +34,6 @@ public class SimpleCommandMap implements CommandMap {
|
||||
final ReloadCommand reload = new ReloadCommand("reload");
|
||||
this.knownCommands.put("bukkit:reload", reload);
|
||||
this.knownCommands.put("bukkit:rl", reload);
|
||||
- register("bukkit", new co.aikar.timings.TimingsCommand("timings"));
|
||||
}
|
||||
|
||||
public void setFallbackCommands() {
|
||||
@@ -64,7 +63,6 @@ public class SimpleCommandMap implements CommandMap {
|
||||
@@ -66,7 +65,6 @@ public class SimpleCommandMap implements CommandMap {
|
||||
*/
|
||||
@Override
|
||||
public boolean register(@NotNull String label, @NotNull String fallbackPrefix, @NotNull Command command) {
|
||||
@@ -2933,7 +2933,7 @@ index 26c214a3570120a2fd32b715113f897e0055fd00..67d7b41a3f15a9873b76f828d7466c33
|
||||
label = label.toLowerCase(Locale.ROOT).trim();
|
||||
fallbackPrefix = fallbackPrefix.toLowerCase(Locale.ROOT).trim();
|
||||
boolean registered = register(label, command, false, fallbackPrefix);
|
||||
@@ -159,12 +157,6 @@ public class SimpleCommandMap implements CommandMap {
|
||||
@@ -161,12 +159,6 @@ public class SimpleCommandMap implements CommandMap {
|
||||
parsedArgs = event.getArgs();
|
||||
// Purpur end - ExecuteCommandEvent
|
||||
|
||||
@@ -2947,7 +2947,7 @@ index 26c214a3570120a2fd32b715113f897e0055fd00..67d7b41a3f15a9873b76f828d7466c33
|
||||
//try (co.aikar.timings.Timing ignored = target.timings.startTiming()) { // Paper - use try with resources // Purpur - Remove Timings
|
||||
// Note: we don't return the result of target.execute as thats success / failure, we return handled (true) or not handled (false)
|
||||
diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
index 001465eedafa51ac027a4db51cba6223edfe1171..9cb0f09b821a4020d17771a5b64ddd53e7d78478 100644
|
||||
index dfc2d76403993640e6283f25f9f3647bb6d1a30c..d4a4ae2e8eef3c800bb7ec7713bccb05706b09bc 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
@@ -720,12 +720,7 @@ public final class SimplePluginManager implements PluginManager {
|
||||
|
||||
@@ -0,0 +1,123 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com>
|
||||
Date: Wed, 2 Jul 2025 19:14:14 +0300
|
||||
Subject: [PATCH] Delete ReloadCommand
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/command/SimpleCommandMap.java b/src/main/java/org/bukkit/command/SimpleCommandMap.java
|
||||
index 388884b0ced9ecbaff8d4d0041cafc98472aacdd..7627c9c2a855ed1a525a241ccb40edd9ef0a0fe0 100644
|
||||
--- a/src/main/java/org/bukkit/command/SimpleCommandMap.java
|
||||
+++ b/src/main/java/org/bukkit/command/SimpleCommandMap.java
|
||||
@@ -13,7 +13,6 @@ import org.bukkit.Location;
|
||||
import org.bukkit.Server;
|
||||
import org.bukkit.command.defaults.BukkitCommand;
|
||||
import org.bukkit.command.defaults.HelpCommand;
|
||||
-import org.bukkit.command.defaults.ReloadCommand;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.util.StringUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -27,13 +26,6 @@ public class SimpleCommandMap implements CommandMap {
|
||||
public SimpleCommandMap(@NotNull final Server server, Map<String, Command> backing) {
|
||||
this.knownCommands = backing;
|
||||
this.server = server;
|
||||
- setDefaultCommands();
|
||||
- }
|
||||
-
|
||||
- private void setDefaultCommands() {
|
||||
- final ReloadCommand reload = new ReloadCommand("reload");
|
||||
- this.knownCommands.put("bukkit:reload", reload);
|
||||
- this.knownCommands.put("bukkit:rl", reload);
|
||||
}
|
||||
|
||||
public void setFallbackCommands() {
|
||||
@@ -185,7 +177,6 @@ public class SimpleCommandMap implements CommandMap {
|
||||
entry.getValue().unregister(this);
|
||||
}
|
||||
knownCommands.clear();
|
||||
- setDefaultCommands();
|
||||
}
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/command/defaults/ReloadCommand.java b/src/main/java/org/bukkit/command/defaults/ReloadCommand.java
|
||||
deleted file mode 100644
|
||||
index 607b07a62b0a1a466496b58433c63475a2db05b3..0000000000000000000000000000000000000000
|
||||
--- a/src/main/java/org/bukkit/command/defaults/ReloadCommand.java
|
||||
+++ /dev/null
|
||||
@@ -1,77 +0,0 @@
|
||||
-package org.bukkit.command.defaults;
|
||||
-
|
||||
-import java.util.Arrays;
|
||||
-import java.util.Collections;
|
||||
-import java.util.List;
|
||||
-import org.bukkit.Bukkit;
|
||||
-import org.bukkit.ChatColor;
|
||||
-import org.bukkit.command.Command;
|
||||
-import org.bukkit.command.CommandSender;
|
||||
-import org.jetbrains.annotations.NotNull;
|
||||
-
|
||||
-import static net.kyori.adventure.text.Component.text;
|
||||
-
|
||||
-public class ReloadCommand extends BukkitCommand {
|
||||
- public ReloadCommand(@NotNull String name) {
|
||||
- super(name);
|
||||
- this.description = "Reloads the server configuration and plugins";
|
||||
- this.usageMessage = "/reload [permissions|commands|confirm]"; // Paper
|
||||
- this.setPermission("bukkit.command.reload");
|
||||
- this.setAliases(Arrays.asList("rl"));
|
||||
- }
|
||||
-
|
||||
- @org.jetbrains.annotations.ApiStatus.Internal // Paper
|
||||
- public static final String RELOADING_DISABLED_MESSAGE = "A lifecycle event handler has been registered which makes reloading plugins not possible"; // Paper
|
||||
-
|
||||
- @Override
|
||||
- public boolean execute(@NotNull CommandSender sender, @NotNull String currentAlias, @NotNull String[] args) { // Paper
|
||||
- if (!testPermission(sender)) return true;
|
||||
-
|
||||
- boolean confirmed = System.getProperty("LetMeReload") != null;
|
||||
- if (args.length == 1) {
|
||||
- if (args[0].equalsIgnoreCase("permissions")) {
|
||||
- Bukkit.getServer().reloadPermissions();
|
||||
- Command.broadcastCommandMessage(sender, text("Permissions successfully reloaded.", net.kyori.adventure.text.format.NamedTextColor.GREEN));
|
||||
- return true;
|
||||
- } else if ("commands".equalsIgnoreCase(args[0])) {
|
||||
- if (Bukkit.getServer().reloadCommandAliases()) {
|
||||
- Command.broadcastCommandMessage(sender, text("Command aliases successfully reloaded.", net.kyori.adventure.text.format.NamedTextColor.GREEN));
|
||||
- } else {
|
||||
- Command.broadcastCommandMessage(sender, text("An error occurred while trying to reload command aliases.", net.kyori.adventure.text.format.NamedTextColor.RED));
|
||||
- }
|
||||
- return true;
|
||||
- } else if ("confirm".equalsIgnoreCase(args[0])) {
|
||||
- confirmed = true;
|
||||
- } else {
|
||||
- Command.broadcastCommandMessage(sender, text("Usage: " + usageMessage, net.kyori.adventure.text.format.NamedTextColor.RED));
|
||||
- return true;
|
||||
- }
|
||||
- }
|
||||
- if (!confirmed) {
|
||||
- Command.broadcastCommandMessage(sender, text("Are you sure you wish to reload your server? This command will be removed soon. Doing so may cause bugs and memory leaks. It is recommended to restart instead of using /bukkit:reload. To confirm, please type ", net.kyori.adventure.text.format.NamedTextColor.RED).append(text("/bukkit:reload confirm", net.kyori.adventure.text.format.NamedTextColor.YELLOW)));
|
||||
- return true;
|
||||
- }
|
||||
-
|
||||
- Command.broadcastCommandMessage(sender, ChatColor.RED + "Please note that this command is not supported, may cause issues when using some plugins, and will be removed soon.");
|
||||
- Command.broadcastCommandMessage(sender, ChatColor.RED + "If you encounter any issues please use the /stop command to restart your server.");
|
||||
- // Paper start - lifecycle events
|
||||
- try {
|
||||
- Bukkit.reload();
|
||||
- } catch (final IllegalStateException ex) {
|
||||
- if (ex.getMessage().equals(RELOADING_DISABLED_MESSAGE)) {
|
||||
- Command.broadcastCommandMessage(sender, ChatColor.RED + RELOADING_DISABLED_MESSAGE);
|
||||
- return true;
|
||||
- }
|
||||
- }
|
||||
- // Paper end - lifecycle events
|
||||
- Command.broadcastCommandMessage(sender, ChatColor.GREEN + "Reload complete.");
|
||||
-
|
||||
- return true;
|
||||
- }
|
||||
-
|
||||
- @NotNull
|
||||
- @Override
|
||||
- public List<String> tabComplete(@NotNull CommandSender sender, @NotNull String alias, @NotNull String[] args) throws IllegalArgumentException {
|
||||
- return com.google.common.collect.Lists.newArrayList("permissions", "commands"); // Paper
|
||||
- }
|
||||
-}
|
||||
@@ -1,116 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com>
|
||||
Date: Sat, 11 Jan 2025 23:50:00 +0300
|
||||
Subject: [PATCH] Disable reload command by default
|
||||
|
||||
This is fully rewritten reload command, you can enable or disable it with -DDivineMC.EnableReloadCommand flag
|
||||
Read this article why reload is VERY UNSAFE in Bukkit: https://madelinemiller.dev/blog/problem-with-reload/
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/command/defaults/ReloadCommand.java b/src/main/java/org/bukkit/command/defaults/ReloadCommand.java
|
||||
index bdfe68b386b5ca2878475e548d3c9a3808fce848..55387ddbf5734b3a860f129789b9ce95f0a69618 100644
|
||||
--- a/src/main/java/org/bukkit/command/defaults/ReloadCommand.java
|
||||
+++ b/src/main/java/org/bukkit/command/defaults/ReloadCommand.java
|
||||
@@ -1,7 +1,5 @@
|
||||
package org.bukkit.command.defaults;
|
||||
|
||||
-import java.util.Arrays;
|
||||
-import java.util.Collections;
|
||||
import java.util.List;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
@@ -15,7 +13,7 @@ public class ReloadCommand extends BukkitCommand {
|
||||
this.description = "Reloads the server configuration and plugins";
|
||||
this.usageMessage = "/reload [permissions|commands|confirm]"; // Paper
|
||||
this.setPermission("bukkit.command.reload");
|
||||
- this.setAliases(Arrays.asList("rl"));
|
||||
+ this.setAliases(List.of("rl"));
|
||||
}
|
||||
|
||||
@org.jetbrains.annotations.ApiStatus.Internal // Paper
|
||||
@@ -25,47 +23,50 @@ public class ReloadCommand extends BukkitCommand {
|
||||
public boolean execute(@NotNull CommandSender sender, @NotNull String currentAlias, @NotNull String[] args) { // Paper
|
||||
if (!testPermission(sender)) return true;
|
||||
|
||||
- // Paper start - Reload permissions.yml & require confirm
|
||||
- boolean confirmed = System.getProperty("LetMeReload") != null;
|
||||
- if (args.length == 1) {
|
||||
- if (args[0].equalsIgnoreCase("permissions")) {
|
||||
- Bukkit.getServer().reloadPermissions();
|
||||
- Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("Permissions successfully reloaded.", net.kyori.adventure.text.format.NamedTextColor.GREEN));
|
||||
- return true;
|
||||
- } else if ("commands".equalsIgnoreCase(args[0])) {
|
||||
- if (Bukkit.getServer().reloadCommandAliases()) {
|
||||
- Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("Command aliases successfully reloaded.", net.kyori.adventure.text.format.NamedTextColor.GREEN));
|
||||
+ // DivineMC start - disable reload command by default & add startup flag
|
||||
+ if (System.getProperty("DivineMC.EnableReloadCommand") == null || false) {
|
||||
+ sender.sendMessage(net.kyori.adventure.text.Component.text("Operation denied, command disabled.", net.kyori.adventure.text.format.NamedTextColor.RED));
|
||||
+ sender.sendMessage(net.kyori.adventure.text.Component.text("Reload command SHOULD NEVER be used in whatever circumstances.", net.kyori.adventure.text.format.NamedTextColor.YELLOW));
|
||||
+ sender.sendMessage(net.kyori.adventure.text.Component.text("DivineMC has intentionally disabled it in order to stop you using it, instead of restarting your server.", net.kyori.adventure.text.format.NamedTextColor.YELLOW));
|
||||
+ sender.sendMessage(net.kyori.adventure.text.Component.text("If you still want to enable reload command, add -DDivineMC.EnableReloadCommand=true flag to your startup arguments.", net.kyori.adventure.text.format.NamedTextColor.YELLOW));
|
||||
+ sender.sendMessage(net.kyori.adventure.text.Component.text("---------------------------------------------", net.kyori.adventure.text.format.NamedTextColor.GREEN));
|
||||
+ sender.sendMessage(net.kyori.adventure.text.Component.text("RESTART YOUR SERVER AND NEVER USE /reload", net.kyori.adventure.text.format.NamedTextColor.YELLOW));
|
||||
+ sender.sendMessage(net.kyori.adventure.text.Component.text("To learn more, read this article: https://madelinemiller.dev/blog/problem-with-reload", net.kyori.adventure.text.format.NamedTextColor.GREEN));
|
||||
+ } else {
|
||||
+ if (args.length == 1) {
|
||||
+ if (args[0].equalsIgnoreCase("permissions")) {
|
||||
+ Bukkit.getServer().reloadPermissions();
|
||||
+ Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("Permissions successfully reloaded.", net.kyori.adventure.text.format.NamedTextColor.GREEN));
|
||||
+ return true;
|
||||
+ } else if ("commands".equalsIgnoreCase(args[0])) {
|
||||
+ if (Bukkit.getServer().reloadCommandAliases()) {
|
||||
+ Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("Command aliases successfully reloaded.", net.kyori.adventure.text.format.NamedTextColor.GREEN));
|
||||
+ } else {
|
||||
+ Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("An error occurred while trying to reload command aliases.", net.kyori.adventure.text.format.NamedTextColor.RED));
|
||||
+ }
|
||||
+ return true;
|
||||
} else {
|
||||
- Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("An error occurred while trying to reload command aliases.", net.kyori.adventure.text.format.NamedTextColor.RED));
|
||||
+ Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("Usage: " + usageMessage, net.kyori.adventure.text.format.NamedTextColor.RED));
|
||||
+ return true;
|
||||
}
|
||||
- return true;
|
||||
- } else if ("confirm".equalsIgnoreCase(args[0])) {
|
||||
- confirmed = true;
|
||||
- } else {
|
||||
- Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("Usage: " + usageMessage, net.kyori.adventure.text.format.NamedTextColor.RED));
|
||||
- return true;
|
||||
}
|
||||
- }
|
||||
- if (!confirmed) {
|
||||
- Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("Are you sure you wish to reload your server? Doing so may cause bugs and memory leaks. It is recommended to restart instead of using /reload. To confirm, please type ", net.kyori.adventure.text.format.NamedTextColor.RED).append(net.kyori.adventure.text.Component.text("/reload confirm", net.kyori.adventure.text.format.NamedTextColor.YELLOW)));
|
||||
- return true;
|
||||
- }
|
||||
- // Paper end
|
||||
-
|
||||
- Command.broadcastCommandMessage(sender, ChatColor.RED + "Please note that this command is not supported and may cause issues when using some plugins.");
|
||||
- Command.broadcastCommandMessage(sender, ChatColor.RED + "If you encounter any issues please use the /stop command to restart your server.");
|
||||
- // Paper start - lifecycle events
|
||||
- try {
|
||||
- Bukkit.reload();
|
||||
- } catch (final IllegalStateException ex) {
|
||||
- if (ex.getMessage().equals(RELOADING_DISABLED_MESSAGE)) {
|
||||
- Command.broadcastCommandMessage(sender, ChatColor.RED + RELOADING_DISABLED_MESSAGE);
|
||||
- return true;
|
||||
+ Command.broadcastCommandMessage(sender, ChatColor.RED + "Please note that this command is not supported and may cause issues when using some plugins.");
|
||||
+ Command.broadcastCommandMessage(sender, ChatColor.RED + "If you encounter any issues please use the /stop command to restart your server.");
|
||||
+ // Paper start - lifecycle events
|
||||
+ try {
|
||||
+ Bukkit.reload();
|
||||
+ } catch (final IllegalStateException ex) {
|
||||
+ if (ex.getMessage().equals(RELOADING_DISABLED_MESSAGE)) {
|
||||
+ Command.broadcastCommandMessage(sender, ChatColor.RED + RELOADING_DISABLED_MESSAGE);
|
||||
+ return true;
|
||||
+ }
|
||||
}
|
||||
- }
|
||||
- // Paper end - lifecycle events
|
||||
- Command.broadcastCommandMessage(sender, ChatColor.GREEN + "Reload complete.");
|
||||
+ // Paper end - lifecycle events
|
||||
+ Command.broadcastCommandMessage(sender, ChatColor.GREEN + "Reload complete.");
|
||||
|
||||
+ return true;
|
||||
+ }
|
||||
+ // DivineMC end
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Smooth teleport API
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
||||
index 531e0b77110b956b772d8698fd838ec2cc83f59c..92c081bdf7aa0cbf545e4aa543f98a3cc000dc8b 100644
|
||||
index 078cb0b4ff04bdae006af913d8b4ecd68fe30637..3b0998aefa32244bd03abdd668cc614f930802f1 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Player.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Player.java
|
||||
@@ -4044,4 +4044,18 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
||||
@@ -4051,4 +4051,18 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
||||
sendDeathScreen(message);
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
- static final Color[] colors = {
|
||||
+ public static final Color[] colors = { // DivineMC - Pufferfish SIMD - make public
|
||||
// Start generate - MapPalette#colors
|
||||
// @GeneratedFrom 1.21.6
|
||||
// @GeneratedFrom 1.21.7
|
||||
new Color(0x00000000, true),
|
||||
@@ -395,9 +_,15 @@
|
||||
temp.getRGB(0, 0, temp.getWidth(), temp.getHeight(), pixels, 0, temp.getWidth());
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
+val bxTeamMavenPublicUrl = "https://repo.bxteam.org/snapshots/"
|
||||
|
||||
dependencies {
|
||||
mache("io.papermc:mache:1.21.6+build.1")
|
||||
mache("io.papermc:mache:1.21.7+build.1")
|
||||
@@ -29,6 +_,7 @@
|
||||
|
||||
// Purpur start - Rebrand
|
||||
@@ -44,7 +44,7 @@
|
||||
+
|
||||
spigot {
|
||||
enabled = true
|
||||
buildDataRef = "281ac0de7a76d808753ede97d11b034bc801b63d"
|
||||
buildDataRef = "436eac9815c211be1a2a6ca0702615f995e81c44"
|
||||
@@ -62,6 +_,7 @@
|
||||
libraryRepositories.addAll(
|
||||
"https://repo.maven.apache.org/maven2/",
|
||||
|
||||
@@ -1479,7 +1479,7 @@ index 3c7159d0981c948e71a5612ba4083accb5849ed4..5f2c27800f047f128857044493a6d932
|
||||
for (Entity entity : passengerEntity.getPassengers()) {
|
||||
this.tickPassenger(passengerEntity, entity, isActive); // Paper - EAR 2
|
||||
diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java
|
||||
index 86c3bb813c58a5aaefad077605bf8296dd7d9c05..95aabca0b1f2f3762df52e9a09afe19ed1939209 100644
|
||||
index 1a9b227b8b3bfda8da8d6dbf125b249cec50d230..a1b4720ef128ba5cbe1466a7a584d4fe501a71f8 100644
|
||||
--- a/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -106,8 +106,6 @@ import net.minecraft.util.HashOps;
|
||||
@@ -1491,7 +1491,7 @@ index 86c3bb813c58a5aaefad077605bf8296dd7d9c05..95aabca0b1f2f3762df52e9a09afe19e
|
||||
import net.minecraft.world.Container;
|
||||
import net.minecraft.world.Difficulty;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
@@ -1504,14 +1502,10 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1437,14 +1435,10 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
this.unsetRemoved();
|
||||
*/
|
||||
// CraftBukkit end
|
||||
@@ -1506,7 +1506,7 @@ index 86c3bb813c58a5aaefad077605bf8296dd7d9c05..95aabca0b1f2f3762df52e9a09afe19e
|
||||
// CraftBukkit start
|
||||
this.isChangingDimension = true; // CraftBukkit - Set teleport invulnerability only if player changing worlds
|
||||
LevelData worlddata = level.getLevelData();
|
||||
@@ -1529,7 +1523,6 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1462,7 +1456,6 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
this.connection.internalTeleport(PositionMoveRotation.of(teleportTransition), teleportTransition.relatives()); // CraftBukkit - use internal teleport without event
|
||||
this.connection.resetPosition();
|
||||
level.addDuringTeleport(this);
|
||||
@@ -1515,7 +1515,7 @@ index 86c3bb813c58a5aaefad077605bf8296dd7d9c05..95aabca0b1f2f3762df52e9a09afe19e
|
||||
this.stopUsingItem();
|
||||
this.connection.send(new ClientboundPlayerAbilitiesPacket(this.getAbilities()));
|
||||
diff --git a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
index f6a04a4b0a06c2fbb3b6aac4ec3e162f6c39b2a2..329b31898ea6abbd7cfefed0f582d9bfaa98e866 100644
|
||||
index 1d1747dac52d937b7a099cc413e21ce21b1e4ea5..215715ea2406300ac834444d9b1f0a6d0537cc26 100644
|
||||
--- a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
@@ -26,7 +26,6 @@ import net.minecraft.network.protocol.cookie.ServerboundCookieResponsePacket;
|
||||
@@ -1525,8 +1525,8 @@ index f6a04a4b0a06c2fbb3b6aac4ec3e162f6c39b2a2..329b31898ea6abbd7cfefed0f582d9bf
|
||||
-import net.minecraft.util.profiling.Profiler;
|
||||
import org.slf4j.Logger;
|
||||
|
||||
public abstract class ServerCommonPacketListenerImpl implements ServerCommonPacketListener, org.bukkit.craftbukkit.entity.CraftPlayer.TransferCookieConnection { // CraftBukkit
|
||||
@@ -293,7 +292,6 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
public abstract class ServerCommonPacketListenerImpl implements ServerCommonPacketListener {
|
||||
@@ -271,7 +270,6 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
}
|
||||
|
||||
protected void keepConnectionAlive() {
|
||||
@@ -1534,7 +1534,7 @@ index f6a04a4b0a06c2fbb3b6aac4ec3e162f6c39b2a2..329b31898ea6abbd7cfefed0f582d9bf
|
||||
long millis = Util.getMillis();
|
||||
// Paper start - improve keepalives
|
||||
// Purpur start - Alternative Keepalive Handling
|
||||
@@ -331,8 +329,6 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
@@ -309,8 +307,6 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
// Paper end - improve keepalives
|
||||
}
|
||||
}
|
||||
@@ -4134,7 +4134,7 @@ index ce3e5ec505ac37c820436bcf7c7d6452ff015f70..f8b37b4ce54afd61a72e9d18ac323540
|
||||
}
|
||||
}
|
||||
diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java
|
||||
index 70fc96a273b74ebb8b665c6808d8f2f3a0ee6039..71cf5561df3f0d9b77cc52720b21a7a418d90a21 100644
|
||||
index 4f70b066cc4858a248d255db6d58c66afd441d84..9a000a4df5df6e36ae25e6d54bfe7cd725df51dd 100644
|
||||
--- a/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -69,8 +69,6 @@ import net.minecraft.tags.FluidTags;
|
||||
@@ -4163,7 +4163,7 @@ index 70fc96a273b74ebb8b665c6808d8f2f3a0ee6039..71cf5561df3f0d9b77cc52720b21a7a4
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -3372,11 +3367,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
@@ -3371,11 +3366,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
f1 = this.getYRot();
|
||||
}
|
||||
|
||||
@@ -4175,7 +4175,7 @@ index 70fc96a273b74ebb8b665c6808d8f2f3a0ee6039..71cf5561df3f0d9b77cc52720b21a7a4
|
||||
|
||||
// Paper start - stop large pitch and yaw changes from crashing the server
|
||||
this.yRotO += Math.round((this.getYRot() - this.yRotO) / 360.0F) * 360.0F;
|
||||
@@ -3388,7 +3379,6 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
@@ -3387,7 +3378,6 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
this.yHeadRotO += Math.round((this.yHeadRot - this.yHeadRotO) / 360.0F) * 360.0F;
|
||||
// Paper end - stop large pitch and yaw changes from crashing the server
|
||||
|
||||
@@ -4183,7 +4183,7 @@ index 70fc96a273b74ebb8b665c6808d8f2f3a0ee6039..71cf5561df3f0d9b77cc52720b21a7a4
|
||||
if (this.isFallFlying()) {
|
||||
this.fallFlyTicks++;
|
||||
} else {
|
||||
@@ -3564,21 +3554,15 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
@@ -3563,21 +3553,15 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
}
|
||||
|
||||
this.setDeltaMovement(d, d1, d2);
|
||||
@@ -4205,7 +4205,7 @@ index 70fc96a273b74ebb8b665c6808d8f2f3a0ee6039..71cf5561df3f0d9b77cc52720b21a7a4
|
||||
if (this.jumping && this.isAffectedByFluids()) {
|
||||
double fluidHeight;
|
||||
if (this.isInLava()) {
|
||||
@@ -3607,8 +3591,6 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
@@ -3606,8 +3590,6 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
this.noJumpDelay = 0;
|
||||
}
|
||||
|
||||
@@ -4214,7 +4214,7 @@ index 70fc96a273b74ebb8b665c6808d8f2f3a0ee6039..71cf5561df3f0d9b77cc52720b21a7a4
|
||||
if (this.isFallFlying()) {
|
||||
this.updateFallFlying();
|
||||
}
|
||||
@@ -3633,9 +3615,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
@@ -3632,9 +3614,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
this.calculateEntityAnimation(this instanceof FlyingAnimal);
|
||||
}
|
||||
|
||||
@@ -4224,7 +4224,7 @@ index 70fc96a273b74ebb8b665c6808d8f2f3a0ee6039..71cf5561df3f0d9b77cc52720b21a7a4
|
||||
if ((!this.isInPowderSnow || !this.canFreeze()) && !this.freezeLocked) { // Paper - Freeze Tick Lock API
|
||||
this.setTicksFrozen(Math.max(0, this.getTicksFrozen() - 2));
|
||||
}
|
||||
@@ -3645,18 +3625,14 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
@@ -3644,18 +3624,14 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
if (this.tickCount % 40 == 0 && this.isFullyFrozen() && this.canFreeze()) {
|
||||
this.hurtServer(serverLevel, this.damageSources().freeze(), 1.0F);
|
||||
}
|
||||
@@ -4438,10 +4438,10 @@ index c569074403b1d8b443aaa98ba9cf9bbd0e98bd2d..b1aa7294f9479f45fcde77c5ea46db9f
|
||||
this.seen.add(id);
|
||||
} else {
|
||||
diff --git a/net/minecraft/world/entity/animal/HappyGhast.java b/net/minecraft/world/entity/animal/HappyGhast.java
|
||||
index b187c9db564e8fabc34aa1bfe428a00fafb27fec..e04da94daced96a7eb9fdb01c551bea667b72d76 100644
|
||||
index fb37669b4d66bb853eabf2d15a369d7ad5a2dbb9..9763a5e24e0fed9b49b6ac59911f6c9f8e893db5 100644
|
||||
--- a/net/minecraft/world/entity/animal/HappyGhast.java
|
||||
+++ b/net/minecraft/world/entity/animal/HappyGhast.java
|
||||
@@ -13,8 +13,6 @@ import net.minecraft.sounds.SoundEvents;
|
||||
@@ -14,8 +14,6 @@ import net.minecraft.sounds.SoundEvents;
|
||||
import net.minecraft.sounds.SoundSource;
|
||||
import net.minecraft.tags.ItemTags;
|
||||
import net.minecraft.util.Mth;
|
||||
@@ -4450,7 +4450,7 @@ index b187c9db564e8fabc34aa1bfe428a00fafb27fec..e04da94daced96a7eb9fdb01c551bea6
|
||||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.InteractionResult;
|
||||
import net.minecraft.world.damagesource.DamageSource;
|
||||
@@ -420,13 +418,8 @@ public class HappyGhast extends Animal {
|
||||
@@ -426,13 +424,8 @@ public class HappyGhast extends Animal {
|
||||
@Override
|
||||
protected void customServerAiStep(ServerLevel level) {
|
||||
if (this.isBaby()) {
|
||||
@@ -4860,7 +4860,7 @@ index f8a6aba7d6f0f357c72602f4ac6c2537b604eb6c..021aa51da04bea01b0e827390ce1690a
|
||||
if ((this.tickCount + this.getId()) % 120 == 0) {
|
||||
applyDarknessAround(level, this.position(), this, 20);
|
||||
diff --git a/net/minecraft/world/entity/npc/Villager.java b/net/minecraft/world/entity/npc/Villager.java
|
||||
index 630ef56b5543b1d7a3d0526c132c19b93b217b16..497974779b281ced8e3dd757dbdf52abc0e0328b 100644
|
||||
index edef9b959200008dda8c5036319e29c5e2d92dae..65f65f712db967ce9b11deb278b9d0aa70368703 100644
|
||||
--- a/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -35,8 +35,6 @@ import net.minecraft.stats.Stats;
|
||||
@@ -4872,7 +4872,7 @@ index 630ef56b5543b1d7a3d0526c132c19b93b217b16..497974779b281ced8e3dd757dbdf52ab
|
||||
import net.minecraft.world.Difficulty;
|
||||
import net.minecraft.world.DifficultyInstance;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
@@ -394,8 +392,6 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -393,8 +391,6 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
}
|
||||
protected void customServerAiStep(ServerLevel level, boolean inactive) { // Purpur - Lobotomize stuck villagers - not final
|
||||
// Paper end - EAR 2
|
||||
@@ -4881,7 +4881,7 @@ index 630ef56b5543b1d7a3d0526c132c19b93b217b16..497974779b281ced8e3dd757dbdf52ab
|
||||
// Purpur start - Lobotomize stuck villagers
|
||||
if (this.level().purpurConfig.villagerLobotomizeEnabled) {
|
||||
// treat as inactive if lobotomized
|
||||
@@ -410,7 +406,6 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -409,7 +405,6 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
}
|
||||
else if (this.isLobotomized && shouldRestock()) restock(); // Purpur - Lobotomize stuck villagers
|
||||
// Pufferfish end
|
||||
|
||||
@@ -389,10 +389,10 @@ index 9dcb9e5ecc31fcc3fc7547a47ec98d2689698769..2560799fe6ec006916a2bc9915355a35
|
||||
}
|
||||
}
|
||||
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index a8bca25578d6428565bff853332a1bd868e9f740..34571dd4683c6d32b909d36436db8f5a4ce2628f 100644
|
||||
index d1d9ace028c7a8f3dcb92709ea8fcaf43f9629d2..48712fb859e1be9f11a88a15a9f04e147d09af5f 100644
|
||||
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -1917,7 +1917,6 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -1919,7 +1919,6 @@ public class ServerGamePacketListenerImpl
|
||||
}
|
||||
|
||||
public void internalTeleport(PositionMoveRotation posMoveRotation, Set<Relative> relatives) {
|
||||
@@ -401,7 +401,7 @@ index a8bca25578d6428565bff853332a1bd868e9f740..34571dd4683c6d32b909d36436db8f5a
|
||||
if (this.player.isRemoved()) {
|
||||
LOGGER.info("Attempt to teleport removed player {} restricted", player.getScoreboardName());
|
||||
diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java
|
||||
index e3babfa292556c5f5a208536a3f869dc71b82498..b8bd792293cb5985db5e5dfa5644930971a34632 100644
|
||||
index 9a000a4df5df6e36ae25e6d54bfe7cd725df51dd..7774a27e1a2455d7317273ee856b4440de00b19a 100644
|
||||
--- a/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1335,13 +1335,13 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
|
||||
@@ -46,10 +46,10 @@ index 4715a60760c2c9079313db9016000bfb5c65e070..fce8f1caca81f47f704bc0237147e999
|
||||
private final Map<TagKey<T>, HolderSet.Named<T>> frozenTags = new IdentityHashMap<>();
|
||||
MappedRegistry.TagSet<T> allTags = MappedRegistry.TagSet.unbound();
|
||||
diff --git a/net/minecraft/network/Connection.java b/net/minecraft/network/Connection.java
|
||||
index 1014ab2aeb5e496124c99c938538e88d75561cd5..343ec870d6ea3e2792f369c4867a3afb4bcfa385 100644
|
||||
index e72eda830644851656fae3118c513d7bd701be45..cdacbfa64bda461d4f24c2a85db9feae7766b597 100644
|
||||
--- a/net/minecraft/network/Connection.java
|
||||
+++ b/net/minecraft/network/Connection.java
|
||||
@@ -600,13 +600,7 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
|
||||
@@ -601,13 +601,7 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
|
||||
if (!(this.packetListener instanceof net.minecraft.server.network.ServerLoginPacketListenerImpl loginPacketListener)
|
||||
|| loginPacketListener.state != net.minecraft.server.network.ServerLoginPacketListenerImpl.State.VERIFYING
|
||||
|| Connection.joinAttemptsThisTick++ < MAX_PER_TICK) {
|
||||
@@ -210,7 +210,7 @@ index 75c8ce32e68f92e20201e9c243f46f2be716eac8..879d6eb8e72b63bc95d8028cbc2f6e93
|
||||
|
||||
for (LevelChunk levelChunk : list) {
|
||||
diff --git a/net/minecraft/server/level/ServerLevel.java b/net/minecraft/server/level/ServerLevel.java
|
||||
index dda62ab1d718d22e24ed5c88674d7a3d9dd4323e..d0d97e063acf8f11c32adf1fd2ec6bca59913c33 100644
|
||||
index 2560799fe6ec006916a2bc9915355a358ab6c8bb..740f6324eeb4021bc45d27d6145ff71282c761c2 100644
|
||||
--- a/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -1321,13 +1321,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
|
||||
|
||||
@@ -218,10 +218,10 @@ index 7ac82a49e3c64d1a41a2870c5cf9900812329a57..978934f81ba023d7565d2e66c51f6ca2
|
||||
// Paper start - Add setting for proxy online mode status
|
||||
return properties.enforceSecureProfile
|
||||
diff --git a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
index 329b31898ea6abbd7cfefed0f582d9bfaa98e866..10da51def5e51bd3eb5122df9a436284aa274f9a 100644
|
||||
index 215715ea2406300ac834444d9b1f0a6d0537cc26..79458152fcc3dabcb78a0e54313eda7b9ccb7f07 100644
|
||||
--- a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
@@ -353,10 +353,64 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
@@ -331,10 +331,64 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
}
|
||||
|
||||
public void send(Packet<?> packet) {
|
||||
@@ -287,7 +287,7 @@ index 329b31898ea6abbd7cfefed0f582d9bfaa98e866..10da51def5e51bd3eb5122df9a436284
|
||||
if (packet == null || this.processedDisconnect) { // Spigot
|
||||
return;
|
||||
diff --git a/net/minecraft/server/players/PlayerList.java b/net/minecraft/server/players/PlayerList.java
|
||||
index 8bf5f7a98e4e8542d56c49a7e2c4926ec86f712d..015e0d1400f1dfbe086c817f121d01f0726e82f2 100644
|
||||
index 8a67672f1175769ac213099331453fbae59442fa..5ebbb4e37469beef11bdfd1531b0d10f3d01c826 100644
|
||||
--- a/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/net/minecraft/server/players/PlayerList.java
|
||||
@@ -276,7 +276,7 @@ public abstract class PlayerList {
|
||||
@@ -299,7 +299,7 @@ index 8bf5f7a98e4e8542d56c49a7e2c4926ec86f712d..015e0d1400f1dfbe086c817f121d01f0
|
||||
)
|
||||
);
|
||||
player.getBukkitEntity().sendSupportedChannels(); // CraftBukkit
|
||||
@@ -1334,6 +1334,7 @@ public abstract class PlayerList {
|
||||
@@ -1318,6 +1318,7 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
public boolean verifyChatTrusted(PlayerChatMessage message) {
|
||||
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Option to allow weird movement and disable teleporting
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index e1e5e9d49439355d5f52a90e308cbad3ad74b41f..c5d0876d765d468123f841c18351a4513abb5866 100644
|
||||
index 48712fb859e1be9f11a88a15a9f04e147d09af5f..a6de1c5da406540dec59818c5369afde0c3597a8 100644
|
||||
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -593,7 +593,7 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -595,7 +595,7 @@ public class ServerGamePacketListenerImpl
|
||||
return;
|
||||
}
|
||||
// Paper end - Prevent moving into unloaded chunks
|
||||
@@ -18,7 +18,7 @@ index e1e5e9d49439355d5f52a90e308cbad3ad74b41f..c5d0876d765d468123f841c18351a451
|
||||
// CraftBukkit end
|
||||
LOGGER.warn(
|
||||
"{} (vehicle of {}) moved too quickly! {},{},{}", rootVehicle.getName().getString(), this.player.getName().getString(), d3, d4, d5
|
||||
@@ -623,7 +623,7 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -625,7 +625,7 @@ public class ServerGamePacketListenerImpl
|
||||
d5 = d2 - rootVehicle.getZ();
|
||||
d7 = d3 * d3 + d4 * d4 + d5 * d5;
|
||||
boolean flag1 = false;
|
||||
@@ -27,7 +27,7 @@ index e1e5e9d49439355d5f52a90e308cbad3ad74b41f..c5d0876d765d468123f841c18351a451
|
||||
flag1 = true; // Paper - diff on change, this should be moved wrongly
|
||||
LOGGER.warn("{} (vehicle of {}) moved wrongly! {}", rootVehicle.getName().getString(), this.player.getName().getString(), Math.sqrt(d7));
|
||||
}
|
||||
@@ -1546,20 +1546,24 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -1548,20 +1548,24 @@ public class ServerGamePacketListenerImpl
|
||||
if (this.shouldCheckPlayerMovement(isFallFlying)) {
|
||||
float f2 = isFallFlying ? 300.0F : 100.0F;
|
||||
if (d7 - d6 > Math.max(f2, Mth.square(org.spigotmc.SpigotConfig.movedTooQuicklyMultiplier * (float) i * speed))) {
|
||||
@@ -63,7 +63,7 @@ index e1e5e9d49439355d5f52a90e308cbad3ad74b41f..c5d0876d765d468123f841c18351a451
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1620,6 +1624,7 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -1622,6 +1626,7 @@ public class ServerGamePacketListenerImpl
|
||||
d7 = d3 * d3 + d4 * d4 + d5 * d5;
|
||||
boolean movedWrongly = false; // Paper - Add fail move event; rename
|
||||
if (!this.player.isChangingDimension()
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Block Log4Shell exploit
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 8c94a5e7257c3728c6b23b9f943de999cf673a67..7e4a166169b1ef7dd2efedba918bc988c0dc82fd 100644
|
||||
index a6de1c5da406540dec59818c5369afde0c3597a8..e0a155e057b0683024448c2918c281b049595374 100644
|
||||
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -2515,6 +2515,7 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -2513,6 +2513,7 @@ public class ServerGamePacketListenerImpl
|
||||
}
|
||||
|
||||
private void tryHandleChat(String message, Runnable handler, boolean sync) { // CraftBukkit
|
||||
@@ -16,7 +16,7 @@ index 8c94a5e7257c3728c6b23b9f943de999cf673a67..7e4a166169b1ef7dd2efedba918bc988
|
||||
if (isChatMessageIllegal(message)) {
|
||||
this.disconnectAsync(Component.translatable("multiplayer.disconnect.illegal_characters"), org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_CHARACTERS); // Paper - add proper async disconnect
|
||||
} else if (this.player.isRemoved() || this.player.getChatVisibility() == ChatVisiblity.HIDDEN) { // CraftBukkit - dead men tell no tales
|
||||
@@ -2547,6 +2548,15 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -2545,6 +2546,15 @@ public class ServerGamePacketListenerImpl
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Virtual Threads
|
||||
|
||||
|
||||
diff --git a/net/minecraft/Util.java b/net/minecraft/Util.java
|
||||
index 0a69469c79aaa2466cda04f6acefed18e421d555..66f7f2aa071c2811400b4fed12ccf51ca8bb6e23 100644
|
||||
index 138a58c5e5698b926b01e0170733dc3dbc5589ec..bfe52d5a93a35cafcb8965482b1c1d6c398255e4 100644
|
||||
--- a/net/minecraft/Util.java
|
||||
+++ b/net/minecraft/Util.java
|
||||
@@ -98,7 +98,12 @@ public class Util {
|
||||
@@ -54,10 +54,10 @@ index 77a693f42d90b5d17bf56d86b1676247c1ad505d..5c05a41e6f64f37fc365cde6333ed5a6
|
||||
|
||||
public ChatDecorator getChatDecorator() {
|
||||
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 749e7dbafa44c6dcbfcebcdcba4911b872cc12c2..506c8d2d80eee5f5351c9330a7efb3f9e4cc4cf6 100644
|
||||
index e0a155e057b0683024448c2918c281b049595374..454615d55e50113f871e819b36d62fde0c445e73 100644
|
||||
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -828,8 +828,11 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -830,8 +830,11 @@ public class ServerGamePacketListenerImpl
|
||||
}
|
||||
|
||||
// Paper start - AsyncTabCompleteEvent
|
||||
@@ -72,11 +72,11 @@ index 749e7dbafa44c6dcbfcebcdcba4911b872cc12c2..506c8d2d80eee5f5351c9330a7efb3f9
|
||||
|
||||
@Override
|
||||
diff --git a/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
|
||||
index 637b2eb7104cb0bc7f314ad6eea11a432e899861..c461440898c98f688064f552bb0e610f657237cd 100644
|
||||
index 20ba45054c243fbb85e50cf0bdf75648730cb0bc..10aecbb88a9a3dae3ecdf28aa449f1a1475a1905 100644
|
||||
--- a/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
|
||||
@@ -54,7 +54,11 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener,
|
||||
// CraftBukkit end
|
||||
@@ -53,7 +53,11 @@ import org.bukkit.event.player.PlayerPreLoginEvent;
|
||||
public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, TickablePacketListener {
|
||||
private static final AtomicInteger UNIQUE_THREAD_ID = new AtomicInteger(0);
|
||||
static final Logger LOGGER = LogUtils.getLogger();
|
||||
- private static final java.util.concurrent.ExecutorService authenticatorPool = java.util.concurrent.Executors.newCachedThreadPool(new com.google.common.util.concurrent.ThreadFactoryBuilder().setNameFormat("User Authenticator #%d").setUncaughtExceptionHandler(new DefaultUncaughtExceptionHandler(LOGGER)).build()); // Paper - Cache authenticator threads
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Option to disable disconnect.spam
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 4656b502b0d1025564147a917e99a58a5c31b007..f010c166a9744e1428f02aaf1a2218501435841e 100644
|
||||
index 454615d55e50113f871e819b36d62fde0c445e73..b04c5ac00eec1e2282e9affba8a1a7e31ba703d8 100644
|
||||
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -839,7 +839,7 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -841,7 +841,7 @@ public class ServerGamePacketListenerImpl
|
||||
public void handleCustomCommandSuggestions(ServerboundCommandSuggestionPacket packet) {
|
||||
// PacketUtils.ensureRunningOnSameThread(packet, this, this.player.level()); // Paper - AsyncTabCompleteEvent; run this async
|
||||
// CraftBukkit start
|
||||
@@ -17,7 +17,7 @@ index 4656b502b0d1025564147a917e99a58a5c31b007..f010c166a9744e1428f02aaf1a221850
|
||||
this.disconnectAsync(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM); // Paper - Kick event cause // Paper - add proper async disconnect
|
||||
return;
|
||||
}
|
||||
@@ -851,7 +851,7 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -853,7 +853,7 @@ public class ServerGamePacketListenerImpl
|
||||
// Paper end - Don't suggest if tab-complete is disabled
|
||||
// Paper start
|
||||
final int index;
|
||||
@@ -26,7 +26,7 @@ index 4656b502b0d1025564147a917e99a58a5c31b007..f010c166a9744e1428f02aaf1a221850
|
||||
this.disconnectAsync(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM); // Paper - add proper async disconnect
|
||||
return;
|
||||
}
|
||||
@@ -911,6 +911,7 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -913,6 +913,7 @@ public class ServerGamePacketListenerImpl
|
||||
ParseResults<CommandSourceStack> parseResults = this.server.getCommands().getDispatcher().parse(stringReader, this.player.createCommandSourceStack());
|
||||
// Paper start - Handle non-recoverable exceptions
|
||||
if (!parseResults.getExceptions().isEmpty()
|
||||
@@ -34,7 +34,7 @@ index 4656b502b0d1025564147a917e99a58a5c31b007..f010c166a9744e1428f02aaf1a221850
|
||||
&& parseResults.getExceptions().values().stream().anyMatch(e -> e instanceof io.papermc.paper.brigadier.TagParseCommandSyntaxException)) {
|
||||
this.disconnect(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM);
|
||||
return;
|
||||
@@ -2642,6 +2643,7 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -2640,6 +2641,7 @@ public class ServerGamePacketListenerImpl
|
||||
// this.chatSpamThrottler.increment();
|
||||
if (!this.chatSpamThrottler.isIncrementAndUnderThreshold()
|
||||
// CraftBukkit end
|
||||
@@ -42,7 +42,7 @@ index 4656b502b0d1025564147a917e99a58a5c31b007..f010c166a9744e1428f02aaf1a221850
|
||||
&& !this.server.getPlayerList().isOp(this.player.getGameProfile())
|
||||
&& !this.server.isSingleplayerOwner(this.player.getGameProfile())) {
|
||||
this.disconnectAsync(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM); // Paper - kick event cause & add proper async disconnect
|
||||
@@ -3399,7 +3401,7 @@ public class ServerGamePacketListenerImpl
|
||||
@@ -3397,7 +3399,7 @@ public class ServerGamePacketListenerImpl
|
||||
public void handlePlaceRecipe(ServerboundPlaceRecipePacket packet) {
|
||||
// Paper start - auto recipe limit
|
||||
if (!org.bukkit.Bukkit.isPrimaryThread()) {
|
||||
|
||||
@@ -414,10 +414,10 @@ index 0440cbbc0d6657f32dc37a1dbbe9ee78f8e229cf..4944b6d389c65511eed75d580779f912
|
||||
|
||||
@Override
|
||||
diff --git a/net/minecraft/world/entity/npc/Villager.java b/net/minecraft/world/entity/npc/Villager.java
|
||||
index 497974779b281ced8e3dd757dbdf52abc0e0328b..3e23bc54e0315b6324843851e072005ca4da3f8e 100644
|
||||
index 65f65f712db967ce9b11deb278b9d0aa70368703..8eb4a35b08f0d0325608f782ac617bc6b01787a0 100644
|
||||
--- a/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -179,6 +179,8 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -178,6 +178,8 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
);
|
||||
private boolean isLobotomized = false; public boolean isLobotomized() { return this.isLobotomized; } // Purpur - Lobotomize stuck villagers
|
||||
private int notLobotomizedCount = 0; // Purpur - Lobotomize stuck villagers
|
||||
@@ -426,7 +426,7 @@ index 497974779b281ced8e3dd757dbdf52abc0e0328b..3e23bc54e0315b6324843851e072005c
|
||||
|
||||
public Villager(EntityType<? extends Villager> entityType, Level level) {
|
||||
this(entityType, level, VillagerType.PLAINS);
|
||||
@@ -401,7 +403,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -400,7 +402,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
}
|
||||
// Purpur end - Lobotomize stuck villagers
|
||||
// Pufferfish start
|
||||
|
||||
@@ -5,13 +5,13 @@ Subject: [PATCH] Player ProfileResult caching
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
|
||||
index c461440898c98f688064f552bb0e610f657237cd..d5da09bbe10b5eea8545fbbfa055a51c1a1b2142 100644
|
||||
index 10aecbb88a9a3dae3ecdf28aa449f1a1475a1905..13b468d4d3b92bf71fdfa112dfe56464c4f9dbed 100644
|
||||
--- a/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
|
||||
@@ -74,6 +74,11 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener,
|
||||
private net.minecraft.server.level.ServerPlayer player; // CraftBukkit
|
||||
public boolean iKnowThisMayNotBeTheBestIdeaButPleaseDisableUsernameValidation = false; // Paper - username validation overriding
|
||||
private int velocityLoginMessageId = -1; // Paper - Add Velocity IP Forwarding Support
|
||||
@@ -75,6 +75,11 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener,
|
||||
public @Nullable java.util.UUID requestedUuid; // Paper
|
||||
private final io.papermc.paper.connection.PaperPlayerLoginConnection paperLoginConnection; // Paper - Config API
|
||||
private volatile boolean disconnecting = false; // Paper - Fix disconnect still ticking login
|
||||
+ // DivineMC start - Player ProfileResult caching
|
||||
+ private static final com.google.common.cache.Cache<String, ProfileResult> playerProfileResultCache = com.google.common.cache.CacheBuilder.newBuilder()
|
||||
+ .expireAfterWrite(1, java.util.concurrent.TimeUnit.MINUTES)
|
||||
@@ -20,7 +20,7 @@ index c461440898c98f688064f552bb0e610f657237cd..d5da09bbe10b5eea8545fbbfa055a51c
|
||||
|
||||
public ServerLoginPacketListenerImpl(MinecraftServer server, Connection connection, boolean transferred) {
|
||||
this.server = server;
|
||||
@@ -293,9 +298,23 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener,
|
||||
@@ -260,9 +265,23 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener,
|
||||
String string1 = Objects.requireNonNull(ServerLoginPacketListenerImpl.this.requestedUsername, "Player name not initialized");
|
||||
|
||||
try {
|
||||
|
||||
@@ -461,10 +461,10 @@ index 324c573899965b204cec17458b6cb9733d83a868..2348a3ec6afb2618033b8f40257f7c9c
|
||||
// Paper start - extra debug info
|
||||
if (entity.valid) {
|
||||
diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java
|
||||
index 95aabca0b1f2f3762df52e9a09afe19ed1939209..87fe8f80e76a63f7ab4f55668524f97be01e6929 100644
|
||||
index a1b4720ef128ba5cbe1466a7a584d4fe501a71f8..cf4ab76f463836a8ed9aeedd09ae95e75b9e8dbc 100644
|
||||
--- a/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -433,6 +433,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -430,6 +430,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
private boolean tpsBar = false; // Purpur - Implement TPSBar
|
||||
private boolean compassBar = false; // Purpur - Add compass command
|
||||
private boolean ramBar = false; // Purpur - Implement rambar commands
|
||||
@@ -472,7 +472,7 @@ index 95aabca0b1f2f3762df52e9a09afe19ed1939209..87fe8f80e76a63f7ab4f55668524f97b
|
||||
|
||||
// Paper start - rewrite chunk system
|
||||
private ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.PlayerChunkLoaderData chunkLoader;
|
||||
@@ -814,6 +815,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -747,6 +748,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
|
||||
@Override
|
||||
public void tick() {
|
||||
@@ -480,7 +480,7 @@ index 95aabca0b1f2f3762df52e9a09afe19ed1939209..87fe8f80e76a63f7ab4f55668524f97b
|
||||
// CraftBukkit start
|
||||
if (this.joining) {
|
||||
this.joining = false;
|
||||
@@ -1491,6 +1493,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1424,6 +1426,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
return this;
|
||||
} else {
|
||||
// CraftBukkit start
|
||||
@@ -488,7 +488,7 @@ index 95aabca0b1f2f3762df52e9a09afe19ed1939209..87fe8f80e76a63f7ab4f55668524f97b
|
||||
/*
|
||||
this.isChangingDimension = true;
|
||||
LevelData levelData = level.getLevelData();
|
||||
@@ -1836,6 +1839,12 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1769,6 +1772,12 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
return OptionalInt.empty();
|
||||
} else {
|
||||
// CraftBukkit start
|
||||
@@ -501,7 +501,7 @@ index 95aabca0b1f2f3762df52e9a09afe19ed1939209..87fe8f80e76a63f7ab4f55668524f97b
|
||||
this.containerMenu = abstractContainerMenu; // Moved up
|
||||
if (!this.isImmobile())
|
||||
this.connection
|
||||
@@ -1900,6 +1909,11 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1833,6 +1842,11 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
}
|
||||
@Override
|
||||
public void closeContainer(org.bukkit.event.inventory.InventoryCloseEvent.Reason reason) {
|
||||
@@ -514,7 +514,7 @@ index 95aabca0b1f2f3762df52e9a09afe19ed1939209..87fe8f80e76a63f7ab4f55668524f97b
|
||||
// Paper end - Inventory close reason
|
||||
this.connection.send(new ClientboundContainerClosePacket(this.containerMenu.containerId));
|
||||
diff --git a/net/minecraft/server/players/PlayerList.java b/net/minecraft/server/players/PlayerList.java
|
||||
index 015e0d1400f1dfbe086c817f121d01f0726e82f2..199e0abdd3a00786a259e28db9d826df06f2fc93 100644
|
||||
index 5ebbb4e37469beef11bdfd1531b0d10f3d01c826..ef9b99bc76876e7348b418b4a66339c2b8b33f50 100644
|
||||
--- a/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/net/minecraft/server/players/PlayerList.java
|
||||
@@ -149,6 +149,7 @@ public abstract class PlayerList {
|
||||
@@ -525,7 +525,7 @@ index 015e0d1400f1dfbe086c817f121d01f0726e82f2..199e0abdd3a00786a259e28db9d826df
|
||||
player.isRealPlayer = true; // Paper
|
||||
player.loginTime = System.currentTimeMillis(); // Paper - Replace OfflinePlayer#getLastPlayed
|
||||
GameProfile gameProfile = player.getGameProfile();
|
||||
@@ -711,6 +712,14 @@ public abstract class PlayerList {
|
||||
@@ -678,6 +679,14 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
public ServerPlayer respawn(ServerPlayer player, boolean keepInventory, Entity.RemovalReason reason, @Nullable org.bukkit.event.player.PlayerRespawnEvent.RespawnReason eventReason, @Nullable org.bukkit.Location location) {
|
||||
@@ -540,7 +540,7 @@ index 015e0d1400f1dfbe086c817f121d01f0726e82f2..199e0abdd3a00786a259e28db9d826df
|
||||
this.players.remove(player);
|
||||
this.playersByName.remove(player.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot
|
||||
player.level().removePlayerImmediately(player, reason);
|
||||
@@ -720,6 +729,7 @@ public abstract class PlayerList {
|
||||
@@ -687,6 +696,7 @@ public abstract class PlayerList {
|
||||
ServerPlayer serverPlayer = player;
|
||||
Level fromWorld = player.level();
|
||||
player.wonGame = false;
|
||||
@@ -790,10 +790,10 @@ index 3614551856c594f3c0cfee984fcf03fad672b007..d972bcdba9c26cb66fedae58ca9658bb
|
||||
entity.getBrain().eraseMemory(MemoryModuleType.POTENTIAL_JOB_SITE);
|
||||
}
|
||||
diff --git a/net/minecraft/world/entity/npc/Villager.java b/net/minecraft/world/entity/npc/Villager.java
|
||||
index 3e23bc54e0315b6324843851e072005ca4da3f8e..50130de436bb12334f5b7f63bf6bf30578b569b2 100644
|
||||
index 8eb4a35b08f0d0325608f782ac617bc6b01787a0..00cd08ebbb2cc8b258e0e2b68db1728a9b4335a9 100644
|
||||
--- a/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -796,13 +796,24 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -795,13 +795,24 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
this.brain.getMemory(moduleType).ifPresent(pos -> {
|
||||
ServerLevel level = server.getLevel(pos.dimension());
|
||||
if (level != null) {
|
||||
|
||||
@@ -8,10 +8,10 @@ This patch adds regionized chunk ticking feature, by grouping adjacent chunks in
|
||||
Original idea by Dueris, modified by NONPLAYT and heavily optimized by dan28000
|
||||
|
||||
diff --git a/net/minecraft/network/Connection.java b/net/minecraft/network/Connection.java
|
||||
index 343ec870d6ea3e2792f369c4867a3afb4bcfa385..db909744c922f2e5b486a8f15dac79d66d7ed0a0 100644
|
||||
index cdacbfa64bda461d4f24c2a85db9feae7766b597..07370cb7bc0bb5a8abfd0062df999ed24c936113 100644
|
||||
--- a/net/minecraft/network/Connection.java
|
||||
+++ b/net/minecraft/network/Connection.java
|
||||
@@ -325,7 +325,7 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
|
||||
@@ -326,7 +326,7 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
|
||||
|
||||
private static void syncAfterConfigurationChange(ChannelFuture future) {
|
||||
try {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Smooth teleport API
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java
|
||||
index 87fe8f80e76a63f7ab4f55668524f97be01e6929..8ed9d9ac278f2a38ab230fc38423d5f30fd57c22 100644
|
||||
index cf4ab76f463836a8ed9aeedd09ae95e75b9e8dbc..f5a0c5a2f56376bf89b16a809d465bc45a80eb38 100644
|
||||
--- a/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -434,6 +434,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -431,6 +431,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
private boolean compassBar = false; // Purpur - Add compass command
|
||||
private boolean ramBar = false; // Purpur - Implement rambar commands
|
||||
public boolean hasTickedAtLeastOnceInNewWorld = false; // DivineMC - Parallel world ticking
|
||||
@@ -17,10 +17,10 @@ index 87fe8f80e76a63f7ab4f55668524f97be01e6929..8ed9d9ac278f2a38ab230fc38423d5f3
|
||||
// Paper start - rewrite chunk system
|
||||
private ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.PlayerChunkLoaderData chunkLoader;
|
||||
diff --git a/net/minecraft/server/players/PlayerList.java b/net/minecraft/server/players/PlayerList.java
|
||||
index 0fc818dc4eb54cdc2be3636bf9fec5923f6be934..9190ee3eb063c3c5589f73204c6f7d6371f8ba46 100644
|
||||
index 04f82f77e1ad2b7105cbace2a4ef99590965ae4f..147535646319018ec5dfe42d12fdb19d9e1f7543 100644
|
||||
--- a/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/net/minecraft/server/players/PlayerList.java
|
||||
@@ -791,11 +791,11 @@ public abstract class PlayerList {
|
||||
@@ -758,11 +758,11 @@ public abstract class PlayerList {
|
||||
byte b = (byte)(keepInventory ? 1 : 0);
|
||||
ServerLevel serverLevel = serverPlayer.level();
|
||||
LevelData levelData = serverLevel.getLevelData();
|
||||
@@ -34,7 +34,7 @@ index 0fc818dc4eb54cdc2be3636bf9fec5923f6be934..9190ee3eb063c3c5589f73204c6f7d63
|
||||
serverPlayer.connection.send(new ClientboundSetDefaultSpawnPositionPacket(level.getSharedSpawnPos(), level.getSharedSpawnAngle()));
|
||||
serverPlayer.connection.send(new ClientboundChangeDifficultyPacket(levelData.getDifficulty(), levelData.isDifficultyLocked()));
|
||||
serverPlayer.connection
|
||||
@@ -882,6 +882,12 @@ public abstract class PlayerList {
|
||||
@@ -849,6 +849,12 @@ public abstract class PlayerList {
|
||||
return serverPlayer;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -2291,6 +_,7 @@
|
||||
@@ -2224,6 +_,7 @@
|
||||
this.connection.send(new ClientboundGameEventPacket(ClientboundGameEventPacket.CHANGE_GAME_MODE, gameMode.getId()));
|
||||
if (gameMode == GameType.SPECTATOR) {
|
||||
this.removeEntitiesOnShoulder();
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -752,8 +_,14 @@
|
||||
@@ -754,8 +_,14 @@
|
||||
PacketUtils.ensureRunningOnSameThread(packet, this, this.player.level());
|
||||
if (packet.getId() == this.awaitingTeleport) {
|
||||
if (this.awaitingPositionFromClient == null) {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/net/minecraft/server/players/PlayerList.java
|
||||
@@ -711,7 +_,6 @@
|
||||
@@ -678,7 +_,6 @@
|
||||
}
|
||||
|
||||
public ServerPlayer respawn(ServerPlayer player, boolean keepInventory, Entity.RemovalReason reason, @Nullable org.bukkit.event.player.PlayerRespawnEvent.RespawnReason eventReason, @Nullable org.bukkit.Location location) {
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
int currentSwingDuration = this.getCurrentSwingDuration();
|
||||
if (this.swinging) {
|
||||
this.swingTime++;
|
||||
@@ -3279,7 +_,13 @@
|
||||
@@ -3278,7 +_,13 @@
|
||||
}
|
||||
|
||||
protected float getFlyingSpeed() {
|
||||
@@ -32,7 +32,7 @@
|
||||
}
|
||||
|
||||
public float getSpeed() {
|
||||
@@ -3728,6 +_,7 @@
|
||||
@@ -3727,6 +_,7 @@
|
||||
protected void updateFallFlying() {
|
||||
this.checkFallDistanceAccumulation();
|
||||
if (!this.level().isClientSide) {
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com>
|
||||
Date: Wed, 2 Jul 2025 19:14:51 +0300
|
||||
Subject: [PATCH] Delete ReloadCommand
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index ade084fb8f6f9290104677d6fc10a72816715746..8014666a5145c46d7ecd40b2175f0990e699db47 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -1020,11 +1020,6 @@ public final class CraftServer implements Server {
|
||||
|
||||
@Override
|
||||
public void reload() {
|
||||
- // Paper start - lifecycle events
|
||||
- if (io.papermc.paper.plugin.lifecycle.event.LifecycleEventRunner.INSTANCE.blocksPluginReloading()) {
|
||||
- throw new IllegalStateException(org.bukkit.command.defaults.ReloadCommand.RELOADING_DISABLED_MESSAGE);
|
||||
- }
|
||||
- // Paper end - lifecycle events
|
||||
org.spigotmc.WatchdogThread.hasStarted = false; // Paper - Disable watchdog early timeout on reload
|
||||
this.reloadCount++;
|
||||
this.configuration = YamlConfiguration.loadConfiguration(this.getConfigFile());
|
||||
@@ -25,10 +25,10 @@ index 400e632208d133a3f49fc7f14bceb48a1026769b..a1c7ba0fdb505d09407cca94e890dedd
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index ade084fb8f6f9290104677d6fc10a72816715746..1515e84a266451f133835562a96b18432ef58fdc 100644
|
||||
index 8014666a5145c46d7ecd40b2175f0990e699db47..b161209bb1111fd2ae7a3b601c8303cbdfab0ea7 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -1357,7 +1357,11 @@ public final class CraftServer implements Server {
|
||||
@@ -1352,7 +1352,11 @@ public final class CraftServer implements Server {
|
||||
registryAccess = levelDataAndDimensions.dimensions().dimensionsRegistryAccess();
|
||||
} else {
|
||||
LevelSettings levelSettings;
|
||||
@@ -671,7 +671,7 @@ index 559c959aff3c9deef867b9e425fba3e2e669cac6..7d0281cc946d6b0dc6f21fa6798e5320
|
||||
private MoonriseConstants() {}
|
||||
|
||||
diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||
index 17247f177460e89f0413df63d7f3dac2fb1cd197..696d3324a04084600b5d8c8c173b85dbc020d7c0 100644
|
||||
index c5a491acfe4b93bfa8fd21861edbaf464a178bf3..d13c749cfb49ce3c70b4c24ece780a4fc9482d78 100644
|
||||
--- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||
+++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||
@@ -227,7 +227,7 @@ public class GlobalConfiguration extends ConfigurationPart {
|
||||
@@ -5,19 +5,19 @@ Subject: [PATCH] Optimize canSee checks
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 7f17c5025f25e44a917f5d6a65b8d958a982b301..f81a6a2a9e1adaa3418c301984afeb19441f2039 100644
|
||||
index 218556fdaf4ea4993864e22530b4bad3335a535d..d6d07b59e84e1150112abccae737895588f56953 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -227,7 +227,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -216,7 +216,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa
|
||||
private long lastPlayed = 0;
|
||||
private boolean hasPlayedBefore = false;
|
||||
private final ConversationTracker conversationTracker = new ConversationTracker();
|
||||
private final Set<String> channels = new HashSet<String>();
|
||||
- private final Map<UUID, Set<WeakReference<Plugin>>> invertedVisibilityEntities = new HashMap<>();
|
||||
+ private final Map<UUID, Set<WeakReference<Plugin>>> invertedVisibilityEntities = new it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap<>(); // DivineMC - optimize canSee checks
|
||||
private final Set<UUID> unlistedEntities = new HashSet<>(); // Paper - Add Listing API for Player
|
||||
private static final WeakHashMap<Plugin, WeakReference<Plugin>> pluginWeakReferences = new WeakHashMap<>();
|
||||
private int hash = 0;
|
||||
@@ -2280,9 +2280,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -2217,9 +2217,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa
|
||||
|
||||
@Override
|
||||
public boolean canSee(org.bukkit.entity.Entity entity) {
|
||||
@@ -22,10 +22,10 @@ index d7398b1ecf2660c29fb7d106b48fe02d3736603e..ab499a7eaccdc1578ec64f90f54f79b0
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index f81a6a2a9e1adaa3418c301984afeb19441f2039..efa472345ec74e21ca1cf05645b3ab39eda3caa4 100644
|
||||
index d6d07b59e84e1150112abccae737895588f56953..f2a7c688597d9a07e7ef07476cedbd423c8b3b0d 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -2875,7 +2875,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -2804,7 +2804,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa
|
||||
Iterator<AttributeInstance> iterator = collection.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
AttributeInstance genericInstance = iterator.next();
|
||||
@@ -35,10 +35,10 @@ index f81a6a2a9e1adaa3418c301984afeb19441f2039..efa472345ec74e21ca1cf05645b3ab39
|
||||
break;
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 98b766d115856dbf3ea11a983c1304591032f1b0..9b9b8b3439cfc0c36009fdb9e5d46b64c3aca393 100644
|
||||
index a162440a583801671787163d998d6b9546ef7e61..214bc24aa301f99c911a129676bc7d7d50df7236 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -1798,6 +1798,26 @@ public class CraftEventFactory {
|
||||
@@ -1808,6 +1808,26 @@ public class CraftEventFactory {
|
||||
}
|
||||
|
||||
public static boolean handleBlockFormEvent(Level world, BlockPos pos, net.minecraft.world.level.block.state.BlockState state, int flags, @Nullable Entity entity, boolean checkSetResult) {
|
||||
@@ -5,12 +5,12 @@ Subject: [PATCH] Paper PR: Add FillBottleEvents for player and dispenser
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 9b9b8b3439cfc0c36009fdb9e5d46b64c3aca393..03ce4211af180d21dd8410d5d4f18abfede30191 100644
|
||||
index 214bc24aa301f99c911a129676bc7d7d50df7236..83c6cf3cb062c8a6508728822e37d52a543415a3 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -2115,4 +2115,18 @@ public class CraftEventFactory {
|
||||
@@ -2148,4 +2148,18 @@ public class CraftEventFactory {
|
||||
|
||||
return event;
|
||||
return disconnectReason;
|
||||
}
|
||||
+
|
||||
+ // DivineMC start - Paper PR: Add FillBottleEvents for player and dispenser
|
||||
@@ -568,7 +568,7 @@ index 196835bdf95ba0e149b2977e9ef41698971f501f..b35dbe2b6e75ec89483aef093474c675
|
||||
net.minecraft.world.item.ItemStack nms = org.bukkit.craftbukkit.inventory.CraftItemStack.asNMSCopy(item);
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java
|
||||
index 63f6b5d00b401fe670fd237e53dd2073d042535b..e7e6dfbf114a24e540bc04a8aaa1644e9b49ec44 100644
|
||||
index a43f3d6e54de52da6b1ee050aefd0028a1adafcf..e36e3822abdf805b3318d1b0d0f92c17131f1699 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java
|
||||
@@ -195,14 +195,16 @@ public final class CraftBlockStates {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Optimize default values for configs
|
||||
|
||||
|
||||
diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||
index 696d3324a04084600b5d8c8c173b85dbc020d7c0..0b1aa06c5ac84cc4ef1320b56a1baec3d535de20 100644
|
||||
index d13c749cfb49ce3c70b4c24ece780a4fc9482d78..a25a2bb0008901a249cf2cc320944bd69cf8ae72 100644
|
||||
--- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||
+++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||
@@ -347,8 +347,8 @@ public class GlobalConfiguration extends ConfigurationPart {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Smooth teleport API
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index efa472345ec74e21ca1cf05645b3ab39eda3caa4..4179317ac19a44d6f7ee6fdec4a5b2876e1daa08 100644
|
||||
index f2a7c688597d9a07e7ef07476cedbd423c8b3b0d..60669bf18850811546b46d85c6650b02cda963ab 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -1392,6 +1392,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -1329,6 +1329,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa
|
||||
// Paper end - Teleportation API
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
group = org.bxteam.divinemc
|
||||
version=1.21.6-R0.1-SNAPSHOT
|
||||
version=1.21.7-R0.1-SNAPSHOT
|
||||
|
||||
mcVersion=1.21.6
|
||||
purpurRef=a112b6aca718e4500a6d48ca9d7158faf0f4adf9
|
||||
mcVersion=1.21.7
|
||||
purpurRef=2d8cdd15c79fce29455eaf8bedfc203bd16ca4d7
|
||||
experimental=false
|
||||
|
||||
org.gradle.configuration-cache=true
|
||||
|
||||
Reference in New Issue
Block a user