1.20.2 first pass
This commit is contained in:
@@ -4,7 +4,7 @@ plugins {
|
|||||||
java
|
java
|
||||||
`maven-publish`
|
`maven-publish`
|
||||||
id("com.github.johnrengelman.shadow") version "8.1.1" apply false
|
id("com.github.johnrengelman.shadow") version "8.1.1" apply false
|
||||||
id("io.papermc.paperweight.patcher") version "1.5.5"
|
id("io.papermc.paperweight.patcher") version "1.5.6"
|
||||||
}
|
}
|
||||||
|
|
||||||
val paperMavenPublicUrl = "https://papermc.io/repo/repository/maven-public/"
|
val paperMavenPublicUrl = "https://papermc.io/repo/repository/maven-public/"
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
group=com.lokamc.slice
|
group=com.lokamc.slice
|
||||||
version=1.20.1-R0.1-SNAPSHOT
|
version=1.20.2-R0.1-SNAPSHOT
|
||||||
|
|
||||||
mcVersion=1.20.1
|
mcVersion=1.20.2
|
||||||
paperRef=29d1c7b60244bb002d29a5dcfc9c995019f550ab
|
paperRef=02cfaa8ff81fed20f4c635d8ccf344083d938973
|
||||||
|
|
||||||
org.gradle.caching=true
|
org.gradle.caching=true
|
||||||
org.gradle.parallel=true
|
org.gradle.parallel=true
|
||||||
|
|||||||
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@@ -1,5 +1,5 @@
|
|||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-bin.zip
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
|
|||||||
@@ -5,12 +5,12 @@ Subject: [PATCH] Add provided Material to getDrops
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/block/Block.java b/src/main/java/org/bukkit/block/Block.java
|
diff --git a/src/main/java/org/bukkit/block/Block.java b/src/main/java/org/bukkit/block/Block.java
|
||||||
index 384e5700b6899850d91a34e1d13d1ca0678cfaaa..9c1aef68b1b6f4fddfa171f7189dda5619e758d6 100644
|
index 93fcb1562e58a3a613eccd28cae1e87e26a158c9..66a6200a243034e6676ea707fc53e5330994bca1 100644
|
||||||
--- a/src/main/java/org/bukkit/block/Block.java
|
--- a/src/main/java/org/bukkit/block/Block.java
|
||||||
+++ b/src/main/java/org/bukkit/block/Block.java
|
+++ b/src/main/java/org/bukkit/block/Block.java
|
||||||
@@ -666,6 +666,20 @@ public interface Block extends Metadatable, Translatable, net.kyori.adventure.tr
|
@@ -666,6 +666,20 @@ public interface Block extends Metadatable, Translatable, net.kyori.adventure.tr
|
||||||
@NotNull
|
@NotNull
|
||||||
Collection<ItemStack> getDrops(@NotNull ItemStack tool, @Nullable Entity entity);
|
Collection<ItemStack> getDrops(@Nullable ItemStack tool, @Nullable Entity entity); // Paper
|
||||||
|
|
||||||
+ // Slice start
|
+ // Slice start
|
||||||
+ /**
|
+ /**
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Smooth Teleports
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
||||||
index f9dd00210c1762a40259f823aeb8d8a5ddc78e3e..bb0c49ed971d71904b9172cac2e724133754f32c 100644
|
index 20fa1024f9ad8f478a347be5c554b5e45b398a1c..d422017c54d49a5a6aaa5226162cb152c20183a9 100644
|
||||||
--- a/src/main/java/org/bukkit/entity/Player.java
|
--- a/src/main/java/org/bukkit/entity/Player.java
|
||||||
+++ b/src/main/java/org/bukkit/entity/Player.java
|
+++ b/src/main/java/org/bukkit/entity/Player.java
|
||||||
@@ -3153,6 +3153,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
@@ -3160,6 +3160,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
||||||
String getClientBrandName();
|
String getClientBrandName();
|
||||||
// Paper end
|
// Paper end
|
||||||
|
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] AntiXray Bypass
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
||||||
index bb0c49ed971d71904b9172cac2e724133754f32c..8fc53e32d09f1678d59da0d01f28b6ef96527011 100644
|
index d422017c54d49a5a6aaa5226162cb152c20183a9..702a1b611bb107ea134830446ee748ebf6328bca 100644
|
||||||
--- a/src/main/java/org/bukkit/entity/Player.java
|
--- a/src/main/java/org/bukkit/entity/Player.java
|
||||||
+++ b/src/main/java/org/bukkit/entity/Player.java
|
+++ b/src/main/java/org/bukkit/entity/Player.java
|
||||||
@@ -2950,6 +2950,10 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
@@ -2952,6 +2952,10 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
||||||
*/
|
*/
|
||||||
boolean hasResourcePack();
|
boolean hasResourcePack();
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Build Changes
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||||
index fb98936bb8a5488db75d676c5bcb4060597fbbf8..2e1cea360bb6ff85eb8da54237bc407653eb91f6 100644
|
index c187641f0ec6444a10e0e1583e1697d07e8f0267..566ff8fa0b8791bbac886b1ea09ef5043d0665bb 100644
|
||||||
--- a/build.gradle.kts
|
--- a/build.gradle.kts
|
||||||
+++ b/build.gradle.kts
|
+++ b/build.gradle.kts
|
||||||
@@ -13,8 +13,12 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) {
|
@@ -13,8 +13,12 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) {
|
||||||
@@ -32,7 +32,7 @@ index fb98936bb8a5488db75d676c5bcb4060597fbbf8..2e1cea360bb6ff85eb8da54237bc4076
|
|||||||
"Implementation-Vendor" to date, // Paper
|
"Implementation-Vendor" to date, // Paper
|
||||||
"Specification-Title" to "Bukkit",
|
"Specification-Title" to "Bukkit",
|
||||||
"Specification-Version" to project.version,
|
"Specification-Version" to project.version,
|
||||||
@@ -149,7 +153,7 @@ fun TaskContainer.registerRunTask(
|
@@ -156,7 +160,7 @@ fun TaskContainer.registerRunTask(
|
||||||
name: String,
|
name: String,
|
||||||
block: JavaExec.() -> Unit
|
block: JavaExec.() -> Unit
|
||||||
): TaskProvider<JavaExec> = register<JavaExec>(name) {
|
): TaskProvider<JavaExec> = register<JavaExec>(name) {
|
||||||
@@ -42,10 +42,10 @@ index fb98936bb8a5488db75d676c5bcb4060597fbbf8..2e1cea360bb6ff85eb8da54237bc4076
|
|||||||
standardInput = System.`in`
|
standardInput = System.`in`
|
||||||
workingDir = rootProject.layout.projectDirectory
|
workingDir = rootProject.layout.projectDirectory
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 67ee3a4ca8a6cdeb275653d492a1fea8037c51fb..915340fedc6c0b3d70ee065482dbe621b7c0b0a8 100644
|
index 97745f0bab8d82d397c6c2a5775aed92bca0a034..6684f4f4b9aff1c2f3037feb7bcdee55a9d21f93 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1692,7 +1692,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1697,7 +1697,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
@DontObfuscate
|
@DontObfuscate
|
||||||
public String getServerModName() {
|
public String getServerModName() {
|
||||||
@@ -55,10 +55,10 @@ index 67ee3a4ca8a6cdeb275653d492a1fea8037c51fb..915340fedc6c0b3d70ee065482dbe621
|
|||||||
|
|
||||||
public SystemReport fillSystemReport(SystemReport details) {
|
public SystemReport fillSystemReport(SystemReport details) {
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
index ec4b73321205b472f19fa5bd4ad95893020d1340..2fdc3bcea74b82d7155617d77100b100d8e56047 100644
|
index fcd5096d64edfaf6bce3ecce8c9b9afb84462786..adf0b36722c991fc9109555a3693845e3c11dc6f 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
@@ -265,7 +265,7 @@ import javax.annotation.Nullable; // Paper
|
@@ -267,7 +267,7 @@ import javax.annotation.Nullable; // Paper
|
||||||
import javax.annotation.Nonnull; // Paper
|
import javax.annotation.Nonnull; // Paper
|
||||||
|
|
||||||
public final class CraftServer implements Server {
|
public final class CraftServer implements Server {
|
||||||
|
|||||||
@@ -27,10 +27,10 @@ index 877498729c66de9aa6a27c9148f7494d7895615c..63959d7f15c682c2935f872d50de03fd
|
|||||||
return false;
|
return false;
|
||||||
} else {
|
} else {
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index 773bfdd3ed457a352b5329f280c0d10297d579ba..c7ee934d4f890bc86596d36079ffed5050133b47 100644
|
index ea8a0961190e9aafda4fed6fecd85097c141040a..d4af10645b74514a79cb41f428534cfe6d1e9058 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -598,12 +598,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -903,12 +903,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -46,7 +46,7 @@ index 773bfdd3ed457a352b5329f280c0d10297d579ba..c7ee934d4f890bc86596d36079ffed50
|
|||||||
// CraftBukkit start - tree generation
|
// CraftBukkit start - tree generation
|
||||||
if (this.captureTreeGeneration) {
|
if (this.captureTreeGeneration) {
|
||||||
// Paper start
|
// Paper start
|
||||||
@@ -794,7 +794,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -1099,7 +1099,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
Block.dropResources(iblockdata, this, pos, tileentity, breakingEntity, ItemStack.EMPTY);
|
Block.dropResources(iblockdata, this, pos, tileentity, breakingEntity, ItemStack.EMPTY);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -77,7 +77,7 @@ index 134e5ec79bf2dddd4e31930f8a7cb2c02fa29518..fd72d278a2719911a46b6bc9e7da2dc2
|
|||||||
|
|
||||||
boolean removeBlock(BlockPos pos, boolean move);
|
boolean removeBlock(BlockPos pos, boolean move);
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java
|
diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java
|
||||||
index fdd9c61b7248e92dbcbec91cd6fe4c6310bba237..2f2197236d9ba64b62510df923378b0256629d02 100644
|
index d4cbff18adb62073a1dceb189043789620af6877..413eb8d315f5da04c69e082654e74054055705d6 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/block/Block.java
|
--- a/src/main/java/net/minecraft/world/level/block/Block.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/block/Block.java
|
+++ b/src/main/java/net/minecraft/world/level/block/Block.java
|
||||||
@@ -194,7 +194,7 @@ public class Block extends BlockBehaviour implements ItemLike {
|
@@ -194,7 +194,7 @@ public class Block extends BlockBehaviour implements ItemLike {
|
||||||
@@ -90,10 +90,10 @@ index fdd9c61b7248e92dbcbec91cd6fe4c6310bba237..2f2197236d9ba64b62510df923378b02
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java
|
||||||
index bf2cd1eb04c10b8422ddca8efd397290bf58ea4d..30dcafc3ebcb5ab230a5622a0108aa3d7e3c4ead 100644
|
index 1a17875426468b287c8ea3f559ea516d0218f7a0..84a1150438dc8cdd8a6d3ad92e6bf2c4ad5f7cf0 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java
|
||||||
@@ -286,7 +286,7 @@ public abstract class CraftRegionAccessor implements RegionAccessor {
|
@@ -287,7 +287,7 @@ public abstract class CraftRegionAccessor implements RegionAccessor {
|
||||||
BlockPos pos = new BlockPos(x, y, z);
|
BlockPos pos = new BlockPos(x, y, z);
|
||||||
net.minecraft.world.level.block.state.BlockState old = this.getHandle().getBlockState(pos);
|
net.minecraft.world.level.block.state.BlockState old = this.getHandle().getBlockState(pos);
|
||||||
|
|
||||||
@@ -103,10 +103,10 @@ index bf2cd1eb04c10b8422ddca8efd397290bf58ea4d..30dcafc3ebcb5ab230a5622a0108aa3d
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
||||||
index f3ac362b7b65a5273ff5fdad1d8065c5f654a53a..2c60ae8b5adb60c49712327bda3c2666778fd729 100644
|
index 24ba4e1fd80d8effc8e70224103d3b93d69cb2ac..cb2826852ea38850eb0c553ab3b626253fd8e7a2 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
||||||
@@ -187,15 +187,20 @@ public class CraftBlock implements Block {
|
@@ -182,15 +182,20 @@ public class CraftBlock implements Block {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setBlockData(BlockData data, boolean applyPhysics) {
|
public void setBlockData(BlockData data, boolean applyPhysics) {
|
||||||
@@ -131,7 +131,7 @@ index f3ac362b7b65a5273ff5fdad1d8065c5f654a53a..2c60ae8b5adb60c49712327bda3c2666
|
|||||||
// SPIGOT-611: need to do this to prevent glitchiness. Easier to handle this here (like /setblock) than to fix weirdness in tile entity cleanup
|
// SPIGOT-611: need to do this to prevent glitchiness. Easier to handle this here (like /setblock) than to fix weirdness in tile entity cleanup
|
||||||
if (old.hasBlockEntity() && blockData.getBlock() != old.getBlock()) { // SPIGOT-3725 remove old tile entity if block changes
|
if (old.hasBlockEntity() && blockData.getBlock() != old.getBlock()) { // SPIGOT-3725 remove old tile entity if block changes
|
||||||
// SPIGOT-4612: faster - just clear tile
|
// SPIGOT-4612: faster - just clear tile
|
||||||
@@ -209,7 +214,7 @@ public class CraftBlock implements Block {
|
@@ -204,7 +209,7 @@ public class CraftBlock implements Block {
|
||||||
if (applyPhysics) {
|
if (applyPhysics) {
|
||||||
return world.setBlock(position, blockData, 3);
|
return world.setBlock(position, blockData, 3);
|
||||||
} else {
|
} else {
|
||||||
@@ -141,10 +141,10 @@ index f3ac362b7b65a5273ff5fdad1d8065c5f654a53a..2c60ae8b5adb60c49712327bda3c2666
|
|||||||
world.getMinecraftWorld().sendBlockUpdated(
|
world.getMinecraftWorld().sendBlockUpdated(
|
||||||
position,
|
position,
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java
|
||||||
index b1abb332eca597b23888bca42d21d5b587f61b13..7286394d1de13247870aac7c3110964bf01a7078 100644
|
index cfd1c68d7ad23ef20242306d7d8148921d697ca5..3403033b4c292089c8cae03977034fbb20c30796 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java
|
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java
|
||||||
@@ -208,7 +208,7 @@ public class CraftBlockState implements BlockState {
|
@@ -217,7 +217,7 @@ public class CraftBlockState implements BlockState {
|
||||||
}
|
}
|
||||||
|
|
||||||
net.minecraft.world.level.block.state.BlockState newBlock = this.data;
|
net.minecraft.world.level.block.state.BlockState newBlock = this.data;
|
||||||
@@ -154,7 +154,7 @@ index b1abb332eca597b23888bca42d21d5b587f61b13..7286394d1de13247870aac7c3110964b
|
|||||||
this.world.getHandle().sendBlockUpdated(
|
this.world.getHandle().sendBlockUpdated(
|
||||||
position,
|
position,
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java b/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java b/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java
|
||||||
index 0b7d882551bcb8be149754209aad5fe4142f0fac..db3a7b550b1fa0654ba76f522a8163135f222281 100644
|
index 23ee60e8843a6a05e7ae6512248a57ec2a08321b..c5e1afb7d5fa630ed85a739d5aada79297257d72 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java
|
--- a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java
|
||||||
@@ -245,7 +245,7 @@ public class DummyGeneratorAccess implements WorldGenLevel {
|
@@ -245,7 +245,7 @@ public class DummyGeneratorAccess implements WorldGenLevel {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add BlockDestroyedByNeighborEvent
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
||||||
index 618ab9a2903f6d4139acd4aaa2e6db0a26e88ba9..ec94d787f227c373637e6bb5f38260d978fe14df 100644
|
index b2c2bd5ec0afd479973f7237a5c610f21231c505..1d32eb837517f2b949613498b1a68c8b1edf0b9a 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
||||||
@@ -419,6 +419,7 @@ public class ServerPlayerGameMode {
|
@@ -419,6 +419,7 @@ public class ServerPlayerGameMode {
|
||||||
@@ -25,10 +25,10 @@ index 618ab9a2903f6d4139acd4aaa2e6db0a26e88ba9..ec94d787f227c373637e6bb5f38260d9
|
|||||||
org.bukkit.craftbukkit.event.CraftEventFactory.handleBlockDropItemEvent(bblock, state, this.player, itemsToDrop); // Paper - use stored ref
|
org.bukkit.craftbukkit.event.CraftEventFactory.handleBlockDropItemEvent(bblock, state, this.player, itemsToDrop); // Paper - use stored ref
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
|
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||||
index 879cc823d56625867eb73bb621db6a13f40ad81c..2b3b1c5ccdf58ee9b46d404cfa3790d0fdc2df3d 100644
|
index 4697df75fdee2023c41260bed211e3e3d90d2b9b..e30aaa502f5e98b5658a0dd78853e865cbf91f96 100644
|
||||||
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
|
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||||
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
|
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||||
@@ -352,6 +352,7 @@ public final class ItemStack {
|
@@ -357,6 +357,7 @@ public final class ItemStack {
|
||||||
CompoundTag oldData = this.getTagClone();
|
CompoundTag oldData = this.getTagClone();
|
||||||
int oldCount = this.getCount();
|
int oldCount = this.getCount();
|
||||||
ServerLevel world = (ServerLevel) context.getLevel();
|
ServerLevel world = (ServerLevel) context.getLevel();
|
||||||
@@ -37,7 +37,7 @@ index 879cc823d56625867eb73bb621db6a13f40ad81c..2b3b1c5ccdf58ee9b46d404cfa3790d0
|
|||||||
if (!(item instanceof BucketItem/* || item instanceof SolidBucketItem*/)) { // if not bucket // Paper - capture block states for snow buckets
|
if (!(item instanceof BucketItem/* || item instanceof SolidBucketItem*/)) { // if not bucket // Paper - capture block states for snow buckets
|
||||||
world.captureBlockStates = true;
|
world.captureBlockStates = true;
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index c7ee934d4f890bc86596d36079ffed5050133b47..1d17c6471449fe4f4fd2bae6bc8a9c500fb0c96f 100644
|
index d4af10645b74514a79cb41f428534cfe6d1e9058..bc8947b2f85a53e90ee84c3746be7183aa0503ee 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -184,6 +184,27 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -184,6 +184,27 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
@@ -68,7 +68,7 @@ index c7ee934d4f890bc86596d36079ffed5050133b47..1d17c6471449fe4f4fd2bae6bc8a9c50
|
|||||||
// Paper start - fix and optimise world upgrading
|
// Paper start - fix and optimise world upgrading
|
||||||
// copied from below
|
// copied from below
|
||||||
public static ResourceKey<DimensionType> getDimensionKey(DimensionType manager) {
|
public static ResourceKey<DimensionType> getDimensionKey(DimensionType manager) {
|
||||||
@@ -748,6 +769,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -1053,6 +1074,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
if (!this.preventPoiUpdated) {
|
if (!this.preventPoiUpdated) {
|
||||||
this.onBlockStateChange(blockposition, iblockdata1, iblockdata2);
|
this.onBlockStateChange(blockposition, iblockdata1, iblockdata2);
|
||||||
}
|
}
|
||||||
@@ -76,7 +76,7 @@ index c7ee934d4f890bc86596d36079ffed5050133b47..1d17c6471449fe4f4fd2bae6bc8a9c50
|
|||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -769,6 +791,17 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -1074,6 +1096,17 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
if (iblockdata.isAir()) {
|
if (iblockdata.isAir()) {
|
||||||
return false;
|
return false;
|
||||||
} else {
|
} else {
|
||||||
@@ -115,10 +115,10 @@ index 030b38d5d5d2578d6ef482a239ef58787efa3b08..329053cf5c342747985f9079e87edc6f
|
|||||||
BlockState iblockdata2 = iblockdata1.getFluidState().is((Fluid) Fluids.WATER) ? Blocks.WATER.defaultBlockState() : Blocks.AIR.defaultBlockState();
|
BlockState iblockdata2 = iblockdata1.getFluidState().is((Fluid) Fluids.WATER) ? Blocks.WATER.defaultBlockState() : Blocks.AIR.defaultBlockState();
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||||
index de4c1e4701236e7d5ec77339c51ad6a9d8288bb6..4beb56de55d5584ce7f6e04ae30f7c3cffc1440e 100644
|
index e6a4a5898ffdcb2aa2bc01371a6d7dbc06d610ce..204f0cd86a318efb3545a24c0e25a2f9cb7b9f58 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||||
@@ -1127,11 +1127,22 @@ public abstract class BlockBehaviour implements FeatureElement {
|
@@ -1175,11 +1175,22 @@ public abstract class BlockBehaviour implements FeatureElement {
|
||||||
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos();
|
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos();
|
||||||
Direction[] aenumdirection = BlockBehaviour.UPDATE_SHAPE_ORDER;
|
Direction[] aenumdirection = BlockBehaviour.UPDATE_SHAPE_ORDER;
|
||||||
int k = aenumdirection.length;
|
int k = aenumdirection.length;
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add provided Material to getDrops
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
||||||
index 243b5823ea99eefd812134b5c80d4d3c9f008499..ee97b4352fcdb3fd55eeb5a4a57981b2f0aed28b 100644
|
index cb2826852ea38850eb0c553ab3b626253fd8e7a2..a65f1362bcdb064f3213830e9c9c7f9966ce4623 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
||||||
@@ -616,7 +616,18 @@ public class CraftBlock implements Block {
|
@@ -590,7 +590,18 @@ public class CraftBlock implements Block {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Collection<ItemStack> getDrops(ItemStack item, Entity entity) {
|
public Collection<ItemStack> getDrops(ItemStack item, Entity entity) {
|
||||||
@@ -28,7 +28,7 @@ index 243b5823ea99eefd812134b5c80d4d3c9f008499..ee97b4352fcdb3fd55eeb5a4a57981b2
|
|||||||
net.minecraft.world.item.ItemStack nms = CraftItemStack.asNMSCopy(item);
|
net.minecraft.world.item.ItemStack nms = CraftItemStack.asNMSCopy(item);
|
||||||
|
|
||||||
// Modelled off EntityHuman#hasBlock
|
// Modelled off EntityHuman#hasBlock
|
||||||
@@ -627,6 +638,7 @@ public class CraftBlock implements Block {
|
@@ -601,6 +612,7 @@ public class CraftBlock implements Block {
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add Player to SpongeAbsorbEvent
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/block/SpongeBlock.java b/src/main/java/net/minecraft/world/level/block/SpongeBlock.java
|
diff --git a/src/main/java/net/minecraft/world/level/block/SpongeBlock.java b/src/main/java/net/minecraft/world/level/block/SpongeBlock.java
|
||||||
index 4bce895268542531598a01a1bccd8ac1ed703b7d..8b552fc58a2909bced07eb743dd5d76c0357f9ab 100644
|
index d810f6bf9a8a354e5b8994e51ec3672428277dde..b5eb4718a96ab9abf700a156a23ec3e19757c9aa 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/block/SpongeBlock.java
|
--- a/src/main/java/net/minecraft/world/level/block/SpongeBlock.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/block/SpongeBlock.java
|
+++ b/src/main/java/net/minecraft/world/level/block/SpongeBlock.java
|
||||||
@@ -104,7 +104,8 @@ public class SpongeBlock extends Block {
|
@@ -107,7 +107,8 @@ public class SpongeBlock extends Block {
|
||||||
if (!blocks.isEmpty()) {
|
if (!blocks.isEmpty()) {
|
||||||
final org.bukkit.block.Block bblock = world.getWorld().getBlockAt(pos.getX(), pos.getY(), pos.getZ());
|
final org.bukkit.block.Block bblock = world.getWorld().getBlockAt(pos.getX(), pos.getY(), pos.getZ());
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add World Instance flag
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index 18aac3da3c88f33b1a71a5920a8daa27e9723913..af0720fb8bd334aac5493121c6373d87421204b4 100644
|
index 51d282b524b5249438f7744f7f0b1cc27b76470e..03e5981d62ff2e4bd81bccf0ab6d8373dfe661d2 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -222,6 +222,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
@@ -222,6 +222,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||||
@@ -17,10 +17,10 @@ index 18aac3da3c88f33b1a71a5920a8daa27e9723913..af0720fb8bd334aac5493121c6373d87
|
|||||||
public static Throwable getAddToWorldStackTrace(Entity entity) {
|
public static Throwable getAddToWorldStackTrace(Entity entity) {
|
||||||
final Throwable thr = new Throwable(entity + " Added to world at " + new java.util.Date());
|
final Throwable thr = new Throwable(entity + " Added to world at " + new java.util.Date());
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||||
index 1a481fb4f4228f0fea8a7dc6132248c98b727c90..836bdbf4a4742f0cce0f9612d694db03305c7a00 100644
|
index 0e670de77a7f9926e295e1dd63d909bed1a959ca..92c0b18e5020f5193e060fbc4a0ceb4b72d55dcf 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||||
@@ -1268,6 +1268,18 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
@@ -1267,6 +1267,18 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||||
world.noSave = !value;
|
world.noSave = !value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerData Events
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
||||||
index df2a4449bdc00eb936bf219807d401fc99663926..939d29db3c535c45866fe67cabbe9304601230b0 100644
|
index 1d32eb837517f2b949613498b1a68c8b1edf0b9a..a31ea11234da240e56bbfd14725dd76295c8f338 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java
|
||||||
@@ -602,6 +602,8 @@ public class ServerPlayerGameMode {
|
@@ -602,6 +602,8 @@ public class ServerPlayerGameMode {
|
||||||
@@ -18,10 +18,10 @@ index df2a4449bdc00eb936bf219807d401fc99663926..939d29db3c535c45866fe67cabbe9304
|
|||||||
CriteriaTriggers.ITEM_USED_ON_BLOCK.trigger(player, blockposition, itemstack1);
|
CriteriaTriggers.ITEM_USED_ON_BLOCK.trigger(player, blockposition, itemstack1);
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/stats/ServerStatsCounter.java b/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
diff --git a/src/main/java/net/minecraft/stats/ServerStatsCounter.java b/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
||||||
index 9501e5f25f5c4d3069e554d4dc82b0e094156682..8afd9b785fb8734255e3ea926b8375bb9cae60be 100644
|
index 9bb8d4d7be6a937980aa653db82be084d066a563..9838435fbc31cfbba487d1e62ec5d2e70776517c 100644
|
||||||
--- a/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
--- a/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
||||||
+++ b/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
+++ b/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
||||||
@@ -198,7 +198,12 @@ public class ServerStatsCounter extends StatsCounter {
|
@@ -199,7 +199,12 @@ public class ServerStatsCounter extends StatsCounter {
|
||||||
return nbttagcompound;
|
return nbttagcompound;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -35,7 +35,7 @@ index 9501e5f25f5c4d3069e554d4dc82b0e094156682..8afd9b785fb8734255e3ea926b8375bb
|
|||||||
Map<StatType<?>, JsonObject> map = Maps.newHashMap();
|
Map<StatType<?>, JsonObject> map = Maps.newHashMap();
|
||||||
ObjectIterator objectiterator = this.stats.object2IntEntrySet().iterator();
|
ObjectIterator objectiterator = this.stats.object2IntEntrySet().iterator();
|
||||||
|
|
||||||
@@ -224,7 +229,7 @@ public class ServerStatsCounter extends StatsCounter {
|
@@ -225,7 +230,7 @@ public class ServerStatsCounter extends StatsCounter {
|
||||||
|
|
||||||
jsonobject1.add("stats", jsonobject);
|
jsonobject1.add("stats", jsonobject);
|
||||||
jsonobject1.addProperty("DataVersion", SharedConstants.getCurrentVersion().getDataVersion().getVersion());
|
jsonobject1.addProperty("DataVersion", SharedConstants.getCurrentVersion().getDataVersion().getVersion());
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerGetRespawnLocationEvent
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index f097ec5b4e3ad6b1a7c464a8cff4f8b2568fcf4f..20a0b9835c47ca153a6f77dacf4b775de32e4ef2 100644
|
index 48d1444fbad1c57738807d0128b94160a5a17a4d..1c2abe2fd63e535f8a8f73dfe4033dfdc7fabc1d 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -853,49 +853,57 @@ public abstract class PlayerList {
|
@@ -848,49 +848,57 @@ public abstract class PlayerList {
|
||||||
|
|
||||||
// CraftBukkit start - fire PlayerRespawnEvent
|
// CraftBukkit start - fire PlayerRespawnEvent
|
||||||
if (location == null) {
|
if (location == null) {
|
||||||
|
|||||||
@@ -5,41 +5,39 @@ Subject: [PATCH] Smooth Teleports
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
index 161c40692e8d469fad4169908b9353be0f85d0d8..2b93a37ee1f711c14140eb96f29dfdd3290641ad 100644
|
index d4aec99cac3f83d764e21946cc904c00e084704e..4286c29a9b2a703f951159b1a407c3cd5bc4c5cc 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
@@ -278,6 +278,7 @@ public class ServerPlayer extends Player {
|
@@ -273,6 +273,7 @@ public class ServerPlayer extends Player {
|
||||||
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
|
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
|
||||||
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
|
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
|
||||||
public org.bukkit.event.player.PlayerQuitEvent.QuitReason quitReason = null; // Paper - there are a lot of changes to do if we change all methods leading to the event
|
public org.bukkit.event.player.PlayerQuitEvent.QuitReason quitReason = null; // Paper - there are a lot of changes to do if we change all methods leading to the event
|
||||||
+ public boolean smoothWorldTeleport; // Slice
|
+ public boolean smoothWorldTeleport; // Slice
|
||||||
|
|
||||||
|
// Paper start - replace player chunk loader
|
||||||
private final java.util.concurrent.atomic.AtomicReference<io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances> viewDistances = new java.util.concurrent.atomic.AtomicReference<>(new io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances(-1, -1, -1));
|
private final java.util.concurrent.atomic.AtomicReference<io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances> viewDistances = new java.util.concurrent.atomic.AtomicReference<>(new io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances(-1, -1, -1));
|
||||||
public io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.PlayerChunkLoaderData chunkLoader;
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index 20a0b9835c47ca153a6f77dacf4b775de32e4ef2..97c6f1c622af02b3761b23a4d3a67b385e45ea84 100644
|
index 1c2abe2fd63e535f8a8f73dfe4033dfdc7fabc1d..c09a652fdb2fd40935e03fb779652c57156cffee 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -935,12 +935,12 @@ public abstract class PlayerList {
|
@@ -934,10 +934,10 @@ public abstract class PlayerList {
|
||||||
int i = flag ? 1 : 0;
|
ServerLevel worldserver2 = entityplayer1.serverLevel();
|
||||||
// CraftBukkit start
|
LevelData worlddata = worldserver2.getLevelData();
|
||||||
LevelData worlddata = worldserver1.getLevelData();
|
|
||||||
- entityplayer1.connection.send(new ClientboundRespawnPacket(worldserver1.dimensionTypeId(), worldserver1.dimension(), BiomeManager.obfuscateSeed(worldserver1.getSeed()), entityplayer1.gameMode.getGameModeForPlayer(), entityplayer1.gameMode.getPreviousGameModeForPlayer(), worldserver1.isDebug(), worldserver1.isFlat(), (byte) i, entityplayer1.getLastDeathLocation(), entityplayer1.getPortalCooldown()));
|
- entityplayer1.connection.send(new ClientboundRespawnPacket(entityplayer1.createCommonSpawnInfo(worldserver2), (byte) i));
|
||||||
+ if (!entityplayer.smoothWorldTeleport) entityplayer1.connection.send(new ClientboundRespawnPacket(worldserver1.dimensionTypeId(), worldserver1.dimension(), BiomeManager.obfuscateSeed(worldserver1.getSeed()), entityplayer1.gameMode.getGameModeForPlayer(), entityplayer1.gameMode.getPreviousGameModeForPlayer(), worldserver1.isDebug(), worldserver1.isFlat(), (byte) i, entityplayer1.getLastDeathLocation(), entityplayer1.getPortalCooldown()));
|
+ if (!entityplayer.smoothWorldTeleport) entityplayer1.connection.send(new ClientboundRespawnPacket(entityplayer1.createCommonSpawnInfo(worldserver2), (byte) i));
|
||||||
entityplayer1.connection.send(new ClientboundSetChunkCacheRadiusPacket(worldserver1.getWorld().getSendViewDistance())); // Spigot // Paper - replace old player chunk management
|
entityplayer1.connection.send(new ClientboundSetChunkCacheRadiusPacket(worldserver1.getWorld().getSendViewDistance())); // Spigot // Paper - replace old player chunk management
|
||||||
entityplayer1.connection.send(new ClientboundSetSimulationDistancePacket(worldserver1.getWorld().getSimulationDistance())); // Spigot // Paper - replace old player chunk management
|
entityplayer1.connection.send(new ClientboundSetSimulationDistancePacket(worldserver1.getWorld().getSimulationDistance())); // Spigot // Paper - replace old player chunk management
|
||||||
entityplayer1.spawnIn(worldserver1);
|
- entityplayer1.connection.teleport(CraftLocation.toBukkit(entityplayer1.position(), worldserver2.getWorld(), entityplayer1.getYRot(), entityplayer1.getXRot())); // CraftBukkit
|
||||||
entityplayer1.unsetRemoved();
|
+ if (!entityplayer.smoothWorldTeleport) entityplayer1.connection.teleport(CraftLocation.toBukkit(entityplayer1.position(), worldserver2.getWorld(), entityplayer1.getYRot(), entityplayer1.getXRot())); // CraftBukkit
|
||||||
- entityplayer1.connection.teleport(CraftLocation.toBukkit(entityplayer1.position(), worldserver1.getWorld(), entityplayer1.getYRot(), entityplayer1.getXRot()));
|
entityplayer1.connection.send(new ClientboundSetDefaultSpawnPositionPacket(worldserver1.getSharedSpawnPos(), worldserver1.getSharedSpawnAngle()));
|
||||||
+ if (!entityplayer.smoothWorldTeleport) entityplayer1.connection.teleport(CraftLocation.toBukkit(entityplayer1.position(), worldserver1.getWorld(), entityplayer1.getYRot(), entityplayer1.getXRot()));
|
entityplayer1.connection.send(new ClientboundChangeDifficultyPacket(worlddata.getDifficulty(), worlddata.isDifficultyLocked()));
|
||||||
entityplayer1.setShiftKeyDown(false);
|
entityplayer1.connection.send(new ClientboundSetExperiencePacket(entityplayer1.experienceProgress, entityplayer1.totalExperience, entityplayer1.experienceLevel));
|
||||||
|
|
||||||
// entityplayer1.connection.teleport(entityplayer1.getX(), entityplayer1.getY(), entityplayer1.getZ(), entityplayer1.getYRot(), entityplayer1.getXRot());
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
index 4e6fea7cf11b1e29ae7c7098a6f5d06bb5f93cc2..767a33cdce4b438164bf4101ff39cd7b1e8f929e 100644
|
index e188bb3ba5d2ec28421947c0b66b25eecb569bfe..7e5b0c9b1518ff871b400b88f14de61180645ef1 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
@@ -1254,6 +1254,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
@@ -1256,6 +1256,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||||
// Paper end
|
// Paper end
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Ignore durability changes for equipment updates
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
index e11d7283662834047b2ff81a2fd25a4263792deb..d0e49ae973a91344f3973dc6e00e7e6c649e87cb 100644
|
index 77a1c7dfbaccc2e74da5c78ce4dfcd1717a7ac65..3ac315b664b36bf0a3934e6f944e8dd4e0e545cb 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
@@ -3127,7 +3127,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
@@ -3164,7 +3164,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean equipmentHasChanged(ItemStack stack, ItemStack stack2) {
|
public boolean equipmentHasChanged(ItemStack stack, ItemStack stack2) {
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Disable Azalea generation
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/data/worldgen/BiomeDefaultFeatures.java b/src/main/java/net/minecraft/data/worldgen/BiomeDefaultFeatures.java
|
diff --git a/src/main/java/net/minecraft/data/worldgen/BiomeDefaultFeatures.java b/src/main/java/net/minecraft/data/worldgen/BiomeDefaultFeatures.java
|
||||||
index 8f5178e934b5f9bc48beacd082e479fd9fb80fa6..d580238d733ba2dbbbbaa2659d1a7834c8cf7dac 100644
|
index b9b7d2e668d9f7f36ac3cf1e1716460c4ad5ed3a..9fdd765b65777a1a82b54326bc7ad152416c617e 100644
|
||||||
--- a/src/main/java/net/minecraft/data/worldgen/BiomeDefaultFeatures.java
|
--- a/src/main/java/net/minecraft/data/worldgen/BiomeDefaultFeatures.java
|
||||||
+++ b/src/main/java/net/minecraft/data/worldgen/BiomeDefaultFeatures.java
|
+++ b/src/main/java/net/minecraft/data/worldgen/BiomeDefaultFeatures.java
|
||||||
@@ -161,7 +161,7 @@ public class BiomeDefaultFeatures {
|
@@ -162,7 +162,7 @@ public class BiomeDefaultFeatures {
|
||||||
builder.addFeature(GenerationStep.Decoration.VEGETAL_DECORATION, CavePlacements.CAVE_VINES);
|
builder.addFeature(GenerationStep.Decoration.VEGETAL_DECORATION, CavePlacements.CAVE_VINES);
|
||||||
builder.addFeature(GenerationStep.Decoration.VEGETAL_DECORATION, CavePlacements.LUSH_CAVES_CLAY);
|
builder.addFeature(GenerationStep.Decoration.VEGETAL_DECORATION, CavePlacements.LUSH_CAVES_CLAY);
|
||||||
builder.addFeature(GenerationStep.Decoration.VEGETAL_DECORATION, CavePlacements.LUSH_CAVES_VEGETATION);
|
builder.addFeature(GenerationStep.Decoration.VEGETAL_DECORATION, CavePlacements.LUSH_CAVES_VEGETATION);
|
||||||
|
|||||||
@@ -17,10 +17,10 @@ index 42fdce97d99618a53f2e9c51804ff2205b574f69..7e8d58e3481be2d7ebbe5fe388d61932
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
index 767a33cdce4b438164bf4101ff39cd7b1e8f929e..0af1801085701437f06c9ecaf8864fe875e90509 100644
|
index 7e5b0c9b1518ff871b400b88f14de61180645ef1..1b0b09a7507bd26254e7ac469829698ca7894070 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
@@ -196,6 +196,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
@@ -198,6 +198,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||||
private static final boolean DISABLE_CHANNEL_LIMIT = System.getProperty("paper.disableChannelLimit") != null; // Paper - add a flag to disable the channel limit
|
private static final boolean DISABLE_CHANNEL_LIMIT = System.getProperty("paper.disableChannelLimit") != null; // Paper - add a flag to disable the channel limit
|
||||||
private long lastSaveTime;
|
private long lastSaveTime;
|
||||||
// Paper end
|
// Paper end
|
||||||
@@ -28,7 +28,7 @@ index 767a33cdce4b438164bf4101ff39cd7b1e8f929e..0af1801085701437f06c9ecaf8864fe8
|
|||||||
|
|
||||||
public CraftPlayer(CraftServer server, ServerPlayer entity) {
|
public CraftPlayer(CraftServer server, ServerPlayer entity) {
|
||||||
super(server, entity);
|
super(server, entity);
|
||||||
@@ -2827,6 +2828,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
@@ -2843,6 +2844,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||||
}
|
}
|
||||||
// Paper end
|
// Paper end
|
||||||
|
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerPreChunkLoadEvent
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java b/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java
|
diff --git a/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java b/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java
|
||||||
index 924539d4ac50c70178ba220424ffacd6ff277c8b..f9b30f2904d06f2a7de6fa03287bc2e40e879e2d 100644
|
index 1b090f1e79b996e52097afc49c1cec85936653e6..5185bcbf5363fa2c7e2b0226706cc66d46fa16ee 100644
|
||||||
--- a/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java
|
--- a/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java
|
||||||
+++ b/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java
|
+++ b/src/main/java/io/papermc/paper/chunk/system/RegionizedPlayerChunkLoader.java
|
||||||
@@ -411,7 +411,7 @@ public class RegionizedPlayerChunkLoader {
|
@@ -410,7 +410,7 @@ public class RegionizedPlayerChunkLoader {
|
||||||
private boolean canGenerateChunks = true;
|
private boolean canGenerateChunks = true;
|
||||||
|
|
||||||
private final ArrayDeque<ChunkHolderManager.TicketOperation<?, ?>> delayedTicketOps = new ArrayDeque<>();
|
private final ArrayDeque<ChunkHolderManager.TicketOperation<?, ?>> delayedTicketOps = new ArrayDeque<>();
|
||||||
@@ -18,10 +18,10 @@ index 924539d4ac50c70178ba220424ffacd6ff277c8b..f9b30f2904d06f2a7de6fa03287bc2e4
|
|||||||
private static final byte CHUNK_TICKET_STAGE_NONE = 0;
|
private static final byte CHUNK_TICKET_STAGE_NONE = 0;
|
||||||
private static final byte CHUNK_TICKET_STAGE_LOADING = 1;
|
private static final byte CHUNK_TICKET_STAGE_LOADING = 1;
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||||
index 836bdbf4a4742f0cce0f9612d694db03305c7a00..fb79e3ee663709538d6e322fd8401564dcbbe5a7 100644
|
index 92c0b18e5020f5193e060fbc4a0ceb4b72d55dcf..5a9570963b16dd0fa888c4f06ca90f62b8cd3f0d 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||||
@@ -530,6 +530,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
@@ -529,6 +529,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Don't send fire packets if player has FR
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
index e8485fb900b25e911a858678a833852731cb2ace..a0f8740c93fe86d4c49b9e43f1044ef03d8e3de7 100644
|
index f20ae9153b7098980ce6c0e75fcbbb4da652661b..7960a2467cae9420f0da0eaad8dd428456362efe 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
@@ -868,7 +868,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
@@ -835,7 +835,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||||
|
|
||||||
this.checkBelowWorld();
|
this.checkBelowWorld();
|
||||||
if (!this.level().isClientSide) {
|
if (!this.level().isClientSide) {
|
||||||
|
|||||||
@@ -5,11 +5,11 @@ Subject: [PATCH] Allow access to LightEngine
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
index 65d947df910d60f478e7a449eb161e5105e2c0c9..e08b72010f22ce680e88f443782bdfe6a46285f9 100644
|
index 0c2617574e21037d94ac56ad08b490f9bca5c5af..df414c88a73a5f4eb1c19924a600a21bb0fff7c8 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
@@ -524,7 +524,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
@@ -356,7 +356,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||||
return !ChunkMap.isChunkInRange(x1, z1, x2, z2, distance) ? false : !ChunkMap.isChunkInRange(x1 + 1, z1 + 1, x2, z2, distance) || !ChunkMap.isChunkInRange(x1 - 1, z1 + 1, x2, z2, distance) || !ChunkMap.isChunkInRange(x1 + 1, z1 - 1, x2, z2, distance) || !ChunkMap.isChunkInRange(x1 - 1, z1 - 1, x2, z2, distance);
|
// Paper end - rewrite player chunk loader
|
||||||
}
|
}
|
||||||
|
|
||||||
- protected ThreadedLevelLightEngine getLightEngine() {
|
- protected ThreadedLevelLightEngine getLightEngine() {
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] PlayerLoadStatsEvent
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index 97c6f1c622af02b3761b23a4d3a67b385e45ea84..7f059a71d25170e8e3215c7d91ab7927394cfeb5 100644
|
index c09a652fdb2fd40935e03fb779652c57156cffee..c55a9a228fbb64680354b9ca308f973866bb53d5 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -1474,7 +1474,7 @@ public abstract class PlayerList {
|
@@ -1468,7 +1468,7 @@ public abstract class PlayerList {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -18,10 +18,10 @@ index 97c6f1c622af02b3761b23a4d3a67b385e45ea84..7f059a71d25170e8e3215c7d91ab7927
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/stats/ServerStatsCounter.java b/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
diff --git a/src/main/java/net/minecraft/stats/ServerStatsCounter.java b/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
||||||
index 8afd9b785fb8734255e3ea926b8375bb9cae60be..9bd42eac43f068df8f7f49249bb47840d87d799a 100644
|
index 9838435fbc31cfbba487d1e62ec5d2e70776517c..ef601d98e97a7e541cc855822ff46f9dd887435e 100644
|
||||||
--- a/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
--- a/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
||||||
+++ b/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
+++ b/src/main/java/net/minecraft/stats/ServerStatsCounter.java
|
||||||
@@ -45,7 +45,7 @@ public class ServerStatsCounter extends StatsCounter {
|
@@ -45,10 +45,16 @@ public class ServerStatsCounter extends StatsCounter {
|
||||||
private final File file;
|
private final File file;
|
||||||
private final Set<Stat<?>> dirty = Sets.newHashSet();
|
private final Set<Stat<?>> dirty = Sets.newHashSet();
|
||||||
|
|
||||||
@@ -29,11 +29,6 @@ index 8afd9b785fb8734255e3ea926b8375bb9cae60be..9bd42eac43f068df8f7f49249bb47840
|
|||||||
+ public ServerStatsCounter(MinecraftServer server, File file, java.util.UUID uuid) { // Slice
|
+ public ServerStatsCounter(MinecraftServer server, File file, java.util.UUID uuid) { // Slice
|
||||||
this.server = server;
|
this.server = server;
|
||||||
this.file = file;
|
this.file = file;
|
||||||
// Spigot start
|
|
||||||
@@ -55,7 +55,13 @@ public class ServerStatsCounter extends StatsCounter {
|
|
||||||
this.stats.put( wrapper, entry.getValue().intValue() );
|
|
||||||
}
|
|
||||||
// Spigot end
|
|
||||||
- if (file.isFile()) {
|
- if (file.isFile()) {
|
||||||
+ // Slice start - If event supplies stats, use it. Otherwise just load from disk as usual
|
+ // Slice start - If event supplies stats, use it. Otherwise just load from disk as usual
|
||||||
+ com.destroystokyo.paper.event.player.PlayerLoadStatsEvent event = new com.destroystokyo.paper.event.player.PlayerLoadStatsEvent(uuid);
|
+ com.destroystokyo.paper.event.player.PlayerLoadStatsEvent event = new com.destroystokyo.paper.event.player.PlayerLoadStatsEvent(uuid);
|
||||||
@@ -45,7 +40,7 @@ index 8afd9b785fb8734255e3ea926b8375bb9cae60be..9bd42eac43f068df8f7f49249bb47840
|
|||||||
try {
|
try {
|
||||||
this.parseLocal(server.getFixerUpper(), FileUtils.readFileToString(file));
|
this.parseLocal(server.getFixerUpper(), FileUtils.readFileToString(file));
|
||||||
} catch (IOException ioexception) {
|
} catch (IOException ioexception) {
|
||||||
@@ -103,46 +109,8 @@ public class ServerStatsCounter extends StatsCounter {
|
@@ -104,46 +110,8 @@ public class ServerStatsCounter extends StatsCounter {
|
||||||
|
|
||||||
if (!jsonelement.isJsonNull()) {
|
if (!jsonelement.isJsonNull()) {
|
||||||
CompoundTag nbttagcompound = ServerStatsCounter.fromJson(jsonelement.getAsJsonObject());
|
CompoundTag nbttagcompound = ServerStatsCounter.fromJson(jsonelement.getAsJsonObject());
|
||||||
@@ -94,7 +89,7 @@ index 8afd9b785fb8734255e3ea926b8375bb9cae60be..9bd42eac43f068df8f7f49249bb47840
|
|||||||
}
|
}
|
||||||
|
|
||||||
ServerStatsCounter.LOGGER.error("Unable to parse Stat data from {}", this.file);
|
ServerStatsCounter.LOGGER.error("Unable to parse Stat data from {}", this.file);
|
||||||
@@ -167,6 +135,48 @@ public class ServerStatsCounter extends StatsCounter {
|
@@ -168,6 +136,48 @@ public class ServerStatsCounter extends StatsCounter {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add Force Crit to PlayerPreAttackEntityEvent
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||||
index 58152160d609d0e9d105153aeb166a56a7955603..5d52d8821edc8dd2cac3391081a223811297faf8 100644
|
index d58b4c0dbe651b5068212e5f14dce3164ee520f5..32d6615ea73c1c149049d16dfd1b395621ad634b 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||||
@@ -1277,10 +1277,11 @@ public abstract class Player extends LivingEntity {
|
@@ -1283,10 +1283,11 @@ public abstract class Player extends LivingEntity {
|
||||||
flag1 = true;
|
flag1 = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -23,7 +23,7 @@ index 58152160d609d0e9d105153aeb166a56a7955603..5d52d8821edc8dd2cac3391081a22381
|
|||||||
if (flag2) {
|
if (flag2) {
|
||||||
f *= 1.5F;
|
f *= 1.5F;
|
||||||
}
|
}
|
||||||
@@ -2411,27 +2412,6 @@ public abstract class Player extends LivingEntity {
|
@@ -2413,27 +2414,6 @@ public abstract class Player extends LivingEntity {
|
||||||
this.lastDeathLocation = lastDeathPos;
|
this.lastDeathLocation = lastDeathPos;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add Preventing KB Bonus to PlayerPreAttackEntityEvent
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||||
index 5d52d8821edc8dd2cac3391081a223811297faf8..38e110a226aac27d86dfe89bc0e9ecaada6ff268 100644
|
index 32d6615ea73c1c149049d16dfd1b395621ad634b..0325086157b846da7da0ca291fd33c55fc91f229 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||||
@@ -1269,7 +1269,11 @@ public abstract class Player extends LivingEntity {
|
@@ -1275,7 +1275,11 @@ public abstract class Player extends LivingEntity {
|
||||||
boolean flag = f2 > 0.9F;
|
boolean flag = f2 > 0.9F;
|
||||||
boolean flag1 = false;
|
boolean flag1 = false;
|
||||||
byte b0 = 0;
|
byte b0 = 0;
|
||||||
|
|||||||
@@ -5,23 +5,22 @@ Subject: [PATCH] noEntityCollisions for Entity
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/io/papermc/paper/util/CollisionUtil.java b/src/main/java/io/papermc/paper/util/CollisionUtil.java
|
diff --git a/src/main/java/io/papermc/paper/util/CollisionUtil.java b/src/main/java/io/papermc/paper/util/CollisionUtil.java
|
||||||
index a87f6380b2c387fb0cdd40d5087b5c93492e3c88..cd35c2136a638c07fed683a2f92e70aa57bcfa8e 100644
|
index bfb1de19f53d5d7c7b65e25a606fabfa416706b3..63262cc017b15b076f27143309b3e38c48289261 100644
|
||||||
--- a/src/main/java/io/papermc/paper/util/CollisionUtil.java
|
--- a/src/main/java/io/papermc/paper/util/CollisionUtil.java
|
||||||
+++ b/src/main/java/io/papermc/paper/util/CollisionUtil.java
|
+++ b/src/main/java/io/papermc/paper/util/CollisionUtil.java
|
||||||
@@ -809,7 +809,7 @@ public final class CollisionUtil {
|
@@ -1777,6 +1777,7 @@ public final class CollisionUtil {
|
||||||
|
|
||||||
public static boolean getEntityHardCollisions(final CollisionGetter getter, final Entity entity, AABB aabb,
|
public static boolean getEntityHardCollisions(final CollisionGetter getter, final Entity entity, AABB aabb,
|
||||||
final List<AABB> into, final boolean checkOnly, final Predicate<Entity> predicate) {
|
final List<AABB> into, final int collisionFlags, final Predicate<Entity> predicate) {
|
||||||
- if (isEmpty(aabb) || !(getter instanceof EntityGetter entityGetter)) {
|
+ if (entity != null && entity.noEntityCollisions) return false; // Slice
|
||||||
+ if ((entity != null && entity.noEntityCollisions) || isEmpty(aabb) || !(getter instanceof EntityGetter entityGetter)) { // Slice
|
final boolean checkOnly = (collisionFlags & COLLISION_FLAG_CHECK_ONLY) != 0;
|
||||||
|
if (!(getter instanceof EntityGetter entityGetter)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
index a0f8740c93fe86d4c49b9e43f1044ef03d8e3de7..6d6baa82bb7a67c3f6de4bdb0987e4d1f68b6ec8 100644
|
index 7960a2467cae9420f0da0eaad8dd428456362efe..383c40f6f7ea7cbf6f88347ccb559f4c458fcc40 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
@@ -453,6 +453,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
@@ -452,6 +452,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||||
* Overriding this field will cause memory leaks.
|
* Overriding this field will cause memory leaks.
|
||||||
*/
|
*/
|
||||||
private final boolean hardCollides;
|
private final boolean hardCollides;
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Do not freeze MappedRegistry
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/core/MappedRegistry.java b/src/main/java/net/minecraft/core/MappedRegistry.java
|
diff --git a/src/main/java/net/minecraft/core/MappedRegistry.java b/src/main/java/net/minecraft/core/MappedRegistry.java
|
||||||
index 1e33434f9f361542e03da3e4812bc6d76768a202..828d9472bf90fe098825c15bc55949497a40ae39 100644
|
index 26b92e27de1f079ab8440538c65377ed80e8b6ef..2a52ba73849b3f1f86ab4a5c41fcaf65ad452e41 100644
|
||||||
--- a/src/main/java/net/minecraft/core/MappedRegistry.java
|
--- a/src/main/java/net/minecraft/core/MappedRegistry.java
|
||||||
+++ b/src/main/java/net/minecraft/core/MappedRegistry.java
|
+++ b/src/main/java/net/minecraft/core/MappedRegistry.java
|
||||||
@@ -338,7 +338,7 @@ public class MappedRegistry<T> implements WritableRegistry<T> {
|
@@ -337,7 +337,7 @@ public class MappedRegistry<T> implements WritableRegistry<T> {
|
||||||
if (this.frozen) {
|
if (this.frozen) {
|
||||||
return this;
|
return this;
|
||||||
} else {
|
} else {
|
||||||
@@ -17,7 +17,7 @@ index 1e33434f9f361542e03da3e4812bc6d76768a202..828d9472bf90fe098825c15bc5594949
|
|||||||
this.byValue.forEach((value, entry) -> {
|
this.byValue.forEach((value, entry) -> {
|
||||||
entry.bindValue(value);
|
entry.bindValue(value);
|
||||||
});
|
});
|
||||||
@@ -365,14 +365,16 @@ public class MappedRegistry<T> implements WritableRegistry<T> {
|
@@ -364,14 +364,16 @@ public class MappedRegistry<T> implements WritableRegistry<T> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Holder.Reference<T> createIntrusiveHolder(T value) {
|
public Holder.Reference<T> createIntrusiveHolder(T value) {
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Maybe can't tostring?
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/nbt/CompoundTag.java b/src/main/java/net/minecraft/nbt/CompoundTag.java
|
diff --git a/src/main/java/net/minecraft/nbt/CompoundTag.java b/src/main/java/net/minecraft/nbt/CompoundTag.java
|
||||||
index 7e94ebe06fc62293e665d6db19e42d947e7eb30f..158c012b8a6808ca0f820c2997af282529148c7c 100644
|
index 84fc2adf591f02a14862f7c1cd645c2efde55c3d..f088d316aac7626204cff330f90468d89ac3581b 100644
|
||||||
--- a/src/main/java/net/minecraft/nbt/CompoundTag.java
|
--- a/src/main/java/net/minecraft/nbt/CompoundTag.java
|
||||||
+++ b/src/main/java/net/minecraft/nbt/CompoundTag.java
|
+++ b/src/main/java/net/minecraft/nbt/CompoundTag.java
|
||||||
@@ -466,6 +466,9 @@ public class CompoundTag implements Tag {
|
@@ -503,6 +503,9 @@ public class CompoundTag implements Tag {
|
||||||
@Override
|
@Override
|
||||||
public CompoundTag copy() {
|
public CompoundTag copy() {
|
||||||
// Paper start - reduce memory footprint of NBTTagCompound
|
// Paper start - reduce memory footprint of NBTTagCompound
|
||||||
@@ -19,10 +19,10 @@ index 7e94ebe06fc62293e665d6db19e42d947e7eb30f..158c012b8a6808ca0f820c2997af2825
|
|||||||
java.util.Iterator<java.util.Map.Entry<String, Tag>> iterator = (this.tags instanceof it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap) ? ((it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap)this.tags).object2ObjectEntrySet().fastIterator() : this.tags.entrySet().iterator();
|
java.util.Iterator<java.util.Map.Entry<String, Tag>> iterator = (this.tags instanceof it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap) ? ((it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap)this.tags).object2ObjectEntrySet().fastIterator() : this.tags.entrySet().iterator();
|
||||||
while (iterator.hasNext()) {
|
while (iterator.hasNext()) {
|
||||||
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
|
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||||
index 2b3b1c5ccdf58ee9b46d404cfa3790d0fdc2df3d..b31f21e2d9faa00174bbcbbd1e0cf1b22c8b69d4 100644
|
index e30aaa502f5e98b5658a0dd78853e865cbf91f96..c9cd6d3a3678ec38fbfb9ca3975d2ddbe2ce2881 100644
|
||||||
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
|
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||||
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
|
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||||
@@ -736,7 +736,11 @@ public final class ItemStack {
|
@@ -742,7 +742,11 @@ public final class ItemStack {
|
||||||
|
|
||||||
itemstack.setPopTime(this.getPopTime());
|
itemstack.setPopTime(this.getPopTime());
|
||||||
if (this.tag != null) {
|
if (this.tag != null) {
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Allow inventory clicks in Spectator
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
index 3c0651fa5a5db880202c9a3805a6455269c5f16d..42e61e55ef45935e1f690eefa56bc36842cdd974 100644
|
index 8bd243a8d5a4be54f907af2b02e96ea833cee62f..e93738332eaef720abb303b382f902c95aa87d72 100644
|
||||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
@@ -3030,7 +3030,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
@@ -2873,7 +2873,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
|
||||||
if (this.player.isImmobile()) return; // CraftBukkit
|
if (this.player.isImmobile()) return; // CraftBukkit
|
||||||
this.player.resetLastActionTime();
|
this.player.resetLastActionTime();
|
||||||
if (this.player.containerMenu.containerId == packet.getContainerId() && this.player.containerMenu.stillValid(this.player)) { // CraftBukkit
|
if (this.player.containerMenu.containerId == packet.getContainerId() && this.player.containerMenu.stillValid(this.player)) { // CraftBukkit
|
||||||
|
|||||||
@@ -118,10 +118,10 @@ index 5dfb35117c285e0b202dc9c088ad5848beb8d054..b3d2cbf9f60c4a4b34df20bfe45a80ac
|
|||||||
|
|
||||||
public static record DataValue<T>(int id, EntityDataSerializer<T> serializer, T value) { // CraftBukkit - decompile error
|
public static record DataValue<T>(int id, EntityDataSerializer<T> serializer, T value) { // CraftBukkit - decompile error
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
index 196280f54e397c69d32bd4d1f6ae666efdd93773..a514a1f26e439b5959093488ec9905fec327a404 100644
|
index 35674f92a67f93382103c2766df4b678ba5c862f..97dbcb6f527bd5c567e77200d7f6cbc1abb15792 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java
|
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
@@ -381,7 +381,20 @@ public class ServerEntity {
|
@@ -374,7 +374,20 @@ public class ServerEntity {
|
||||||
|
|
||||||
if (list != null) {
|
if (list != null) {
|
||||||
this.trackedDataValues = datawatcher.getNonDefaultValues();
|
this.trackedDataValues = datawatcher.getNonDefaultValues();
|
||||||
@@ -144,10 +144,10 @@ index 196280f54e397c69d32bd4d1f6ae666efdd93773..a514a1f26e439b5959093488ec9905fe
|
|||||||
|
|
||||||
if (this.entity instanceof LivingEntity) {
|
if (this.entity instanceof LivingEntity) {
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
index 6d6baa82bb7a67c3f6de4bdb0987e4d1f68b6ec8..b23b6be85496d031b81b2d3abb9690322c340a80 100644
|
index 383c40f6f7ea7cbf6f88347ccb559f4c458fcc40..119f839051d691ff09805d22b95186cdb38403af 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
@@ -3272,7 +3272,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
@@ -3322,7 +3322,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||||
this.entityData.markDirty(Entity.DATA_AIR_SUPPLY_ID);
|
this.entityData.markDirty(Entity.DATA_AIR_SUPPLY_ID);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -157,10 +157,10 @@ index 6d6baa82bb7a67c3f6de4bdb0987e4d1f68b6ec8..b23b6be85496d031b81b2d3abb969032
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
index d0e49ae973a91344f3973dc6e00e7e6c649e87cb..b7c9876eaff4365d136a9af20c1a5845b3094336 100644
|
index 3ac315b664b36bf0a3934e6f944e8dd4e0e545cb..cad14a4e7e39982c0df779a67c2e735c0186678f 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
@@ -3127,7 +3127,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
@@ -3164,7 +3164,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean equipmentHasChanged(ItemStack stack, ItemStack stack2) {
|
public boolean equipmentHasChanged(ItemStack stack, ItemStack stack2) {
|
||||||
@@ -170,10 +170,10 @@ index d0e49ae973a91344f3973dc6e00e7e6c649e87cb..b7c9876eaff4365d136a9af20c1a5845
|
|||||||
|
|
||||||
private void handleHandSwap(Map<EquipmentSlot, ItemStack> equipmentChanges) {
|
private void handleHandSwap(Map<EquipmentSlot, ItemStack> equipmentChanges) {
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||||
index 38e110a226aac27d86dfe89bc0e9ecaada6ff268..15515e871c89498ec936ab24871741f883f18a3b 100644
|
index 0325086157b846da7da0ca291fd33c55fc91f229..22a74eb4946b0b92da922227326d972e91a1c4b7 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||||
@@ -643,7 +643,7 @@ public abstract class Player extends LivingEntity {
|
@@ -649,7 +649,7 @@ public abstract class Player extends LivingEntity {
|
||||||
public void increaseScore(int score) {
|
public void increaseScore(int score) {
|
||||||
int j = this.getScore();
|
int j = this.getScore();
|
||||||
|
|
||||||
@@ -183,10 +183,10 @@ index 38e110a226aac27d86dfe89bc0e9ecaada6ff268..15515e871c89498ec936ab24871741f8
|
|||||||
|
|
||||||
public void startAutoSpinAttack(int riptideTicks) {
|
public void startAutoSpinAttack(int riptideTicks) {
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
index 0af1801085701437f06c9ecaf8864fe875e90509..48402f6be39ca1fe65453ca3ab3b995ad33051b0 100644
|
index 1b0b09a7507bd26254e7ac469829698ca7894070..225e7663a9ad7b9924db777bb9741a93e31c567d 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
@@ -2593,7 +2593,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
@@ -2609,7 +2609,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||||
this.sendHealthUpdate();
|
this.sendHealthUpdate();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,30 +5,30 @@ Subject: [PATCH] Long distance tracking
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
index e08b72010f22ce680e88f443782bdfe6a46285f9..3809b2125254424d4939794961a9f08254af54c8 100644
|
index df414c88a73a5f4eb1c19924a600a21bb0fff7c8..48e25187e68b8b3099b514a224a552f130bd77e3 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||||
@@ -1551,6 +1551,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
@@ -1288,6 +1288,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||||
// Paper end - remove allocation of Vec3D here
|
|
||||||
Vec3 vec3d = player.position().subtract(this.entity.position());
|
Vec3 vec3d = player.position().subtract(this.entity.position());
|
||||||
double d0 = (double) Math.min(this.getEffectiveRange(), io.papermc.paper.chunk.system.ChunkSystem.getSendViewDistance(player) * 16); // Paper - per player view distance
|
int i = ChunkMap.this.getPlayerViewDistance(player);
|
||||||
|
double d0 = (double) Math.min(this.getEffectiveRange(), i * 16);
|
||||||
+ if (this.entity instanceof ServerPlayer serverPlayer && player.canSeeFromLongDistance(serverPlayer)) d0 = Math.min(level.spigotConfig.flyingPlayerTrackingRange, d0); // Slice
|
+ if (this.entity instanceof ServerPlayer serverPlayer && player.canSeeFromLongDistance(serverPlayer)) d0 = Math.min(level.spigotConfig.flyingPlayerTrackingRange, d0); // Slice
|
||||||
double d1 = vec3d_dx * vec3d_dx + vec3d_dz * vec3d_dz; // Paper
|
double d1 = vec3d.x * vec3d.x + vec3d.z * vec3d.z;
|
||||||
double d2 = d0 * d0;
|
double d2 = d0 * d0;
|
||||||
boolean flag = d1 <= d2 && this.entity.broadcastToPlayer(player);
|
boolean flag = d1 <= d2 && this.entity.broadcastToPlayer(player) && ChunkMap.this.isChunkTracked(player, this.entity.chunkPosition().x, this.entity.chunkPosition().z);
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
index c610111cde3d1cecac661549511742231e1e47c3..069665c210f2c3f8aec8c13c1c0c2ab5c50d3e24 100644
|
index 4286c29a9b2a703f951159b1a407c3cd5bc4c5cc..8dce1a7868e2bd14b570823fbdcd9f71557c8b82 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
@@ -279,6 +279,7 @@ public class ServerPlayer extends Player {
|
@@ -274,6 +274,7 @@ public class ServerPlayer extends Player {
|
||||||
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
|
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
|
||||||
public org.bukkit.event.player.PlayerQuitEvent.QuitReason quitReason = null; // Paper - there are a lot of changes to do if we change all methods leading to the event
|
public org.bukkit.event.player.PlayerQuitEvent.QuitReason quitReason = null; // Paper - there are a lot of changes to do if we change all methods leading to the event
|
||||||
public boolean smoothWorldTeleport; // Slice
|
public boolean smoothWorldTeleport; // Slice
|
||||||
+ public boolean hasLongDistanceTracking; // Slice
|
+ public boolean hasLongDistanceTracking; // Slice
|
||||||
|
|
||||||
|
// Paper start - replace player chunk loader
|
||||||
private final java.util.concurrent.atomic.AtomicReference<io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances> viewDistances = new java.util.concurrent.atomic.AtomicReference<>(new io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances(-1, -1, -1));
|
private final java.util.concurrent.atomic.AtomicReference<io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances> viewDistances = new java.util.concurrent.atomic.AtomicReference<>(new io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances(-1, -1, -1));
|
||||||
public io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.PlayerChunkLoaderData chunkLoader;
|
@@ -2648,4 +2649,18 @@ public class ServerPlayer extends Player {
|
||||||
@@ -2656,4 +2657,18 @@ public class ServerPlayer extends Player {
|
|
||||||
return (CraftPlayer) super.getBukkitEntity();
|
return (CraftPlayer) super.getBukkitEntity();
|
||||||
}
|
}
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
@@ -68,7 +68,7 @@ index 5b5109e942b18418b3a3a0e2109fe4ef15045fe5..507519c75fabe8991cddbc1aa7813cec
|
|||||||
this.monsterTrackingRange = this.getInt( "entity-tracking-range.monsters", this.monsterTrackingRange );
|
this.monsterTrackingRange = this.getInt( "entity-tracking-range.monsters", this.monsterTrackingRange );
|
||||||
this.miscTrackingRange = this.getInt( "entity-tracking-range.misc", this.miscTrackingRange );
|
this.miscTrackingRange = this.getInt( "entity-tracking-range.misc", this.miscTrackingRange );
|
||||||
diff --git a/src/main/java/org/spigotmc/TrackingRange.java b/src/main/java/org/spigotmc/TrackingRange.java
|
diff --git a/src/main/java/org/spigotmc/TrackingRange.java b/src/main/java/org/spigotmc/TrackingRange.java
|
||||||
index 8fca15099952626ee537f5ce3eefdfaa6518dc1b..1ddf149ce3d962905bec8c4562e4d86fbbe6e570 100644
|
index 172d231adecf043f9f06b7f5e0365ae82327998d..e8a6c5f3f6208bc539e913eab47a14e2258817d7 100644
|
||||||
--- a/src/main/java/org/spigotmc/TrackingRange.java
|
--- a/src/main/java/org/spigotmc/TrackingRange.java
|
||||||
+++ b/src/main/java/org/spigotmc/TrackingRange.java
|
+++ b/src/main/java/org/spigotmc/TrackingRange.java
|
||||||
@@ -26,9 +26,9 @@ public class TrackingRange
|
@@ -26,9 +26,9 @@ public class TrackingRange
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Shared Data Storage
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||||
index 3bc7230ca62ebe3426da293e436a962bb0134f85..a812bd61e0352023cfd44e62a9cf722616ba4358 100644
|
index a6f58b3457b7477015c5c6d969e7d83017dd3fa1..7f2070bd2d7eb7f0256a96df00103d20c45e65a0 100644
|
||||||
--- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
--- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||||
+++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
+++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||||
@@ -318,6 +318,7 @@ public class GlobalConfiguration extends ConfigurationPart {
|
@@ -331,6 +331,7 @@ public class GlobalConfiguration extends ConfigurationPart {
|
||||||
public boolean useDimensionTypeForCustomSpawners = false;
|
public boolean useDimensionTypeForCustomSpawners = false;
|
||||||
public boolean strictAdvancementDimensionCheck = false;
|
public boolean strictAdvancementDimensionCheck = false;
|
||||||
public IntOr.Default compressionLevel = IntOr.Default.USE_DEFAULT;
|
public IntOr.Default compressionLevel = IntOr.Default.USE_DEFAULT;
|
||||||
@@ -17,7 +17,7 @@ index 3bc7230ca62ebe3426da293e436a962bb0134f85..a812bd61e0352023cfd44e62a9cf7226
|
|||||||
|
|
||||||
public BlockUpdates blockUpdates;
|
public BlockUpdates blockUpdates;
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 915340fedc6c0b3d70ee065482dbe621b7c0b0a8..fc6fa65dae66d695b5fd732cc495d3649a28862c 100644
|
index 6684f4f4b9aff1c2f3037feb7bcdee55a9d21f93..4ecd1f7d7c5889fb58553333d095716386448860 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -2,6 +2,7 @@ package net.minecraft.server;
|
@@ -2,6 +2,7 @@ package net.minecraft.server;
|
||||||
@@ -28,17 +28,17 @@ index 915340fedc6c0b3d70ee065482dbe621b7c0b0a8..fc6fa65dae66d695b5fd732cc495d364
|
|||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
import co.aikar.timings.Timings;
|
import co.aikar.timings.Timings;
|
||||||
import com.destroystokyo.paper.event.server.PaperServerListPingEvent;
|
import com.destroystokyo.paper.event.server.PaperServerListPingEvent;
|
||||||
@@ -310,6 +311,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -308,6 +309,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
public volatile Thread shutdownThread; // Paper
|
// Paper start - lag compensation
|
||||||
public volatile boolean abnormalExit = false; // Paper
|
public static final long SERVER_INIT = System.nanoTime();
|
||||||
public boolean isIteratingOverLevels = false; // Paper
|
// Paper end - lag compensation
|
||||||
+ public @Nullable DimensionDataStorage sharedDataStorage; // Slice
|
+ public @Nullable DimensionDataStorage sharedDataStorage; // Slice
|
||||||
|
|
||||||
public static <S extends MinecraftServer> S spin(Function<Thread, S> serverFactory) {
|
public static <S extends MinecraftServer> S spin(Function<Thread, S> serverFactory) {
|
||||||
AtomicReference<S> atomicreference = new AtomicReference();
|
AtomicReference<S> atomicreference = new AtomicReference();
|
||||||
@@ -410,6 +412,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -407,6 +409,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
this.paperConfigurations = services.paperConfigurations(); // Paper
|
||||||
}
|
}
|
||||||
// CraftBukkit end
|
|
||||||
|
|
||||||
+ // Slice start
|
+ // Slice start
|
||||||
+ public DimensionDataStorage getMapDataStorage() {
|
+ public DimensionDataStorage getMapDataStorage() {
|
||||||
@@ -47,9 +47,9 @@ index 915340fedc6c0b3d70ee065482dbe621b7c0b0a8..fc6fa65dae66d695b5fd732cc495d364
|
|||||||
+ // Slice end
|
+ // Slice end
|
||||||
+
|
+
|
||||||
private void readScoreboard(DimensionDataStorage persistentStateManager) {
|
private void readScoreboard(DimensionDataStorage persistentStateManager) {
|
||||||
ServerScoreboard scoreboardserver = this.getScoreboard();
|
persistentStateManager.computeIfAbsent(this.getScoreboard().dataFactory(), "scoreboard");
|
||||||
|
}
|
||||||
@@ -885,6 +893,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -873,6 +881,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
this.isSaving = true;
|
this.isSaving = true;
|
||||||
this.getPlayerList().saveAll(); // Diff on change
|
this.getPlayerList().saveAll(); // Diff on change
|
||||||
flag3 = this.saveAllChunks(suppressLogs, flush, force);
|
flag3 = this.saveAllChunks(suppressLogs, flush, force);
|
||||||
@@ -57,7 +57,7 @@ index 915340fedc6c0b3d70ee065482dbe621b7c0b0a8..fc6fa65dae66d695b5fd732cc495d364
|
|||||||
} finally {
|
} finally {
|
||||||
this.isSaving = false;
|
this.isSaving = false;
|
||||||
}
|
}
|
||||||
@@ -1101,6 +1110,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1087,6 +1096,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
throw new IllegalStateException("Failed to initialize server");
|
throw new IllegalStateException("Failed to initialize server");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -73,7 +73,7 @@ index 915340fedc6c0b3d70ee065482dbe621b7c0b0a8..fc6fa65dae66d695b5fd732cc495d364
|
|||||||
this.nextTickTime = Util.getMillis();
|
this.nextTickTime = Util.getMillis();
|
||||||
this.statusIcon = (ServerStatus.Favicon) this.loadStatusIcon().orElse(null); // CraftBukkit - decompile error
|
this.statusIcon = (ServerStatus.Favicon) this.loadStatusIcon().orElse(null); // CraftBukkit - decompile error
|
||||||
this.status = this.buildServerStatus();
|
this.status = this.buildServerStatus();
|
||||||
@@ -1413,6 +1431,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1399,6 +1417,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
level.saveIncrementally(fullSave);
|
level.saveIncrementally(fullSave);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -82,19 +82,19 @@ index 915340fedc6c0b3d70ee065482dbe621b7c0b0a8..fc6fa65dae66d695b5fd732cc495d364
|
|||||||
this.isSaving = false;
|
this.isSaving = false;
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index af0720fb8bd334aac5493121c6373d87421204b4..564591e9f18dd6bb0f76ae4f153adcc0a228d4fa 100644
|
index 03e5981d62ff2e4bd81bccf0ab6d8373dfe661d2..7645eb4bfcee85331770c040477f47ea21a3ef95 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -2068,7 +2068,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
@@ -2101,7 +2101,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||||
@Override
|
@Override
|
||||||
public MapItemSavedData getMapData(String id) {
|
public MapItemSavedData getMapData(String id) {
|
||||||
// CraftBukkit start
|
// Paper start - Call missing map initialize event & set id
|
||||||
- return (MapItemSavedData) this.getServer().overworld().getDataStorage().get((nbttagcompound) -> {
|
- final DimensionDataStorage storage = this.getServer().overworld().getDataStorage();
|
||||||
+ return (MapItemSavedData) this.getServer().getMapDataStorage().get((nbttagcompound) -> { // Slice
|
+ final DimensionDataStorage storage = this.getServer().getMapDataStorage();
|
||||||
// We only get here when the data file exists, but is not a valid map
|
|
||||||
MapItemSavedData newMap = MapItemSavedData.load(nbttagcompound);
|
final net.minecraft.world.level.saveddata.SavedData existing = storage.cache.get(id);
|
||||||
newMap.id = id;
|
if (existing == null && !storage.cache.containsKey(id)) {
|
||||||
@@ -2082,12 +2082,22 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
@@ -2122,12 +2122,22 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||||
@Override
|
@Override
|
||||||
public void setMapData(String id, MapItemSavedData state) {
|
public void setMapData(String id, MapItemSavedData state) {
|
||||||
state.id = id; // CraftBukkit
|
state.id = id; // CraftBukkit
|
||||||
@@ -104,10 +104,10 @@ index af0720fb8bd334aac5493121c6373d87421204b4..564591e9f18dd6bb0f76ae4f153adcc0
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getFreeMapId() {
|
public int getFreeMapId() {
|
||||||
- return ((MapIndex) this.getServer().overworld().getDataStorage().computeIfAbsent(MapIndex::load, MapIndex::new, "idcounts")).getFreeAuxValueForMap();
|
- return ((MapIndex) this.getServer().overworld().getDataStorage().computeIfAbsent(MapIndex.factory(), "idcounts")).getFreeAuxValueForMap();
|
||||||
+ // Slice start
|
+ // Slice start
|
||||||
+ DimensionDataStorage storage = this.getServer().getMapDataStorage();
|
+ DimensionDataStorage storage = this.getServer().getMapDataStorage();
|
||||||
+ MapIndex mapIndex = storage.readSavedData(MapIndex::load, "idcounts");
|
+ MapIndex mapIndex = storage.get(MapIndex.factory(), "idcounts");
|
||||||
+ if (mapIndex == null) {
|
+ if (mapIndex == null) {
|
||||||
+ mapIndex = new MapIndex();
|
+ mapIndex = new MapIndex();
|
||||||
+ }
|
+ }
|
||||||
@@ -119,16 +119,3 @@ index af0720fb8bd334aac5493121c6373d87421204b4..564591e9f18dd6bb0f76ae4f153adcc0
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Paper start - helper function for configurable spawn radius
|
// Paper start - helper function for configurable spawn radius
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java b/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java
|
|
||||||
index defe31a5d3aa89a3d18b94f2ff005594e38754b3..637a86e74d633901fdd2f2f1ba6aa4ed49780ead 100644
|
|
||||||
--- a/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java
|
|
||||||
+++ b/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java
|
|
||||||
@@ -58,7 +58,7 @@ public class DimensionDataStorage {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Nullable
|
|
||||||
- private <T extends SavedData> T readSavedData(Function<CompoundTag, T> readFunction, String id) {
|
|
||||||
+ public <T extends SavedData> T readSavedData(Function<CompoundTag, T> readFunction, String id) { // Slice private -> public
|
|
||||||
try {
|
|
||||||
File file = this.getDataFile(id);
|
|
||||||
if (file.exists()) {
|
|
||||||
|
|||||||
@@ -25,10 +25,10 @@ index 5a8f850b447fc3a4bd0eb0c505bbdfc8be7115e8..34d74735b7a7d258c6bd14bb7e540693
|
|||||||
this.entity = buf.readVarInt();
|
this.entity = buf.readVarInt();
|
||||||
EquipmentSlot[] equipmentSlots = EquipmentSlot.values();
|
EquipmentSlot[] equipmentSlots = EquipmentSlot.values();
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
index a514a1f26e439b5959093488ec9905fec327a404..0ac580f3cf8f95025992420702d67ad56db2ba05 100644
|
index 97dbcb6f527bd5c567e77200d7f6cbc1abb15792..248a4af1b9c6684502570c879efae20a36558414 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java
|
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||||
@@ -328,27 +328,8 @@ public class ServerEntity {
|
@@ -325,27 +325,8 @@ public class ServerEntity {
|
||||||
sender.accept(new ClientboundSetEntityMotionPacket(this.entity.getId(), this.ap));
|
sender.accept(new ClientboundSetEntityMotionPacket(this.entity.getId(), this.ap));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -52,14 +52,14 @@ index a514a1f26e439b5959093488ec9905fec327a404..0ac580f3cf8f95025992420702d67ad5
|
|||||||
- if (!list.isEmpty()) {
|
- if (!list.isEmpty()) {
|
||||||
- sender.accept(new ClientboundSetEquipmentPacket(this.entity.getId(), list));
|
- sender.accept(new ClientboundSetEquipmentPacket(this.entity.getId(), list));
|
||||||
- }
|
- }
|
||||||
- ((LivingEntity) this.entity).detectEquipmentUpdates(); // CraftBukkit - SPIGOT-3789: sync again immediately after sending
|
- ((LivingEntity) this.entity).detectEquipmentUpdatesPublic(); // CraftBukkit - SPIGOT-3789: sync again immediately after sending
|
||||||
+ if (this.entity instanceof LivingEntity livingEntity) {
|
+ if (this.entity instanceof LivingEntity livingEntity) {
|
||||||
+ livingEntity.sendEquipment(sender, player); // Slice
|
+ livingEntity.sendEquipment(sender, player); // Slice
|
||||||
}
|
}
|
||||||
|
|
||||||
// CraftBukkit start - MC-109346: Fix for nonsensical head yaw
|
if (!this.entity.getPassengers().isEmpty()) {
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
index 836c007db96b115a0f7a869649e9ed4738920093..b6c320554693d1b55a385c45784feb45d7cac757 100644
|
index cad14a4e7e39982c0df779a67c2e735c0186678f..39a69334c9bea26228a428b3db7e7a2bd021e44b 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||||
@@ -263,6 +263,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
@@ -263,6 +263,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||||
@@ -71,7 +71,7 @@ index 836c007db96b115a0f7a869649e9ed4738920093..b6c320554693d1b55a385c45784feb45
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public float getBukkitYaw() {
|
public float getBukkitYaw() {
|
||||||
@@ -3071,6 +3073,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
@@ -3108,6 +3110,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||||
if (map != null) {
|
if (map != null) {
|
||||||
this.handleHandSwap(map);
|
this.handleHandSwap(map);
|
||||||
if (!map.isEmpty()) {
|
if (!map.isEmpty()) {
|
||||||
@@ -79,7 +79,7 @@ index 836c007db96b115a0f7a869649e9ed4738920093..b6c320554693d1b55a385c45784feb45
|
|||||||
this.handleEquipmentChanges(map);
|
this.handleEquipmentChanges(map);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3163,7 +3166,25 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
@@ -3200,7 +3203,25 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
@@ -106,7 +106,7 @@ index 836c007db96b115a0f7a869649e9ed4738920093..b6c320554693d1b55a385c45784feb45
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Paper start - hide unnecessary item meta
|
// Paper start - hide unnecessary item meta
|
||||||
@@ -4450,4 +4471,74 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
@@ -4527,4 +4548,74 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||||
public static record Fallsounds(SoundEvent small, SoundEvent big) {
|
public static record Fallsounds(SoundEvent small, SoundEvent big) {
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -176,13 +176,13 @@ index 836c007db96b115a0f7a869649e9ed4738920093..b6c320554693d1b55a385c45784feb45
|
|||||||
+ consumer.accept(equipmentPacket);
|
+ consumer.accept(equipmentPacket);
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ detectEquipmentUpdates(); // CraftBukkit - SPIGOT-3789: sync again immediately after sending
|
+ detectEquipmentUpdatesPublic(); // CraftBukkit - SPIGOT-3789: sync again immediately after sending
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+ // Slice end
|
+ // Slice end
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||||
index b25f5931f836fd4d8695120f0bcb7c52deff8583..68507518df679a354534a82f32a011727ae7cea0 100644
|
index fe2124694eb080cab685a1ce1f6a66e2fcdf6a17..fa70fae582a9415322d967996458902f5aea3e01 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||||
@@ -1099,4 +1099,14 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
@@ -1099,4 +1099,14 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add canDespawn to Warden
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java
|
diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||||
index 9afc81ccb237c3655d64cdbe8a0db9a4d7791043..286e2ad0887379b5b16ca3ca89a8f0d62be258e7 100644
|
index 73871f456a85bda1e51f54986d0e61fb629822e8..fb0079c527d91e6f6f0ad7ab926418e2fc90c984 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/EntityType.java
|
--- a/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/EntityType.java
|
+++ b/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||||
@@ -588,7 +588,7 @@ public class EntityType<T extends Entity> implements FeatureElement, EntityTypeT
|
@@ -589,7 +589,7 @@ public class EntityType<T extends Entity> implements FeatureElement, EntityTypeT
|
||||||
}), (entity) -> {
|
}), (entity) -> {
|
||||||
entity.load(nbt);
|
entity.load(nbt);
|
||||||
}, () -> {
|
}, () -> {
|
||||||
@@ -18,10 +18,10 @@ index 9afc81ccb237c3655d64cdbe8a0db9a4d7791043..286e2ad0887379b5b16ca3ca89a8f0d6
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
diff --git a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
||||||
index 97b763431bc5015448ee7a26a340635a932c950b..e8b748eb16d7409a69dbd364a59dcf217ce701ec 100644
|
index b2bc3a832c310448046ccde37a04918aa6d63197..a4cef5d81b0eeef933440bc7f96a9a8ef3a5afdf 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
--- a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
+++ b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
||||||
@@ -110,6 +110,7 @@ public class Warden extends Monster implements VibrationSystem {
|
@@ -111,6 +111,7 @@ public class Warden extends Monster implements VibrationSystem {
|
||||||
private final VibrationSystem.User vibrationUser = new Warden.VibrationUser();
|
private final VibrationSystem.User vibrationUser = new Warden.VibrationUser();
|
||||||
private VibrationSystem.Data vibrationData = new VibrationSystem.Data();
|
private VibrationSystem.Data vibrationData = new VibrationSystem.Data();
|
||||||
AngerManagement angerManagement = new AngerManagement(this::canTargetEntity, Collections.emptyList());
|
AngerManagement angerManagement = new AngerManagement(this::canTargetEntity, Collections.emptyList());
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Save DimensionDataStorage async
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java b/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java
|
diff --git a/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java b/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java
|
||||||
index 637a86e74d633901fdd2f2f1ba6aa4ed49780ead..8cf3880d9168b5ba6b383ec921bfb490ea51ac38 100644
|
index f921f55e815a4da01828e025881a7a03591c3978..f44dbf56062148ff442141bc0058accc275617b2 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java
|
--- a/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java
|
+++ b/src/main/java/net/minecraft/world/level/storage/DimensionDataStorage.java
|
||||||
@@ -9,6 +9,8 @@ import java.io.FileInputStream;
|
@@ -9,6 +9,8 @@ import java.io.FileInputStream;
|
||||||
@@ -15,9 +15,9 @@ index 637a86e74d633901fdd2f2f1ba6aa4ed49780ead..8cf3880d9168b5ba6b383ec921bfb490
|
|||||||
+import java.util.concurrent.CompletableFuture;
|
+import java.util.concurrent.CompletableFuture;
|
||||||
+import java.util.concurrent.ConcurrentHashMap;
|
+import java.util.concurrent.ConcurrentHashMap;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
import java.util.function.Supplier;
|
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
@@ -18,11 +20,12 @@ import net.minecraft.nbt.NbtIo;
|
import net.minecraft.SharedConstants;
|
||||||
|
@@ -17,11 +19,12 @@ import net.minecraft.nbt.NbtIo;
|
||||||
import net.minecraft.nbt.NbtUtils;
|
import net.minecraft.nbt.NbtUtils;
|
||||||
import net.minecraft.util.datafix.DataFixTypes;
|
import net.minecraft.util.datafix.DataFixTypes;
|
||||||
import net.minecraft.world.level.saveddata.SavedData;
|
import net.minecraft.world.level.saveddata.SavedData;
|
||||||
@@ -31,16 +31,16 @@ index 637a86e74d633901fdd2f2f1ba6aa4ed49780ead..8cf3880d9168b5ba6b383ec921bfb490
|
|||||||
private final DataFixer fixerUpper;
|
private final DataFixer fixerUpper;
|
||||||
private final File dataFolder;
|
private final File dataFolder;
|
||||||
|
|
||||||
@@ -51,7 +54,7 @@ public class DimensionDataStorage {
|
@@ -50,7 +53,7 @@ public class DimensionDataStorage {
|
||||||
SavedData savedData = this.cache.get(id);
|
SavedData savedData = this.cache.get(id);
|
||||||
if (savedData == null && !this.cache.containsKey(id)) {
|
if (savedData == null && !this.cache.containsKey(id)) {
|
||||||
savedData = this.readSavedData(readFunction, id);
|
savedData = this.readSavedData(type.deserializer(), type.type(), id);
|
||||||
- this.cache.put(id, savedData);
|
- this.cache.put(id, savedData);
|
||||||
+ if (savedData != null) this.cache.put(id, savedData);
|
+ if (savedData != null) this.cache.put(id, savedData);
|
||||||
}
|
}
|
||||||
|
|
||||||
return (T)savedData;
|
return (T)savedData;
|
||||||
@@ -119,11 +122,12 @@ public class DimensionDataStorage {
|
@@ -118,11 +121,12 @@ public class DimensionDataStorage {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void save() {
|
public void save() {
|
||||||
|
|||||||
@@ -4,15 +4,15 @@ Date: Tue, 22 Aug 2023 06:22:16 -0500
|
|||||||
Subject: [PATCH] Add reason to PlayerConnectionCloseEvent
|
Subject: [PATCH] Add reason to PlayerConnectionCloseEvent
|
||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
|
diff --git a/src/main/java/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java
|
||||||
index 2ff578e4a953ffcf5176815ba8e3f06f73499989..f9a1b0e3be862cc00370c130621a07be5deebf0c 100644
|
index 8dbcc1b3a70b6bbea3bd2d15b6d66cc4f9cd53f8..9ae791c7a71c8ebfe9018c42d109c0f4a51a9dda 100644
|
||||||
--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
|
--- a/src/main/java/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java
|
||||||
+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
|
+++ b/src/main/java/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java
|
||||||
@@ -193,6 +193,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener,
|
@@ -138,6 +138,7 @@ public class ServerConfigurationPacketListenerImpl extends ServerCommonPacketLis
|
||||||
|
// Paper end
|
||||||
this.connection.send(new ClientboundDisconnectPacket(ichatmutablecomponent));
|
this.connection.send(new ClientboundDisconnectPacket(ServerConfigurationPacketListenerImpl.DISCONNECT_REASON_INVALID_DATA));
|
||||||
this.connection.disconnect(ichatmutablecomponent);
|
this.connection.disconnect(ServerConfigurationPacketListenerImpl.DISCONNECT_REASON_INVALID_DATA);
|
||||||
+ new com.destroystokyo.paper.event.player.PlayerConnectionCloseEvent(this.gameProfile.getId(), this.gameProfile.getName(), ((java.net.InetSocketAddress)this.connection.address).getAddress(), com.destroystokyo.paper.event.player.PlayerConnectionCloseEvent.ConnectionCloseReason.INVALID_PLAYER_DATA, false).callEvent(); // Slice
|
+ new com.destroystokyo.paper.event.player.PlayerConnectionCloseEvent(this.gameProfile.getId(), this.gameProfile.getName(), ((java.net.InetSocketAddress)this.connection.address).getAddress(), com.destroystokyo.paper.event.player.PlayerConnectionCloseEvent.ConnectionCloseReason.INVALID_PLAYER_DATA, false).callEvent(); // Slice
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|||||||
@@ -4,12 +4,12 @@ Date: Tue, 3 Oct 2023 09:18:59 -0500
|
|||||||
Subject: [PATCH] Change KeepAlive interval
|
Subject: [PATCH] Change KeepAlive interval
|
||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||||
index 42e61e55ef45935e1f690eefa56bc36842cdd974..049c1417968d89ba7b6208339e4a812bc72e007b 100644
|
index 231150bac0ae61e9722c2cdfd70d6f7d254681e4..75e9c680979d9e6e8605db800f2d5d35bf32f212 100644
|
||||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
--- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
+++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||||
@@ -409,7 +409,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
@@ -210,7 +210,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||||
this.disconnect(Component.translatable("disconnect.timeout", new Object[0]), org.bukkit.event.player.PlayerKickEvent.Cause.TIMEOUT); // Paper - kick event cause
|
this.disconnect(ServerCommonPacketListenerImpl.TIMEOUT_DISCONNECTION_MESSAGE, org.bukkit.event.player.PlayerKickEvent.Cause.TIMEOUT); // Paper - kick event cause
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
- if (elapsedTime >= 15000L) { // 15 seconds
|
- if (elapsedTime >= 15000L) { // 15 seconds
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
pluginManagement {
|
pluginManagement {
|
||||||
repositories {
|
repositories {
|
||||||
gradlePluginPortal()
|
gradlePluginPortal()
|
||||||
maven("https://papermc.io/repo/repository/maven-public/")
|
maven("https://repo.papermc.io/repository/maven-public/")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user