Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
40b3461 [ci skip] Use commit timestamp instead of build time in manifest (#6161)
664eee6 Expand resource pack API
b015abb Fix missing annotation
This commit is contained in:
William Blake Galbreath
2021-07-13 18:21:24 -05:00
parent b54cce441f
commit 4626edf67b
13 changed files with 49 additions and 41 deletions

View File

@@ -4,7 +4,7 @@ version = 1.17.1-R0.1-SNAPSHOT
mcVersion = 1.17.1
packageVersion = 1_17_R1
paperCommit = 70ea1b2e2bdbe535751f614eaa0847c424e6711c
paperCommit = b015abb952ff46590e6cad65d82dd545336be0ff
org.gradle.parallel = true
org.gradle.vfs.watch = false

View File

@@ -81,10 +81,10 @@ index 0000000000000000000000000000000000000000..0c8b3e5e4ba412624357ea5662a78862
+ }
+}
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 252f6220f7cb8dd4bf9c19ec4079819e5b052f44..303dbf3696a7d56b2def1beb485344e81e781857 100644
index 7be8c47bdb8cc73c039efe05d81085cdbe0bef58..3197dee574327da2d1aa65f775ee3f53b88d5d85 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2166,4 +2166,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2230,4 +2230,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@Override
Spigot spigot();
// Spigot end

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Player invulnerabilities
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 303dbf3696a7d56b2def1beb485344e81e781857..de106cc1a3352948763b2106bb0a0dd8c40ce619 100644
index 3197dee574327da2d1aa65f775ee3f53b88d5d85..28eb87afaa61a22e1962f0b233854314e474692b 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2186,5 +2186,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2250,5 +2250,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* Reset the idle timer back to 0
*/
void resetIdleTimer();

View File

@@ -949,10 +949,10 @@ index a6a7429ed2e1eefb2b12b7480ed74fcc3963a864..e8027e1d505dda6effbb1698550016e8
NORMAL(false),
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index de106cc1a3352948763b2106bb0a0dd8c40ce619..340cc1a5cf22e26617bc60d39902e585494ab1d5 100644
index 28eb87afaa61a22e1962f0b233854314e474692b..da1ebc0bddee0b3f53ec0f7a46f7ce1c517c329c 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -1988,6 +1988,8 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2052,6 +2052,8 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
void resetCooldown();
/**
@@ -961,7 +961,7 @@ index de106cc1a3352948763b2106bb0a0dd8c40ce619..340cc1a5cf22e26617bc60d39902e585
* @return the client option value of the player
*/
@NotNull
@@ -2027,6 +2029,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2091,6 +2093,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
// Paper end
// Spigot start
@@ -1147,7 +1147,7 @@ index 668cc4b7d8a15ae345d130f8164107f000b6fe22..ebfeb3c8ebaf53a7fb6349f0f1480efc
/**
* Player emptying the cauldron by filling their bucket.
diff --git a/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java b/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java
index 76ad715961c1b373ba276c61ced728affd4dbec1..27ce18199100b181a0502bc6de12cc7dfc430f86 100644
index 1e702f94e1994bb9ee5c0871152048f4f4b1defc..4cbf2dca3e59967d562d88caf999838266e5bf34 100644
--- a/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java
+++ b/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java
@@ -79,6 +79,9 @@ public class EntityTransformEvent extends EntityEvent implements Cancellable {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Flying Fall Damage API
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index f6fda238033ec63bb0727824c4d51cd49723e427..407755298456cf1c7081ec8bb2fd2936f36b9404 100644
index 01e3372e67de500b46544bc83a6ba929424e5fda..07f188af3ed85b96051b17bf243ae873800abec2 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2212,5 +2212,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2276,5 +2276,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* @param invulnerableTicks Invulnerable ticks remaining
*/
void setSpawnInvulnerableTicks(int invulnerableTicks);

View File

@@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
diff --git a/build.gradle.kts b/build.gradle.kts
index 2929ead9f8a2edd657ce63326d7f1e327ca99cc3..dbc5fee27ed27c1a563a03fba3a65a7fd2dd9781 100644
index 682935762008602ca214f68147766792cbedeea9..8ccb5183af4a10a92d17570833e21dfffb5b03ea 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -1,10 +1,16 @@
@@ -48,16 +48,16 @@ index 2929ead9f8a2edd657ce63326d7f1e327ca99cc3..dbc5fee27ed27c1a563a03fba3a65a7f
// Paper start
implementation("org.jline:jline-terminal-jansi:3.12.1")
implementation("net.minecrell:terminalconsoleappender:1.2.0")
@@ -80,7 +86,7 @@ tasks.jar {
@@ -81,7 +87,7 @@ tasks.jar {
attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main",
"Implementation-Title" to "CraftBukkit",
- "Implementation-Version" to "git-Paper-$implementationVersion",
+ "Implementation-Version" to "git-Tuinity-$implementationVersion", // Tuinity
"Implementation-Vendor" to SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'").format(Date()), // Paper
"Implementation-Vendor" to date, // Paper
"Specification-Title" to "Bukkit",
"Specification-Version" to project.version,
@@ -105,6 +111,22 @@ publishing {
@@ -106,6 +112,22 @@ publishing {
}
}
@@ -80,7 +80,7 @@ index 2929ead9f8a2edd657ce63326d7f1e327ca99cc3..dbc5fee27ed27c1a563a03fba3a65a7f
val generatePom = tasks.named<GenerateMavenPom>("generatePomFileForMavenPublication")
tasks.shadowJar {
@@ -176,7 +198,7 @@ tasks.test {
@@ -177,7 +199,7 @@ tasks.test {
fun TaskContainer.registerRunTask(
name: String, block: JavaExec.() -> Unit
): TaskProvider<JavaExec> = register<JavaExec>(name) {
@@ -16782,7 +16782,7 @@ index 554474d4b2e57d8a005b3c3b9b23f32a62243058..ebeb3e3b0619b034a9681da999e9ac33
+ // Paper end
}
diff --git a/src/main/java/net/minecraft/world/level/chunk/ProtoChunk.java b/src/main/java/net/minecraft/world/level/chunk/ProtoChunk.java
index 7dc3d806a680150c6a2fffa1436fd63bbdc31eb3..f6d05372f592a3b7619ad6989630c140ffd4f03b 100644
index 7dc3d806a680150c6a2fffa1436fd63bbdc31eb3..27dcaafbc090bac4cad2607a0961378fbc51092e 100644
--- a/src/main/java/net/minecraft/world/level/chunk/ProtoChunk.java
+++ b/src/main/java/net/minecraft/world/level/chunk/ProtoChunk.java
@@ -1,5 +1,7 @@
@@ -16847,7 +16847,15 @@ index 7dc3d806a680150c6a2fffa1436fd63bbdc31eb3..f6d05372f592a3b7619ad6989630c140
@Deprecated // Paper start - add level
public ProtoChunk(ChunkPos pos, UpgradeData upgradeData, LevelHeightAccessor world) {
// Paper start
@@ -100,6 +149,10 @@ public class ProtoChunk implements ChunkAccess {
@@ -81,6 +130,7 @@ public class ProtoChunk implements ChunkAccess {
PRINTED_OUTDATED_CTOR_MSG = true;
}
}
+
public ProtoChunk(ChunkPos pos, UpgradeData upgradeData, LevelHeightAccessor world, net.minecraft.server.level.ServerLevel level) {
// Paper end
this(pos, upgradeData, (LevelChunkSection[])null, new ProtoTickList<>((block) -> {
@@ -100,6 +150,10 @@ public class ProtoChunk implements ChunkAccess {
}
}
public ProtoChunk(ChunkPos pos, UpgradeData upgradeData, @Nullable LevelChunkSection[] levelChunkSections, ProtoTickList<Block> blockTickScheduler, ProtoTickList<Fluid> fluidTickScheduler, LevelHeightAccessor world, net.minecraft.server.level.ServerLevel level) {
@@ -16858,7 +16866,7 @@ index 7dc3d806a680150c6a2fffa1436fd63bbdc31eb3..f6d05372f592a3b7619ad6989630c140
this.level = level;
// Paper end
this.chunkPos = pos;
@@ -197,7 +250,7 @@ public class ProtoChunk implements ChunkAccess {
@@ -197,7 +251,7 @@ public class ProtoChunk implements ChunkAccess {
LevelChunkSection levelChunkSection = this.getOrCreateSection(l);
BlockState blockState = levelChunkSection.setBlockState(i & 15, j & 15, k & 15, state);
@@ -18781,7 +18789,7 @@ index 4607dcfa911ab554e7ad0e043caf9bcc72e94823..67761ed1486c110eacd4c10fe617648e
// Spigot start
private final org.bukkit.World.Spigot spigot = new org.bukkit.World.Spigot()
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index c3c7b34ceb1b8f0ed042b29924c633fa7519dc30..c59deadcfbfd5afbf951a167979a4eceb0c63579 100644
index ea7df53656766a8dc4ab5fe66de894301db634e1..b153a8c9e7fdf5560148f02ba2f52c37ad3b5ace 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -146,6 +146,13 @@ public class Main {
@@ -18867,10 +18875,10 @@ index 3acb5f8a1f863b5ba47eac4190be8228324fc8e7..68cacecde84a592839b738723fb0b73f
@Override
public boolean teleport(Location location) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 2e41a1bc20f257f4f461a74623a3ffe2d3112fdd..eb578c1deb8e48c4dc0bd334118136dbc7060334 100644
index 7b8885f48245c37ba7166abd44486027779e134e..5b2fcfac84f13ac2321676e484372597e8c665d0 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -516,15 +516,70 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -517,15 +517,70 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand
diff --git a/build.gradle.kts b/build.gradle.kts
index bc85e4da98322426f3f4a784fafe1c96eaea00f5..0d971614da332d4715f5a7b3ae822bf28393944d 100644
index 8ccb5183af4a10a92d17570833e21dfffb5b03ea..16f8f8dd9ddc105dde4401fa258207686e64ab3e 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -36,8 +36,8 @@ repositories {
@@ -15,7 +15,7 @@ index bc85e4da98322426f3f4a784fafe1c96eaea00f5..0d971614da332d4715f5a7b3ae822bf2
- implementation(project(":Tuinity-API")) // Tuinity
- implementation("com.destroystokyo.paper:paper-mojangapi:1.16.5-R0.1-SNAPSHOT") // Tuinity
+ implementation(project(":Purpur-API")) // Purpur
+ implementation("io.papermc.paper:paper-mojangapi:1.17-R0.1-SNAPSHOT") // Purpur
+ implementation("io.papermc.paper:paper-mojangapi:1.17.1-R0.1-SNAPSHOT") // Purpur
// Paper start
implementation("org.jline:jline-terminal-jansi:3.12.1")
implementation("net.minecrell:terminalconsoleappender:1.2.0")
@@ -27,13 +27,13 @@ index bc85e4da98322426f3f4a784fafe1c96eaea00f5..0d971614da332d4715f5a7b3ae822bf2
implementation("org.quiltmc:tiny-mappings-parser:0.3.0") // Paper - needed to read mappings for stacktrace deobfuscation
@@ -86,7 +87,7 @@ tasks.jar {
@@ -87,7 +88,7 @@ tasks.jar {
attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main",
"Implementation-Title" to "CraftBukkit",
- "Implementation-Version" to "git-Tuinity-$implementationVersion", // Tuinity
+ "Implementation-Version" to "git-Purpur-$implementationVersion", // Purpur
"Implementation-Vendor" to SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'").format(Date()), // Paper
"Implementation-Vendor" to date, // Paper
"Specification-Title" to "Bukkit",
"Specification-Version" to project.version,
diff --git a/src/main/java/com/destroystokyo/paper/console/PaperConsole.java b/src/main/java/com/destroystokyo/paper/console/PaperConsole.java
@@ -220,7 +220,7 @@ index 0000000000000000000000000000000000000000..cabfcebf9f944f7a2a2a1cffc7401435
+ }
+}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 4342bc5aad49fe372d561296a6b63818a443d089..ce46da5d75049ad2ec2db677569e35f13960dafa 100644
index f243dbdf7673c06b0e2d36fe9af43234a5304ed6..a173b6b0e49bec5d0b0d15384526cb261000bf33 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -230,7 +230,7 @@ import javax.annotation.Nullable; // Paper

View File

@@ -68,7 +68,7 @@ index bd787b4122502eacacadd8d47ea5aa5dc5e023e5..22366098d0a3f6df2ba650ef01ed4be7
return this.stats;
}
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 26a391223dc1595892cb8bee4815525adb593d32..ff5e61ba0cb9602a332dfc59a40b2a9776acaef4 100644
index 0a7d339a1b52f5b70830708d5eabac3f8d85f888..d2270b53e6a8f74f7382d5c4dc4474a3a8d83fa4 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -390,6 +390,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -220,10 +220,10 @@ index 332754f541165590ecd96d650f16f40924b4263a..bfc1077dc7d5cfb48f5cc98b289b98d4
public boolean untamedTamablesAreRidable = true;
public boolean useNightVisionWhenRiding = false;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index eb578c1deb8e48c4dc0bd334118136dbc7060334..03381a67c15153162f70dc7681e06b4a7378ae9d 100644
index 5b2fcfac84f13ac2321676e484372597e8c665d0..fec91a0e13e861d05b566891e4809644e6dd1909 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -423,10 +423,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -424,10 +424,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public void setPlayerListName(String name) {
@@ -240,7 +240,7 @@ index eb578c1deb8e48c4dc0bd334118136dbc7060334..03381a67c15153162f70dc7681e06b4a
for (ServerPlayer player : (List<ServerPlayer>) server.getHandle().players) {
if (player.getBukkitEntity().canSee(this)) {
player.connection.send(new ClientboundPlayerInfoPacket(ClientboundPlayerInfoPacket.Action.UPDATE_DISPLAY_NAME, this.getHandle()));
@@ -2530,4 +2535,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2544,4 +2549,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return this.spigot;
}
// Spigot end

View File

@@ -111,10 +111,10 @@ index bfc1077dc7d5cfb48f5cc98b289b98d44474280e..90a312246e5ecdd4bbe4bc7e360ea7aa
public boolean babiesAreRidable = true;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 03381a67c15153162f70dc7681e06b4a7378ae9d..bb9362a958b60f320d3f544e24206e1f8925e846 100644
index fec91a0e13e861d05b566891e4809644e6dd1909..7bfcab5c4d27a95658441e77308ac5710136f5eb 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2551,5 +2551,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2565,5 +2565,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public void resetIdleTimer() {
getHandle().resetLastActionTime();
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Disable outdated build check
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index a335d1689ebf01e0e96a45c640188dc024610e2c..01ca38ee35f2c1e5031ea4b8aca09a2a59c4a475 100644
index 0242b57665fd93644366d1cb00ea008b00c54503..35518427857c77dfa0737f1684a0a427ddb90048 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -276,7 +276,7 @@ public class Main {
@@ -14,6 +14,6 @@ index a335d1689ebf01e0e96a45c640188dc024610e2c..01ca38ee35f2c1e5031ea4b8aca09a2a
- if (Main.class.getPackage().getImplementationVendor() != null && System.getProperty("IReallyKnowWhatIAmDoingISwear") == null) {
+ if (false && Main.class.getPackage().getImplementationVendor() != null && System.getProperty("IReallyKnowWhatIAmDoingISwear") == null) { // Purpur
Date buildDate = new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'").parse(Main.class.getPackage().getImplementationVendor()); // Paper
Date buildDate = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss Z").parse(Main.class.getPackage().getImplementationVendor()); // Paper
Calendar deadline = Calendar.getInstance();

View File

@@ -46,10 +46,10 @@ index 1d89441b6d650691aef4bbbb714cee1f3d73774a..29043f9354b29f7766f1d6d8e793e2ea
public void broadcastAll(Packet<?> packet) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index bb9362a958b60f320d3f544e24206e1f8925e846..d74bb5ae378d3b7a2edcffeb4fc242e855949078 100644
index 7bfcab5c4d27a95658441e77308ac5710136f5eb..b49d5e4edfea04cd916ffa23ea18aaf246898c2a 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1563,7 +1563,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1564,7 +1564,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public boolean canSee(Player player) {

View File

@@ -113,10 +113,10 @@ index 52760eabb45c8d2a3db4056ef219e7ea5cf8d954..53fc3c278624d8c1d2f8bee6df27315d
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index d74bb5ae378d3b7a2edcffeb4fc242e855949078..cd8668f9f035b1a0c2c67b18dad4411ce20bf7d7 100644
index b49d5e4edfea04cd916ffa23ea18aaf246898c2a..c6926c5b521fdfc2913d0f130752aca8ccd5fa63 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1002,6 +1002,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1003,6 +1003,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
if (entity.isVehicle()) {

View File

@@ -26,10 +26,10 @@ index b60e38add38ac58d01f419dcb1b07a9b79bf1cb8..e2b2ee49f9b8220c2de3f26389e78b63
} else {
if (fallDistance >= 2.0F) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index cd8668f9f035b1a0c2c67b18dad4411ce20bf7d7..60e882e0fad1d9153f10cdc42e3c1d43a7642bc1 100644
index c6926c5b521fdfc2913d0f130752aca8ccd5fa63..25aeee5e87094def26bca5710cc355ea11a525a9 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2576,5 +2576,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2590,5 +2590,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public void setSpawnInvulnerableTicks(int spawnInvulnerableTime) {
getHandle().spawnInvulnerableTime = spawnInvulnerableTime;
}