Updated Upstream (Bukkit/CraftBukkit) (#10379)
Updated Upstream (Bukkit/CraftBukkit) Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: f02baa38 PR-988: Add World#getIntersectingChunks(BoundingBox) 9321d665 Move getItemInUse up to LivingEntity 819eef73 PR-959: Add access to current item's remaining ticks c4fdadb0 SPIGOT-7601: Add AbstractArrow#getItem be8261ca Add support for Java 22 26119676 PR-979: Add more translation keys 66753362 PR-985: Correct book maximum pages and characters per page documentation c8be92fa PR-980: Improve getArmorContents() documentation f1120ee2 PR-983: Expose riptide velocity to PlayerRiptideEvent CraftBukkit Changes: dfaa89bbe PR-1369: Add World#getIntersectingChunks(BoundingBox) 51bbab2b9 Move getItemInUse up to LivingEntity 668e09602 PR-1331: Add access to current item's remaining ticks a639406d1 SPIGOT-7601: Add AbstractArrow#getItem 0398930fc SPIGOT-7602: Allow opening in-world horse and related inventories ffd15611c SPIGOT-7608: Allow empty lists to morph to any PDT list 2188dcfa9 Add support for Java 22 45d6a609f SPIGOT-7604: Revert "SPIGOT-7365: DamageCause blocked by shield should trigger invulnerableTime" 06d915943 SPIGOT-7365: DamageCause blocked by shield should trigger invulnerableTime ca3bc3707 PR-1361: Add more translation keys 366c3ca80 SPIGOT-7600: EntityChangeBlockEvent is not fired for frog eggs 06d0f9ba8 SPIGOT-7593: Fix sapling growth physics / client-side updates 45c2608e4 PR-1366: Expose riptide velocity to PlayerRiptideEvent 29b6bb79b SPIGOT-7587: Remove fixes for now-resolved MC-142590 and MC-109346
This commit is contained in:
parent
a2035440cf
commit
bd38e0318a
397 changed files with 1094 additions and 919 deletions
|
@ -28,7 +28,7 @@ index 37dab9e868dbfb019c271a547d975a48ad1cb571..3811c0d849a3eb028ed1a6b7a2d4747f
|
|||
+/.factorypath
|
||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..74849d7b20e3c3831a6a6c3715a6e875d6ff8a48
|
||||
index 0000000000000000000000000000000000000000..4e0b810bd0a9991d10e13920f47f0b6d0a56f6aa
|
||||
--- /dev/null
|
||||
+++ b/build.gradle.kts
|
||||
@@ -0,0 +1,141 @@
|
||||
|
@ -46,7 +46,7 @@ index 0000000000000000000000000000000000000000..74849d7b20e3c3831a6a6c3715a6e875
|
|||
+ implementation("org.apache.logging.log4j:log4j-iostreams:2.19.0") {
|
||||
+ exclude(group = "org.apache.logging.log4j", module = "log4j-api")
|
||||
+ }
|
||||
+ implementation("org.ow2.asm:asm-commons:9.5")
|
||||
+ implementation("org.ow2.asm:asm-commons:9.7")
|
||||
+ implementation("commons-lang:commons-lang:2.6")
|
||||
+ runtimeOnly("org.xerial:sqlite-jdbc:3.42.0.1")
|
||||
+ runtimeOnly("com.mysql:mysql-connector-j:8.2.0")
|
||||
|
@ -57,8 +57,8 @@ index 0000000000000000000000000000000000000000..74849d7b20e3c3831a6a6c3715a6e875
|
|||
+
|
||||
+ testImplementation("org.junit.jupiter:junit-jupiter:5.10.0")
|
||||
+ testImplementation("org.hamcrest:hamcrest:2.2")
|
||||
+ testImplementation("org.mockito:mockito-core:5.5.0")
|
||||
+ testImplementation("org.ow2.asm:asm-tree:9.5")
|
||||
+ testImplementation("org.mockito:mockito-core:5.11.0")
|
||||
+ testImplementation("org.ow2.asm:asm-tree:9.7")
|
||||
+}
|
||||
+
|
||||
+val craftbukkitPackageVersion = "1_20_R3" // Paper
|
||||
|
@ -175,7 +175,7 @@ index 0000000000000000000000000000000000000000..74849d7b20e3c3831a6a6c3715a6e875
|
|||
+}
|
||||
diff --git a/pom.xml b/pom.xml
|
||||
deleted file mode 100644
|
||||
index 323892c4a4bbbb9e36a6295bb390ad82798e213c..0000000000000000000000000000000000000000
|
||||
index 226b56846562846d1b89c54b67b4ccc235eaf3e9..0000000000000000000000000000000000000000
|
||||
--- a/pom.xml
|
||||
+++ /dev/null
|
||||
@@ -1,608 +0,0 @@
|
||||
|
@ -242,7 +242,7 @@ index 323892c4a4bbbb9e36a6295bb390ad82798e213c..00000000000000000000000000000000
|
|||
- <dependency>
|
||||
- <groupId>org.ow2.asm</groupId>
|
||||
- <artifactId>asm-commons</artifactId>
|
||||
- <version>9.5</version>
|
||||
- <version>9.7</version>
|
||||
- <scope>compile</scope>
|
||||
- </dependency>
|
||||
- <!-- Mojang depends -->
|
||||
|
@ -466,13 +466,13 @@ index 323892c4a4bbbb9e36a6295bb390ad82798e213c..00000000000000000000000000000000
|
|||
- <dependency>
|
||||
- <groupId>org.mockito</groupId>
|
||||
- <artifactId>mockito-core</artifactId>
|
||||
- <version>5.5.0</version>
|
||||
- <version>5.11.0</version>
|
||||
- <scope>test</scope>
|
||||
- </dependency>
|
||||
- <dependency>
|
||||
- <groupId>org.ow2.asm</groupId>
|
||||
- <artifactId>asm-tree</artifactId>
|
||||
- <version>9.5</version>
|
||||
- <version>9.7</version>
|
||||
- <scope>test</scope>
|
||||
- </dependency>
|
||||
- </dependencies>
|
||||
|
|
|
@ -20,7 +20,7 @@ index 74849d7b20e3c3831a6a6c3715a6e875d6ff8a48..ff9e7b4c4354d4475559213cdaa01728
|
|||
- exclude(group = "org.apache.logging.log4j", module = "log4j-api")
|
||||
- }
|
||||
+ implementation("org.apache.logging.log4j:log4j-iostreams:2.19.0") // Paper - remove exclusion
|
||||
implementation("org.ow2.asm:asm-commons:9.5")
|
||||
implementation("org.ow2.asm:asm-commons:9.7")
|
||||
implementation("commons-lang:commons-lang:2.6")
|
||||
runtimeOnly("org.xerial:sqlite-jdbc:3.42.0.1")
|
||||
@@ -36,6 +34,7 @@ tasks.jar {
|
||||
|
@ -111,7 +111,7 @@ index a2a8bce29ec5540de89095574dfdc0ca9b17bbd3..d92cd89373f8373c367ce422328b9836
|
|||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
index dc1021186ad4c4db26fb498e58ddec06f8bc1cf6..96210dd54e8ff6dc0375a8d03bf14fec1b26aaeb 100644
|
||||
index 2930f37c663a1824a2d38df8e4b679aa6adbd870..67d347741db1c5a9a6568ee084388a59e35b16ea 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
@@ -209,7 +209,7 @@ public class Main {
|
||||
|
|
|
@ -10,8 +10,8 @@ index ff9e7b4c4354d4475559213cdaa01728601859fa..5304f5de52a76eee876ac8f0b2834a93
|
|||
+++ b/build.gradle.kts
|
||||
@@ -23,6 +23,7 @@ dependencies {
|
||||
testImplementation("org.hamcrest:hamcrest:2.2")
|
||||
testImplementation("org.mockito:mockito-core:5.5.0")
|
||||
testImplementation("org.ow2.asm:asm-tree:9.5")
|
||||
testImplementation("org.mockito:mockito-core:5.11.0")
|
||||
testImplementation("org.ow2.asm:asm-tree:9.7")
|
||||
+ testImplementation("org.junit-pioneer:junit-pioneer:2.2.0") // Paper - CartesianTest
|
||||
}
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@ index beb50d67ea2c1933a115766627b2adabd2032929..b8970d0064b9b64e1c50ab373818c386
|
|||
@@ -11,6 +11,7 @@ dependencies {
|
||||
implementation("jline:jline:2.12.1")
|
||||
implementation("org.apache.logging.log4j:log4j-iostreams:2.19.0") // Paper - remove exclusion
|
||||
implementation("org.ow2.asm:asm-commons:9.5")
|
||||
implementation("org.ow2.asm:asm-commons:9.7")
|
||||
+ implementation("org.spongepowered:configurate-yaml:4.2.0-SNAPSHOT") // Paper - config files
|
||||
implementation("commons-lang:commons-lang:2.6")
|
||||
runtimeOnly("org.xerial:sqlite-jdbc:3.42.0.1")
|
||||
|
@ -4847,7 +4847,7 @@ index 602964d92ddf9e4ec47ed3cb45787fdd061a881e..66550ce5cc83534af8dcac338db5cd4c
|
|||
String s = (String) Optional.ofNullable((String) optionset.valueOf("world")).orElse(dedicatedserversettings.getProperties().levelName);
|
||||
LevelStorageSource convertable = LevelStorageSource.createDefault(file.toPath());
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index dafeae664880f6da2f1aa0d9b4fbd743ed9b5572..15bdddae68db770690ddfcb19c7ecdbedbfa8cb7 100644
|
||||
index 42da710d18063aed6fd450fe31277d7daf0542c1..62e096c9cc05c387ca2413a490f44c6c66a5c41e 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -295,6 +295,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
|
@ -4945,7 +4945,7 @@ index 50b79de15571ef30f202bae5952a9f825902e11a..aac9513ff4d3d494860bd06607cf8af5
|
|||
this.convertable = convertable_conversionsession;
|
||||
this.uuid = WorldUUID.getUUID(convertable_conversionsession.levelDirectory.path().toFile());
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 8487fa452e4009c0f2a23a0d4eac4bf56f91447b..00ddf94c5bade8c0c486337ce920f59d63cb64e2 100644
|
||||
index f7e8cabd6ef7d31b785b69db1d5b24d55563dbe4..bd9ea2bd012cdcf07ac322b3e0360c6c336ab1f9 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -158,6 +158,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
|
|
@ -6074,7 +6074,7 @@ index 44cac39893eb968aa8ea21ee571c0dcb866ce06c..5151d68ba6ec72a7124f298253c5f0af
|
|||
+
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 650bf3483414751fbda7bff584af55df49cef22d..0c77b4b201f6586b4d143ce2c3e710bf9d276a20 100644
|
||||
index 9c23ad38f935b2f31c0e0998e685978434202900..4035faedd9f5f72f262822a9f050178d99be06e4 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -296,6 +296,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
|
@ -7054,7 +7054,7 @@ index 337e0a7b3c14e1b1a28744920e0dc0a69e0c5a87..f5829ae484d93b547a5437b85a962134
|
|||
@Override
|
||||
public void tell(R runnable) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 02a90d4719b53f8538ed79c1f1a5c6d8833e495c..01c2ccb29dd74655ef65cc29ff2cafe6b467e5a5 100644
|
||||
index cdefbfb7a578d5f90b24f24dbc9a0fe627b91474..17e489c4650ba421a993c863426f1a2084d44fb0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -331,6 +331,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
|
||||
|
@ -7070,7 +7070,7 @@ index 02a90d4719b53f8538ed79c1f1a5c6d8833e495c..01c2ccb29dd74655ef65cc29ff2cafe6
|
|||
public Entity(EntityType<?> type, Level world) {
|
||||
this.id = Entity.ENTITY_COUNTER.incrementAndGet();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index a038920172102f5ad4ceb77abef4f7b61fca5862..ea73e8a04ee767625d06483dce83d68262887a27 100644
|
||||
index cb0d7779a2eeadca49a99ab31217b27f5fd49e4c..864da662a81b653cd94e2270be262e912e351e21 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -259,6 +259,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
|
@ -7249,7 +7249,7 @@ index 3c707d6674b2594b09503b959a31c1f4ad3981e6..db61b6b0158a9bcc0e1d735e34fe3671
|
|||
public BlockState getBlockState(BlockPos pos) {
|
||||
return Blocks.AIR.defaultBlockState();
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 00ddf94c5bade8c0c486337ce920f59d63cb64e2..d89431b476b032f3ff86097bb91b86016d4e3371 100644
|
||||
index bd9ea2bd012cdcf07ac322b3e0360c6c336ab1f9..bede1a64e4f04aa8e87ddb44f2cc4a1ab46a3b81 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -93,6 +93,7 @@ import org.bukkit.craftbukkit.CraftServer;
|
||||
|
@ -7340,7 +7340,7 @@ index 00ddf94c5bade8c0c486337ce920f59d63cb64e2..d89431b476b032f3ff86097bb91b8601
|
|||
return this.setBlock(pos, state, flags, 512);
|
||||
}
|
||||
|
||||
@@ -555,7 +597,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -556,7 +598,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
if (this.isOutsideBuildHeight(pos)) {
|
||||
return Blocks.VOID_AIR.defaultBlockState();
|
||||
} else {
|
||||
|
@ -7773,10 +7773,10 @@ index 2cc1871c81056acd0582184bb684e672d14d3b6f..5cf26c39b00ea1f7b1c5719f434af79f
|
|||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index fcf06c157fa8ecdb742c301a95da8489e951ea20..1ce9787b04e28b3a50fdc7779a430c3be60a7646 100644
|
||||
index 0630680d1ff7ffd2e9c323a800213b1137817642..f012ba9c55241afb159136e8b55e774047efa2c8 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -251,8 +251,8 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -252,8 +252,8 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public Chunk[] getLoadedChunks() {
|
||||
|
@ -7787,7 +7787,7 @@ index fcf06c157fa8ecdb742c301a95da8489e951ea20..1ce9787b04e28b3a50fdc7779a430c3b
|
|||
}
|
||||
|
||||
@Override
|
||||
@@ -327,7 +327,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -328,7 +328,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public boolean refreshChunk(int x, int z) {
|
||||
|
@ -7796,7 +7796,7 @@ index fcf06c157fa8ecdb742c301a95da8489e951ea20..1ce9787b04e28b3a50fdc7779a430c3b
|
|||
if (playerChunk == null) return false;
|
||||
|
||||
playerChunk.getTickingChunkFuture().thenAccept(either -> {
|
||||
@@ -2055,4 +2055,55 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -2075,4 +2075,55 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
return this.spigot;
|
||||
}
|
||||
// Spigot end
|
||||
|
@ -8177,7 +8177,7 @@ index 0000000000000000000000000000000000000000..909b2c98e7a9117d2f737245e4661792
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index a2eb1e6dc8218157c1a5bbd769dd3b1d881fddb6..56c3aa7647eb2890cf7f546d35002b0c43724500 100644
|
||||
index 09b3bfa3ad0cf060b126cffd1de1032bc329cb44..30f0c671464e2d4557845f150d8d18bfcd645e14 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -107,8 +107,17 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
|
|
|
@ -2667,7 +2667,7 @@ index a5578cbce2d1d39ba3315e53425d5323e6823a65..7a036c08fa67504d06c8f72a32c22814
|
|||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 0c77b4b201f6586b4d143ce2c3e710bf9d276a20..3691fd58c7baf98b15c50fa4dacf3a35f4f9b4b8 100644
|
||||
index 4035faedd9f5f72f262822a9f050178d99be06e4..4c18491a627e66297627abbded1af48b2026e610 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -191,6 +191,7 @@ import org.bukkit.craftbukkit.SpigotTimings; // Spigot
|
||||
|
@ -2727,7 +2727,7 @@ index 0c77b4b201f6586b4d143ce2c3e710bf9d276a20..3691fd58c7baf98b15c50fa4dacf3a35
|
|||
this.motd = motd;
|
||||
}
|
||||
|
||||
@@ -2439,23 +2450,28 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -2434,23 +2445,28 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
}
|
||||
|
||||
public void logChatMessage(Component message, ChatType.Bound params, @Nullable String prefix) {
|
||||
|
@ -3577,10 +3577,10 @@ index 5cf26c39b00ea1f7b1c5719f434af79fb20c6c60..8441cbe4ebd676d1aacff223abdabeb3
|
|||
+ // Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 1ce9787b04e28b3a50fdc7779a430c3be60a7646..8ff8d8174cd32d25b33c2e773d30c474b4e903d3 100644
|
||||
index f012ba9c55241afb159136e8b55e774047efa2c8..95b3bcd4cfcedc358096831bc59a7effd186a063 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -161,6 +161,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -162,6 +162,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
private final BlockMetadataStore blockMetadata = new BlockMetadataStore(this);
|
||||
private final Object2IntOpenHashMap<SpawnCategory> spawnCategoryLimit = new Object2IntOpenHashMap<>();
|
||||
private final CraftPersistentDataContainer persistentDataContainer = new CraftPersistentDataContainer(CraftWorld.DATA_TYPE_REGISTRY);
|
||||
|
@ -3588,7 +3588,7 @@ index 1ce9787b04e28b3a50fdc7779a430c3be60a7646..8ff8d8174cd32d25b33c2e773d30c474
|
|||
|
||||
private static final Random rand = new Random();
|
||||
|
||||
@@ -1659,6 +1660,42 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1679,6 +1680,42 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
entityTracker.broadcastAndSend(packet);
|
||||
}
|
||||
}
|
||||
|
@ -3631,7 +3631,7 @@ index 1ce9787b04e28b3a50fdc7779a430c3be60a7646..8ff8d8174cd32d25b33c2e773d30c474
|
|||
|
||||
private static Map<String, GameRules.Key<?>> gamerules;
|
||||
public static synchronized Map<String, GameRules.Key<?>> getGameRulesNMS() {
|
||||
@@ -2105,5 +2142,18 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -2125,5 +2162,18 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
public void setSendViewDistance(final int viewDistance) {
|
||||
throw new UnsupportedOperationException("Not implemented yet");
|
||||
}
|
||||
|
@ -3651,7 +3651,7 @@ index 1ce9787b04e28b3a50fdc7779a430c3be60a7646..8ff8d8174cd32d25b33c2e773d30c474
|
|||
// Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
index 02060584892d630d91f58e864ed34656ee738572..5158d536de16c93358d1b335b0fcfbe0d6ce848e 100644
|
||||
index 6f9196120177104c6e689ff1d39a06f91d04b0c8..c513d932e0c455401bbe53d13779df0e4bda16ec 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
@@ -20,6 +20,12 @@ public class Main {
|
||||
|
@ -4039,7 +4039,7 @@ index 1e82312c24cb752d63b165926861fc178cd7849b..7f22950ae61436e91a59cd29a345809c
|
|||
+ // Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java b/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
|
||||
index 24052b8102061c6fbf01b3e9b2346ed9783787e6..f0f7fb977edb7e7009716429f007e44fa36bfcda 100644
|
||||
index 9c1063d92a49c71f4458bf1634bcf9d79302ecca..f24b4732db849893fd870b4b6a49f1c4b3eacdec 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
|
||||
@@ -147,6 +147,12 @@ public class CraftEnchantment extends Enchantment implements Handleable<net.mine
|
||||
|
@ -4054,7 +4054,7 @@ index 24052b8102061c6fbf01b3e9b2346ed9783787e6..f0f7fb977edb7e7009716429f007e44f
|
|||
+ // Paper end
|
||||
|
||||
@Override
|
||||
public boolean equals(Object other) {
|
||||
public String getTranslationKey() {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
index 7126d8cdeea5eb23176af6a97a99b33961749d71..e78a378f0de48cde3702774970e6cda241b8ddda 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
|
@ -4119,10 +4119,10 @@ index 7126d8cdeea5eb23176af6a97a99b33961749d71..e78a378f0de48cde3702774970e6cda2
|
|||
@Override
|
||||
public boolean isPermissionSet(String name) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
index 4a70c2dfb3606bb67b80e99cae316906385f7ff3..52222f15399f2e1828f93b0f69e34157e3abff23 100644
|
||||
index 2411293eb87587ea0eac95d0ab976cba04fa5026..4d92ca5b580e66e78b592bc0de1078dc10a85f39 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
@@ -320,9 +320,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -323,9 +323,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
container = CraftEventFactory.callInventoryOpenEvent(player, container);
|
||||
if (container == null) return;
|
||||
|
||||
|
@ -4137,7 +4137,7 @@ index 4a70c2dfb3606bb67b80e99cae316906385f7ff3..52222f15399f2e1828f93b0f69e34157
|
|||
player.containerMenu = container;
|
||||
player.initMenu(container);
|
||||
}
|
||||
@@ -391,8 +394,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -394,8 +397,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
|
||||
// Now open the window
|
||||
MenuType<?> windowType = CraftContainer.getNotchInventoryType(inventory.getTopInventory());
|
||||
|
@ -4704,10 +4704,10 @@ index 5725b0281ac53a2354b233223259d6784353bc6e..9ef939b76d06874b856e0c850addb364
|
|||
@Override
|
||||
public int getLineWidth() {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 2496f4462b35a7297dd9320c35f109d3c2a9867f..6571adf5285ab3f84513c2f5b32ff0523c2cccd6 100644
|
||||
index 8290925413aab682504e98bde5fd6845929b3541..5ee9726324591055bb5d00cf9646203fbe7cc833 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -905,7 +905,7 @@ public class CraftEventFactory {
|
||||
@@ -906,7 +906,7 @@ public class CraftEventFactory {
|
||||
return event;
|
||||
}
|
||||
|
||||
|
@ -4716,7 +4716,7 @@ index 2496f4462b35a7297dd9320c35f109d3c2a9867f..6571adf5285ab3f84513c2f5b32ff052
|
|||
CraftPlayer entity = victim.getBukkitEntity();
|
||||
PlayerDeathEvent event = new PlayerDeathEvent(entity, drops, victim.getExpReward(), 0, deathMessage);
|
||||
event.setKeepInventory(keepInventory);
|
||||
@@ -932,7 +932,7 @@ public class CraftEventFactory {
|
||||
@@ -933,7 +933,7 @@ public class CraftEventFactory {
|
||||
* Server methods
|
||||
*/
|
||||
public static ServerListPingEvent callServerListPingEvent(SocketAddress address, String motd, int numPlayers, int maxPlayers) {
|
||||
|
@ -5167,6 +5167,44 @@ index 39eb09106c1e3d00eb32b56babae751f487d6bcb..893da5266fc09e583a660bc23ac84008
|
|||
@Override
|
||||
public boolean hasRepairCost() {
|
||||
return this.repairCost > 0;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimMaterial.java b/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimMaterial.java
|
||||
index 49752459ad67db3182c6d6d30ab91f2a420847a8..147950b8a1c853e1b52fdb29b26e839c2dd7bd01 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimMaterial.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimMaterial.java
|
||||
@@ -41,6 +41,14 @@ public class CraftTrimMaterial implements TrimMaterial, Handleable<net.minecraft
|
||||
@NotNull
|
||||
@Override
|
||||
public String getTranslationKey() {
|
||||
+ if (!(this.handle.description().getContents() instanceof TranslatableContents)) throw new UnsupportedOperationException("Description isn't translatable!"); // Paper
|
||||
return ((TranslatableContents) this.handle.description().getContents()).getKey();
|
||||
}
|
||||
+
|
||||
+ // Paper start - adventure
|
||||
+ @Override
|
||||
+ public net.kyori.adventure.text.Component description() {
|
||||
+ return io.papermc.paper.adventure.PaperAdventure.asAdventure(this.handle.description());
|
||||
+ }
|
||||
+ // Paper end - adventure
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimPattern.java b/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimPattern.java
|
||||
index cd5f68a6fb8290c238ba466a34d955eb90667459..88e9acd2084c5e7738017a91a454fc5407ab833b 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimPattern.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimPattern.java
|
||||
@@ -41,6 +41,14 @@ public class CraftTrimPattern implements TrimPattern, Handleable<net.minecraft.w
|
||||
@NotNull
|
||||
@Override
|
||||
public String getTranslationKey() {
|
||||
+ if (!(this.handle.description().getContents() instanceof TranslatableContents)) throw new UnsupportedOperationException("Description isn't translatable!"); // Paper
|
||||
return ((TranslatableContents) this.handle.description().getContents()).getKey();
|
||||
}
|
||||
+
|
||||
+ // Paper start - adventure
|
||||
+ @Override
|
||||
+ public net.kyori.adventure.text.Component description() {
|
||||
+ return io.papermc.paper.adventure.PaperAdventure.asAdventure(this.handle.description());
|
||||
+ }
|
||||
+ // Paper end - adventure
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/util/CraftCustomInventoryConverter.java b/src/main/java/org/bukkit/craftbukkit/inventory/util/CraftCustomInventoryConverter.java
|
||||
index ed4415f6dd588c08c922efd5beebb3b124beb9d6..78a7ac47f20e84ccd67ff44d0bc7a2f2faa0d476 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/util/CraftCustomInventoryConverter.java
|
||||
|
@ -5493,7 +5531,7 @@ index d4fc39c4c450e675c5696b376576a4449a475497..516b3fef4d388366df09f0dd88deadbc
|
|||
|
||||
boolean hadFormat = false;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 56c3aa7647eb2890cf7f546d35002b0c43724500..5cbac19f3c5eaa1940b36891b5a289c425300b20 100644
|
||||
index 30f0c671464e2d4557845f150d8d18bfcd645e14..203225cc5d0edc0de7e3dcf7ee4af15004cc1187 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -78,6 +78,43 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
|
|
|
@ -7253,7 +7253,7 @@ index 909b2c98e7a9117d2f737245e4661792ffafb744..d96399e9bf1a58db5a4a22e58abb99e7
|
|||
@Override
|
||||
public FileConfiguration getConfig() {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 5cbac19f3c5eaa1940b36891b5a289c425300b20..8db0df55c5e23657b3a99a56fefb8e7419618c16 100644
|
||||
index 203225cc5d0edc0de7e3dcf7ee4af15004cc1187..ea994c34e1ca725eae4d05223fc09fc1308b0730 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -426,6 +426,12 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
|
@ -7268,7 +7268,7 @@ index 5cbac19f3c5eaa1940b36891b5a289c425300b20..8db0df55c5e23657b3a99a56fefb8e74
|
|||
+ // Paper end
|
||||
|
||||
@Override
|
||||
public FeatureFlag getFeatureFlag(NamespacedKey namespacedKey) {
|
||||
public String getTranslationKey(final Attribute attribute) {
|
||||
diff --git a/src/main/resources/META-INF/services/io.papermc.paper.plugin.entrypoint.classloader.ClassloaderBytecodeModifier b/src/main/resources/META-INF/services/io.papermc.paper.plugin.entrypoint.classloader.ClassloaderBytecodeModifier
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..20dbe2775951bfcdb85c5d679ac86c77a93e0847
|
||||
|
|
|
@ -700,12 +700,12 @@ index 0000000000000000000000000000000000000000..2f0d9b953802dee821cfde82d22b0567
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/network/protocol/PacketUtils.java b/src/main/java/net/minecraft/network/protocol/PacketUtils.java
|
||||
index daedf825e68655492f5ab776bc206a5eb87c0170..7de24c39b460e43d27839b3821e67213508ece81 100644
|
||||
index c8134e605e2dd58c2af1cbefc5e20e91b6414d2a..b7ffab0284b0bccd79775b8d03c8b2e088f91d1d 100644
|
||||
--- a/src/main/java/net/minecraft/network/protocol/PacketUtils.java
|
||||
+++ b/src/main/java/net/minecraft/network/protocol/PacketUtils.java
|
||||
@@ -29,7 +29,8 @@ public class PacketUtils {
|
||||
engine.executeIfPossible(() -> {
|
||||
if (MinecraftServer.getServer().hasStopped() || (listener instanceof ServerCommonPacketListenerImpl && ((ServerCommonPacketListenerImpl) listener).processedDisconnect)) return; // CraftBukkit, MC-142590
|
||||
if (listener instanceof ServerCommonPacketListenerImpl serverCommonPacketListener && serverCommonPacketListener.processedDisconnect) return; // CraftBukkit - Don't handle sync packets for kicked players
|
||||
if (listener.shouldHandleMessage(packet)) {
|
||||
- try {
|
||||
+ co.aikar.timings.Timing timing = co.aikar.timings.MinecraftTimings.getPacketTiming(packet); // Paper - timings
|
||||
|
@ -714,7 +714,7 @@ index daedf825e68655492f5ab776bc206a5eb87c0170..7de24c39b460e43d27839b3821e67213
|
|||
} catch (Exception exception) {
|
||||
label25:
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 3691fd58c7baf98b15c50fa4dacf3a35f4f9b4b8..a6a8b5079ceaad90a79a09cab5c38a6fde6d33ee 100644
|
||||
index 4c18491a627e66297627abbded1af48b2026e610..3365d2ec8426888c16873a311226fa69840fa2f0 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -186,7 +186,7 @@ import org.bukkit.craftbukkit.Main;
|
||||
|
@ -1315,7 +1315,7 @@ index 5e00df1cd2b8a6691b2f9490b1f4c3ed4d6a988a..72488b0d499e4e0d0ccba38622cc5a3f
|
|||
|
||||
public UserWhiteList getWhiteList() {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 01c2ccb29dd74655ef65cc29ff2cafe6b467e5a5..cdb4acbaf019608c57d7a40c6928ddc9c00fd1d5 100644
|
||||
index 17e489c4650ba421a993c863426f1a2084d44fb0..360e322ee298048bd280160a49f000384d930c3a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -135,7 +135,6 @@ import org.bukkit.craftbukkit.event.CraftPortalEvent;
|
||||
|
@ -1393,7 +1393,7 @@ index c4bc491eed487c0a7e30538b0fb46fde91cd7b31..382b55167dede435b034866bd394455f
|
|||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index ea73e8a04ee767625d06483dce83d68262887a27..5ae9f9a4cb903909cb26a612a847d12515c52d91 100644
|
||||
index 864da662a81b653cd94e2270be262e912e351e21..da755e478d2ab1444c92afd0d916589b2e6f4df4 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -142,7 +142,7 @@ import org.bukkit.event.entity.EntityTeleportEvent;
|
||||
|
@ -1474,7 +1474,7 @@ index ea73e8a04ee767625d06483dce83d68262887a27..5ae9f9a4cb903909cb26a612a847d125
|
|||
if (!this.level().isClientSide && this.isSensitiveToWater() && this.isInWaterRainOrBubble()) {
|
||||
this.hurt(this.damageSources().drown(), 1.0F);
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index d89431b476b032f3ff86097bb91b86016d4e3371..aa22d4024cdd0ecb1c0442ecdeae00822597362e 100644
|
||||
index bede1a64e4f04aa8e87ddb44f2cc4a1ab46a3b81..d02cc220c8bd59a1289f34fd9fb70a00b0fbc07a 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -91,7 +91,6 @@ import org.bukkit.Bukkit;
|
||||
|
@ -1503,7 +1503,7 @@ index d89431b476b032f3ff86097bb91b86016d4e3371..aa22d4024cdd0ecb1c0442ecdeae0082
|
|||
this.entityLimiter = new org.spigotmc.TickLimiter(this.spigotConfig.entityMaxTickTime);
|
||||
this.tileLimiter = new org.spigotmc.TickLimiter(this.spigotConfig.tileMaxTickTime);
|
||||
}
|
||||
@@ -725,15 +724,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -726,15 +725,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
this.timings.tileEntityTick.stopTiming(); // Spigot
|
||||
this.tickingBlockEntities = false;
|
||||
|
@ -2019,7 +2019,7 @@ index f97eccb6a17c7876e1e002d798eb67bbe80571a0..76effc345d362047e64d064eb64a5222
|
|||
+ } // Paper
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 8db0df55c5e23657b3a99a56fefb8e7419618c16..5e541636b216d4f46be18b1031522bd92e667b67 100644
|
||||
index ea994c34e1ca725eae4d05223fc09fc1308b0730..d72e6ebc8b7b002279ba61c30b5a42f8cd5b3b7b 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -214,6 +214,12 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
|
@ -2035,7 +2035,7 @@ index 8db0df55c5e23657b3a99a56fefb8e7419618c16..5e541636b216d4f46be18b1031522bd9
|
|||
|
||||
public static byte toLegacyData(BlockState data) {
|
||||
return CraftLegacy.toLegacyData(data);
|
||||
@@ -457,6 +463,12 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -462,6 +468,12 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
public DamageSource.Builder createDamageSourceBuilder(DamageType damageType) {
|
||||
return new CraftDamageSourceBuilder(damageType);
|
||||
}
|
||||
|
|
|
@ -140,10 +140,10 @@ index 0000000000000000000000000000000000000000..22a55be34fde453fedd987173d95b8b3
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 5e541636b216d4f46be18b1031522bd92e667b67..d11773ed44936f8836f2f8e582d5e9573af5b439 100644
|
||||
index d72e6ebc8b7b002279ba61c30b5a42f8cd5b3b7b..82d862432d061f8f1809647d9eecfff38a6311d4 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -468,6 +468,11 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -473,6 +473,11 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
public String getTimingsServerName() {
|
||||
return io.papermc.paper.configuration.GlobalConfiguration.get().timings.serverName;
|
||||
}
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Prevent block entity and entity crashes
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 9cfc60863caeaa1fd0df153889cadd88fef9e111..3442bfe428f6d0655082468f281cbda97f88f6ea 100644
|
||||
index 953ff52b6e6397a8f81b0935fc2fb8cfadf5cf40..eb6bf467c92cb04c9f1ffcde0b5df64e9a160d59 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -734,11 +734,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -735,11 +735,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
try {
|
||||
tickConsumer.accept(entity);
|
||||
} catch (Throwable throwable) {
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Disable spigot tick limiters
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 7ead83d46e7bb3ee3586acf695b08f197f61f04a..6fbadd278138743f87fcf6b3c3d3c57af41d437c 100644
|
||||
index 673141ab586057b2d05b3921cc4d42b4f5e049ab..3f910b1712c41e91de99ad00a90e0f3081f94deb 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -707,9 +707,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -708,9 +708,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
boolean flag = this.tickRateManager().runsNormally();
|
||||
|
||||
int tilesThisCycle = 0;
|
||||
|
|
|
@ -81,10 +81,10 @@ index c6fb4c33d7ea52b88d8fc0d90748cbab7387c565..2b5b2869589991be37a4f128faabbff5
|
|||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index c74102a53daab92f0d7d4d7619af0e3264322847..3452010631eede3907b29b9f76ba12c9c6808b6f 100644
|
||||
index 3f910b1712c41e91de99ad00a90e0f3081f94deb..b91df88036d3ec2579883a9c65a7b80d4c0be81b 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -736,6 +736,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -737,6 +737,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
// Paper start - Prevent block entity and entity crashes
|
||||
final String msg = String.format("Entity threw exception at %s:%s,%s,%s", entity.level().getWorld().getName(), entity.getX(), entity.getY(), entity.getZ());
|
||||
MinecraftServer.LOGGER.error(msg, throwable);
|
||||
|
|
|
@ -7,10 +7,10 @@ Upstream added methods for this, original methods are now
|
|||
deprecated
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index a73a5a8291ddd954f2c7b73a4895933e715c5d68..4636e1ebf11025a551d398a6594b1506748a8390 100644
|
||||
index 844a97b0eb396835ec72b4d14c9362a2ea2a8709..75dccbdde0d116ef194aa2ced328ad3c3992204e 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -267,10 +267,29 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -283,10 +283,29 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -41,7 +41,7 @@ index a73a5a8291ddd954f2c7b73a4895933e715c5d68..4636e1ebf11025a551d398a6594b1506
|
|||
|
||||
@Override
|
||||
public void damage(double amount) {
|
||||
@@ -799,4 +818,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -815,4 +834,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
this.getHandle().persistentInvisibility = invisible;
|
||||
this.getHandle().setSharedFlag(5, invisible);
|
||||
}
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Only process BlockPhysicsEvent if a plugin has a listener
|
|||
Saves on some object allocation and processing when no plugin listens to this
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index cc2775d94f3b6ebd7f97e14e324bf292d5874de4..a4df17bf15ac8e427039428f947df4f08c746de6 100644
|
||||
index 001592ec2ec34a744713d4d6c95a00955889facd..72ddebd40c2b29e0c6e069d62ed206c29ad5fa6b 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1457,6 +1457,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
|
@ -18,7 +18,7 @@ index cc2775d94f3b6ebd7f97e14e324bf292d5874de4..a4df17bf15ac8e427039428f947df4f0
|
|||
this.profiler.push(() -> {
|
||||
return worldserver + " " + worldserver.dimension().location();
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index a127acc6c44bfd078e06c74b408d62df6e85d1fe..5975cc2fa72609ea5f3e6f99155d6e5bc321a321 100644
|
||||
index ea4eacf66651798185e1c445979a465e173571d0..1c3b12692094c1eaa086ebb2f060b22aaf9d9b39 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -221,6 +221,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
|
@ -30,10 +30,10 @@ index a127acc6c44bfd078e06c74b408d62df6e85d1fe..5975cc2fa72609ea5f3e6f99155d6e5b
|
|||
public LevelChunk getChunkIfLoaded(int x, int z) {
|
||||
return this.chunkSource.getChunk(x, z, false);
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index c3138a2ff6446fb72d9eb1bd31f851d7df6b94f2..61056b2873a58bf8d0f70e39022ded4b1fcbc5a5 100644
|
||||
index 2ad3c16bf36972ff55269612f02cdb4f558f35b7..424377f062c6443460a9814feb8b90e7bef71c6a 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -496,7 +496,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -497,7 +497,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
// CraftBukkit start
|
||||
iblockdata1.updateIndirectNeighbourShapes(this, blockposition, k, j - 1); // Don't call an event for the old block to limit event spam
|
||||
CraftWorld world = ((ServerLevel) this).getWorld();
|
||||
|
|
|
@ -59,10 +59,10 @@ index 37cba1e693490e42908f45dc68e60ac3afebbb49..801e1727bd291f647c91e2c325810ead
|
|||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 6571adf5285ab3f84513c2f5b32ff0523c2cccd6..c8f20543cb7f69af010e3fd53f31b7253426f2d0 100644
|
||||
index 5ee9726324591055bb5d00cf9646203fbe7cc833..8de2f4ca83017d37c63d33c6283078a71143f077 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -1850,4 +1850,13 @@ public class CraftEventFactory {
|
||||
@@ -1856,4 +1856,13 @@ public class CraftEventFactory {
|
||||
|
||||
Bukkit.getPluginManager().callEvent(new EntityRemoveEvent(entity.getBukkitEntity(), cause));
|
||||
}
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] remove null possibility for getServer singleton
|
|||
to stop IDE complaining about potential NPE
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 866ff31a6057eda7612cfa48c0028fb988deed64..2c500fed04982c502b3e6fb1687b38bfaaa37f69 100644
|
||||
index 677ce578af9da4b512bad47fe54625305e99c7e4..20ee0fd8f5a808436fae60b64fc3e8966146ba71 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -190,6 +190,7 @@ import co.aikar.timings.MinecraftTimings; // Paper
|
||||
|
@ -25,7 +25,7 @@ index 866ff31a6057eda7612cfa48c0028fb988deed64..2c500fed04982c502b3e6fb1687b38bf
|
|||
this.metricsRecorder = InactiveMetricsRecorder.INSTANCE;
|
||||
this.profiler = this.metricsRecorder.getProfiler();
|
||||
this.onMetricsRecordingStopped = (methodprofilerresults) -> {
|
||||
@@ -2430,9 +2432,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -2425,9 +2427,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
@ -81,10 +81,10 @@ index 5bc68514a1e8a212e2681f06b918548c0ec565b6..1977e702f6af39ebf100c1f2f2edc2d1
|
|||
double deltaLength = Math.sqrt(distanceSquared);
|
||||
double relativeX = player.getX() + (deltaX / deltaLength) * viewDistance;
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index ebdb6e838ecd378edc81b92cc3a8a1955d2498c1..29b17f408e1ad304996ce116737ee4fbc248da4c 100644
|
||||
index 0137f61a572800ea7bb013185835a1ad4cd0462c..1ecde4f1dff5bfa67c526a699061f1952da59fae 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -1268,4 +1268,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -1269,4 +1269,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
private ExplosionInteraction() {}
|
||||
}
|
||||
|
|
|
@ -28,10 +28,10 @@ index e1311841cdf79fa2769cfa6817985007ace2e4d8..e7db715d45d27cbc9b3ed7cad1d90727
|
|||
entitywitch.finalizeSpawn(world, world.getCurrentDifficultyAt(entitywitch.blockPosition()), MobSpawnType.CONVERSION, (SpawnGroupData) null, (CompoundTag) null);
|
||||
entitywitch.setNoAi(this.isNoAi());
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index c8f20543cb7f69af010e3fd53f31b7253426f2d0..c47eac1e442162192a35e841a06c4d028d71cd15 100644
|
||||
index 8de2f4ca83017d37c63d33c6283078a71143f077..5e566d08346084880d88b406c6ce80328e26a180 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -1197,6 +1197,14 @@ public class CraftEventFactory {
|
||||
@@ -1198,6 +1198,14 @@ public class CraftEventFactory {
|
||||
return !event.isCancelled();
|
||||
}
|
||||
|
||||
|
|
|
@ -18,10 +18,10 @@ index dfa16aa79e94d85a49c9c28229b29a972ec6e216..7ce46bd254e0f14b1bbafe37e0eb97a4
|
|||
|
||||
--this.count;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index c47eac1e442162192a35e841a06c4d028d71cd15..b2b07587c50e6c6f55a8cd36405833f4a4f9674c 100644
|
||||
index 5e566d08346084880d88b406c6ce80328e26a180..81927bb6579b9a2119e377026d4e778daddb7f12 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -1150,6 +1150,17 @@ public class CraftEventFactory {
|
||||
@@ -1151,6 +1151,17 @@ public class CraftEventFactory {
|
||||
return event;
|
||||
}
|
||||
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: [PATCH] Add ProjectileCollideEvent
|
|||
Deprecated now and replaced with ProjectileHitEvent
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index b2b07587c50e6c6f55a8cd36405833f4a4f9674c..c1f3086d37e2959bbcc23bc1b779215bc35c99c4 100644
|
||||
index 81927bb6579b9a2119e377026d4e778daddb7f12..2bcac771a37b3e5d3b7173e24dad7823fb29757c 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -1294,6 +1294,17 @@ public class CraftEventFactory {
|
||||
@@ -1295,6 +1295,17 @@ public class CraftEventFactory {
|
||||
return CraftItemStack.asNMSCopy(bitem);
|
||||
}
|
||||
|
||||
|
@ -27,7 +27,7 @@ index b2b07587c50e6c6f55a8cd36405833f4a4f9674c..c1f3086d37e2959bbcc23bc1b779215b
|
|||
public static ProjectileLaunchEvent callProjectileLaunchEvent(Entity entity) {
|
||||
Projectile bukkitEntity = (Projectile) entity.getBukkitEntity();
|
||||
ProjectileLaunchEvent event = new ProjectileLaunchEvent(bukkitEntity);
|
||||
@@ -1318,8 +1329,15 @@ public class CraftEventFactory {
|
||||
@@ -1319,8 +1330,15 @@ public class CraftEventFactory {
|
||||
if (position.getType() == HitResult.Type.ENTITY) {
|
||||
hitEntity = ((EntityHitResult) position).getEntity().getBukkitEntity();
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@ Provides counts without the ineffeciency of using .getEntities().size()
|
|||
which creates copy of the collections.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index e4a2afc20efcfd7a6107dc56217ae8451dd5a7d6..0045016cd22c34168c4ae5f2fe951d536394be9a 100644
|
||||
index 926e4f9760e07ab66405132de2e96306211e5b9c..7800276dea6176ed489809d589b850252fc9333b 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -114,7 +114,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
@ -20,10 +20,10 @@ index e4a2afc20efcfd7a6107dc56217ae8451dd5a7d6..0045016cd22c34168c4ae5f2fe951d53
|
|||
private final List<TickingBlockEntity> pendingBlockEntityTickers = Lists.newArrayList();
|
||||
private boolean tickingBlockEntities;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 8ff8d8174cd32d25b33c2e773d30c474b4e903d3..07aac886235e18a29420c494380e6b26bfa8f36e 100644
|
||||
index 95b3bcd4cfcedc358096831bc59a7effd186a063..aac9eee069b16ab70b7553c6c324149011c94f8e 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -163,6 +163,56 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -164,6 +164,56 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
private final CraftPersistentDataContainer persistentDataContainer = new CraftPersistentDataContainer(CraftWorld.DATA_TYPE_REGISTRY);
|
||||
private net.kyori.adventure.pointer.Pointers adventure$pointers; // Paper - implement pointers
|
||||
|
||||
|
|
|
@ -58,7 +58,7 @@ index 1219b12750edb855df0962d14d7f3c1859d78b2e..511dfff4870c197b6f69169cc0504ef0
|
|||
+ alsoShade(log4jPlugins.output)
|
||||
+ // Paper end
|
||||
implementation("org.apache.logging.log4j:log4j-iostreams:2.19.0") // Paper - remove exclusion
|
||||
implementation("org.ow2.asm:asm-commons:9.5")
|
||||
implementation("org.ow2.asm:asm-commons:9.7")
|
||||
implementation("org.spongepowered:configurate-yaml:4.2.0-SNAPSHOT") // Paper - config files
|
||||
@@ -75,7 +96,7 @@ relocation {
|
||||
}
|
||||
|
@ -250,7 +250,7 @@ index 8323f135d6bf2e1f12525e05094ffa3f2420e7e1..a143ea1e58464a3122fbd8ccafe417bd
|
|||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 1d8e17f4b862e71cc5ef8c5eabfb80dc427aec51..6587cd9ea257d0f6f1308ea8ca4d0245178b2870 100644
|
||||
index 48513e585ce02c301983adbe1224e95ff7f9a345..22b9d4bebee30877225b08b46cec6084b12a9c5a 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -155,7 +155,7 @@ import org.slf4j.Logger;
|
||||
|
|
|
@ -59,10 +59,10 @@ index 7429df8c6f29f7216e33cde3226424936de97cf9..4bbf8bb418e3585be2efce5d9a8785fa
|
|||
@Override
|
||||
public abstract boolean isSpectator();
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
index 52222f15399f2e1828f93b0f69e34157e3abff23..e6b16e3db7a197c7af0c4fdb782749c3c3f37538 100644
|
||||
index 4d92ca5b580e66e78b592bc0de1078dc10a85f39..2cb3c0b96b769c395f7fecbeebba0ff2a33b692d 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
@@ -516,6 +516,32 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -513,6 +513,32 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
this.getHandle().getCooldowns().addCooldown(CraftItemType.bukkitToMinecraft(material), ticks);
|
||||
}
|
||||
|
||||
|
|
|
@ -7,10 +7,10 @@ Subject: [PATCH] LivingEntity#setKiller
|
|||
public net.minecraft.world.entity.LivingEntity lastHurtByPlayerTime
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index 4636e1ebf11025a551d398a6594b1506748a8390..82773a05783b731e2f7bd00c8ec68090d15a7b66 100644
|
||||
index 75dccbdde0d116ef194aa2ced328ad3c3992204e..19f8cfe1146374169208f26632763a882291431c 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -390,6 +390,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -406,6 +406,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
return this.getHandle().lastHurtByPlayer == null ? null : (Player) this.getHandle().lastHurtByPlayer.getBukkitEntity();
|
||||
}
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Fix MC-117075: Block entity unload lag spike
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 0045016cd22c34168c4ae5f2fe951d536394be9a..c8914696785d0d6c451d598616a83c316f611aad 100644
|
||||
index 7800276dea6176ed489809d589b850252fc9333b..79588b6535eb6e0d21bedc1fc5e939903b450e2f 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -729,6 +729,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -730,6 +730,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
boolean flag = this.tickRateManager().runsNormally();
|
||||
|
||||
int tilesThisCycle = 0;
|
||||
|
@ -17,7 +17,7 @@ index 0045016cd22c34168c4ae5f2fe951d536394be9a..c8914696785d0d6c451d598616a83c31
|
|||
for (tileTickPosition = 0; tileTickPosition < this.blockEntityTickers.size(); tileTickPosition++) { // Paper - Disable tick limiters
|
||||
this.tileTickPosition = (this.tileTickPosition < this.blockEntityTickers.size()) ? this.tileTickPosition : 0;
|
||||
TickingBlockEntity tickingblockentity = (TickingBlockEntity) this.blockEntityTickers.get(this.tileTickPosition);
|
||||
@@ -737,12 +739,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -738,12 +740,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
if (tickingblockentity.isRemoved()) {
|
||||
// Spigot start
|
||||
tilesThisCycle--;
|
||||
|
|
|
@ -18,7 +18,7 @@ the blockstate that will be valid for restoration, as opposed to dropping
|
|||
information on restoration when the event is cancelled.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index c8914696785d0d6c451d598616a83c316f611aad..8a7276f83744252ac5a418f9acb219e02c508b2f 100644
|
||||
index 79588b6535eb6e0d21bedc1fc5e939903b450e2f..232281b12fb1970fae82ce8fd3ffe1586d02bfb3 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -152,7 +152,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
@ -39,7 +39,7 @@ index c8914696785d0d6c451d598616a83c316f611aad..8a7276f83744252ac5a418f9acb219e0
|
|||
if (blockstate == null) {
|
||||
blockstate = CapturedBlockState.getTreeBlockState(this, pos, flags);
|
||||
this.capturedBlockStates.put(pos.immutable(), blockstate);
|
||||
@@ -410,7 +410,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -411,7 +411,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
// CraftBukkit start - capture blockstates
|
||||
boolean captured = false;
|
||||
if (this.captureBlockStates && !this.capturedBlockStates.containsKey(pos)) {
|
||||
|
@ -49,7 +49,7 @@ index c8914696785d0d6c451d598616a83c316f611aad..8a7276f83744252ac5a418f9acb219e0
|
|||
this.capturedBlockStates.put(pos.immutable(), blockstate);
|
||||
captured = true;
|
||||
}
|
||||
@@ -611,7 +612,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -612,7 +613,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
public BlockState getBlockState(BlockPos pos) {
|
||||
// CraftBukkit start - tree generation
|
||||
if (this.captureTreeGeneration) {
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Add openSign method to HumanEntity
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
index e6b16e3db7a197c7af0c4fdb782749c3c3f37538..092d2bfab7e8fd9840e853f09adc85311ab29046 100644
|
||||
index 2cb3c0b96b769c395f7fecbeebba0ff2a33b692d..5d69945e6428c04a4b89c7469de905ed05d9dfc0 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
@@ -626,6 +626,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -623,6 +623,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ Adds an option to control the force mode of the particle.
|
|||
This adds a new Builder API which is much friendlier to use.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 6cadfd678f1b2323a763ffd9220de7394620328b..180a9ade7bbc84d8c64b6c92583ba870464c23a5 100644
|
||||
index d2266bc75f2c1b0b02405eea0711a7b53d1a9e7a..256b9c6cbf52c252f8174d0aa74e1270fb092ae9 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -1503,12 +1503,17 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
|
@ -34,10 +34,10 @@ index 6cadfd678f1b2323a763ffd9220de7394620328b..180a9ade7bbc84d8c64b6c92583ba870
|
|||
|
||||
if (this.sendParticles(entityplayer, force, d0, d1, d2, packetplayoutworldparticles)) { // CraftBukkit
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 07aac886235e18a29420c494380e6b26bfa8f36e..012c0bf4f824543d475e97e0edb6c4fe88d046e5 100644
|
||||
index aac9eee069b16ab70b7553c6c324149011c94f8e..1480fbf52f9eb11892886b99a76a971cabb72c92 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -1932,13 +1932,20 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1952,13 +1952,20 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public <T> void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra, T data, boolean force) {
|
||||
|
|
|
@ -22,10 +22,10 @@ index 96a87db9f8976d3f1ff09beb9598db31fff72d5b..25a1edf64602a13c07779e58b167a847
|
|||
this.setUsingItem(true);
|
||||
if (!this.isSilent()) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index c1f3086d37e2959bbcc23bc1b779215bc35c99c4..096e80bb71d10c897a20bb3c0b4b761328c9f56e 100644
|
||||
index 2bcac771a37b3e5d3b7173e24dad7823fb29757c..203b6539c55b74484cff476b6472f44ed56112c9 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -1896,4 +1896,14 @@ public class CraftEventFactory {
|
||||
@@ -1902,4 +1902,14 @@ public class CraftEventFactory {
|
||||
).callEvent();
|
||||
}
|
||||
// Paper end - PlayerUseUnknownEntityEvent
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Make shield blocking delay configurable
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index bbf3286cb69f931be528726e45784eec9f8e0af3..21bef887193c777ec1e311b3bf5c0213180ea4ca 100644
|
||||
index 4af3e59b9ad84aaf1a5dd8f1373b781233ba07d6..7810739098ee52efafbbd5355d4d16dadcb5ac35 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -3828,12 +3828,24 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
|
@ -35,10 +35,10 @@ index bbf3286cb69f931be528726e45784eec9f8e0af3..21bef887193c777ec1e311b3bf5c0213
|
|||
return this.isShiftKeyDown();
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index a2b2c3da97979b1684ec48934f82a784f1e63b6b..ccd2880da35263d1d16597eba2ec35b8b343cb5d 100644
|
||||
index 19f8cfe1146374169208f26632763a882291431c..1c6abeff5b541cdea914ac956f2ab1d2e1c5769f 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -839,5 +839,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -855,5 +855,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
public void setArrowsStuck(final int arrows) {
|
||||
this.getHandle().setArrowCount(arrows);
|
||||
}
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: [PATCH] Expand Explosions API
|
|||
Add Entity as a Source capability, and add more API choices, and on Location.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 012c0bf4f824543d475e97e0edb6c4fe88d046e5..b5bf92b668be5bdbd6af722929aee28eb1bf5ffa 100644
|
||||
index 1480fbf52f9eb11892886b99a76a971cabb72c92..afdba543388f5f2e194add0e988f8515db24f76e 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -735,6 +735,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -755,6 +755,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
public boolean createExplosion(double x, double y, double z, float power, boolean setFire, boolean breakBlocks, Entity source) {
|
||||
return !this.world.explode(source == null ? null : ((CraftEntity) source).getHandle(), x, y, z, power, setFire, breakBlocks ? net.minecraft.world.level.Level.ExplosionInteraction.MOB : net.minecraft.world.level.Level.ExplosionInteraction.NONE).wasCanceled;
|
||||
}
|
||||
|
|
53
patches/server/0204-LivingEntity-Active-Item-API.patch
Normal file
53
patches/server/0204-LivingEntity-Active-Item-API.patch
Normal file
|
@ -0,0 +1,53 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Aikar <aikar@aikar.co>
|
||||
Date: Fri, 29 Jun 2018 00:21:28 -0400
|
||||
Subject: [PATCH] LivingEntity Active Item API
|
||||
|
||||
API relating to items being actively used by a LivingEntity
|
||||
such as a bow or eating food.
|
||||
|
||||
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index 1c6abeff5b541cdea914ac956f2ab1d2e1c5769f..de52fdc1c94f69de7c5c5099fc586fdeba60b6fa 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -866,4 +866,38 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
getHandle().setShieldBlockingDelay(delay);
|
||||
}
|
||||
// Paper end
|
||||
+
|
||||
+ // Paper start - active item API
|
||||
+ @Override
|
||||
+ public ItemStack getActiveItem() {
|
||||
+ return this.getHandle().getUseItem().asBukkitMirror();
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public int getActiveItemRemainingTime() {
|
||||
+ return this.getHandle().getUseItemRemainingTicks();
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public void setActiveItemRemainingTime(final int ticks) {
|
||||
+ Preconditions.checkArgument(ticks >= 0, "ticks must be >= 0");
|
||||
+ Preconditions.checkArgument(ticks <= this.getHandle().getUseItem().getUseDuration(), "ticks must be <= item use duration");
|
||||
+ this.getHandle().useItemRemaining = ticks;
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public int getActiveItemUsedTime() {
|
||||
+ return this.getHandle().getTicksUsingItem();
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public boolean hasActiveItem() {
|
||||
+ return this.getHandle().isUsingItem();
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public org.bukkit.inventory.EquipmentSlot getActiveItemHand() {
|
||||
+ return org.bukkit.craftbukkit.CraftEquipmentSlot.getHand(this.getHandle().getUsedItemHand());
|
||||
+ }
|
||||
+ // Paper end - active item API
|
||||
}
|
|
@ -1,42 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Aikar <aikar@aikar.co>
|
||||
Date: Fri, 29 Jun 2018 00:21:28 -0400
|
||||
Subject: [PATCH] LivingEntity Hand Raised/Item Use API
|
||||
|
||||
How long an entity has raised hands to charge an attack or use an item
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index ca92ece290c6dd164b3ba2ba46289350ae6829e8..8ac3beab73904db7362caa3054994b214c997cf7 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -849,5 +849,30 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
public void setShieldBlockingDelay(int delay) {
|
||||
getHandle().setShieldBlockingDelay(delay);
|
||||
}
|
||||
+
|
||||
+ @Override
|
||||
+ public ItemStack getActiveItem() {
|
||||
+ return getHandle().getUseItem().asBukkitMirror();
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public int getItemUseRemainingTime() {
|
||||
+ return getHandle().getUseItemRemainingTicks();
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public int getHandRaisedTime() {
|
||||
+ return getHandle().getTicksUsingItem();
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public boolean isHandRaised() {
|
||||
+ return getHandle().isUsingItem();
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public org.bukkit.inventory.EquipmentSlot getHandRaised() {
|
||||
+ return getHandle().getUsedItemHand() == net.minecraft.world.InteractionHand.MAIN_HAND ? org.bukkit.inventory.EquipmentSlot.HAND : org.bukkit.inventory.EquipmentSlot.OFF_HAND;
|
||||
+ }
|
||||
// Paper end
|
||||
}
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Implement World.getEntity(UUID) API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index b5bf92b668be5bdbd6af722929aee28eb1bf5ffa..3fe84fa65961dff58a416f7262c8b8ce218a3b49 100644
|
||||
index afdba543388f5f2e194add0e988f8515db24f76e..3d189fd1a1ac17f1dee4af631f8ed59387c977d4 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -1071,6 +1071,15 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1091,6 +1091,15 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
return list;
|
||||
}
|
||||
|
||||
|
|
|
@ -136,10 +136,10 @@ index c934c7614281f77376858909c86d9a1a73c8e174..83c7ba56900ce40f71d98062bf15110a
|
|||
this.containerMenu = this.inventoryMenu;
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
index 092d2bfab7e8fd9840e853f09adc85311ab29046..af6f8d11f0384c353332f5c5bb0967e518deccbe 100644
|
||||
index 5d69945e6428c04a4b89c7469de905ed05d9dfc0..0886cb3367022c4ab7e4dbebafb70fc651bcb9aa 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
@@ -376,7 +376,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -379,7 +379,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
if (((ServerPlayer) this.getHandle()).connection == null) return;
|
||||
if (this.getHandle().containerMenu != this.getHandle().inventoryMenu) {
|
||||
// fire INVENTORY_CLOSE if one already open
|
||||
|
@ -148,7 +148,7 @@ index 092d2bfab7e8fd9840e853f09adc85311ab29046..af6f8d11f0384c353332f5c5bb0967e5
|
|||
}
|
||||
ServerPlayer player = (ServerPlayer) this.getHandle();
|
||||
AbstractContainerMenu container;
|
||||
@@ -446,8 +446,14 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -449,8 +449,14 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
|
||||
@Override
|
||||
public void closeInventory() {
|
||||
|
@ -178,10 +178,10 @@ index dbf67a52ae2e18589952b2d019b5258324ff3edc..b4212f5a5b3b1e5476f7598be165ffb1
|
|||
|
||||
// Check if the fromWorld and toWorld are the same.
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 096e80bb71d10c897a20bb3c0b4b761328c9f56e..139d9b4a290d9089ba9a6c92ddcf04e1404c1074 100644
|
||||
index 203b6539c55b74484cff476b6472f44ed56112c9..2456857cfcb3dd258781067cd7ddbe18d5f68309 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -1263,7 +1263,7 @@ public class CraftEventFactory {
|
||||
@@ -1264,7 +1264,7 @@ public class CraftEventFactory {
|
||||
|
||||
public static AbstractContainerMenu callInventoryOpenEvent(ServerPlayer player, AbstractContainerMenu container, boolean cancelled) {
|
||||
if (player.containerMenu != player.inventoryMenu) { // fire INVENTORY_CLOSE if one already open
|
||||
|
@ -190,7 +190,7 @@ index 096e80bb71d10c897a20bb3c0b4b761328c9f56e..139d9b4a290d9089ba9a6c92ddcf04e1
|
|||
}
|
||||
|
||||
CraftServer server = player.level().getCraftServer();
|
||||
@@ -1450,8 +1450,18 @@ public class CraftEventFactory {
|
||||
@@ -1451,8 +1451,18 @@ public class CraftEventFactory {
|
||||
return event;
|
||||
}
|
||||
|
||||
|
|
|
@ -17,10 +17,10 @@ index 1353bb583ec576345b7bfea5134c4b0d59811a07..1a3727bbd9d67c32846e7ad4bd4bc900
|
|||
Iterator iterator = list.iterator();
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 2bd7ad1065273c2a9150b3762aff13437bf4bec0..09d62573b013590e66bbd988be1442944775090e 100644
|
||||
index 232281b12fb1970fae82ce8fd3ffe1586d02bfb3..6308aeb2129b4d3c5f51759977548279d6073ab4 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -767,6 +767,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -768,6 +768,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
// Paper end - Prevent block entity and entity crashes
|
||||
}
|
||||
}
|
||||
|
|
|
@ -39,7 +39,7 @@ index a6638e626600e4304a973497a39e3fac52203b16..c19069f65a9ecbc9000ea4333417a2df
|
|||
|
||||
BlockCanBuildEvent event = new BlockCanBuildEvent(CraftBlock.at(context.getLevel(), context.getClickedPos()), player, CraftBlockData.fromData(state), defaultReturn);
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 09d62573b013590e66bbd988be1442944775090e..776aea2518aaa5e15bdd63f49b6948818cb9ad10 100644
|
||||
index 6308aeb2129b4d3c5f51759977548279d6073ab4..2eb80978ffc26c6250f3a96b73ee20bfea4ecd45 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -271,6 +271,45 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
@ -89,10 +89,10 @@ index 09d62573b013590e66bbd988be1442944775090e..776aea2518aaa5e15bdd63f49b694881
|
|||
public boolean isClientSide() {
|
||||
return this.isClientSide;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 139d9b4a290d9089ba9a6c92ddcf04e1404c1074..4498bb89b219de0d1c62950b7aa5f17fe6eab7d0 100644
|
||||
index 2456857cfcb3dd258781067cd7ddbe18d5f68309..5b2365fc9a9364f2df7e5078c9d88572c074e4e3 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -1300,6 +1300,14 @@ public class CraftEventFactory {
|
||||
@@ -1301,6 +1301,14 @@ public class CraftEventFactory {
|
||||
Projectile projectile = (Projectile) entity.getBukkitEntity();
|
||||
org.bukkit.entity.Entity collided = position.getEntity().getBukkitEntity();
|
||||
com.destroystokyo.paper.event.entity.ProjectileCollideEvent event = new com.destroystokyo.paper.event.entity.ProjectileCollideEvent(projectile, collided);
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: [PATCH] Make CraftWorld#loadChunk(int, int, false) load unconverted
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 3fe84fa65961dff58a416f7262c8b8ce218a3b49..358fe6e35ab7555bbd6ae075bcec5249e09dede1 100644
|
||||
index 3d189fd1a1ac17f1dee4af631f8ed59387c977d4..fd04c5c7e08b54de65ffaf58385dcc05ef22bba0 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -406,7 +406,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -407,7 +407,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@Override
|
||||
public boolean loadChunk(int x, int z, boolean generate) {
|
||||
org.spigotmc.AsyncCatcher.catchOp("chunk load"); // Spigot
|
||||
|
|
|
@ -80,7 +80,7 @@ index 38a3b264ba72631c27203a178ac0bbdd36e10a10..80cedd5221d3c0dc475c631113e87825
|
|||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index e8c4d42b1637752e69ea128fa7d0148bb5ffae06..39ff6dd7ee8e821f5693f6a6e01b713b25d30393 100644
|
||||
index de01edaa23fb8493faf46c02abcb47989ac9a582..7dbfc8f0e3eb54e86fef6d9bc68e082ae8cd4422 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -260,6 +260,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
|
@ -455,10 +455,10 @@ index 65c56d29e04fd0853a8bfe9f943d27fe71849cc2..317fb90ad77aaaddc6a84d719de94d52
|
|||
|
||||
public void injectScaledMaxHealth(Collection<AttributeInstance> collection, boolean force) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 4498bb89b219de0d1c62950b7aa5f17fe6eab7d0..542b9ff7d845dcebcf6569a6d4bd9e97ac3a436d 100644
|
||||
index 5b2365fc9a9364f2df7e5078c9d88572c074e4e3..449dab3d6e16b2b0fcc78c9e1b7173c822be9c53 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -891,9 +891,16 @@ public class CraftEventFactory {
|
||||
@@ -892,9 +892,16 @@ public class CraftEventFactory {
|
||||
public static EntityDeathEvent callEntityDeathEvent(net.minecraft.world.entity.LivingEntity victim, List<org.bukkit.inventory.ItemStack> drops) {
|
||||
CraftLivingEntity entity = (CraftLivingEntity) victim.getBukkitEntity();
|
||||
EntityDeathEvent event = new EntityDeathEvent(entity, drops, victim.getExpReward());
|
||||
|
@ -475,7 +475,7 @@ index 4498bb89b219de0d1c62950b7aa5f17fe6eab7d0..542b9ff7d845dcebcf6569a6d4bd9e97
|
|||
victim.expToDrop = event.getDroppedExp();
|
||||
|
||||
for (org.bukkit.inventory.ItemStack stack : event.getDrops()) {
|
||||
@@ -910,8 +917,15 @@ public class CraftEventFactory {
|
||||
@@ -911,8 +918,15 @@ public class CraftEventFactory {
|
||||
PlayerDeathEvent event = new PlayerDeathEvent(entity, drops, victim.getExpReward(), 0, deathMessage);
|
||||
event.setKeepInventory(keepInventory);
|
||||
event.setKeepLevel(victim.keepLevel); // SPIGOT-2222: pre-set keepLevel
|
||||
|
@ -491,7 +491,7 @@ index 4498bb89b219de0d1c62950b7aa5f17fe6eab7d0..542b9ff7d845dcebcf6569a6d4bd9e97
|
|||
|
||||
victim.keepLevel = event.getKeepLevel();
|
||||
victim.newLevel = event.getNewLevel();
|
||||
@@ -928,6 +942,31 @@ public class CraftEventFactory {
|
||||
@@ -929,6 +943,31 @@ public class CraftEventFactory {
|
||||
return event;
|
||||
}
|
||||
|
||||
|
|
|
@ -7,10 +7,10 @@ Subject: [PATCH] Add sun related API
|
|||
public net.minecraft.world.entity.Mob isSunBurnTick()Z
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 358fe6e35ab7555bbd6ae075bcec5249e09dede1..0cded703702e7271eec909e470fbfded17eb791f 100644
|
||||
index fd04c5c7e08b54de65ffaf58385dcc05ef22bba0..18db1aa374495a214807c5eb3ccc0213fc7c6a47 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -711,6 +711,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -731,6 +731,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ floating in the air.
|
|||
This can replace many uses of BlockPhysicsEvent
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 181201ecd6c617cc37ba097a667bd96ae3b1823e..28ed20fc6e53490392c59b927889d78eb268b777 100644
|
||||
index 2eb80978ffc26c6250f3a96b73ee20bfea4ecd45..12809bc84aa07e724bebbc631199f352b7d7bbcb 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -26,6 +26,7 @@ import net.minecraft.nbt.CompoundTag;
|
||||
|
@ -22,7 +22,7 @@ index 181201ecd6c617cc37ba097a667bd96ae3b1823e..28ed20fc6e53490392c59b927889d78e
|
|||
import net.minecraft.server.MinecraftServer;
|
||||
import net.minecraft.server.level.FullChunkStatus;
|
||||
import net.minecraft.server.level.ServerLevel;
|
||||
@@ -581,9 +582,26 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -582,9 +583,26 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
return false;
|
||||
} else {
|
||||
FluidState fluid = this.getFluidState(pos);
|
||||
|
|
|
@ -10,10 +10,10 @@ Optimize to check if the captured list even has values in it, and also to
|
|||
just do a get call since the value can never be null.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 28ed20fc6e53490392c59b927889d78eb268b777..caf2c9799aa5ddbd5caf160e2c8f2e8f0cdaa1f8 100644
|
||||
index 12809bc84aa07e724bebbc631199f352b7d7bbcb..6d5a0aa8f8cee0897a920c2abf18efc03cad2abb 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -910,9 +910,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -911,9 +911,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
@Nullable
|
||||
public BlockEntity getBlockEntity(BlockPos blockposition, boolean validate) {
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Add Heightmap API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 0cded703702e7271eec909e470fbfded17eb791f..83530c6823710e387f453898fc0d81392cd2fcd8 100644
|
||||
index 18db1aa374495a214807c5eb3ccc0213fc7c6a47..4001a8c13ceed6037174bb81fd06d9758fa0336c 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -228,6 +228,29 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -229,6 +229,29 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
return CraftBlock.at(this.world, new BlockPos(x, y, z));
|
||||
}
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Configurable Keep Spawn Loaded range per world
|
|||
This lets you disable it for some worlds and lower it for others.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index ddbe9061b518711ed4bb2e30a90817293fd7fb7d..7263a7f8b01c6afdaf67cfd6cc67f6a45c0aee08 100644
|
||||
index 21baf9139a652f21af81e775c4a0cfd3f2a81923..46386befc7c76788bdd136f7d7b4eb8e1e5d19b9 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -768,30 +768,33 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
|
@ -62,7 +62,7 @@ index ddbe9061b518711ed4bb2e30a90817293fd7fb7d..7263a7f8b01c6afdaf67cfd6cc67f6a4
|
|||
// this.updateMobSpawningFlags();
|
||||
worldserver.setSpawnSettings(this.isSpawningMonsters(), this.isSpawningAnimals());
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 4e7e3935a0040f48a1dc8f32e3da6d5a3ba154cb..514b3af4f8ac04744ae44cad7c01086a3f821d5f 100644
|
||||
index 57f129651778d6c20c695bf7b3a8b4d40c402a20..20de3be232ccc7ec7bbc3c6aee9acf66fd396af1 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -1640,12 +1640,84 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
|
@ -190,10 +190,10 @@ index 4d2348df25410a0b5364eec066880326d6667dad..3754cda7e7731935893359d84f3ae061
|
|||
this.maxCount = i * i;
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 83530c6823710e387f453898fc0d81392cd2fcd8..6bb9d76f8c5f3dc683caecfbb7c7c2ca41cba659 100644
|
||||
index 4001a8c13ceed6037174bb81fd06d9758fa0336c..b39721208f8b66c1478e89553a592070cf90fb97 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -1391,15 +1391,21 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1411,15 +1411,21 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public void setKeepSpawnInMemory(boolean keepLoaded) {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Improve java version check
|
|||
Co-Authored-By: MiniDigger <admin@benndorf.dev>
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
index 623c7304a6849e994e22cd559177d9de0dd2f4c4..ee9bb75f2850bf421cc8ff02aca5b230538d6503 100644
|
||||
index d8a7287849407c4756d4ebe4b55c358970320ce3..f21bff10aa56b418b1c3c3f1a40b88c4e992c26d 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
@@ -201,23 +201,27 @@ public class Main {
|
||||
|
@ -20,8 +20,8 @@ index 623c7304a6849e994e22cd559177d9de0dd2f4c4..ee9bb75f2850bf421cc8ff02aca5b230
|
|||
- System.err.println("Unsupported Java detected (" + javaVersion + "). This version of Minecraft requires at least Java 17. Check your Java version with the command 'java -version'.");
|
||||
- return;
|
||||
- }
|
||||
- if (javaVersion > 65.0) {
|
||||
- System.err.println("Unsupported Java detected (" + javaVersion + "). Only up to Java 21 is supported.");
|
||||
- if (javaVersion > 66.0) {
|
||||
- System.err.println("Unsupported Java detected (" + javaVersion + "). Only up to Java 22 is supported.");
|
||||
+ boolean isOldVersion = javaVersion < 61.0;
|
||||
+ if (!skip && isOldVersion) {
|
||||
+ System.err.println("Unsupported Java detected (" + javaVersion + "). This version of Minecraft requires at least Java 17. Check your Java version with the command 'java -version'. For more info see https://docs.papermc.io/misc/java-install");
|
||||
|
|
|
@ -7,7 +7,7 @@ Subject: [PATCH] Entity Jump API
|
|||
public net.minecraft.world.entity.LivingEntity jumping
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 40ad459823268af0e57a348d241ac19bb576683a..f441d7a1188cecd91206d78b58457c330e4e8663 100644
|
||||
index 169a9aa06350dccf2624534754be3a22b2f42b33..c7b8c823ea1a1cafb98b4305febd52aa3652bc37 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -3304,8 +3304,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
|
@ -50,14 +50,15 @@ index aba20a4352d8983b01ab5d329187588f68d3e405..aac60e85cd6dba7d87f4a1663c2c6295
|
|||
}
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index c9a487c1b85d46c1ce25147bd8a610a5631cdb5d..4cd34eb1930b9324be08e83aab21fc960eb7fca6 100644
|
||||
index 88ea46392182b02131a2a5c953fe90e1ecbd4ae5..1bca024bfbb4b68eacd2b3bb382aa74456db2145 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -935,5 +935,19 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
public org.bukkit.inventory.EquipmentSlot getHandRaised() {
|
||||
return getHandle().getUsedItemHand() == net.minecraft.world.InteractionHand.MAIN_HAND ? org.bukkit.inventory.EquipmentSlot.HAND : org.bukkit.inventory.EquipmentSlot.OFF_HAND;
|
||||
@@ -961,4 +961,20 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
return org.bukkit.craftbukkit.CraftEquipmentSlot.getHand(this.getHandle().getUsedItemHand());
|
||||
}
|
||||
// Paper end - active item API
|
||||
+
|
||||
+ // Paper start - entity jump API
|
||||
+ @Override
|
||||
+ public boolean isJumping() {
|
||||
+ return getHandle().jumping;
|
||||
|
@ -71,5 +72,5 @@ index c9a487c1b85d46c1ce25147bd8a610a5631cdb5d..4cd34eb1930b9324be08e83aab21fc96
|
|||
+ ((Mob) getHandle()).getJumpControl().jump();
|
||||
+ }
|
||||
+ }
|
||||
// Paper end
|
||||
+ // Paper end - entity jump API
|
||||
}
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] add hand to BlockMultiPlaceEvent
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 542b9ff7d845dcebcf6569a6d4bd9e97ac3a436d..3dee6c973d4b4ac6f64fdcb5ac7fa681cefbdb1c 100644
|
||||
index 449dab3d6e16b2b0fcc78c9e1b7173c822be9c53..15c9150b7e48781268babe5915dc0e906645b341 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -401,13 +401,18 @@ public class CraftEventFactory {
|
||||
@@ -402,13 +402,18 @@ public class CraftEventFactory {
|
||||
}
|
||||
|
||||
org.bukkit.inventory.ItemStack item;
|
||||
|
|
|
@ -125,7 +125,7 @@ index 72f2e81b9905a0d57ed8e2a88578f62d5235c456..7b58b2d6297800c2dcdbf7539e5ab8e7
|
|||
|
||||
public static void registerCommands(final MinecraftServer server) {
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 7263a7f8b01c6afdaf67cfd6cc67f6a45c0aee08..e5ecca5ae9e37e4d4d6d2adfd5f487a869ab775d 100644
|
||||
index 46386befc7c76788bdd136f7d7b4eb8e1e5d19b9..1a7dffb3947dab0e334cd5873c69542f383aed61 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -252,6 +252,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
|
@ -152,7 +152,7 @@ index 7263a7f8b01c6afdaf67cfd6cc67f6a45c0aee08..e5ecca5ae9e37e4d4d6d2adfd5f487a8
|
|||
this.logTickTime(l - i);
|
||||
this.profiler.pop();
|
||||
org.spigotmc.WatchdogThread.tick(); // Spigot
|
||||
@@ -2678,4 +2688,30 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -2673,4 +2683,30 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
public static record ServerResourcePackInfo(UUID id, String url, String hash, boolean isRequired, @Nullable Component prompt) {
|
||||
|
||||
}
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: [PATCH] Add Raw Byte ItemStack Serialization
|
|||
Serializes using NBT which is safer for server data migrations than bukkits format.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index d11773ed44936f8836f2f8e582d5e9573af5b439..ef4b15e0ae11a54ec49e40f1d694dae58ae95e03 100644
|
||||
index 82d862432d061f8f1809647d9eecfff38a6311d4..7579e076793ba90e405b3ac0db600374ee8fdcb3 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -473,6 +473,53 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -478,6 +478,53 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {
|
||||
return new com.destroystokyo.paper.PaperVersionFetcher();
|
||||
}
|
||||
|
|
|
@ -27,10 +27,10 @@ index b6698a65d778cea6b7dc9b8ebfceec2425c732b7..347747282c77f5d1dde907b99cc2c802
|
|||
this.initMenu(container);
|
||||
return OptionalInt.of(this.containerCounter);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
index af6f8d11f0384c353332f5c5bb0967e518deccbe..7afbecd29f0a729e32c5cd50cb03d5404ba03d75 100644
|
||||
index 0886cb3367022c4ab7e4dbebafb70fc651bcb9aa..35f03bea2b1206b420ac46dfd77811fb485c5319 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
@@ -325,7 +325,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -328,7 +328,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
if (adventure$title == null) adventure$title = net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(container.getBukkitView().getTitle()); // Paper
|
||||
|
||||
//player.connection.send(new ClientboundOpenScreenPacket(container.containerId, windowType, CraftChatMessage.fromString(title)[0])); // Paper - comment
|
||||
|
@ -39,7 +39,7 @@ index af6f8d11f0384c353332f5c5bb0967e518deccbe..7afbecd29f0a729e32c5cd50cb03d540
|
|||
player.containerMenu = container;
|
||||
player.initMenu(container);
|
||||
}
|
||||
@@ -399,7 +399,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -402,7 +402,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
net.kyori.adventure.text.Component adventure$title = inventory.title(); // Paper
|
||||
if (adventure$title == null) adventure$title = net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(inventory.getTitle()); // Paper
|
||||
//player.connection.send(new ClientboundOpenScreenPacket(container.containerId, windowType, CraftChatMessage.fromString(title)[0])); // Paper - comment
|
||||
|
|
|
@ -16,7 +16,7 @@ So even if something NEW comes up, it would be impossible to drop the
|
|||
same item twice because the source was destroyed.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 7619f6e772d2fab177a83b083bcce3d2ee1d9a95..9c9689f4deffed50df9aaca6e451228d17154b8c 100644
|
||||
index 5863d7118d9935735400cff4a09dd8546f67bac5..23ee63119d55b40829c03a855ae0f8b214674e10 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -2419,11 +2419,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
|
||||
|
@ -80,7 +80,7 @@ index 7619f6e772d2fab177a83b083bcce3d2ee1d9a95..9c9689f4deffed50df9aaca6e451228d
|
|||
|
||||
public float getBlockExplosionResistance(Explosion explosion, BlockGetter world, BlockPos pos, BlockState blockState, FluidState fluidState, float max) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index d53069d6b0be5a82f7b34a336439fdfd356e4a79..67ff37d395f83c1a0f5c8305375f703cbe4c0609 100644
|
||||
index b4b2cf6875c96ab213522814ab79bfeaa9848f3b..947ea9f79b0115207e42fa80fe5368ed8c0a1d1c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1714,9 +1714,9 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
|
@ -135,10 +135,10 @@ index 11555d1b771f93234098a3bc6a6eaacddeeeb4f6..bc1a95f466b700bb0530cf0bb61fcbcb
|
|||
}
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 3dee6c973d4b4ac6f64fdcb5ac7fa681cefbdb1c..8da01bdaa2a1c621947b6a50b178eec10deb1250 100644
|
||||
index 15c9150b7e48781268babe5915dc0e906645b341..8866f1d4f19c935edb7eb3c9265a2b65383e5595 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -894,6 +894,11 @@ public class CraftEventFactory {
|
||||
@@ -895,6 +895,11 @@ public class CraftEventFactory {
|
||||
}
|
||||
|
||||
public static EntityDeathEvent callEntityDeathEvent(net.minecraft.world.entity.LivingEntity victim, List<org.bukkit.inventory.ItemStack> drops) {
|
||||
|
@ -150,7 +150,7 @@ index 3dee6c973d4b4ac6f64fdcb5ac7fa681cefbdb1c..8da01bdaa2a1c621947b6a50b178eec1
|
|||
CraftLivingEntity entity = (CraftLivingEntity) victim.getBukkitEntity();
|
||||
EntityDeathEvent event = new EntityDeathEvent(entity, drops, victim.getExpReward());
|
||||
populateFields(victim, event); // Paper - make cancellable
|
||||
@@ -907,11 +912,13 @@ public class CraftEventFactory {
|
||||
@@ -908,11 +913,13 @@ public class CraftEventFactory {
|
||||
playDeathSound(victim, event);
|
||||
// Paper end
|
||||
victim.expToDrop = event.getDroppedExp();
|
||||
|
|
|
@ -10,7 +10,7 @@ index 1eedfc00ab7da96f07ae542b8c5775f41708dd37..dc552a35977b2e62ec1534ffbb9c7441
|
|||
--- a/build.gradle.kts
|
||||
+++ b/build.gradle.kts
|
||||
@@ -35,6 +35,7 @@ dependencies {
|
||||
implementation("org.ow2.asm:asm-commons:9.5")
|
||||
implementation("org.ow2.asm:asm-commons:9.7")
|
||||
implementation("org.spongepowered:configurate-yaml:4.2.0-SNAPSHOT") // Paper - config files
|
||||
implementation("commons-lang:commons-lang:2.6")
|
||||
+ implementation("net.fabricmc:mapping-io:0.5.0") // Paper - needed to read mappings for stacktrace deobfuscation
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Implement Mob Goal API
|
|||
|
||||
|
||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||
index 450f7c03bdcc109938ba9b66328bdbb2c96c03c9..c6241f858209ed662d8720217d143340916024e9 100644
|
||||
index e9cda97679ed18156baf009926d6f210093112bd..7cbfd129efcc2e971b75aaa272dee79a3b4d2d5c 100644
|
||||
--- a/build.gradle.kts
|
||||
+++ b/build.gradle.kts
|
||||
@@ -44,6 +44,7 @@ dependencies {
|
||||
|
@ -15,7 +15,7 @@ index 450f7c03bdcc109938ba9b66328bdbb2c96c03c9..c6241f858209ed662d8720217d143340
|
|||
+ testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test
|
||||
testImplementation("org.junit.jupiter:junit-jupiter:5.10.0")
|
||||
testImplementation("org.hamcrest:hamcrest:2.2")
|
||||
testImplementation("org.mockito:mockito-core:5.5.0")
|
||||
testImplementation("org.mockito:mockito-core:5.11.0")
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..8117578ced94aa6bf01871f6526a388385c4adf2
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Option for maximum exp value when merging orbs
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 8da01bdaa2a1c621947b6a50b178eec10deb1250..89469dd94c8baecaef5253ee3693c841302d5e57 100644
|
||||
index 8866f1d4f19c935edb7eb3c9265a2b65383e5595..608829fa99a197a58505b1e7ca9898e8d6d19aa4 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -703,16 +703,30 @@ public class CraftEventFactory {
|
||||
@@ -704,16 +704,30 @@ public class CraftEventFactory {
|
||||
if (entity instanceof net.minecraft.world.entity.ExperienceOrb xp) {
|
||||
double radius = world.spigotConfig.expMerge;
|
||||
if (radius > 0) {
|
||||
|
|
|
@ -9,10 +9,10 @@ Plugins can cancel this if they want to ensure experience orbs do not lose impor
|
|||
metadata such as spawn reason, or conditionally move data from source to target.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 89469dd94c8baecaef5253ee3693c841302d5e57..0a169b4cf47ff3d05555af6c0e0b0cdb30ba9e45 100644
|
||||
index 608829fa99a197a58505b1e7ca9898e8d6d19aa4..b38212ceb8c375c9604eac36bee6d143ffbf3837 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -712,7 +712,7 @@ public class CraftEventFactory {
|
||||
@@ -713,7 +713,7 @@ public class CraftEventFactory {
|
||||
for (Entity e : entities) {
|
||||
if (e instanceof net.minecraft.world.entity.ExperienceOrb loopItem) {
|
||||
// Paper start
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: [PATCH] Fix PotionEffect ignores icon flag
|
|||
Co-authored-by: Tamion <70228790+notTamion@users.noreply.github.com>
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index fd18531ff94daa6dc2994a69e1e647078a5a664c..9a9d119e76fca75a9e531f4bbd204ab8eb9a1263 100644
|
||||
index e5cd09c9c27f23860fc31cb22377a54e5e60bd38..7dfc5966e6262ded29c60d7423f8a1e4a42ca948 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -468,7 +468,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -484,7 +484,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
|
||||
@Override
|
||||
public boolean addPotionEffect(PotionEffect effect, boolean force) {
|
||||
|
@ -18,7 +18,7 @@ index fd18531ff94daa6dc2994a69e1e647078a5a664c..9a9d119e76fca75a9e531f4bbd204ab8
|
|||
return true;
|
||||
}
|
||||
|
||||
@@ -489,7 +489,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -505,7 +505,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@Override
|
||||
public PotionEffect getPotionEffect(PotionEffectType type) {
|
||||
MobEffectInstance handle = this.getHandle().getEffect(CraftPotionEffectType.bukkitToMinecraft(type));
|
||||
|
@ -27,7 +27,7 @@ index fd18531ff94daa6dc2994a69e1e647078a5a664c..9a9d119e76fca75a9e531f4bbd204ab8
|
|||
}
|
||||
|
||||
@Override
|
||||
@@ -501,7 +501,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -517,7 +517,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
public Collection<PotionEffect> getActivePotionEffects() {
|
||||
List<PotionEffect> effects = new ArrayList<PotionEffect>();
|
||||
for (MobEffectInstance handle : this.getHandle().activeEffects.values()) {
|
||||
|
|
|
@ -8,7 +8,7 @@ Adds a new method to fetch the location of a player's bed without generating any
|
|||
getPotentialBedLocation - Gets the last known location of a player's bed. This does not preform any check if the bed is still valid and does not load any chunks.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
index 7afbecd29f0a729e32c5cd50cb03d5404ba03d75..fe050a077782fb023c49710eb2127250d5165484 100644
|
||||
index 35f03bea2b1206b420ac46dfd77811fb485c5319..3898d583a65e82711fd4415aed32ecf08f42100f 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
@@ -12,6 +12,7 @@ import net.minecraft.nbt.CompoundTag;
|
||||
|
@ -19,7 +19,7 @@ index 7afbecd29f0a729e32c5cd50cb03d5404ba03d75..fe050a077782fb023c49710eb2127250
|
|||
import net.minecraft.server.level.ServerPlayer;
|
||||
import net.minecraft.world.MenuProvider;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
@@ -130,6 +131,22 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -131,6 +132,22 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
return this.getHandle().sleepCounter;
|
||||
}
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ makes it so that the server keeps the last difficulty used instead
|
|||
of restoring the server.properties every single load.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index f786bf10a42fa4e9f610416959c60c52729c277b..21176d6e57ae9e975b1e7de14b3364365cc1012d 100644
|
||||
index af68110105a9a3ec0ebd31ea9733af8dfed1037b..0c0356339abbf255a411993b9bd3e09d31cf2636 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -825,7 +825,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
|
@ -117,10 +117,10 @@ index a5c84867708385ae78951872410914835ab3e7e5..edbf53c69bf788c2ac3b7d1be258e37c
|
|||
for (SpawnCategory spawnCategory : SpawnCategory.values()) {
|
||||
if (CraftSpawnCategory.isValidForLimits(spawnCategory)) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 6bb9d76f8c5f3dc683caecfbb7c7c2ca41cba659..aac25db85143ba09e96ef0775786732958f42ffb 100644
|
||||
index b39721208f8b66c1478e89553a592070cf90fb97..e4f7cc59ea5a3c703ada8ad3d096a7bf09950ed7 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -1134,7 +1134,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1154,7 +1154,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public void setDifficulty(Difficulty difficulty) {
|
||||
|
|
|
@ -44,10 +44,10 @@ index edbf53c69bf788c2ac3b7d1be258e37cb801a5f6..c05fd6a179e8d142b3f5a8977ae7afab
|
|||
this.printSaveWarning = false;
|
||||
this.console.autosavePeriod = this.configuration.getInt("ticks-per.autosave");
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index aac25db85143ba09e96ef0775786732958f42ffb..af782882479910f13b54081df2443387135874e0 100644
|
||||
index e4f7cc59ea5a3c703ada8ad3d096a7bf09950ed7..b437f582c36ab9a5b06129ef1b36dd14432c0c31 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -288,7 +288,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -289,7 +289,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public Chunk getChunkAt(int x, int z) {
|
||||
|
@ -62,7 +62,7 @@ index aac25db85143ba09e96ef0775786732958f42ffb..af782882479910f13b54081df2443387
|
|||
return new CraftChunk(chunk);
|
||||
}
|
||||
|
||||
@@ -302,6 +308,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -303,6 +309,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
return new CraftChunk(this.getHandle(), x, z);
|
||||
}
|
||||
|
||||
|
@ -75,7 +75,7 @@ index aac25db85143ba09e96ef0775786732958f42ffb..af782882479910f13b54081df2443387
|
|||
@Override
|
||||
public Chunk getChunkAt(Block block) {
|
||||
Preconditions.checkArgument(block != null, "null block");
|
||||
@@ -353,7 +365,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -354,7 +366,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
public boolean unloadChunkRequest(int x, int z) {
|
||||
org.spigotmc.AsyncCatcher.catchOp("chunk unload"); // Spigot
|
||||
if (this.isChunkLoaded(x, z)) {
|
||||
|
@ -84,7 +84,7 @@ index aac25db85143ba09e96ef0775786732958f42ffb..af782882479910f13b54081df2443387
|
|||
}
|
||||
|
||||
return true;
|
||||
@@ -438,7 +450,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -439,7 +451,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
}
|
||||
|
||||
if (chunk instanceof net.minecraft.world.level.chunk.LevelChunk) {
|
||||
|
@ -93,7 +93,7 @@ index aac25db85143ba09e96ef0775786732958f42ffb..af782882479910f13b54081df2443387
|
|||
return true;
|
||||
}
|
||||
|
||||
@@ -2221,6 +2233,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -2241,6 +2253,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
io.papermc.paper.chunk.system.ChunkSystem.scheduleChunkLoad(this.getHandle(), x, z, gen, ChunkStatus.FULL, true, priority, (c) -> {
|
||||
net.minecraft.server.MinecraftServer.getServer().scheduleOnMain(() -> {
|
||||
net.minecraft.world.level.chunk.LevelChunk chunk = (net.minecraft.world.level.chunk.LevelChunk)c;
|
||||
|
|
|
@ -94,10 +94,10 @@ index 9c2fe69ced7a46bbd8b0fbe10fa67d0a39b0f375..e40d9dbdbe5359c38af6d764d01c9be4
|
|||
|
||||
private void setupRecipeList(Container input, ItemStack stack) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 0a169b4cf47ff3d05555af6c0e0b0cdb30ba9e45..67bfd38bd08c30eae597a4875ea4a8b26c2f5c5a 100644
|
||||
index b38212ceb8c375c9604eac36bee6d143ffbf3837..b72fba605ea2c2ea88fee90058fb2ccc30197c95 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -1647,6 +1647,12 @@ public class CraftEventFactory {
|
||||
@@ -1653,6 +1653,12 @@ public class CraftEventFactory {
|
||||
}
|
||||
|
||||
public static PrepareAnvilEvent callPrepareAnvilEvent(InventoryView view, ItemStack item) {
|
||||
|
@ -110,7 +110,7 @@ index 0a169b4cf47ff3d05555af6c0e0b0cdb30ba9e45..67bfd38bd08c30eae597a4875ea4a8b2
|
|||
PrepareAnvilEvent event = new PrepareAnvilEvent(view, CraftItemStack.asCraftMirror(item).clone());
|
||||
event.getView().getPlayer().getServer().getPluginManager().callEvent(event);
|
||||
event.getInventory().setItem(2, event.getResult());
|
||||
@@ -1654,6 +1660,12 @@ public class CraftEventFactory {
|
||||
@@ -1660,6 +1666,12 @@ public class CraftEventFactory {
|
||||
}
|
||||
|
||||
public static PrepareGrindstoneEvent callPrepareGrindstoneEvent(InventoryView view, ItemStack item) {
|
||||
|
@ -123,7 +123,7 @@ index 0a169b4cf47ff3d05555af6c0e0b0cdb30ba9e45..67bfd38bd08c30eae597a4875ea4a8b2
|
|||
PrepareGrindstoneEvent event = new PrepareGrindstoneEvent(view, CraftItemStack.asCraftMirror(item).clone());
|
||||
event.getView().getPlayer().getServer().getPluginManager().callEvent(event);
|
||||
event.getInventory().setItem(2, event.getResult());
|
||||
@@ -1661,12 +1673,39 @@ public class CraftEventFactory {
|
||||
@@ -1667,12 +1679,39 @@ public class CraftEventFactory {
|
||||
}
|
||||
|
||||
public static PrepareSmithingEvent callPrepareSmithingEvent(InventoryView view, ItemStack item) {
|
||||
|
|
|
@ -5,17 +5,18 @@ Subject: [PATCH] Add playPickupItemAnimation to LivingEntity
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index c4db692fb5d952e4d185067388fd46ed0e1f1537..e07553c3ee28a2510c46a8188c8ce507f2567c80 100644
|
||||
index 8cfa39acde6d32625ae87e9d031d8dc767783e61..e54b164ea2f28cdbb89166fb9b0b9cd9d12c0ca9 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -949,5 +949,10 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
((Mob) getHandle()).getJumpControl().jump();
|
||||
@@ -977,4 +977,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
}
|
||||
}
|
||||
// Paper end - entity jump API
|
||||
+
|
||||
+ // Paper start - pickup animation API
|
||||
+ @Override
|
||||
+ public void playPickupItemAnimation(org.bukkit.entity.Item item, int quantity) {
|
||||
+ getHandle().take(((CraftItem) item).getHandle(), quantity);
|
||||
+ public void playPickupItemAnimation(final org.bukkit.entity.Item item, final int quantity) {
|
||||
+ this.getHandle().take(((CraftItem) item).getHandle(), quantity);
|
||||
+ }
|
||||
// Paper end
|
||||
+ // Paper end - pickup animation API
|
||||
}
|
||||
|
|
|
@ -21,10 +21,10 @@ index 9af1877321356348ad96b92ae8c5f4811bef50ac..2e42e09d3fa19e5a16374ee6ac1677dd
|
|||
// if this keepSpawnInMemory is false a plugin has already removed our tickets, do not re-add
|
||||
this.removeTicketsForSpawn(this.paperConfig().spawn.keepSpawnLoadedRange * 16, prevSpawn);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index af782882479910f13b54081df2443387135874e0..dbe1e59572ca0f98783db456bdab6ee4e79f7689 100644
|
||||
index b437f582c36ab9a5b06129ef1b36dd14432c0c31..afb65de5fbff44b4ca455c778030c3387c2dafc8 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -268,12 +268,14 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -269,12 +269,14 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@Override
|
||||
public boolean setSpawnLocation(int x, int y, int z, float angle) {
|
||||
try {
|
||||
|
|
|
@ -7,10 +7,10 @@ Add a new event, BellRingEvent, to trigger whenever a player rings a
|
|||
village bell. Passes along the bell block and the player who rang it.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 67bfd38bd08c30eae597a4875ea4a8b26c2f5c5a..c045e9503c76b869d58d93077fef130759615ff5 100644
|
||||
index b72fba605ea2c2ea88fee90058fb2ccc30197c95..657df7b4aa8c4a19bf8e085d8235aa0d1a1b08da 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -367,10 +367,11 @@ public class CraftEventFactory {
|
||||
@@ -368,10 +368,11 @@ public class CraftEventFactory {
|
||||
return tradeSelectEvent;
|
||||
}
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Add additional open container api to HumanEntity
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
index fe050a077782fb023c49710eb2127250d5165484..93644aefd2e6c97eca2735812b2b7b4bd039cfb5 100644
|
||||
index 3898d583a65e82711fd4415aed32ecf08f42100f..d5a8f019e88de30400733cdc3178eb982ccca341 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
@@ -461,6 +461,70 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -464,6 +464,70 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
return this.getHandle().containerMenu.getBukkitView();
|
||||
}
|
||||
|
||||
|
|
|
@ -21,10 +21,10 @@ index f45b148884b305628411d57f7662ea454fde3906..44610d4e3fb69e6cf5629d9e895e93d8
|
|||
+ // Paper end - Expose entity id counter
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index ef4b15e0ae11a54ec49e40f1d694dae58ae95e03..2bc3d9c02256269845d140764b7b1b201e38b569 100644
|
||||
index 7579e076793ba90e405b3ac0db600374ee8fdcb3..f4a7da134584a065a34b4f6a8eaebfcb81b6d735 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -520,6 +520,11 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -525,6 +525,11 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
Preconditions.checkArgument(dataVersion <= getDataVersion(), "Newer version! Server downgrades are not supported!");
|
||||
return compound;
|
||||
}
|
||||
|
|
|
@ -5,11 +5,11 @@ Subject: [PATCH] Add LivingEntity#clearActiveItem
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index e07553c3ee28a2510c46a8188c8ce507f2567c80..aac0fb198fb912dc59dc56f449e586839600fa13 100644
|
||||
index d90a56de3ec0236c82668d0f7ce01a8515de6450..baeb521f44389e6bf5d7b4237ebd5c805ae6f43c 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -916,6 +916,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
return getHandle().getUseItem().asBukkitMirror();
|
||||
@@ -934,6 +934,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
return this.getHandle().getUseItem().asBukkitMirror();
|
||||
}
|
||||
|
||||
+ // Paper start
|
||||
|
@ -20,5 +20,5 @@ index e07553c3ee28a2510c46a8188c8ce507f2567c80..aac0fb198fb912dc59dc56f449e58683
|
|||
+ // Paper end
|
||||
+
|
||||
@Override
|
||||
public int getItemUseRemainingTime() {
|
||||
return getHandle().getUseItemRemainingTicks();
|
||||
public int getActiveItemRemainingTime() {
|
||||
return this.getHandle().getUseItemRemainingTicks();
|
||||
|
|
|
@ -18,10 +18,10 @@ index 603e003fbd39870a0e249151885b3b8f3e120afe..6fe21c29aa9d119490fbf1d69eb03c14
|
|||
|
||||
// CraftBukkit start
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
index 93644aefd2e6c97eca2735812b2b7b4bd039cfb5..40f848d117c1a4f4fc2f11861c5f142071d56977 100644
|
||||
index d5a8f019e88de30400733cdc3178eb982ccca341..e7726862f99cb16b7335b06675af73db773b54e8 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
@@ -126,6 +126,13 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -127,6 +127,13 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -36,22 +36,23 @@ index 93644aefd2e6c97eca2735812b2b7b4bd039cfb5..40f848d117c1a4f4fc2f11861c5f1420
|
|||
public int getSleepTicks() {
|
||||
return this.getHandle().sleepCounter;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index aac0fb198fb912dc59dc56f449e586839600fa13..3b2d54d7a365e268107c4abc5a15c996954e5e9c 100644
|
||||
index 1333f5116e824e1024519808e824a979b9745c9f..24e8f6a89dc186c3f8f4356cb9a60115fc0096c0 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -961,5 +961,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
public void playPickupItemAnimation(org.bukkit.entity.Item item, int quantity) {
|
||||
getHandle().take(((CraftItem) item).getHandle(), quantity);
|
||||
@@ -991,4 +991,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
this.getHandle().take(((CraftItem) item).getHandle(), quantity);
|
||||
}
|
||||
// Paper end - pickup animation API
|
||||
+
|
||||
+ // Paper start - hurt direction API
|
||||
+ @Override
|
||||
+ public float getHurtDirection() {
|
||||
+ return this.getHandle().getHurtDir();
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public void setHurtDirection(float hurtDirection) {
|
||||
+ public void setHurtDirection(final float hurtDirection) {
|
||||
+ throw new UnsupportedOperationException("Cannot set the hurt direction on a non player");
|
||||
+ }
|
||||
// Paper end
|
||||
+ // Paper end - hurt direction API
|
||||
}
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Add OBSTRUCTED reason to BedEnterResult
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index c045e9503c76b869d58d93077fef130759615ff5..430d54feb4224fb73d31aa205b883af66f29b226 100644
|
||||
index 657df7b4aa8c4a19bf8e085d8235aa0d1a1b08da..368c4bddbe6fe88ca408147df1fa58183dd513a4 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -302,6 +302,10 @@ public class CraftEventFactory {
|
||||
@@ -303,6 +303,10 @@ public class CraftEventFactory {
|
||||
return BedEnterResult.TOO_FAR_AWAY;
|
||||
case NOT_SAFE:
|
||||
return BedEnterResult.NOT_SAFE;
|
||||
|
|
|
@ -64,10 +64,10 @@ index ba825ff3df79903aefe1a4cb14efab9a302397d7..ac7a5410b01a6741e3b548d153f37ea1
|
|||
|
||||
public int get() {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index dbe1e59572ca0f98783db456bdab6ee4e79f7689..9d44a2ce6da1b6338e5a1aaa9238483b64c9a34f 100644
|
||||
index afb65de5fbff44b4ca455c778030c3387c2dafc8..3893b70926140f3658f6bab68c5c4f7c41dc603a 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -1864,8 +1864,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1884,8 +1884,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
if (!this.isGameRule(rule)) return false;
|
||||
|
||||
|
@ -82,7 +82,7 @@ index dbe1e59572ca0f98783db456bdab6ee4e79f7689..9d44a2ce6da1b6338e5a1aaa9238483b
|
|||
handle.onChanged(this.getHandle());
|
||||
return true;
|
||||
}
|
||||
@@ -1901,8 +1906,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1921,8 +1926,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
if (!this.isGameRule(rule.getName())) return false;
|
||||
|
||||
|
|
|
@ -32,10 +32,10 @@ index 913ed110d8402d377152753325901eb7f3ac82d6..1d13f8a1009d6eda351c697052d499d5
|
|||
} else {
|
||||
ItemStack itemstack = tileentitydispenser.getItem(i);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 430d54feb4224fb73d31aa205b883af66f29b226..0a44f7f2ab9c824f1a32d9dc5feb6a96eb00d8de 100644
|
||||
index 368c4bddbe6fe88ca408147df1fa58183dd513a4..ea26b27279b6e09015908f164a061891f4ab9002 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -2033,4 +2033,12 @@ public class CraftEventFactory {
|
||||
@@ -2039,4 +2039,12 @@ public class CraftEventFactory {
|
||||
return org.bukkit.craftbukkit.inventory.CraftItemStack.asNMSCopy(event.getPotion());
|
||||
}
|
||||
// Paper end - WitchReadyPotionEvent
|
||||
|
|
|
@ -29,10 +29,10 @@ index 1d13f8a1009d6eda351c697052d499d594a6aaa8..9a8a0fb958e8ec782111507bae957f85
|
|||
} else {
|
||||
// CraftBukkit start - Fire event when pushing items into other inventories
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 0a44f7f2ab9c824f1a32d9dc5feb6a96eb00d8de..4b3e246475821b71fe023fea602d68c0e2f84964 100644
|
||||
index ea26b27279b6e09015908f164a061891f4ab9002..ec6bbab9787e5568e2be7d0a0004d8103ec38ff3 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -2040,5 +2040,11 @@ public class CraftEventFactory {
|
||||
@@ -2046,5 +2046,11 @@ public class CraftEventFactory {
|
||||
io.papermc.paper.event.block.BlockFailedDispenseEvent event = new io.papermc.paper.event.block.BlockFailedDispenseEvent(block);
|
||||
return event.callEvent();
|
||||
}
|
||||
|
|
|
@ -122,10 +122,10 @@ index 6a6526b7b1b578e08a41f85c0443c5f04177efb0..0b88bd258c4f2bce100bf96bcbe61c20
|
|||
flag1 = true;
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 4b3e246475821b71fe023fea602d68c0e2f84964..43548c4c96dae63fe32640a6dff5410cc32ed501 100644
|
||||
index ec6bbab9787e5568e2be7d0a0004d8103ec38ff3..ca0cb9ad99992ef2602781adf16da94ca56975f8 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -1569,8 +1569,10 @@ public class CraftEventFactory {
|
||||
@@ -1570,8 +1570,10 @@ public class CraftEventFactory {
|
||||
Bukkit.getPluginManager().callEvent(new PlayerRecipeBookSettingsChangeEvent(player.getBukkitEntity(), bukkitType, open, filter));
|
||||
}
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Allow adding items to BlockDropItemEvent
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 43548c4c96dae63fe32640a6dff5410cc32ed501..11b42f349edefb6961b61d709bfbe3ad4b55c7f8 100644
|
||||
index ca0cb9ad99992ef2602781adf16da94ca56975f8..5d4fe10d4e3a5d7a9430dbd5b3c850db482f5862 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -451,13 +451,30 @@ public class CraftEventFactory {
|
||||
@@ -452,13 +452,30 @@ public class CraftEventFactory {
|
||||
}
|
||||
|
||||
public static void handleBlockDropItemEvent(Block block, BlockState state, ServerPlayer player, List<ItemEntity> items) {
|
||||
|
|
|
@ -38,10 +38,10 @@ index ea48f1119a940056c37d1d203437bfbfdf13663b..8a678df56fcf30535957e111d81ad07b
|
|||
+ // Paper end - living entity allow attribute registration
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index 3b2d54d7a365e268107c4abc5a15c996954e5e9c..c95c0580e0c3afe9730a1c3f2095b7970e7cc001 100644
|
||||
index 6ee15dee09d3e727df01564282ba5eb6450db51b..7b65a7d1efaf90d1a2b7a601f94be4d9ebe76a2b 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -739,6 +739,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -755,6 +755,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
return this.getHandle().craftAttributes.getAttribute(attribute);
|
||||
}
|
||||
|
||||
|
|
|
@ -67,10 +67,10 @@ index c353f7a3a9ad0099ef7330dde988d1a174a0e327..b453673f7bab09a1b10898a7d1f85d13
|
|||
// Check if a World already exists with the UID.
|
||||
if (this.getWorld(world.getUID()) != null) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 14d094d9af9b76277859901db908b8a36b24986b..4d695428cf838d2f5661fdeaaa58b82de693d64e 100644
|
||||
index f10457466cbaaba2d3aa49a64092847f635ce752..0768a70cdd48cf03a6dfb3a6a3c7ed4844ea132e 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -531,6 +531,11 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -536,6 +536,11 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
public int nextEntityId() {
|
||||
return net.minecraft.world.entity.Entity.nextEntityId();
|
||||
}
|
||||
|
|
|
@ -7,10 +7,10 @@ Subject: [PATCH] Item Rarity API
|
|||
public net.minecraft.world.item.Item rarity
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 4d695428cf838d2f5661fdeaaa58b82de693d64e..b928b3550bc74fd91c6762bc025a0bf6c766541b 100644
|
||||
index 0768a70cdd48cf03a6dfb3a6a3c7ed4844ea132e..a1400e8a7c59ffbfa4cd4ee3f3201b96c1584261 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -536,6 +536,20 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -541,6 +541,20 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
public String getMainLevelName() {
|
||||
return ((net.minecraft.server.dedicated.DedicatedServer) net.minecraft.server.MinecraftServer.getServer()).getProperties().levelName;
|
||||
}
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Expose protocol version
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index b928b3550bc74fd91c6762bc025a0bf6c766541b..44b0acb82f10a35bc0c42fdb6fd685aadc76d789 100644
|
||||
index a1400e8a7c59ffbfa4cd4ee3f3201b96c1584261..81c2f1dbadb678907cac3cc18e7d0bb307304f00 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -550,6 +550,11 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -555,6 +555,11 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
public io.papermc.paper.inventory.ItemRarity getItemStackRarity(org.bukkit.inventory.ItemStack itemStack) {
|
||||
return io.papermc.paper.inventory.ItemRarity.values()[getItem(itemStack.getType()).getRarity(CraftItemStack.asNMSCopy(itemStack)).ordinal()];
|
||||
}
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] add isDeeplySleeping to HumanEntity
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
index 40f848d117c1a4f4fc2f11861c5f142071d56977..6e85e580d48622b4c90478b9afbc45b4445e86b0 100644
|
||||
index e7726862f99cb16b7335b06675af73db773b54e8..b895b3972dc48ec91dba9d44546508badef73865 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
@@ -133,6 +133,13 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
@@ -134,6 +134,13 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
}
|
||||
// Paper end
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] More World API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 9d44a2ce6da1b6338e5a1aaa9238483b64c9a34f..c90cbf4681e1c57fcec553b01d99a26316f896e5 100644
|
||||
index 3893b70926140f3658f6bab68c5c4f7c41dc603a..fc117c5c3ab09c24600fdbdbff56356e7ad64473 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -2110,6 +2110,53 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -2130,6 +2130,53 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
return new CraftStructureSearchResult(CraftStructure.minecraftToBukkit(found.getSecond().value()), CraftLocation.toBukkit(found.getFirst(), this));
|
||||
}
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] ItemStack repair check API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 44b0acb82f10a35bc0c42fdb6fd685aadc76d789..6eca86a2ab7145f4c60abb90cd46b4098ad8fb56 100644
|
||||
index 81c2f1dbadb678907cac3cc18e7d0bb307304f00..79977c677b4348bbfc8dcd4cb5e4c01c6fceb354 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -551,6 +551,14 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -556,6 +556,14 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
return io.papermc.paper.inventory.ItemRarity.values()[getItem(itemStack.getType()).getRarity(CraftItemStack.asNMSCopy(itemStack)).ordinal()];
|
||||
}
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ public net.minecraft.world.item.enchantment.Enchantment slots
|
|||
Co-authored-by: Luis <luisc99@icloud.com>
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java b/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
|
||||
index 7aa4035a4df1ddcc71065034eafd569ca59be810..5b7579395e61684592758f408d61cffe57f8b21d 100644
|
||||
index 3feaaca5aaee12e48fa2e5f5d05329c9980b161e..a151b5d7c6e41b08e57c806bc43e067af48263ed 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
|
||||
@@ -81,7 +81,7 @@ public class CraftEnchantment extends Enchantment implements Handleable<net.mine
|
||||
|
@ -78,14 +78,15 @@ index 7aa4035a4df1ddcc71065034eafd569ca59be810..5b7579395e61684592758f408d61cffe
|
|||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index c95c0580e0c3afe9730a1c3f2095b7970e7cc001..aab6948060d8870729690449064b34e1b01c925e 100644
|
||||
index 9c37509faeeaf11645dbfc6ddb2eac6aac7b3c59..18f2775d6417f775d6ebb6560450c05e63e3299d 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -978,5 +978,21 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
public void setHurtDirection(float hurtDirection) {
|
||||
@@ -1010,4 +1010,22 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
throw new UnsupportedOperationException("Cannot set the hurt direction on a non player");
|
||||
}
|
||||
// Paper end - hurt direction API
|
||||
+
|
||||
+ // Paper start - more enchant API
|
||||
+ public static MobType fromBukkitEntityCategory(EntityCategory entityCategory) {
|
||||
+ switch (entityCategory) {
|
||||
+ case NONE:
|
||||
|
@ -101,7 +102,7 @@ index c95c0580e0c3afe9730a1c3f2095b7970e7cc001..aab6948060d8870729690449064b34e1
|
|||
+ }
|
||||
+ throw new IllegalArgumentException(entityCategory + " is an unrecognized entity category");
|
||||
+ }
|
||||
// Paper end
|
||||
+ // Paper end - more enchant API
|
||||
}
|
||||
diff --git a/src/test/java/io/papermc/paper/enchantments/EnchantmentRarityTest.java b/src/test/java/io/papermc/paper/enchantments/EnchantmentRarityTest.java
|
||||
new file mode 100644
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Attributes API for item defaults
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 6eca86a2ab7145f4c60abb90cd46b4098ad8fb56..b89171cb89e3d38f3260ead8549cccde904db7c4 100644
|
||||
index 79977c677b4348bbfc8dcd4cb5e4c01c6fceb354..31898e8425c524277bd07b139a898fe5f9fe344d 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -559,6 +559,19 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -564,6 +564,19 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
return CraftMagicNumbers.getItem(itemToBeRepaired.getType()).isValidRepairItem(CraftItemStack.asNMSCopy(itemToBeRepaired), CraftItemStack.asNMSCopy(repairMaterial));
|
||||
}
|
||||
|
||||
|
|
|
@ -95,10 +95,10 @@ index f5ac36fa54f3d3b39de103c95abb9ca3adfe8dda..59ba982dc96ce47e47399514e8f74d2b
|
|||
if (weather.isCancelled()) {
|
||||
return;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index c90cbf4681e1c57fcec553b01d99a26316f896e5..05b9e7011d1c127052b73a464fc86331e2a4774a 100644
|
||||
index fc117c5c3ab09c24600fdbdbff56356e7ad64473..685851278af7ae0afe2009592d8c57bd01f92267 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -1177,7 +1177,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1197,7 +1197,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public void setStorm(boolean hasStorm) {
|
||||
|
@ -107,7 +107,7 @@ index c90cbf4681e1c57fcec553b01d99a26316f896e5..05b9e7011d1c127052b73a464fc86331
|
|||
this.setWeatherDuration(0); // Reset weather duration (legacy behaviour)
|
||||
this.setClearWeatherDuration(0); // Reset clear weather duration (reset "/weather clear" commands)
|
||||
}
|
||||
@@ -1199,7 +1199,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1219,7 +1219,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public void setThundering(boolean thundering) {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Line Of Sight Changes
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index dad6481439c54567fd6135b39c9209e74a3acba0..f7244a0cbb06258d6e553ad35e1040e338cce4eb 100644
|
||||
index 7f2111586f5a4df8824be575d6215a564f1e294a..1da8e62b57d3b971aab00fd3b2b50f1ae4a8d162 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -3627,7 +3627,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
|
@ -45,10 +45,10 @@ index b9262b681b51cb68024156b28d33624fddd17b26..af14244caba22e750ee7baba03bb7ce2
|
|||
// Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index aab6948060d8870729690449064b34e1b01c925e..9ce82b203e37ff1f5a7618fe864ed7616bd8d52e 100644
|
||||
index 5b9bb113db1202025c7ebb79f48b434ed8d9e3eb..aaacc38b0b2dd435ef5cb6a934cfcd6659c4ca15 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -612,6 +612,23 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -628,6 +628,23 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
return this.getHandle().hasLineOfSight(((CraftEntity) other).getHandle());
|
||||
}
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] add per world spawn limits
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 05b9e7011d1c127052b73a464fc86331e2a4774a..fce62b18da2d6ee8d10688107ca3179abfa3781b 100644
|
||||
index 685851278af7ae0afe2009592d8c57bd01f92267..95a5f2ef87252ab3fb684d1e04e2a3d05a3aa4bb 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -221,6 +221,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -222,6 +222,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
this.biomeProvider = biomeProvider;
|
||||
|
||||
this.environment = env;
|
||||
|
|
|
@ -154,10 +154,10 @@ index 6e921bf7101224d6b8261ab8d87724080c4095d7..0204257ca0245830534592922e400a36
|
|||
|
||||
public boolean isLingering() {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 11b42f349edefb6961b61d709bfbe3ad4b55c7f8..fef616ed1deac6cf400a2f39a2eba11b94921415 100644
|
||||
index 5d4fe10d4e3a5d7a9430dbd5b3c850db482f5862..74df21363c96dbf82337550ae2d8525e82eaface 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -875,6 +875,32 @@ public class CraftEventFactory {
|
||||
@@ -876,6 +876,32 @@ public class CraftEventFactory {
|
||||
return event;
|
||||
}
|
||||
|
||||
|
|
|
@ -796,10 +796,10 @@ index 2cec61a1bb050c1ef81c5fc3d0afafe9ff29d459..97fa4e1e70203194bd939618b2fad926
|
|||
+ // Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index 9ce82b203e37ff1f5a7618fe864ed7616bd8d52e..6218f15194b7ae0b17f7f1dab78b1337779edb27 100644
|
||||
index aaacc38b0b2dd435ef5cb6a934cfcd6659c4ca15..9c69fe09b2cf1172fe0e16f6799cc67bc0ccd397 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -905,14 +905,29 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -921,14 +921,29 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
|
||||
@Override
|
||||
public boolean isInvisible() {
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Stinger API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index 6218f15194b7ae0b17f7f1dab78b1337779edb27..9fed7d8500481493de32efd16de6b271b9ed446d 100644
|
||||
index 9c69fe09b2cf1172fe0e16f6799cc67bc0ccd397..bc7e2d24dac52091a62ce488c7fc34133dfa2aa8 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -338,6 +338,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -354,6 +354,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
}
|
||||
// Paper end
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ index 6218f15194b7ae0b17f7f1dab78b1337779edb27..9fed7d8500481493de32efd16de6b271
|
|||
|
||||
// Paper start - Add methods for working with arrows stuck in living entities
|
||||
@Override
|
||||
@@ -352,6 +357,34 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -368,6 +373,34 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
}
|
||||
// Paper end - Add methods for working with arrows stuck in living entities
|
||||
|
||||
|
|
|
@ -31,10 +31,10 @@ index 60590ee30d2ff3b94c796bae2d7e9d9bc145fc0d..14b3edc05a04f5049f994df5be68e4f0
|
|||
blockposition1 = blockposition1.above(2);
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index fce62b18da2d6ee8d10688107ca3179abfa3781b..ca68faef4232859e833adfd86a0ce13f7c2ad00e 100644
|
||||
index 95a5f2ef87252ab3fb684d1e04e2a3d05a3aa4bb..6d74a3a43aee0f7ba4c109bd2443c5fcd950fa54 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -667,6 +667,23 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -687,6 +687,23 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
return (LightningStrike) lightning.getBukkitEntity();
|
||||
}
|
||||
|
||||
|
|
|
@ -81,10 +81,10 @@ index 0000000000000000000000000000000000000000..68044b8439c302114240d0ae4da93ab3
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index b89171cb89e3d38f3260ead8549cccde904db7c4..efa904eac6e3c2995f5a03fca44340d083e73b77 100644
|
||||
index 31898e8425c524277bd07b139a898fe5f9fe344d..445e87a4cc7a1b6c38a4cbf2212ebddbc3496d12 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -576,6 +576,18 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -581,6 +581,18 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
public int getProtocolVersion() {
|
||||
return net.minecraft.SharedConstants.getCurrentVersion().getProtocolVersion();
|
||||
}
|
||||
|
|
|
@ -71,10 +71,10 @@ index 913f0eb1d9081cd224b54df401ff4a0af2989f1f..b3972c0aececb1d7170a47bbe8f1d6ce
|
|||
int k = entity.getRemainingFireTicks();
|
||||
boolean flag1 = entity.getType().is(EntityTypeTags.DEFLECTS_ARROWS);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index fef616ed1deac6cf400a2f39a2eba11b94921415..ef45cf53ee3e5bf9da11f631c6eeeb8df00e9920 100644
|
||||
index 74df21363c96dbf82337550ae2d8525e82eaface..7d72ccdd82daa6afe85859f5bc6ec7b187622384 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -1062,7 +1062,7 @@ public class CraftEventFactory {
|
||||
@@ -1063,7 +1063,7 @@ public class CraftEventFactory {
|
||||
return CraftEventFactory.callEntityDamageEvent(source.getDirectBlock(), entity, DamageCause.BLOCK_EXPLOSION, bukkitDamageSource, modifiers, modifierFunctions, cancelled);
|
||||
}
|
||||
DamageCause damageCause = (damager.getBukkitEntity() instanceof org.bukkit.entity.TNTPrimed) ? DamageCause.BLOCK_EXPLOSION : DamageCause.ENTITY_EXPLOSION;
|
||||
|
@ -83,7 +83,7 @@ index fef616ed1deac6cf400a2f39a2eba11b94921415..ef45cf53ee3e5bf9da11f631c6eeeb8d
|
|||
} else if (damager != null || source.getDirectEntity() != null) {
|
||||
DamageCause cause = (source.isSweep()) ? DamageCause.ENTITY_SWEEP_ATTACK : DamageCause.ENTITY_ATTACK;
|
||||
|
||||
@@ -1092,7 +1092,7 @@ public class CraftEventFactory {
|
||||
@@ -1093,7 +1093,7 @@ public class CraftEventFactory {
|
||||
cause = DamageCause.MAGIC;
|
||||
}
|
||||
|
||||
|
@ -92,7 +92,7 @@ index fef616ed1deac6cf400a2f39a2eba11b94921415..ef45cf53ee3e5bf9da11f631c6eeeb8d
|
|||
} else if (source.is(DamageTypes.FELL_OUT_OF_WORLD)) {
|
||||
return CraftEventFactory.callEntityDamageEvent(source.getDirectBlock(), entity, DamageCause.VOID, bukkitDamageSource, modifiers, modifierFunctions, cancelled);
|
||||
} else if (source.is(DamageTypes.LAVA)) {
|
||||
@@ -1150,13 +1150,13 @@ public class CraftEventFactory {
|
||||
@@ -1151,13 +1151,13 @@ public class CraftEventFactory {
|
||||
cause = DamageCause.CUSTOM;
|
||||
}
|
||||
|
||||
|
|
|
@ -39,10 +39,10 @@ index 928a301627134b49915b0ceaeabb7dc350605dc2..08716e757b2e100f7bc47a046f02db66
|
|||
+ // Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index efa904eac6e3c2995f5a03fca44340d083e73b77..609b103cb9af3b0554bf1116306874fe98c8534c 100644
|
||||
index 445e87a4cc7a1b6c38a4cbf2212ebddbc3496d12..2734f4187a4b92ef461e1f2fdae9139c6f54d8fc 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -588,6 +588,12 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -593,6 +593,12 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
var supplier = net.minecraft.world.entity.ai.attributes.DefaultAttributes.getSupplier((net.minecraft.world.entity.EntityType<? extends net.minecraft.world.entity.LivingEntity>) net.minecraft.core.registries.BuiltInRegistries.ENTITY_TYPE.get(CraftNamespacedKey.toMinecraft(bukkitEntityKey)));
|
||||
return new io.papermc.paper.attribute.UnmodifiableAttributeMap(supplier);
|
||||
}
|
||||
|
|
|
@ -48,10 +48,10 @@ index ebbefcdea6356384f27e964bd551bad2f9e696e8..06febdb103f98dd16cca32d7345b0ca6
|
|||
|
||||
// Paper start - missing entity api
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 609b103cb9af3b0554bf1116306874fe98c8534c..3f582c5653e13875cce4ef8ecd279d8a3d2b2dc2 100644
|
||||
index 2734f4187a4b92ef461e1f2fdae9139c6f54d8fc..be82e1d52d7026facb20bf07f4b3a394e77ab708 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -499,6 +499,32 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -504,6 +504,32 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
return CraftItemStack.asCraftMirror(net.minecraft.world.item.ItemStack.of(compound));
|
||||
}
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@ index 2941445ea453e2fb88ea8de38c24bf755b93936a..666c6cb6f600973e1d84839aed715606
|
|||
if (player.isRemoved()) {
|
||||
LOGGER.info("Attempt to teleport removed player {} restricted", player.getScoreboardName());
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index a2edccc840f2ba76e236ea7441f3e4909b1a1898..18804ea960f8423d172d9119c0739226a18d4d56 100644
|
||||
index 144090912223494cf163a445d7bce868be12d6af..4d8f9c8f375282968e70278da655b6e36ab96a87 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1126,7 +1126,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
|
@ -166,10 +166,10 @@ index 8f23b45dce35617bb56b21fb4f7a09baf36d40c5..cbdb2a710a7217b750de3e782cad5b5a
|
|||
PersistentEntitySectionManager.LOGGER.warn("Entity {} wasn't found in section {} (destroying due to {})", new Object[]{this.entity, SectionPos.of(this.currentSectionKey), reason});
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index ca68faef4232859e833adfd86a0ce13f7c2ad00e..df57157317fc6c84f69751fd8a120761837429af 100644
|
||||
index 6d74a3a43aee0f7ba4c109bd2443c5fcd950fa54..0b1d918452deee4c75bc61cb6a620f69cefa80b3 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -1737,6 +1737,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1757,6 +1757,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public void playSound(Location loc, Sound sound, org.bukkit.SoundCategory category, float volume, float pitch, long seed) {
|
||||
|
@ -177,7 +177,7 @@ index ca68faef4232859e833adfd86a0ce13f7c2ad00e..df57157317fc6c84f69751fd8a120761
|
|||
if (loc == null || sound == null || category == null) return;
|
||||
|
||||
double x = loc.getX();
|
||||
@@ -1748,6 +1749,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1768,6 +1769,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public void playSound(Location loc, String sound, org.bukkit.SoundCategory category, float volume, float pitch, long seed) {
|
||||
|
@ -185,7 +185,7 @@ index ca68faef4232859e833adfd86a0ce13f7c2ad00e..df57157317fc6c84f69751fd8a120761
|
|||
if (loc == null || sound == null || category == null) return;
|
||||
|
||||
double x = loc.getX();
|
||||
@@ -1780,6 +1782,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1800,6 +1802,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public void playSound(Entity entity, Sound sound, org.bukkit.SoundCategory category, float volume, float pitch, long seed) {
|
||||
|
@ -193,7 +193,7 @@ index ca68faef4232859e833adfd86a0ce13f7c2ad00e..df57157317fc6c84f69751fd8a120761
|
|||
if (!(entity instanceof CraftEntity craftEntity) || entity.getWorld() != this || sound == null || category == null) return;
|
||||
|
||||
ClientboundSoundEntityPacket packet = new ClientboundSoundEntityPacket(CraftSound.bukkitToMinecraftHolder(sound), net.minecraft.sounds.SoundSource.valueOf(category.name()), craftEntity.getHandle(), volume, pitch, seed);
|
||||
@@ -1791,6 +1794,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1811,6 +1814,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public void playSound(Entity entity, String sound, org.bukkit.SoundCategory category, float volume, float pitch, long seed) {
|
||||
|
@ -202,10 +202,10 @@ index ca68faef4232859e833adfd86a0ce13f7c2ad00e..df57157317fc6c84f69751fd8a120761
|
|||
|
||||
ClientboundSoundEntityPacket packet = new ClientboundSoundEntityPacket(Holder.direct(SoundEvent.createVariableRangeEvent(new ResourceLocation(sound))), net.minecraft.sounds.SoundSource.valueOf(category.name()), craftEntity.getHandle(), volume, pitch, seed);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index 9fed7d8500481493de32efd16de6b271b9ed446d..a67570fedb8f09a118351b1b5c3d47bc568f5c0c 100644
|
||||
index bc7e2d24dac52091a62ce488c7fc34133dfa2aa8..6af7796c9505b43b2c4dfe869214b0f56dc71244 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
@@ -501,6 +501,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
@@ -517,6 +517,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
|
||||
@Override
|
||||
public boolean addPotionEffect(PotionEffect effect, boolean force) {
|
||||
|
|
|
@ -294,10 +294,10 @@ index 51337b1b2e74a67ad54c5d594004b649cb6af4ed..dc37989ab5e0971a144a8248152169b4
|
|||
}
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index df57157317fc6c84f69751fd8a120761837429af..df74b47477553bdee0b5faaf40835b94c41316dd 100644
|
||||
index 0b1d918452deee4c75bc61cb6a620f69cefa80b3..139281eab642a3676987fa9b3597b5b6e1a99e9c 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -1695,9 +1695,14 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1715,9 +1715,14 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
Preconditions.checkArgument(spawnCategory != null, "SpawnCategory cannot be null");
|
||||
Preconditions.checkArgument(CraftSpawnCategory.isValidForLimits(spawnCategory), "SpawnCategory.%s are not supported", spawnCategory);
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Expose vanilla BiomeProvider from WorldInfo
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 7ee46b9f98794d1fec0a8feea71fd495f9199dd0..d19f2ca702ffa32c616ec821219079e2b784a460 100644
|
||||
index fdda28bd6aa3a2d3079a383157b82ff825cc992d..82ee16f8efb5d32bf648d416010de557e2b90865 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -597,7 +597,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
|
@ -31,10 +31,10 @@ index c366992f3e48f9a3a69ba48491d678ba73e81d61..b3e1f987d31ef5a8f90bc366e248de86
|
|||
biomeProvider = generator.getDefaultBiomeProvider(worldInfo);
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index df74b47477553bdee0b5faaf40835b94c41316dd..c787fbcef295f2108a6f843524c00cdea4660f27 100644
|
||||
index 139281eab642a3676987fa9b3597b5b6e1a99e9c..5d5e5e811d065411e5def069533e8f9ab974ed55 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -211,6 +211,29 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -212,6 +212,29 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
public int getPlayerCount() {
|
||||
return world.players().size();
|
||||
}
|
||||
|
|
|
@ -5,11 +5,11 @@ Subject: [PATCH] More PotionEffectType API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/potion/CraftPotionEffectType.java b/src/main/java/org/bukkit/craftbukkit/potion/CraftPotionEffectType.java
|
||||
index c038bcd6670160193c91506366208b6110524e98..0d8b6a50c91d258eec268cee4b5b5859dac6fbf6 100644
|
||||
index 3e1273222492006c7a5bcfaefca12fb264ee20dd..6a5b7fd9fb276c5df7b01646530ee45c62b49460 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/potion/CraftPotionEffectType.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/potion/CraftPotionEffectType.java
|
||||
@@ -108,6 +108,48 @@ public class CraftPotionEffectType extends PotionEffectType implements Handleabl
|
||||
return Color.fromRGB(this.handle.getColor());
|
||||
@@ -114,6 +114,48 @@ public class CraftPotionEffectType extends PotionEffectType implements Handleabl
|
||||
return this.handle.getDescriptionId();
|
||||
}
|
||||
|
||||
+ // Paper start
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: [PATCH] Implement regenerateChunk
|
|||
Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index c787fbcef295f2108a6f843524c00cdea4660f27..7bb43181e4de4cf3a3944aea88c45e54e476433c 100644
|
||||
index 5d5e5e811d065411e5def069533e8f9ab974ed55..558d95381bca2f950824748b05e59e4ced7347c3 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -150,6 +150,7 @@ import org.jetbrains.annotations.Nullable;
|
||||
@@ -151,6 +151,7 @@ import org.jetbrains.annotations.Nullable;
|
||||
public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
public static final int CUSTOM_DIMENSION_OFFSET = 10;
|
||||
private static final CraftPersistentDataTypeRegistry DATA_TYPE_REGISTRY = new CraftPersistentDataTypeRegistry();
|
||||
|
@ -17,7 +17,7 @@ index c787fbcef295f2108a6f843524c00cdea4660f27..7bb43181e4de4cf3a3944aea88c45e54
|
|||
|
||||
private final ServerLevel world;
|
||||
private WorldBorder worldBorder;
|
||||
@@ -420,27 +421,68 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -421,27 +422,68 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@Override
|
||||
public boolean regenerateChunk(int x, int z) {
|
||||
org.spigotmc.AsyncCatcher.catchOp("chunk regenerate"); // Spigot
|
||||
|
|
|
@ -11,10 +11,10 @@ Restores the API behavior from previous versions of the server
|
|||
public net.minecraft.world.entity.item.FallingBlockEntity <init>(Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/level/block/state/BlockState;)V
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 7bb43181e4de4cf3a3944aea88c45e54e476433c..97ebf2e2e08469cacc66c4f38bd2edfc2107fe6a 100644
|
||||
index 558d95381bca2f950824748b05e59e4ced7347c3..f2e4494a31dd7ca7e099c6960a9e6378ecac8727 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -1394,7 +1394,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1414,7 +1414,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
Preconditions.checkArgument(material != null, "Material cannot be null");
|
||||
Preconditions.checkArgument(material.isBlock(), "Material.%s must be a block", material);
|
||||
|
||||
|
@ -28,7 +28,7 @@ index 7bb43181e4de4cf3a3944aea88c45e54e476433c..97ebf2e2e08469cacc66c4f38bd2edfc
|
|||
return (FallingBlock) entity.getBukkitEntity();
|
||||
}
|
||||
|
||||
@@ -1403,7 +1408,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1423,7 +1428,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
Preconditions.checkArgument(location != null, "Location cannot be null");
|
||||
Preconditions.checkArgument(data != null, "BlockData cannot be null");
|
||||
|
||||
|
|
|
@ -133,10 +133,10 @@ index 91c2d0b40d3fca86938cd454e1415a4eea3df7c7..c1c52f4fc5f900fac4098e5e37c52dfc
|
|||
+ // Paper end - More projectile API
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java
|
||||
index 35d8fbd9c5751568a1a3b8928017e23cd41bb163..3a749f78be3968e499e096196eaaa0b433a53c06 100644
|
||||
index a24a6fe5bf634bb02654b0ec4f771aa07458ce84..0fd2677181d741e553b9825c8c319a209194ec46 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java
|
||||
@@ -58,20 +58,7 @@ public class CraftArrow extends AbstractProjectile implements AbstractArrow {
|
||||
@@ -60,20 +60,7 @@ public class CraftArrow extends AbstractProjectile implements AbstractArrow {
|
||||
this.getHandle().setCritArrow(critical);
|
||||
}
|
||||
|
||||
|
@ -158,7 +158,7 @@ index 35d8fbd9c5751568a1a3b8928017e23cd41bb163..3a749f78be3968e499e096196eaaa0b4
|
|||
|
||||
@Override
|
||||
public boolean isInBlock() {
|
||||
@@ -99,6 +86,35 @@ public class CraftArrow extends AbstractProjectile implements AbstractArrow {
|
||||
@@ -101,6 +88,35 @@ public class CraftArrow extends AbstractProjectile implements AbstractArrow {
|
||||
this.getHandle().pickup = net.minecraft.world.entity.projectile.AbstractArrow.Pickup.byOrdinal(status.ordinal());
|
||||
}
|
||||
|
||||
|
@ -517,10 +517,10 @@ index 20f9735c7cb76024e15dbdca7684f5c560876175..8a6af0db8e0aa0cffbf19584be747076
|
|||
// Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index ef45cf53ee3e5bf9da11f631c6eeeb8df00e9920..d329f9fab83c30ded648763c6c0505d793daa506 100644
|
||||
index 7d72ccdd82daa6afe85859f5bc6ec7b187622384..fb0426a1d864f3c60637e394e5bedb3963677df1 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -832,19 +832,19 @@ public class CraftEventFactory {
|
||||
@@ -833,19 +833,19 @@ public class CraftEventFactory {
|
||||
/**
|
||||
* PotionSplashEvent
|
||||
*/
|
||||
|
@ -543,7 +543,7 @@ index ef45cf53ee3e5bf9da11f631c6eeeb8df00e9920..d329f9fab83c30ded648763c6c0505d7
|
|||
hitEntity = ((EntityHitResult) position).getEntity().getBukkitEntity();
|
||||
}
|
||||
|
||||
@@ -853,20 +853,20 @@ public class CraftEventFactory {
|
||||
@@ -854,20 +854,20 @@ public class CraftEventFactory {
|
||||
return event;
|
||||
}
|
||||
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue