mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 08:27:43 +01:00
Updated Upstream (Paper & Tuinity)
Upstream has released updates that appear to apply and compile correctly Paper Changes:eaadb4a68fFix Java toolchain configuration to work on arm macOS8bebf48495Mark sensor and behavior timings as verbose6855505490Fix some inconsistency issues with empty map items (#6304)ed1dc272e6Add System.out.println catcher (#6278)112b6a508aAdd force getter to ParticleBuilder (#6300)a44f486694Allow plugins to use Log4J to log (#6288)8c28a33d4eDon't not shuffle visible chunks (#6283)0e978ea45eRewrite LogEvents to contain information about the source jar of stacktrace elements (#6142)6e7f9aafd6Prevent AFK kick while watching end credits (#6239). (#6265) Tuinity Changes:61c9a54783Don't use CI build number for implementation version (#356)dc9d19c984Update packet limiter config to accept mojang or spigot packet class names (#322)
This commit is contained in:
@@ -4,7 +4,7 @@ version = 1.17.1-R0.1-SNAPSHOT
|
||||
mcVersion = 1.17.1
|
||||
packageVersion = 1_17_R1
|
||||
|
||||
paperCommit = 81a7559b41256a2605b7a6db29b314fd70253f19
|
||||
paperCommit = 6e7f9aafd6b7ae5a801e0265a8f9156a83b20aa5
|
||||
|
||||
org.gradle.caching = true
|
||||
org.gradle.parallel = true
|
||||
|
||||
@@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||
index b50463c2356301a1b47a0bf4f50dc1f121d363a1..66f5e6edc2bac290664c534df213058eaeab3b4e 100644
|
||||
index b50463c2356301a1b47a0bf4f50dc1f121d363a1..f5a9c41fdbaede65cf4607737421571f0c344c1f 100644
|
||||
--- a/build.gradle.kts
|
||||
+++ b/build.gradle.kts
|
||||
@@ -1,10 +1,16 @@
|
||||
@@ -48,7 +48,7 @@ index b50463c2356301a1b47a0bf4f50dc1f121d363a1..66f5e6edc2bac290664c534df213058e
|
||||
- implementation(project(":Paper-API"))
|
||||
- implementation(project(":Paper-MojangAPI"))
|
||||
+ implementation(project(":Tuinity-API")) // Tuinity
|
||||
+ implementation("com.destroystokyo.paper:paper-mojangapi:1.16.5-R0.1-SNAPSHOT") // Tuinity
|
||||
+ implementation("io.papermc.paper:paper-mojangapi:1.17.1-R0.1-SNAPSHOT") // Tuinity
|
||||
// Paper start
|
||||
implementation("org.jline:jline-terminal-jansi:3.12.1")
|
||||
implementation("net.minecrell:terminalconsoleappender:1.2.0")
|
||||
@@ -60,7 +60,14 @@ index b50463c2356301a1b47a0bf4f50dc1f121d363a1..66f5e6edc2bac290664c534df213058e
|
||||
|
||||
testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test
|
||||
testImplementation("junit:junit:4.13.1")
|
||||
@@ -80,7 +88,7 @@ tasks.jar {
|
||||
@@ -74,13 +82,13 @@ tasks.jar {
|
||||
manifest {
|
||||
val git = Git(rootProject.layout.projectDirectory.path)
|
||||
val gitHash = git("rev-parse", "--short=7", "HEAD").getText().trim()
|
||||
- val implementationVersion = System.getenv("BUILD_NUMBER") ?: "\"$gitHash\""
|
||||
+ val implementationVersion = /* System.getenv("BUILD_NUMBER") ?: */ "\"$gitHash\"" // Tuinity - Do not use CI build number for implementation version (always use git hash)
|
||||
val date = git("show", "-s", "--format=%ci", gitHash).getText().trim() // Paper
|
||||
val gitBranch = git("rev-parse", "--abbrev-ref", "HEAD").getText().trim() // Paper
|
||||
attributes(
|
||||
"Main-Class" to "org.bukkit.craftbukkit.Main",
|
||||
"Implementation-Title" to "CraftBukkit",
|
||||
@@ -23114,7 +23121,7 @@ index 0000000000000000000000000000000000000000..300364f693583be802a71d94cda5d96c
|
||||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java
|
||||
index e873b23527cc4e56580c3c7dc5b52ecc3f2a9e31..6317988df19da315c057a9cbc55ff77006f45912 100644
|
||||
index 8c883d2f88acc731734a121ebb76821e66658cc9..c2e8380590d83ce20ee02c90d825b0ad5e883ba9 100644
|
||||
--- a/src/main/java/co/aikar/timings/MinecraftTimings.java
|
||||
+++ b/src/main/java/co/aikar/timings/MinecraftTimings.java
|
||||
@@ -45,6 +45,8 @@ public final class MinecraftTimings {
|
||||
@@ -24753,13 +24760,16 @@ index 0000000000000000000000000000000000000000..49dc783a312ed62415d28cdd801dad6a
|
||||
+}
|
||||
diff --git a/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..356a6118f1b0b091f7527aec747659025562eafc
|
||||
index 0000000000000000000000000000000000000000..bca56d612451a70b55ed37817df7cf4453311477
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java
|
||||
@@ -0,0 +1,432 @@
|
||||
@@ -0,0 +1,441 @@
|
||||
+package com.tuinity.tuinity.config;
|
||||
+
|
||||
+import com.destroystokyo.paper.util.SneakyThrow;
|
||||
+import io.papermc.paper.util.ObfHelper;
|
||||
+import java.util.HashMap;
|
||||
+import java.util.Map;
|
||||
+import net.minecraft.server.MinecraftServer;
|
||||
+import org.bukkit.Bukkit;
|
||||
+import org.bukkit.configuration.ConfigurationSection;
|
||||
@@ -24926,35 +24936,41 @@ index 0000000000000000000000000000000000000000..356a6118f1b0b091f7527aec74765902
|
||||
+
|
||||
+ // auto recipe limiting
|
||||
+ TuinityConfig.getDouble("packet-limiter.limits." +
|
||||
+ "PacketPlayInAutoRecipe" + ".interval", 4.0);
|
||||
+ "PacketPlayInAutoRecipe" + ".interval", 4.0);
|
||||
+ TuinityConfig.getDouble("packet-limiter.limits." +
|
||||
+ "PacketPlayInAutoRecipe" + ".max-packet-rate", 5.0);
|
||||
+ TuinityConfig.getString("packet-limiter.limits." +
|
||||
+ "PacketPlayInAutoRecipe" + ".action", PacketLimit.ViolateAction.DROP.name());
|
||||
+
|
||||
+ final String canonicalName = MinecraftServer.class.getCanonicalName();
|
||||
+ final String nmsPackage = canonicalName.substring(0, canonicalName.lastIndexOf("."));
|
||||
+ final Map<String, String> mojangToSpigot = new HashMap<>();
|
||||
+ final Map<String, ObfHelper.ClassMapping> maps = ObfHelper.INSTANCE.mappings();
|
||||
+ if (maps != null) {
|
||||
+ maps.forEach((spigotName, classMapping) ->
|
||||
+ mojangToSpigot.put(classMapping.mojangName(), classMapping.obfName()));
|
||||
+ }
|
||||
+
|
||||
+ for (final String packetClassName : section.getKeys(false)) {
|
||||
+ if (packetClassName.equals("all")) {
|
||||
+ continue;
|
||||
+ }
|
||||
+ Class<?> packetClazz = null;
|
||||
+
|
||||
+ try {
|
||||
+ packetClazz = Class.forName(nmsPackage + "." + packetClassName);
|
||||
+ } catch (final ClassNotFoundException ex) {
|
||||
+ for (final String subpackage : java.util.Arrays.asList("game", "handshake", "login", "status")) {
|
||||
+ for (final String subpackage : List.of("game", "handshake", "login", "status")) {
|
||||
+ final String fullName = "net.minecraft.network.protocol." + subpackage + "." + packetClassName;
|
||||
+ try {
|
||||
+ packetClazz = Class.forName(fullName);
|
||||
+ break;
|
||||
+ } catch (final ClassNotFoundException ex) {
|
||||
+ try {
|
||||
+ packetClazz = Class.forName("net.minecraft.network.protocol." + subpackage + "." + packetClassName);
|
||||
+ final String spigot = mojangToSpigot.get(fullName);
|
||||
+ if (spigot != null) {
|
||||
+ packetClazz = Class.forName(spigot);
|
||||
+ }
|
||||
+ } catch (final ClassNotFoundException ignore) {}
|
||||
+ }
|
||||
+ if (packetClazz == null) {
|
||||
+ MinecraftServer.LOGGER.warn("Packet '" + packetClassName + "' does not exist, cannot limit it! Please update tuinity.yml");
|
||||
+ continue;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (!net.minecraft.network.protocol.Packet.class.isAssignableFrom(packetClazz)) {
|
||||
+ if (packetClazz == null || !net.minecraft.network.protocol.Packet.class.isAssignableFrom(packetClazz)) {
|
||||
+ MinecraftServer.LOGGER.warn("Packet '" + packetClassName + "' does not exist, cannot limit it! Please update tuinity.yml");
|
||||
+ continue;
|
||||
+ }
|
||||
@@ -32317,7 +32333,7 @@ index 1cc4e0a1f3d8235ef88b48e01ca8b78a263d2676..428d94c60b826ddf3797d6713661dff1
|
||||
+ */ // Tuinity - replace old loader system
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||
index 1043577580bee20a46ae4b2c9e7cef27d45568ad..3f0168a9edfa67f99e6fe9ce161878034e57c3f4 100644
|
||||
index 0d143d073fa7cdfa14f12e9c795350dca8ac5e80..8b84befc6840d25dc3d6e2d42a4024a3c979a097 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||
@@ -47,6 +47,7 @@ import net.minecraft.world.level.storage.LevelStorageSource;
|
||||
@@ -32606,11 +32622,19 @@ index 1043577580bee20a46ae4b2c9e7cef27d45568ad..3f0168a9edfa67f99e6fe9ce16187803
|
||||
this.level.timings.doChunkUnload.stopTiming(); // Spigot
|
||||
this.level.getProfiler().pop();
|
||||
this.clearCache();
|
||||
@@ -838,18 +1017,26 @@ public class ServerChunkCache extends ChunkSource {
|
||||
//Collections.shuffle(list); // Paper
|
||||
// Paper - moved up
|
||||
@@ -834,24 +1013,31 @@ public class ServerChunkCache extends ChunkSource {
|
||||
|
||||
this.lastSpawnState = spawnercreature_d;
|
||||
this.level.getProfiler().pop();
|
||||
- List<ChunkHolder> list = Lists.newArrayList(this.chunkMap.visibleChunkMap.values()); // Paper
|
||||
+ //List<ChunkHolder> list = Lists.newArrayList(this.chunkMap.visibleChunkMap.values()); // Paper
|
||||
|
||||
- Collections.shuffle(list);
|
||||
+ //Collections.shuffle(list);
|
||||
// Paper - moved natural spawn event up
|
||||
this.level.timings.chunkTicks.startTiming(); // Paper
|
||||
- final int[] chunksTicked = {0}; this.chunkMap.forEachVisibleChunk((playerchunk) -> { // Paper - safe iterator incase chunk loads, also no wrapping
|
||||
- final int[] chunksTicked = {0}; // Paper
|
||||
- list.forEach((playerchunk) -> {
|
||||
- Optional<LevelChunk> optional = ((Either) playerchunk.getTickingChunkFuture().getNow(ChunkHolder.UNLOADED_LEVEL_CHUNK)).left();
|
||||
-
|
||||
- if (optional.isPresent()) {
|
||||
@@ -32640,7 +32664,7 @@ index 1043577580bee20a46ae4b2c9e7cef27d45568ad..3f0168a9edfa67f99e6fe9ce16187803
|
||||
}
|
||||
|
||||
// this.level.timings.doTickTiles.startTiming(); // Spigot // Paper
|
||||
@@ -857,7 +1044,11 @@ public class ServerChunkCache extends ChunkSource {
|
||||
@@ -859,7 +1045,11 @@ public class ServerChunkCache extends ChunkSource {
|
||||
// this.level.timings.doTickTiles.stopTiming(); // Spigot // Paper
|
||||
}
|
||||
}
|
||||
@@ -32653,7 +32677,7 @@ index 1043577580bee20a46ae4b2c9e7cef27d45568ad..3f0168a9edfa67f99e6fe9ce16187803
|
||||
this.level.timings.chunkTicks.stopTiming(); // Paper
|
||||
this.level.getProfiler().push("customSpawners");
|
||||
if (flag1) {
|
||||
@@ -866,25 +1057,28 @@ public class ServerChunkCache extends ChunkSource {
|
||||
@@ -868,25 +1058,28 @@ public class ServerChunkCache extends ChunkSource {
|
||||
} // Paper - timings
|
||||
}
|
||||
|
||||
@@ -32697,7 +32721,7 @@ index 1043577580bee20a46ae4b2c9e7cef27d45568ad..3f0168a9edfa67f99e6fe9ce16187803
|
||||
}
|
||||
|
||||
private void getFullChunk(long pos, Consumer<LevelChunk> chunkConsumer) {
|
||||
@@ -1031,46 +1225,14 @@ public class ServerChunkCache extends ChunkSource {
|
||||
@@ -1033,46 +1226,14 @@ public class ServerChunkCache extends ChunkSource {
|
||||
super.doRunTask(task);
|
||||
}
|
||||
|
||||
@@ -33816,7 +33840,7 @@ index 961660f6f9e00b93252519e38b74c66c53388ed2..c80280150897064dc9d814edfbbcc1ce
|
||||
protected void initChannel(Channel channel) {
|
||||
try {
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 064aecb28f05fcf572ee7d29f611a31cc7b6e49a..c4cea533f619624976c4d1290312ed1a6b250855 100644
|
||||
index ad1a9c6c354d40d5fa589666b1b00792d9cd6161..162a4b3b3312867a64425caa0d6ec6af157b20e1 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -536,6 +536,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
|
||||
@@ -38353,10 +38377,10 @@ index 0a76032b48af4327580b99730e534f628924fe35..c9c668aa5b2ddf21ffcce8b395e3d88b
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 9954e45c32a4b6d80fe912ed9d55cd4fc8c4e98b..1ec307d705087eec9d867f9f8e8858ac388f3846 100644
|
||||
index 6d7f16fede01c19f638e1dcdae8b07b79cd86dc0..57dab1be4bfa91c7c9d7e53e7fe388a94dc60e0b 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -239,7 +239,7 @@ import javax.annotation.Nullable; // Paper
|
||||
@@ -240,7 +240,7 @@ import javax.annotation.Nullable; // Paper
|
||||
import javax.annotation.Nonnull; // Paper
|
||||
|
||||
public final class CraftServer implements Server {
|
||||
@@ -38365,7 +38389,7 @@ index 9954e45c32a4b6d80fe912ed9d55cd4fc8c4e98b..1ec307d705087eec9d867f9f8e8858ac
|
||||
private final String serverVersion;
|
||||
private final String bukkitVersion = Versioning.getBukkitVersion();
|
||||
private final Logger logger = Logger.getLogger("Minecraft");
|
||||
@@ -884,6 +884,7 @@ public final class CraftServer implements Server {
|
||||
@@ -886,6 +886,7 @@ public final class CraftServer implements Server {
|
||||
|
||||
org.spigotmc.SpigotConfig.init((File) console.options.valueOf("spigot-settings")); // Spigot
|
||||
com.destroystokyo.paper.PaperConfig.init((File) console.options.valueOf("paper-settings")); // Paper
|
||||
@@ -38373,7 +38397,7 @@ index 9954e45c32a4b6d80fe912ed9d55cd4fc8c4e98b..1ec307d705087eec9d867f9f8e8858ac
|
||||
for (ServerLevel world : this.console.getAllLevels()) {
|
||||
world.serverLevelData.setDifficulty(config.difficulty);
|
||||
world.setSpawnSettings(config.spawnMonsters, config.spawnAnimals);
|
||||
@@ -918,6 +919,7 @@ public final class CraftServer implements Server {
|
||||
@@ -920,6 +921,7 @@ public final class CraftServer implements Server {
|
||||
}
|
||||
world.spigotConfig.init(); // Spigot
|
||||
world.paperConfig.init(); // Paper
|
||||
@@ -38381,7 +38405,7 @@ index 9954e45c32a4b6d80fe912ed9d55cd4fc8c4e98b..1ec307d705087eec9d867f9f8e8858ac
|
||||
}
|
||||
|
||||
Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper
|
||||
@@ -2451,6 +2453,14 @@ public final class CraftServer implements Server {
|
||||
@@ -2453,6 +2455,14 @@ public final class CraftServer implements Server {
|
||||
return com.destroystokyo.paper.PaperConfig.config;
|
||||
}
|
||||
|
||||
|
||||
@@ -5,20 +5,18 @@ Subject: [PATCH] Rebrand
|
||||
|
||||
|
||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||
index 66f5e6edc2bac290664c534df213058eaeab3b4e..0f87b2104253705608e402e28b8b262ae2181206 100644
|
||||
index f5a9c41fdbaede65cf4607737421571f0c344c1f..b84b6e1d77411e3a62e086285b7217dd49f65dfb 100644
|
||||
--- a/build.gradle.kts
|
||||
+++ b/build.gradle.kts
|
||||
@@ -35,8 +35,8 @@ repositories {
|
||||
@@ -35,7 +35,7 @@ repositories {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
- implementation(project(":Tuinity-API")) // Tuinity
|
||||
- implementation("com.destroystokyo.paper:paper-mojangapi:1.16.5-R0.1-SNAPSHOT") // Tuinity
|
||||
+ implementation(project(":Purpur-API")) // Purpur
|
||||
+ implementation("io.papermc.paper:paper-mojangapi:1.17.1-R0.1-SNAPSHOT") // Purpur
|
||||
implementation("io.papermc.paper:paper-mojangapi:1.17.1-R0.1-SNAPSHOT") // Tuinity
|
||||
// Paper start
|
||||
implementation("org.jline:jline-terminal-jansi:3.12.1")
|
||||
implementation("net.minecrell:terminalconsoleappender:1.2.0")
|
||||
@@ -67,6 +67,7 @@ dependencies {
|
||||
|
||||
implementation("co.aikar:cleaner:1.0-SNAPSHOT") // Paper
|
||||
@@ -27,7 +25,14 @@ index 66f5e6edc2bac290664c534df213058eaeab3b4e..0f87b2104253705608e402e28b8b262a
|
||||
|
||||
implementation("org.quiltmc:tiny-mappings-parser:0.3.0") // Paper - needed to read mappings for stacktrace deobfuscation
|
||||
implementation("com.velocitypowered:velocity-native:1.1.0-SNAPSHOT") // Tuinity
|
||||
@@ -88,7 +89,7 @@ tasks.jar {
|
||||
@@ -82,13 +83,13 @@ tasks.jar {
|
||||
manifest {
|
||||
val git = Git(rootProject.layout.projectDirectory.path)
|
||||
val gitHash = git("rev-parse", "--short=7", "HEAD").getText().trim()
|
||||
- val implementationVersion = /* System.getenv("BUILD_NUMBER") ?: */ "\"$gitHash\"" // Tuinity - Do not use CI build number for implementation version (always use git hash)
|
||||
+ val implementationVersion = System.getenv("BUILD_NUMBER") ?: "\"$gitHash\"" // Purpur - we use both CI build numbers _and_ git hashes
|
||||
val date = git("show", "-s", "--format=%ci", gitHash).getText().trim() // Paper
|
||||
val gitBranch = git("rev-parse", "--abbrev-ref", "HEAD").getText().trim() // Paper
|
||||
attributes(
|
||||
"Main-Class" to "org.bukkit.craftbukkit.Main",
|
||||
"Implementation-Title" to "CraftBukkit",
|
||||
@@ -190,10 +195,10 @@ index 1b324839e37d510552f5f5497de009add69ecda5..6e530a9a2c176b1a9ef00ddd730de069
|
||||
// Spigot end
|
||||
DedicatedServer.LOGGER.warn("To change this, set \"online-mode\" to \"true\" in the server.properties file.");
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 1ec307d705087eec9d867f9f8e8858ac388f3846..affe0e9976d6ed444f39ce838726373852989a1c 100644
|
||||
index 57dab1be4bfa91c7c9d7e53e7fe388a94dc60e0b..6616e523f6a9dff1f371535bf246212093b6cb9e 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -239,7 +239,7 @@ import javax.annotation.Nullable; // Paper
|
||||
@@ -240,7 +240,7 @@ import javax.annotation.Nullable; // Paper
|
||||
import javax.annotation.Nonnull; // Paper
|
||||
|
||||
public final class CraftServer implements Server {
|
||||
|
||||
@@ -459,10 +459,10 @@ index 0000000000000000000000000000000000000000..6e7f56fe2b78d7a09d5d130f2c88338f
|
||||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index affe0e9976d6ed444f39ce838726373852989a1c..cb0c931575f53969206a0591869f968c45b77722 100644
|
||||
index 6616e523f6a9dff1f371535bf246212093b6cb9e..4f22861ef28ff4df39567886935132a1e360ee59 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -885,6 +885,7 @@ public final class CraftServer implements Server {
|
||||
@@ -887,6 +887,7 @@ public final class CraftServer implements Server {
|
||||
org.spigotmc.SpigotConfig.init((File) console.options.valueOf("spigot-settings")); // Spigot
|
||||
com.destroystokyo.paper.PaperConfig.init((File) console.options.valueOf("paper-settings")); // Paper
|
||||
com.tuinity.tuinity.config.TuinityConfig.init((File) console.options.valueOf("tuinity-settings")); // Tuinity - Server Config
|
||||
@@ -470,7 +470,7 @@ index affe0e9976d6ed444f39ce838726373852989a1c..cb0c931575f53969206a0591869f968c
|
||||
for (ServerLevel world : this.console.getAllLevels()) {
|
||||
world.serverLevelData.setDifficulty(config.difficulty);
|
||||
world.setSpawnSettings(config.spawnMonsters, config.spawnAnimals);
|
||||
@@ -920,6 +921,7 @@ public final class CraftServer implements Server {
|
||||
@@ -922,6 +923,7 @@ public final class CraftServer implements Server {
|
||||
world.spigotConfig.init(); // Spigot
|
||||
world.paperConfig.init(); // Paper
|
||||
world.tuinityConfig.init(); // Tuinity - Server Config
|
||||
@@ -478,7 +478,7 @@ index affe0e9976d6ed444f39ce838726373852989a1c..cb0c931575f53969206a0591869f968c
|
||||
}
|
||||
|
||||
Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper
|
||||
@@ -935,6 +937,7 @@ public final class CraftServer implements Server {
|
||||
@@ -937,6 +939,7 @@ public final class CraftServer implements Server {
|
||||
this.reloadData();
|
||||
org.spigotmc.SpigotConfig.registerCommands(); // Spigot
|
||||
com.destroystokyo.paper.PaperConfig.registerCommands(); // Paper
|
||||
@@ -486,7 +486,7 @@ index affe0e9976d6ed444f39ce838726373852989a1c..cb0c931575f53969206a0591869f968c
|
||||
this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*");
|
||||
this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions");
|
||||
|
||||
@@ -2461,6 +2464,18 @@ public final class CraftServer implements Server {
|
||||
@@ -2463,6 +2466,18 @@ public final class CraftServer implements Server {
|
||||
}
|
||||
// Tuinity end - add config to timings report
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@ index 2aea5ddba1d5c4dd0afeaee58a3542d0c0000edd..53806589d0138e43e50c4ca7c1e6fc9a
|
||||
+
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index f0da340879f10d23b2d02e238ec944739390986e..a0f529180ecd641fc4484d4afe3153ce39314285 100644
|
||||
index f99d06e53856c14f5b94c28d379b8188ac1411db..c02b3cdd93df7806d52138b02612dd48a451962b 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -2412,6 +2412,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
|
||||
@@ -201,7 +201,7 @@ index d28cecd9bea7c82fa675d333810e2e63a91c615e..8f8bc29d847801938e251904b8334b4b
|
||||
protected ParticleOptions getInkParticle() {
|
||||
return ParticleTypes.GLOW_SQUID_INK;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 24c629d5f26bc5aadebcf39a63930b3448525242..28139fd78e7dfb703e941a46bd18e0236d58fe22 100644
|
||||
index 2b7eeb5659b1083ef550eb9feb0b7ba8a92a92e3..f8e080a943082a10fef3bd99c86ffe78aae8e0b4 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -220,9 +220,9 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -217,7 +217,7 @@ index 24c629d5f26bc5aadebcf39a63930b3448525242..28139fd78e7dfb703e941a46bd18e023
|
||||
protected int lerpSteps;
|
||||
protected double lerpX;
|
||||
protected double lerpY;
|
||||
@@ -2570,7 +2570,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -2571,7 +2571,7 @@ public abstract class LivingEntity extends Entity {
|
||||
return this.hasEffect(MobEffects.JUMP) ? (double) (0.1F * (float) (this.getEffect(MobEffects.JUMP).getAmplifier() + 1)) : 0.0D;
|
||||
}
|
||||
|
||||
@@ -226,7 +226,7 @@ index 24c629d5f26bc5aadebcf39a63930b3448525242..28139fd78e7dfb703e941a46bd18e023
|
||||
double d0 = (double) this.getJumpPower() + this.getJumpBoostPower();
|
||||
Vec3 vec3d = this.getDeltaMovement();
|
||||
|
||||
@@ -3224,8 +3224,10 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3225,8 +3225,10 @@ public abstract class LivingEntity extends Entity {
|
||||
this.pushEntities();
|
||||
this.level.getProfiler().pop();
|
||||
// Paper start
|
||||
@@ -239,7 +239,7 @@ index 24c629d5f26bc5aadebcf39a63930b3448525242..28139fd78e7dfb703e941a46bd18e023
|
||||
Location from = new Location(this.level.getWorld(), this.xo, this.yo, this.zo, this.yRotO, this.xRotO);
|
||||
Location to = new Location (this.level.getWorld(), this.getX(), this.getY(), this.getZ(), this.getYRot(), this.getXRot());
|
||||
io.papermc.paper.event.entity.EntityMoveEvent event = new io.papermc.paper.event.entity.EntityMoveEvent(this.getBukkitLivingEntity(), from, to.clone());
|
||||
@@ -3235,6 +3237,21 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3236,6 +3238,21 @@ public abstract class LivingEntity extends Entity {
|
||||
absMoveTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch());
|
||||
}
|
||||
}
|
||||
@@ -4474,7 +4474,7 @@ index c4f7c94255e4631a3c0355f9260132ba28296f50..d6c31596e21041a124a263054ccb6447
|
||||
this.setTradingPlayer(player);
|
||||
this.openTradingScreen(player, this.getDisplayName(), 1);
|
||||
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 e7a7de5ad9b64876df77e20465631ca8e5b19a4a..7b4f41d53373a56ad50cf4a9a761d87612600da7 100644
|
||||
index 9e0eec259fdae57e235bfe00ece4df9957edc642..19b65c0d2fd96b4516c0717511a6bb02b2d66065 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -193,6 +193,19 @@ public abstract class Player extends LivingEntity {
|
||||
|
||||
@@ -68,13 +68,13 @@ index 53806589d0138e43e50c4ca7c1e6fc9a3317d38c..a0d2480021b5cb4ae7e28d25869d7820
|
||||
return this.stats;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index a0f529180ecd641fc4484d4afe3153ce39314285..c6ef86206fc498a0fcd1c1527516d98e00a5df40 100644
|
||||
index c02b3cdd93df7806d52138b02612dd48a451962b..f6a091ab2f549761b8d19fb35e1db907954a9717 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -390,6 +390,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
|
||||
}
|
||||
|
||||
if (this.player.getLastActionTime() > 0L && this.server.getPlayerIdleTimeout() > 0 && Util.getMillis() - this.player.getLastActionTime() > (long) (this.server.getPlayerIdleTimeout() * 1000 * 60)) {
|
||||
if (this.player.getLastActionTime() > 0L && this.server.getPlayerIdleTimeout() > 0 && Util.getMillis() - this.player.getLastActionTime() > (long) (this.server.getPlayerIdleTimeout() * 1000 * 60) && !this.player.wonGame) { // Paper - Prevent AFK kick while watching end credits.
|
||||
+ // Purpur start
|
||||
+ this.player.setAfk(true);
|
||||
+ if (!this.player.level.purpurConfig.idleTimeoutKick) {
|
||||
@@ -146,7 +146,7 @@ index a060cca08631fb42041e3a79a9abc422fe7757af..e7b11d1ba984ea14f0cdf8e84f9eaab4
|
||||
private EntitySelector() {}
|
||||
// Paper start
|
||||
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 7b4f41d53373a56ad50cf4a9a761d87612600da7..d6b610a848f37db24af9b219be2f22aeaf892388 100644
|
||||
index 19b65c0d2fd96b4516c0717511a6bb02b2d66065..d761865eabfc67651b0a2a92ad35fc236886b61d 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -196,6 +196,13 @@ public abstract class Player extends LivingEntity {
|
||||
|
||||
@@ -17,10 +17,10 @@ index 0544ac93513d3a274bfb53bb6120bd598f4d603b..9ce5984fbeba4839290c9d213d441957
|
||||
public final boolean spawnNpcs = this.get("spawn-npcs", true);
|
||||
public final boolean pvp = this.get("pvp", true);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index cb0c931575f53969206a0591869f968c45b77722..c2565facdd17d80c83c0788a641d79eb73986618 100644
|
||||
index 4f22861ef28ff4df39567886935132a1e360ee59..7e49b67ac9e9034e2bc0ffea0c3fd3874f2982eb 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -2630,4 +2630,11 @@ public final class CraftServer implements Server {
|
||||
@@ -2632,4 +2632,11 @@ public final class CraftServer implements Server {
|
||||
}
|
||||
|
||||
// Paper end
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] LivingEntity safeFallDistance
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index cecffa5879f386e99ccd27386f90074aef0b72fe..c59882224b44d1d477ca8d84155b7f3b9f7da0ce 100644
|
||||
index 1a3ffb49a2b5f65d6e7e4911aed0d4e527ed6f51..df5a573e7c097cb7b0d5c1b087fc4f2eea81548a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -255,6 +255,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -27,7 +27,7 @@ index cecffa5879f386e99ccd27386f90074aef0b72fe..c59882224b44d1d477ca8d84155b7f3b
|
||||
|
||||
if (!landedState.isAir()) {
|
||||
double d1 = Math.min((double) (0.2F + f / 15.0F), 2.5D);
|
||||
@@ -1890,7 +1891,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1891,7 +1892,7 @@ public abstract class LivingEntity extends Entity {
|
||||
MobEffectInstance mobeffect = this.getEffect(MobEffects.JUMP);
|
||||
float f2 = mobeffect == null ? 0.0F : (float) (mobeffect.getAmplifier() + 1);
|
||||
|
||||
|
||||
@@ -41,10 +41,10 @@ index 9577355817a71b2e398ccf411cbcfd3a77bfafaf..dd9fca23e1f96ad261589d9b66d4306a
|
||||
public static boolean enderChestSixRows = false;
|
||||
public static boolean enderChestPermissionRows = false;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index c2565facdd17d80c83c0788a641d79eb73986618..98ca2f530cb4df122168274d5676b3eb77117972 100644
|
||||
index 7e49b67ac9e9034e2bc0ffea0c3fd3874f2982eb..7e3f6c4cc9f3fb7681cca30cc41b2df6b18bc236 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -2636,5 +2636,10 @@ public final class CraftServer implements Server {
|
||||
@@ -2638,5 +2638,10 @@ public final class CraftServer implements Server {
|
||||
public String getServerName() {
|
||||
return this.getProperties().serverName;
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Disable loot drops on death by cramming
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index c59882224b44d1d477ca8d84155b7f3b9f7da0ce..172f7746a93afa1ee7990eeab1d3da2fc210aa99 100644
|
||||
index df5a573e7c097cb7b0d5c1b087fc4f2eea81548a..a8412dd9609559e4840e5823e5472ada625ae3f3 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1707,8 +1707,10 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1708,8 +1708,10 @@ public abstract class LivingEntity extends Entity {
|
||||
|
||||
this.dropEquipment(); // CraftBukkit - from below
|
||||
if (this.shouldDropLoot() && this.level.getGameRules().getBoolean(GameRules.RULE_DOMOBLOOT)) {
|
||||
|
||||
@@ -17,10 +17,10 @@ index 9b6ee1fc3fd17faf2c2be56c0c292b1d5f98e0fa..24f4c130a539b3a42bf13f9bd4d264f9
|
||||
|
||||
public void absMoveTo(double x, double y, double z) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 172f7746a93afa1ee7990eeab1d3da2fc210aa99..31f3767c7d9e9fc5f3bd91c7ec163bce8ada64db 100644
|
||||
index a8412dd9609559e4840e5823e5472ada625ae3f3..9f82479d3b1822d91f3e91f0e980200b9dcce962 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -2883,7 +2883,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -2884,7 +2884,7 @@ public abstract class LivingEntity extends Entity {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -18,10 +18,10 @@ index 24f4c130a539b3a42bf13f9bd4d264f9c84dec3b..ad8497df1b0410989afd22d65e6afd0e
|
||||
&& this.getY() >= this.level.paperConfig.netherVoidTopDamageHeight)) {
|
||||
// Paper end
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 31f3767c7d9e9fc5f3bd91c7ec163bce8ada64db..8f550154b12521662889bbc91f5cd8e20523a90f 100644
|
||||
index 9f82479d3b1822d91f3e91f0e980200b9dcce962..56459702284a8bb5d0297e2d16cb25132d51cf7f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -2388,7 +2388,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -2389,7 +2389,7 @@ public abstract class LivingEntity extends Entity {
|
||||
|
||||
@Override
|
||||
protected void outOfWorld() {
|
||||
|
||||
@@ -69,10 +69,10 @@ index c96feac8afa0e0ea05513692d1e937ae7cbecd66..214b25f57f15e2127b92ec88117c36d4
|
||||
lagging = recentTps[0] < net.pl3x.purpur.PurpurConfig.laggingThreshold; // Purpur
|
||||
tickSection = curTime;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 98ca2f530cb4df122168274d5676b3eb77117972..072532ca2c6868a29a019c4f79b44e4aaa02ffa7 100644
|
||||
index 7e3f6c4cc9f3fb7681cca30cc41b2df6b18bc236..0e09d8f573e466b17cce6187adc769b61bbfb2d6 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -2410,6 +2410,7 @@ public final class CraftServer implements Server {
|
||||
@@ -2412,6 +2412,7 @@ public final class CraftServer implements Server {
|
||||
@Override
|
||||
public double[] getTPS() {
|
||||
return new double[] {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Implement elytra settings
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 8f550154b12521662889bbc91f5cd8e20523a90f..f1a8b91f620152a3da3c11769c3c2353ccdba3cf 100644
|
||||
index 56459702284a8bb5d0297e2d16cb25132d51cf7f..9240dac662e60d130cdb8c3724c211c89875f6f0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -3284,7 +3284,16 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3285,7 +3285,16 @@ public abstract class LivingEntity extends Entity {
|
||||
int j = i / 10;
|
||||
|
||||
if (j % 2 == 0) {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Totems work in inventory
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 0c14ccc74abcc68ecc5422b38bc729dc659b9b8b..b909eeba0539ab133e274a15b0b479b5546fc903 100644
|
||||
index 795d454e46cfa39f80c5fc931f4931d8561b03b4..91fd6709e66ee9c999ba7be3bec2689a5a01528c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1516,6 +1516,19 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1517,6 +1517,19 @@ public abstract class LivingEntity extends Entity {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ index a853e2cc2e3f06a0ca0bb1799b3fd02890ae6521..a8265cd631d335d4eaec1918bd48570e
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/Boat.java b/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
|
||||
index d4a19fc38027717e43353bc62ef23e564f3b4c26..4f85cd75af97ce29211c5d4347292125c0ca527d 100644
|
||||
index 4688cfb6f24066d3034efcd6b4816ceb37561f1f..0f6e577e47a3b1ce5a356801b6192d1d306d19c2 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
|
||||
@@ -209,7 +209,13 @@ public class Boat extends Entity {
|
||||
@@ -101,7 +101,7 @@ index 44d63145480d38a4ec3a38be108200af070bcffa..7de67b75010f0da52004c911f6ee98eb
|
||||
world.playSound((Player) null, entityarmorstand.getX(), entityarmorstand.getY(), entityarmorstand.getZ(), SoundEvents.ARMOR_STAND_PLACE, SoundSource.BLOCKS, 0.75F, 0.8F);
|
||||
world.gameEvent((Entity) context.getPlayer(), GameEvent.ENTITY_PLACE, (Entity) entityarmorstand);
|
||||
diff --git a/src/main/java/net/minecraft/world/item/BoatItem.java b/src/main/java/net/minecraft/world/item/BoatItem.java
|
||||
index c0864c833fd313e6ba9339ecc7f9e2359954bda3..8f5ed444ab430ae60d52e68ded605cfa0634331f 100644
|
||||
index 87e0faaab1ec98123fd735112d15da332a830554..daf24491886c3a5cb031389bfed8e62a6e62afe3 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/BoatItem.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/BoatItem.java
|
||||
@@ -67,6 +67,11 @@ public class BoatItem extends Item {
|
||||
@@ -113,7 +113,7 @@ index c0864c833fd313e6ba9339ecc7f9e2359954bda3..8f5ed444ab430ae60d52e68ded605cfa
|
||||
+ entityboat.setCustomName(itemstack.getHoverName());
|
||||
+ }
|
||||
+ // Purpur end
|
||||
if (!world.noCollision(entityboat, entityboat.getBoundingBox().inflate(-0.1D))) {
|
||||
if (!world.noCollision(entityboat, entityboat.getBoundingBox().inflate(net.minecraft.Util.COLLISION_EPSILON))) {
|
||||
return InteractionResultHolder.fail(itemstack);
|
||||
} else {
|
||||
diff --git a/src/main/java/net/minecraft/world/item/HangingEntityItem.java b/src/main/java/net/minecraft/world/item/HangingEntityItem.java
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add mobGriefing bypass to everything affected
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index b909eeba0539ab133e274a15b0b479b5546fc903..11abf0df677a9d609d82cbcb8e3967fc4b613362 100644
|
||||
index 91fd6709e66ee9c999ba7be3bec2689a5a01528c..a343738d971994c91ac42e41558ca05d6f9f8f57 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1681,7 +1681,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1682,7 +1682,7 @@ public abstract class LivingEntity extends Entity {
|
||||
boolean flag = false;
|
||||
|
||||
if (this.dead && adversary instanceof WitherBoss) { // Paper
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] One Punch Man!
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 11abf0df677a9d609d82cbcb8e3967fc4b613362..59e4e240420a11b19b6da199092590ebe9096383 100644
|
||||
index a343738d971994c91ac42e41558ca05d6f9f8f57..276bac768069d14b0015eed3f31f98c38978df0b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -2123,6 +2123,20 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -2124,6 +2124,20 @@ public abstract class LivingEntity extends Entity {
|
||||
((ServerPlayer) damagesource.getEntity()).awardStat(Stats.DAMAGE_DEALT_ABSORBED, Math.round(f2 * 10.0F));
|
||||
}
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ index 5572fe00a915fc31afe3bc7dcf45e894d7cb69b5..c0f97b07f7c0c98699f90f6c2cc6bd67
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index dd88755ac380e5c85d5327d02bc3ec7e06355e49..3df4ca11fc44facd02f358948473d84d1de48e2b 100644
|
||||
index 246d6bdb7c431f9aca2e337dd2d4dfa5f8baf486..5bb0a3c4d25c5b06e6547a1789b6b27972fbda59 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -265,6 +265,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -60,7 +60,7 @@ index dd88755ac380e5c85d5327d02bc3ec7e06355e49..3df4ca11fc44facd02f358948473d84d
|
||||
}
|
||||
|
||||
// CraftBukkit start
|
||||
@@ -3304,6 +3311,27 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3305,6 +3312,27 @@ public abstract class LivingEntity extends Entity {
|
||||
this.hurt(DamageSource.DROWN, 1.0F);
|
||||
}
|
||||
|
||||
|
||||
@@ -16,10 +16,10 @@ restoring it back to the entity just before the criterion triggers run and
|
||||
then finally clearing the equipment again right after the criterion is done.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 3df4ca11fc44facd02f358948473d84d1de48e2b..1354cd7e9805f16700d122b281be8038d5dd27ef 100644
|
||||
index 5bb0a3c4d25c5b06e6547a1789b6b27972fbda59..04e32a71cd97710b8193711fb691cc08e5460daf 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1661,10 +1661,13 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1662,10 +1662,13 @@ public abstract class LivingEntity extends Entity {
|
||||
}
|
||||
|
||||
// Paper start
|
||||
@@ -33,7 +33,7 @@ index 3df4ca11fc44facd02f358948473d84d1de48e2b..1354cd7e9805f16700d122b281be8038
|
||||
}
|
||||
|
||||
if (this.isSleeping()) {
|
||||
@@ -2534,6 +2537,12 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -2535,6 +2538,12 @@ public abstract class LivingEntity extends Entity {
|
||||
@Override
|
||||
public abstract void setItemSlot(EquipmentSlot slot, ItemStack stack);
|
||||
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
||||
Date: Sat, 31 Jul 2021 22:52:52 -0500
|
||||
Subject: [PATCH] Negative map IDs are still valid
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/item/MapItem.java b/src/main/java/net/minecraft/world/item/MapItem.java
|
||||
index 20743fb00aa346d777fe4ddd02647e69736732f9..355e9ccd481cc7682e1f5423407b80627b5d3bc9 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/MapItem.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/MapItem.java
|
||||
@@ -58,7 +58,7 @@ public class MapItem extends ComplexItem {
|
||||
|
||||
@Nullable
|
||||
public static MapItemSavedData getSavedData(@Nullable Integer id, Level world) {
|
||||
- return id == null || id < 0 ? null : world.getMapData(MapItem.makeKey(id)); // Paper - map ids under 0 are invalid
|
||||
+ return id == null ? null : world.getMapData(MapItem.makeKey(id)); // Paper - map ids under 0 are invalid // Purpur - negative ids are still valid
|
||||
}
|
||||
|
||||
@Nullable
|
||||
Reference in New Issue
Block a user