Update Paper to 1.13 proper - THIS IS STILL HIGHLY UNSTABLE

DO NOT RUN ON PRODUCTION SERVERS!!! Use Backups!!
This commit is contained in:
Aikar 2018-07-22 01:27:46 -04:00
parent 6219932b89
commit e2c75e81f7
No known key found for this signature in database
GPG key ID: 401ADFC9891FAAFE
77 changed files with 454 additions and 452 deletions

View file

@ -1,11 +1,11 @@
From 7439e7e3c94eb559415193440a9e1515335819c7 Mon Sep 17 00:00:00 2001 From 012c183c1c668f4ab31e7b6e0e6ae61005127510 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com> From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 00:16:08 +0100 Date: Tue, 1 Mar 2016 00:16:08 +0100
Subject: [PATCH] POM changes Subject: [PATCH] POM changes
diff --git a/pom.xml b/pom.xml diff --git a/pom.xml b/pom.xml
index 3e6c8707..c2d0651e 100644 index e946bccf..7374304f 100644
--- a/pom.xml --- a/pom.xml
+++ b/pom.xml +++ b/pom.xml
@@ -3,29 +3,35 @@ @@ -3,29 +3,35 @@
@ -21,7 +21,7 @@ index 3e6c8707..c2d0651e 100644
+ </parent> + </parent>
+ +
+ <artifactId>paper-api</artifactId> + <artifactId>paper-api</artifactId>
<version>1.13-pre7-R0.1-SNAPSHOT</version> <version>1.13-R0.1-SNAPSHOT</version>
<packaging>jar</packaging> <packaging>jar</packaging>
- <name>Spigot-API</name> - <name>Spigot-API</name>

View file

@ -1,4 +1,4 @@
From 4e2445c63fba52523da6ce11e8cf8a241cf593f3 Mon Sep 17 00:00:00 2001 From ac7a0eff76dedc21f1bc6fc1eb0d6cbb367f6f90 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net> From: Byteflux <byte@byteflux.net>
Date: Mon, 29 Feb 2016 17:50:31 -0600 Date: Mon, 29 Feb 2016 17:50:31 -0600
Subject: [PATCH] Entity Origin API Subject: [PATCH] Entity Origin API
@ -25,10 +25,10 @@ index 28b169d2..9b0f97f1 100644
+ // Paper end + // Paper end
} }
diff --git a/src/main/java/org/bukkit/entity/FallingBlock.java b/src/main/java/org/bukkit/entity/FallingBlock.java diff --git a/src/main/java/org/bukkit/entity/FallingBlock.java b/src/main/java/org/bukkit/entity/FallingBlock.java
index 9d34e691..b0b1defc 100644 index 0cd830d9..170a9aee 100644
--- a/src/main/java/org/bukkit/entity/FallingBlock.java --- a/src/main/java/org/bukkit/entity/FallingBlock.java
+++ b/src/main/java/org/bukkit/entity/FallingBlock.java +++ b/src/main/java/org/bukkit/entity/FallingBlock.java
@@ -52,4 +52,15 @@ public interface FallingBlock extends Entity { @@ -51,4 +51,15 @@ public interface FallingBlock extends Entity {
* @param hurtEntities whether entities will be damaged by this block. * @param hurtEntities whether entities will be damaged by this block.
*/ */
void setHurtEntities(boolean hurtEntities); void setHurtEntities(boolean hurtEntities);

View file

@ -1,23 +1,22 @@
From 05b70bbd7bf543c94832d486d58987b490016c8d Mon Sep 17 00:00:00 2001 From 6842476267fe66eaac1bffd41ef47e5e82cf4964 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com> From: Zach Brown <zach.brown@destroystokyo.com>
Date: Mon, 29 Feb 2016 20:40:33 -0600 Date: Mon, 29 Feb 2016 20:40:33 -0600
Subject: [PATCH] POM Changes Subject: [PATCH] POM Changes
diff --git a/pom.xml b/pom.xml diff --git a/pom.xml b/pom.xml
index 958eb763a..17bc80776 100644 index 5d398f7cb..09b4ddf19 100644
--- a/pom.xml --- a/pom.xml
+++ b/pom.xml +++ b/pom.xml
@@ -1,12 +1,12 @@ @@ -1,12 +1,11 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
- <groupId>org.spigotmc</groupId> - <groupId>org.spigotmc</groupId>
- <artifactId>spigot</artifactId> - <artifactId>spigot</artifactId>
+ <groupId>com.destroystokyo.paper</groupId>
+ <artifactId>paper</artifactId> + <artifactId>paper</artifactId>
<packaging>jar</packaging> <packaging>jar</packaging>
<version>1.13-pre7-R0.1-SNAPSHOT</version> <version>1.13-R0.1-SNAPSHOT</version>
- <name>Spigot</name> - <name>Spigot</name>
- <url>http://www.spigotmc.org</url> - <url>http://www.spigotmc.org</url>
+ <name>Paper</name> + <name>Paper</name>
@ -25,7 +24,7 @@ index 958eb763a..17bc80776 100644
<properties> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -21,16 +21,16 @@ @@ -21,16 +20,16 @@
</properties> </properties>
<parent> <parent>
@ -46,7 +45,7 @@ index 958eb763a..17bc80776 100644
<version>${project.version}</version> <version>${project.version}</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
@@ -101,34 +101,22 @@ @@ -101,34 +100,22 @@
<!-- This builds a completely 'ready to start' jar with all dependencies inside --> <!-- This builds a completely 'ready to start' jar with all dependencies inside -->
<build> <build>
@ -92,7 +91,7 @@ index 958eb763a..17bc80776 100644
</goals> </goals>
</execution> </execution>
</executions> </executions>
@@ -138,11 +126,12 @@ @@ -138,11 +125,12 @@
<artifactId>maven-jar-plugin</artifactId> <artifactId>maven-jar-plugin</artifactId>
<version>2.4</version> <version>2.4</version>
<configuration> <configuration>
@ -106,7 +105,7 @@ index 958eb763a..17bc80776 100644
<Implementation-Vendor>${maven.build.timestamp}</Implementation-Vendor> <Implementation-Vendor>${maven.build.timestamp}</Implementation-Vendor>
<Specification-Title>Bukkit</Specification-Title> <Specification-Title>Bukkit</Specification-Title>
<Specification-Version>${api.version}</Specification-Version> <Specification-Version>${api.version}</Specification-Version>
@@ -182,19 +171,22 @@ @@ -182,19 +170,22 @@
<goal>shade</goal> <goal>shade</goal>
</goals> </goals>
<configuration> <configuration>
@ -137,7 +136,7 @@ index 958eb763a..17bc80776 100644
<relocation> <relocation>
<pattern>org.bukkit.craftbukkit</pattern> <pattern>org.bukkit.craftbukkit</pattern>
<shadedPattern>org.bukkit.craftbukkit.v${minecraft_version}</shadedPattern> <shadedPattern>org.bukkit.craftbukkit.v${minecraft_version}</shadedPattern>
@@ -220,18 +212,6 @@ @@ -220,18 +211,6 @@
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId> <artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version> <version>3.7.0</version>
@ -156,7 +155,7 @@ index 958eb763a..17bc80776 100644
</plugin> </plugin>
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
@@ -250,6 +230,11 @@ @@ -250,6 +229,11 @@
<profiles> <profiles>
<profile> <profile>
<id>development</id> <id>development</id>

View file

@ -1,4 +1,4 @@
From a54aaf050878b967a9ee98b9264f67e476ff26ba Mon Sep 17 00:00:00 2001 From b03f578652215491a2fda2190e0b3941e902b2dc Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com> From: Zach Brown <zach.brown@destroystokyo.com>
Date: Mon, 29 Feb 2016 21:02:09 -0600 Date: Mon, 29 Feb 2016 21:02:09 -0600
Subject: [PATCH] Paper config files Subject: [PATCH] Paper config files
@ -499,7 +499,7 @@ index 000000000..621bf7051
+ } + }
+} +}
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
index 8563712d9..9155aa727 100644 index 5ff1e9686..3706e44a3 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java --- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java
@@ -192,6 +192,10 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer @@ -192,6 +192,10 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
@ -514,7 +514,7 @@ index 8563712d9..9155aa727 100644
DedicatedServer.LOGGER.info("Generating keypair"); DedicatedServer.LOGGER.info("Generating keypair");
this.a(MinecraftEncryption.b()); this.a(MinecraftEncryption.b());
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 015959b9f..f3f8b65be 100644 index 5046ecb3b..3fa32228b 100644
--- a/src/main/java/net/minecraft/server/Entity.java --- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java
@@ -134,9 +134,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener { @@ -134,9 +134,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener {
@ -531,7 +531,7 @@ index 015959b9f..f3f8b65be 100644
public boolean impulse; public boolean impulse;
public int portalCooldown; public int portalCooldown;
diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java
index a0c701f35..557a3f97f 100644 index ad3f89199..ca2a14d7a 100644
--- a/src/main/java/net/minecraft/server/EntityTypes.java --- a/src/main/java/net/minecraft/server/EntityTypes.java
+++ b/src/main/java/net/minecraft/server/EntityTypes.java +++ b/src/main/java/net/minecraft/server/EntityTypes.java
@@ -2,6 +2,8 @@ package net.minecraft.server; @@ -2,6 +2,8 @@ package net.minecraft.server;
@ -555,7 +555,7 @@ index a0c701f35..557a3f97f 100644
+ // Paper end + // Paper end
} }
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index c7f5cba2d..330ea4e72 100644 index 13c404337..b2bb06c79 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -127,6 +127,8 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -127,6 +127,8 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
@ -576,7 +576,7 @@ index c7f5cba2d..330ea4e72 100644
this.world = new CraftWorld((WorldServer) this, gen, env); this.world = new CraftWorld((WorldServer) this, gen, env);
this.ticksPerAnimalSpawns = this.getServer().getTicksPerAnimalSpawns(); // CraftBukkit this.ticksPerAnimalSpawns = this.getServer().getTicksPerAnimalSpawns(); // CraftBukkit
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index ce5ebcc54..88766d30d 100644 index 4dc0c8fcb..99d397872 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -743,6 +743,7 @@ public final class CraftServer implements Server { @@ -743,6 +743,7 @@ public final class CraftServer implements Server {
@ -603,7 +603,7 @@ index ce5ebcc54..88766d30d 100644
overrideAllCommandBlockCommands = commandsConfiguration.getStringList("command-block-overrides").contains("*"); overrideAllCommandBlockCommands = commandsConfiguration.getStringList("command-block-overrides").contains("*");
ignoreVanillaPermissions = commandsConfiguration.getBoolean("ignore-vanilla-permissions"); ignoreVanillaPermissions = commandsConfiguration.getBoolean("ignore-vanilla-permissions");
@@ -1880,4 +1883,26 @@ public final class CraftServer implements Server { @@ -1862,4 +1865,26 @@ public final class CraftServer implements Server {
{ {
return spigot; return spigot;
} }
@ -631,10 +631,10 @@ index ce5ebcc54..88766d30d 100644
+ // Paper end + // Paper end
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index c234b8749..5e49bca8a 100644 index df07dc594..57da619d8 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java --- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -126,6 +126,14 @@ public class Main { @@ -128,6 +128,14 @@ public class Main {
.defaultsTo(new File("spigot.yml")) .defaultsTo(new File("spigot.yml"))
.describedAs("Yml file"); .describedAs("Yml file");
// Spigot End // Spigot End

View file

@ -1,4 +1,4 @@
From 3586286523db67ea246cf1e37a9693b8c6f902c6 Mon Sep 17 00:00:00 2001 From 4a42cad650e2d9c8a48001ef506ce74e0437cf22 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 04:00:11 -0600 Date: Thu, 3 Mar 2016 04:00:11 -0600
Subject: [PATCH] Timings v2 Subject: [PATCH] Timings v2
@ -476,10 +476,10 @@ index 5ab2cf6ee..b5795b6d3 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java
index ffb91b27b..ff110c8e9 100644 index 06f10e1e8..43feccef8 100644
--- a/src/main/java/net/minecraft/server/Block.java --- a/src/main/java/net/minecraft/server/Block.java
+++ b/src/main/java/net/minecraft/server/Block.java +++ b/src/main/java/net/minecraft/server/Block.java
@@ -29,8 +29,17 @@ public class Block implements IMaterial { @@ -28,8 +28,16 @@ public class Block implements IMaterial {
private IBlockData blockData; private IBlockData blockData;
protected final boolean o; protected final boolean o;
private final boolean p; private final boolean p;
@ -495,8 +495,7 @@ index ffb91b27b..ff110c8e9 100644
+ return timing; + return timing;
+ } + }
+ // Paper end + // Paper end
+ private static final ThreadLocal<Object2ByteLinkedOpenHashMap<Object>> r = ThreadLocal.withInitial(() -> {
private static final ThreadLocal<Object2ByteLinkedOpenHashMap<Triple<IBlockData, IBlockData, EnumDirection>>> r = ThreadLocal.withInitial(() -> {
Object2ByteLinkedOpenHashMap object2bytelinkedopenhashmap = new Object2ByteLinkedOpenHashMap(200) { Object2ByteLinkedOpenHashMap object2bytelinkedopenhashmap = new Object2ByteLinkedOpenHashMap(200) {
protected void rehash(int i) {} protected void rehash(int i) {}
diff --git a/src/main/java/net/minecraft/server/ChunkMap.java b/src/main/java/net/minecraft/server/ChunkMap.java diff --git a/src/main/java/net/minecraft/server/ChunkMap.java b/src/main/java/net/minecraft/server/ChunkMap.java
@ -531,10 +530,27 @@ index 5164e5c92..0c2386f5e 100644
return chunk1; return chunk1;
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 0296d3ef0..badfe86b2 100644 index 0296d3ef0..d23f4e80c 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -221,7 +221,7 @@ public class ChunkProviderServer implements IChunkProvider { @@ -122,14 +122,13 @@ public class ChunkProviderServer implements IChunkProvider {
if (chunk != null) {
return chunk;
} else {
- try {
- world.timings.syncChunkLoadTimer.startTiming(); // Spigot
+ try (co.aikar.timings.Timing timing = world.timings.chunkGeneration.startTiming()) {
+ ; // Spigot
chunk = (Chunk) this.generateChunk(i, j).get();
return chunk;
} catch (ExecutionException | InterruptedException interruptedexception) {
throw this.a(i, j, (Throwable) interruptedexception);
}
- finally { world.timings.syncChunkLoadTimer.stopTiming(); } // Spigot
}
}
@@ -221,7 +220,7 @@ public class ChunkProviderServer implements IChunkProvider {
} }
public void saveChunk(IChunkAccess ichunkaccess, boolean unloaded) { // Spigot public void saveChunk(IChunkAccess ichunkaccess, boolean unloaded) { // Spigot
@ -544,7 +560,7 @@ index 0296d3ef0..badfe86b2 100644
this.chunkLoader.saveChunk(this.world, ichunkaccess, unloaded); // Spigot this.chunkLoader.saveChunk(this.world, ichunkaccess, unloaded); // Spigot
} catch (IOException ioexception) { } catch (IOException ioexception) {
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index 90d857105..3a0e52d88 100644 index 88301ee61..5001fd11d 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
@ -554,7 +570,7 @@ index 90d857105..3a0e52d88 100644
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.mojang.datafixers.DataFixTypes; import com.mojang.datafixers.DataFixTypes;
import com.mojang.datafixers.DataFixer; import com.mojang.datafixers.DataFixer;
@@ -688,7 +689,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -690,7 +691,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
public void loadEntities(NBTTagCompound nbttagcompound, Chunk chunk) { public void loadEntities(NBTTagCompound nbttagcompound, Chunk chunk) {
NBTTagList nbttaglist = nbttagcompound.getList("Entities", 10); NBTTagList nbttaglist = nbttagcompound.getList("Entities", 10);
World world = chunk.getWorld(); World world = chunk.getWorld();
@ -563,7 +579,7 @@ index 90d857105..3a0e52d88 100644
for (int i = 0; i < nbttaglist.size(); ++i) { for (int i = 0; i < nbttaglist.size(); ++i) {
NBTTagCompound nbttagcompound1 = nbttaglist.getCompound(i); NBTTagCompound nbttagcompound1 = nbttaglist.getCompound(i);
@@ -697,8 +698,6 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -699,8 +700,6 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
chunk.f(true); chunk.f(true);
} }
@ -572,7 +588,7 @@ index 90d857105..3a0e52d88 100644
NBTTagList nbttaglist1 = nbttagcompound.getList("TileEntities", 10); NBTTagList nbttaglist1 = nbttagcompound.getList("TileEntities", 10);
for (int j = 0; j < nbttaglist1.size(); ++j) { for (int j = 0; j < nbttaglist1.size(); ++j) {
@@ -715,8 +714,6 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -717,8 +716,6 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
} }
} }
} }
@ -581,7 +597,7 @@ index 90d857105..3a0e52d88 100644
if (nbttagcompound.hasKeyOfType("TileTicks", 9) && world.I() instanceof TickListServer) { if (nbttagcompound.hasKeyOfType("TileTicks", 9) && world.I() instanceof TickListServer) {
((TickListServer) world.I()).a(nbttagcompound.getList("TileTicks", 10)); ((TickListServer) world.I()).a(nbttagcompound.getList("TileTicks", 10));
@@ -725,7 +722,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -727,7 +724,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
if (nbttagcompound.hasKeyOfType("LiquidTicks", 9) && world.H() instanceof TickListServer) { if (nbttagcompound.hasKeyOfType("LiquidTicks", 9) && world.H() instanceof TickListServer) {
((TickListServer) world.H()).a(nbttagcompound.getList("LiquidTicks", 10)); ((TickListServer) world.H()).a(nbttagcompound.getList("LiquidTicks", 10));
} }
@ -591,7 +607,7 @@ index 90d857105..3a0e52d88 100644
} }
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
index 9155aa727..a3d58b5ce 100644 index 3706e44a3..bf1fffcfe 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java --- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java
@@ -29,7 +29,7 @@ import org.apache.logging.log4j.Level; @@ -29,7 +29,7 @@ import org.apache.logging.log4j.Level;
@ -644,7 +660,7 @@ index 9155aa727..a3d58b5ce 100644
return waitable.get(); return waitable.get();
} catch (java.util.concurrent.ExecutionException e) { } catch (java.util.concurrent.ExecutionException e) {
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 7a17a4ff9..2ed362791 100644 index 36cc0c18d..4830c7b8b 100644
--- a/src/main/java/net/minecraft/server/Entity.java --- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java
@@ -29,7 +29,8 @@ import org.bukkit.command.CommandSender; @@ -29,7 +29,8 @@ import org.bukkit.command.CommandSender;
@ -683,7 +699,7 @@ index 7a17a4ff9..2ed362791 100644
protected float ab() { protected float ab() {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index b6dd6dc5d..f1840f4fa 100644 index 514c95151..d6e9915c1 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java --- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -32,7 +32,7 @@ import org.bukkit.event.entity.EntityTeleportEvent; @@ -32,7 +32,7 @@ import org.bukkit.event.entity.EntityTeleportEvent;
@ -701,7 +717,7 @@ index b6dd6dc5d..f1840f4fa 100644
public void tick() { public void tick() {
- SpigotTimings.timerEntityBaseTick.startTiming(); // Spigot - SpigotTimings.timerEntityBaseTick.startTiming(); // Spigot
super.tick(); super.tick();
this.cU(); this.cV();
this.o(); this.o();
@@ -2058,9 +2057,7 @@ public abstract class EntityLiving extends Entity { @@ -2058,9 +2057,7 @@ public abstract class EntityLiving extends Entity {
} }
@ -753,7 +769,7 @@ index b6dd6dc5d..f1840f4fa 100644
} }
- SpigotTimings.timerEntityAICollision.startTiming(); // Spigot - SpigotTimings.timerEntityAICollision.startTiming(); // Spigot
this.cM(); this.cN();
- SpigotTimings.timerEntityAICollision.stopTiming(); // Spigot - SpigotTimings.timerEntityAICollision.stopTiming(); // Spigot
this.world.methodProfiler.e(); this.world.methodProfiler.e();
} }
@ -790,7 +806,7 @@ index ae31935c4..70c9b1f50 100644
} }
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index d813c72e1..61ec088d2 100644 index 71ee66a9b..1839bf7d2 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
@ -810,7 +826,7 @@ index d813c72e1..61ec088d2 100644
public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStatistics, ICommandListener, Runnable { public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStatistics, ICommandListener, Runnable {
@@ -560,6 +561,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -599,6 +600,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
} }
// CraftBukkit end // CraftBukkit end
MinecraftServer.LOGGER.info("Stopping server"); MinecraftServer.LOGGER.info("Stopping server");
@ -818,7 +834,7 @@ index d813c72e1..61ec088d2 100644
// CraftBukkit start // CraftBukkit start
if (this.server != null) { if (this.server != null) {
this.server.disablePlugins(); this.server.disablePlugins();
@@ -766,7 +768,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -805,7 +807,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
public void u() {} public void u() {}
protected void v() { protected void v() {
@ -827,7 +843,7 @@ index d813c72e1..61ec088d2 100644
this.slackActivityAccountant.tickStarted(); // Spigot this.slackActivityAccountant.tickStarted(); // Spigot
long i = SystemUtils.c(); long i = SystemUtils.c();
@@ -793,7 +795,6 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -832,7 +834,6 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
} }
if (autosavePeriod > 0 && this.ticks % autosavePeriod == 0) { // CraftBukkit if (autosavePeriod > 0 && this.ticks % autosavePeriod == 0) { // CraftBukkit
@ -835,7 +851,7 @@ index d813c72e1..61ec088d2 100644
this.methodProfiler.a("save"); this.methodProfiler.a("save");
this.s.savePlayers(); this.s.savePlayers();
// Spigot Start // Spigot Start
@@ -808,7 +809,6 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -847,7 +848,6 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
// this.saveChunks(true); // this.saveChunks(true);
// Spigot End // Spigot End
this.methodProfiler.e(); this.methodProfiler.e();
@ -843,7 +859,7 @@ index d813c72e1..61ec088d2 100644
} }
this.methodProfiler.a("snooper"); this.methodProfiler.a("snooper");
@@ -829,14 +829,14 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -868,14 +868,14 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.methodProfiler.e(); this.methodProfiler.e();
org.spigotmc.WatchdogThread.tick(); // Spigot org.spigotmc.WatchdogThread.tick(); // Spigot
this.slackActivityAccountant.tickEnded(l); // Spigot this.slackActivityAccountant.tickEnded(l); // Spigot
@ -862,7 +878,7 @@ index d813c72e1..61ec088d2 100644
this.methodProfiler.a("jobs"); this.methodProfiler.a("jobs");
FutureTask futuretask; FutureTask futuretask;
@@ -844,26 +844,27 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -883,26 +883,27 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
while ((futuretask = (FutureTask) this.g.poll()) != null) { while ((futuretask = (FutureTask) this.g.poll()) != null) {
SystemUtils.a(futuretask, MinecraftServer.LOGGER); SystemUtils.a(futuretask, MinecraftServer.LOGGER);
} }
@ -871,7 +887,7 @@ index d813c72e1..61ec088d2 100644
this.methodProfiler.c("commandFunctions"); this.methodProfiler.c("commandFunctions");
- SpigotTimings.commandFunctionsTimer.startTiming(); // Spigot - SpigotTimings.commandFunctionsTimer.startTiming(); // Spigot
+ MinecraftTimings.commandFunctionsTimer.startTiming(); // Spigot + MinecraftTimings.commandFunctionsTimer.startTiming(); // Spigot
this.aD().X_(); this.getFunctionData().Y_();
- SpigotTimings.commandFunctionsTimer.stopTiming(); // Spigot - SpigotTimings.commandFunctionsTimer.stopTiming(); // Spigot
+ MinecraftTimings.commandFunctionsTimer.stopTiming(); // Spigot + MinecraftTimings.commandFunctionsTimer.stopTiming(); // Spigot
this.methodProfiler.c("levels"); this.methodProfiler.c("levels");
@ -897,7 +913,7 @@ index d813c72e1..61ec088d2 100644
// Send time updates to everyone, it will get the right time from the world the player is in. // Send time updates to everyone, it will get the right time from the world the player is in.
if (this.ticks % 20 == 0) { if (this.ticks % 20 == 0) {
for (int i = 0; i < this.getPlayerList().players.size(); ++i) { for (int i = 0; i < this.getPlayerList().players.size(); ++i) {
@@ -871,7 +872,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -910,7 +911,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
entityplayer.playerConnection.sendPacket(new PacketPlayOutUpdateTime(entityplayer.world.getTime(), entityplayer.getPlayerTime(), entityplayer.world.getGameRules().getBoolean("doDaylightCycle"))); // Add support for per player time entityplayer.playerConnection.sendPacket(new PacketPlayOutUpdateTime(entityplayer.world.getTime(), entityplayer.getPlayerTime(), entityplayer.world.getGameRules().getBoolean("doDaylightCycle"))); // Add support for per player time
} }
} }
@ -906,7 +922,7 @@ index d813c72e1..61ec088d2 100644
int i; int i;
@@ -930,9 +931,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -969,9 +970,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.methodProfiler.e(); this.methodProfiler.e();
this.methodProfiler.a("tracker"); this.methodProfiler.a("tracker");
@ -916,7 +932,7 @@ index d813c72e1..61ec088d2 100644
this.methodProfiler.e(); this.methodProfiler.e();
this.methodProfiler.e(); this.methodProfiler.e();
} }
@@ -941,20 +940,19 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -980,20 +979,19 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
} }
this.methodProfiler.c("connection"); this.methodProfiler.c("connection");
@ -936,7 +952,7 @@ index d813c72e1..61ec088d2 100644
- SpigotTimings.tickablesTimer.startTiming(); // Spigot - SpigotTimings.tickablesTimer.startTiming(); // Spigot
+ MinecraftTimings.tickablesTimer.startTiming(); // Spigot + MinecraftTimings.tickablesTimer.startTiming(); // Spigot
for (i = 0; i < this.l.size(); ++i) { for (i = 0; i < this.l.size(); ++i) {
((ITickable) this.l.get(i)).X_(); ((ITickable) this.l.get(i)).Y_();
} }
- SpigotTimings.tickablesTimer.stopTiming(); // Spigot - SpigotTimings.tickablesTimer.stopTiming(); // Spigot
+ MinecraftTimings.tickablesTimer.stopTiming(); // Spigot + MinecraftTimings.tickablesTimer.stopTiming(); // Spigot
@ -1038,7 +1054,7 @@ index ac6d8cc6e..d975c2ccf 100644
} }
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 6f21b01a8..359aa3997 100644 index 556989f60..17b925f88 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java --- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -57,6 +57,7 @@ import org.bukkit.inventory.CraftingInventory; @@ -57,6 +57,7 @@ import org.bukkit.inventory.CraftingInventory;
@ -1100,7 +1116,7 @@ index 889b32287..69da194f5 100644
throw CancelledPacketHandleException.INSTANCE; throw CancelledPacketHandleException.INSTANCE;
} }
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 0156175fb..1e3dd22e5 100644 index e476d3433..9cef6b9af 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java --- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
@ -1110,7 +1126,7 @@ index 0156175fb..1e3dd22e5 100644
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.google.common.collect.Sets; import com.google.common.collect.Sets;
@@ -1186,10 +1187,11 @@ public abstract class PlayerList { @@ -1179,10 +1180,11 @@ public abstract class PlayerList {
} }
public void savePlayers() { public void savePlayers() {
@ -1178,7 +1194,7 @@ index a07895935..ee5c2421b 100644
} }
diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java
index b992360ac..5b7f6ca84 100644 index cffbcb8f7..6b8a1c8c8 100644
--- a/src/main/java/net/minecraft/server/TileEntity.java --- a/src/main/java/net/minecraft/server/TileEntity.java
+++ b/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java
@@ -4,12 +4,13 @@ import javax.annotation.Nullable; @@ -4,12 +4,13 @@ import javax.annotation.Nullable;
@ -1198,7 +1214,7 @@ index b992360ac..5b7f6ca84 100644
private final TileEntityTypes<?> e; public TileEntityTypes getTileEntityType() { return e; } // Paper - OBFHELPER private final TileEntityTypes<?> e; public TileEntityTypes getTileEntityType() { return e; } // Paper - OBFHELPER
protected World world; protected World world;
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 330ea4e72..e6b916a5d 100644 index b2bb06c79..562a85b72 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
@ -1303,7 +1319,7 @@ index 330ea4e72..e6b916a5d 100644
if (entity.isPassenger()) { if (entity.isPassenger()) {
entity.aH(); entity.aH();
} else { } else {
@@ -1402,8 +1408,6 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -1406,8 +1412,6 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
} }
} }
} }
@ -1313,7 +1329,7 @@ index 330ea4e72..e6b916a5d 100644
public boolean a(@Nullable Entity entity, VoxelShape voxelshape) { public boolean a(@Nullable Entity entity, VoxelShape voxelshape) {
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index cecc9bc62..271d75c48 100644 index 2c6f6de4c..f032ecab6 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java --- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
@ -1429,10 +1445,10 @@ index cecc9bc62..271d75c48 100644
// CraftBukkit start // CraftBukkit start
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 60182cecf..33826231d 100644 index 99d397872..bc1f858af 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1853,12 +1853,31 @@ public final class CraftServer implements Server { @@ -1835,12 +1835,31 @@ public final class CraftServer implements Server {
private final Spigot spigot = new Spigot() private final Spigot spigot = new Spigot()
{ {
@ -1681,7 +1697,7 @@ index 413dd35f0..52a8c48fa 100644
public void callStage3(QueuedChunk queuedChunk, Chunk chunk, Runnable runnable) throws RuntimeException { public void callStage3(QueuedChunk queuedChunk, Chunk chunk, Runnable runnable) throws RuntimeException {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 0a2199b6a..fad258f11 100644 index 75d56ee3b..47f650e42 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1665,6 +1665,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -1665,6 +1665,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View file

@ -1,4 +1,4 @@
From 505cb60061caae705dbb6fccad730e81f9634672 Mon Sep 17 00:00:00 2001 From e2da442d9796c473f37e5fde6c8ff6b17cc2593b Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com> From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 13:24:16 -0600 Date: Tue, 1 Mar 2016 13:24:16 -0600
Subject: [PATCH] Allow nerfed mobs to jump Subject: [PATCH] Allow nerfed mobs to jump
@ -31,7 +31,7 @@ index 4ed5192c6..489beed26 100644
this.b.o(this.a); this.b.o(this.a);
this.a = false; this.a = false;
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index 5de20721c..27b01d1ee 100644 index d24ff109c..3744d01ec 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java --- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java +++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -32,6 +32,7 @@ public abstract class EntityInsentient extends EntityLiving { @@ -32,6 +32,7 @@ public abstract class EntityInsentient extends EntityLiving {
@ -56,24 +56,21 @@ index 5de20721c..27b01d1ee 100644
} }
// Spigot End // Spigot End
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalFloat.java b/src/main/java/net/minecraft/server/PathfinderGoalFloat.java diff --git a/src/main/java/net/minecraft/server/PathfinderGoalFloat.java b/src/main/java/net/minecraft/server/PathfinderGoalFloat.java
index 4d8876cae..2cb9d1b5a 100644 index 0d9505138..38a0b2db1 100644
--- a/src/main/java/net/minecraft/server/PathfinderGoalFloat.java --- a/src/main/java/net/minecraft/server/PathfinderGoalFloat.java
+++ b/src/main/java/net/minecraft/server/PathfinderGoalFloat.java +++ b/src/main/java/net/minecraft/server/PathfinderGoalFloat.java
@@ -6,6 +6,7 @@ public class PathfinderGoalFloat extends PathfinderGoal { @@ -6,14 +6,17 @@ public class PathfinderGoalFloat extends PathfinderGoal {
public PathfinderGoalFloat(EntityInsentient entityinsentient) { public PathfinderGoalFloat(EntityInsentient entityinsentient) {
this.a = entityinsentient; this.a = entityinsentient;
+ if (entityinsentient.getWorld().paperConfig.nerfedMobsShouldJump) entityinsentient.goalFloat = this; // Paper + if (entityinsentient.getWorld().paperConfig.nerfedMobsShouldJump) entityinsentient.goalFloat = this; // Paper
this.a(4); this.a(4);
if (entityinsentient.getNavigation() instanceof Navigation) { entityinsentient.getNavigation().d(true);
((Navigation) entityinsentient.getNavigation()).c(true);
@@ -15,10 +16,12 @@ public class PathfinderGoalFloat extends PathfinderGoal {
} }
+ public boolean validConditions() { return this.a(); } // Paper - OBFHELPER + public boolean validConditions() { return this.a(); } // Paper - OBFHELPER
public boolean a() { public boolean a() {
return this.a.isInWater() || this.a.ax(); return this.a.isInWater() && this.a.bY() > 0.4D || this.a.ax();
} }
+ public void update() { this.e(); } // Paper - OBFHELPER + public void update() { this.e(); } // Paper - OBFHELPER

View file

@ -1,4 +1,4 @@
From 7bcfdec2f367b97a5459b023661911495b573125 Mon Sep 17 00:00:00 2001 From ececfb43f16b065d3755a1bfc4e889287c0e3c95 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com> From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 14:32:43 -0600 Date: Tue, 1 Mar 2016 14:32:43 -0600
Subject: [PATCH] Show 'Paper' in client crashes, server lists, and Mojang Subject: [PATCH] Show 'Paper' in client crashes, server lists, and Mojang
@ -25,10 +25,10 @@ index 220ca7bca..eb4b08be4 100644
} }
} }
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 590eb507c..4889a82a2 100644 index 1839bf7d2..5d5aa72ca 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1151,7 +1151,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -1205,7 +1205,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
} }
public String getServerModName() { public String getServerModName() {
@ -38,7 +38,7 @@ index 590eb507c..4889a82a2 100644
public CrashReport b(CrashReport crashreport) { public CrashReport b(CrashReport crashreport) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 88ea651ba..28f6cdf96 100644 index bc1f858af..ce87736da 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -152,7 +152,7 @@ import org.bukkit.event.server.TabCompleteEvent; @@ -152,7 +152,7 @@ import org.bukkit.event.server.TabCompleteEvent;
@ -51,10 +51,10 @@ index 88ea651ba..28f6cdf96 100644
private final String bukkitVersion = Versioning.getBukkitVersion(); private final String bukkitVersion = Versioning.getBukkitVersion();
private final Logger logger = Logger.getLogger("Minecraft"); private final Logger logger = Logger.getLogger("Minecraft");
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index 5e49bca8a..d9059129d 100644 index 57da619d8..38e696aa9 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java --- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -198,7 +198,7 @@ public class Main { @@ -200,7 +200,7 @@ public class Main {
deadline.add(Calendar.DAY_OF_YEAR, -3); deadline.add(Calendar.DAY_OF_YEAR, -3);
if (buildDate.before(deadline.getTime())) { if (buildDate.before(deadline.getTime())) {
System.err.println("*** Error, this build is outdated ***"); System.err.println("*** Error, this build is outdated ***");

View file

@ -1,11 +1,11 @@
From fd20af56dbf1982c04406fcd9a0360b54568d965 Mon Sep 17 00:00:00 2001 From 655295872243600487c4870e833198a8746aecf1 Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com> From: Jedediah Smith <jedediah@silencegreys.com>
Date: Tue, 1 Mar 2016 14:47:52 -0600 Date: Tue, 1 Mar 2016 14:47:52 -0600
Subject: [PATCH] Player affects spawning API Subject: [PATCH] Player affects spawning API
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
index 40efd6c60..1aa32bf11 100644 index fc64ba3c9..a47ef2ca5 100644
--- a/src/main/java/net/minecraft/server/EntityHuman.java --- a/src/main/java/net/minecraft/server/EntityHuman.java
+++ b/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java
@@ -72,6 +72,9 @@ public abstract class EntityHuman extends EntityLiving { @@ -72,6 +72,9 @@ public abstract class EntityHuman extends EntityLiving {
@ -19,7 +19,7 @@ index 40efd6c60..1aa32bf11 100644
// CraftBukkit start // CraftBukkit start
public boolean fauxSleeping; public boolean fauxSleeping;
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index c8c191667..d29364b01 100644 index 27c97530f..3723fd977 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java --- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java +++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -614,7 +614,7 @@ public abstract class EntityInsentient extends EntityLiving { @@ -614,7 +614,7 @@ public abstract class EntityInsentient extends EntityLiving {
@ -32,7 +32,7 @@ index c8c191667..d29364b01 100644
double d1 = entityhuman.locY - this.locY; double d1 = entityhuman.locY - this.locY;
double d2 = entityhuman.locZ - this.locZ; double d2 = entityhuman.locZ - this.locZ;
diff --git a/src/main/java/net/minecraft/server/EntitySilverfish.java b/src/main/java/net/minecraft/server/EntitySilverfish.java diff --git a/src/main/java/net/minecraft/server/EntitySilverfish.java b/src/main/java/net/minecraft/server/EntitySilverfish.java
index 6cb4f889c..a1ebf5c68 100644 index 75040a0f2..683191c4a 100644
--- a/src/main/java/net/minecraft/server/EntitySilverfish.java --- a/src/main/java/net/minecraft/server/EntitySilverfish.java
+++ b/src/main/java/net/minecraft/server/EntitySilverfish.java +++ b/src/main/java/net/minecraft/server/EntitySilverfish.java
@@ -96,7 +96,7 @@ public class EntitySilverfish extends EntityMonster { @@ -96,7 +96,7 @@ public class EntitySilverfish extends EntityMonster {
@ -45,7 +45,7 @@ index 6cb4f889c..a1ebf5c68 100644
return false; return false;
} }
diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java
index 44fb75c6f..aec9cdae5 100644 index e54dcaa99..b12e767db 100644
--- a/src/main/java/net/minecraft/server/SpawnerCreature.java --- a/src/main/java/net/minecraft/server/SpawnerCreature.java
+++ b/src/main/java/net/minecraft/server/SpawnerCreature.java +++ b/src/main/java/net/minecraft/server/SpawnerCreature.java
@@ -37,7 +37,7 @@ public final class SpawnerCreature { @@ -37,7 +37,7 @@ public final class SpawnerCreature {
@ -58,7 +58,7 @@ index 44fb75c6f..aec9cdae5 100644
j = MathHelper.floor(entityhuman.locZ / 16.0D); j = MathHelper.floor(entityhuman.locZ / 16.0D);
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 05d363171..fd64b75ed 100644 index 6ca7a2069..ae11c2e43 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -28,6 +28,7 @@ import org.bukkit.craftbukkit.block.data.CraftBlockData; @@ -28,6 +28,7 @@ import org.bukkit.craftbukkit.block.data.CraftBlockData;
@ -69,7 +69,7 @@ index 05d363171..fd64b75ed 100644
import org.bukkit.event.block.BlockCanBuildEvent; import org.bukkit.event.block.BlockCanBuildEvent;
import org.bukkit.event.block.BlockPhysicsEvent; import org.bukkit.event.block.BlockPhysicsEvent;
import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason; import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason;
@@ -2407,7 +2408,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -2411,7 +2412,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
for (int i = 0; i < this.players.size(); ++i) { for (int i = 0; i < this.players.size(); ++i) {
EntityHuman entityhuman = (EntityHuman) this.players.get(i); EntityHuman entityhuman = (EntityHuman) this.players.get(i);
@ -79,7 +79,7 @@ index 05d363171..fd64b75ed 100644
if (d3 < 0.0D || d4 < d3 * d3) { if (d3 < 0.0D || d4 < d3 * d3) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index fad258f11..c67137a80 100644 index 47f650e42..0109d8e97 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1585,7 +1585,19 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -1585,7 +1585,19 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View file

@ -1,4 +1,4 @@
From b51264983f1041ab516cbc32f6973fe9615826bd Mon Sep 17 00:00:00 2001 From 977746b6c79dbf14c44ccb350fef1a1ab88084b7 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Tue, 1 Mar 2016 23:09:29 -0600 Date: Tue, 1 Mar 2016 23:09:29 -0600
Subject: [PATCH] Further improve server tick loop Subject: [PATCH] Further improve server tick loop
@ -12,10 +12,10 @@ Previous implementation did not calculate TPS correctly.
Switch to a realistic rolling average and factor in std deviation as an extra reporting variable Switch to a realistic rolling average and factor in std deviation as an extra reporting variable
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index cba7c18f2..093190108 100644 index 5d5aa72ca..ae17796ce 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -141,7 +141,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -142,7 +142,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
public org.bukkit.command.ConsoleCommandSender console; public org.bukkit.command.ConsoleCommandSender console;
public org.bukkit.command.RemoteConsoleCommandSender remoteConsole; public org.bukkit.command.RemoteConsoleCommandSender remoteConsole;
public ConsoleReader reader; public ConsoleReader reader;
@ -24,7 +24,7 @@ index cba7c18f2..093190108 100644
public final Thread primaryThread; public final Thread primaryThread;
public java.util.Queue<Runnable> processQueue = new java.util.concurrent.ConcurrentLinkedQueue<Runnable>(); public java.util.Queue<Runnable> processQueue = new java.util.concurrent.ConcurrentLinkedQueue<Runnable>();
public int autosavePeriod; public int autosavePeriod;
@@ -149,10 +149,6 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -150,10 +150,6 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
public CommandDispatcher vanillaCommandDispatcher; public CommandDispatcher vanillaCommandDispatcher;
// CraftBukkit end // CraftBukkit end
// Spigot start // Spigot start
@ -35,7 +35,7 @@ index cba7c18f2..093190108 100644
public final SlackActivityAccountant slackActivityAccountant = new SlackActivityAccountant(); public final SlackActivityAccountant slackActivityAccountant = new SlackActivityAccountant();
// Spigot end // Spigot end
@@ -637,12 +633,54 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -676,12 +672,54 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.isRunning = false; this.isRunning = false;
} }
@ -95,7 +95,7 @@ index cba7c18f2..093190108 100644
public void run() { public void run() {
try { try {
@@ -654,24 +692,41 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -693,24 +731,41 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
// Spigot start // Spigot start
Arrays.fill( recentTps, 20 ); Arrays.fill( recentTps, 20 );
@ -149,10 +149,10 @@ index cba7c18f2..093190108 100644
} }
lastTick = curTime; lastTick = curTime;
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index a1a0a9b34..f39ddbf09 100644 index ce87736da..fdcdbf508 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1850,6 +1850,17 @@ public final class CraftServer implements Server { @@ -1832,6 +1832,17 @@ public final class CraftServer implements Server {
return CraftMagicNumbers.INSTANCE; return CraftMagicNumbers.INSTANCE;
} }

View file

@ -1,11 +1,11 @@
From 3b55d88bdefa6b3479ff0e0ee21da64912d24f0b Mon Sep 17 00:00:00 2001 From 258c176a476363f322e5c45f1e9a9e2cb9e9530e Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Tue, 1 Mar 2016 23:52:34 -0600 Date: Tue, 1 Mar 2016 23:52:34 -0600
Subject: [PATCH] Prevent tile entity and entity crashes Subject: [PATCH] Prevent tile entity and entity crashes
diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java
index 5b7f6ca84..8cab71c0e 100644 index 6b8a1c8c8..e03965fc7 100644
--- a/src/main/java/net/minecraft/server/TileEntity.java --- a/src/main/java/net/minecraft/server/TileEntity.java
+++ b/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java
@@ -175,7 +175,12 @@ public abstract class TileEntity implements KeyedObject { @@ -175,7 +175,12 @@ public abstract class TileEntity implements KeyedObject {
@ -23,7 +23,7 @@ index 5b7f6ca84..8cab71c0e 100644
} }
} }
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 3f0b6ac26..c605d7e52 100644 index e3c56a750..bfe09a205 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -1166,10 +1166,12 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -1166,10 +1166,12 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
@ -44,7 +44,7 @@ index 3f0b6ac26..c605d7e52 100644
} }
@@ -1232,10 +1234,13 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -1232,10 +1234,13 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
((ITickable) tileentity).X_(); ((ITickable) tileentity).Y_();
this.methodProfiler.e(); this.methodProfiler.e();
} catch (Throwable throwable2) { } catch (Throwable throwable2) {
- crashreport1 = CrashReport.a(throwable2, "Ticking block entity"); - crashreport1 = CrashReport.a(throwable2, "Ticking block entity");

View file

@ -1,4 +1,4 @@
From fe837b054c13a5ef4ad79e3111af573ff28c2bca Mon Sep 17 00:00:00 2001 From 6a23a851deddbd06d8dbde1734d8ebd1644fb666 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net> From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 00:52:31 -0600 Date: Wed, 2 Mar 2016 00:52:31 -0600
Subject: [PATCH] Lighting Queue Subject: [PATCH] Lighting Queue
@ -43,7 +43,7 @@ index a340866f3..1e3405cc1 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 4a4cc6c59..b0060c363 100644 index 091a53371..d46578b3e 100644
--- a/src/main/java/net/minecraft/server/Chunk.java --- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -91,6 +91,7 @@ public class Chunk implements IChunkAccess { @@ -91,6 +91,7 @@ public class Chunk implements IChunkAccess {
@ -102,10 +102,10 @@ index 4a4cc6c59..b0060c363 100644
IMMEDIATE, QUEUED, CHECK; IMMEDIATE, QUEUED, CHECK;
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index badfe86b2..51bc23daf 100644 index d23f4e80c..48b484da1 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -323,6 +323,7 @@ public class ChunkProviderServer implements IChunkProvider { @@ -322,6 +322,7 @@ public class ChunkProviderServer implements IChunkProvider {
return false; return false;
} }
save = event.isSaveChunk(); save = event.isSaveChunk();
@ -114,10 +114,10 @@ index badfe86b2..51bc23daf 100644
// Update neighbor counts // Update neighbor counts
for (int x = -2; x < 3; x++) { for (int x = -2; x < 3; x++) {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 2e691b9f6..4473c3b51 100644 index ae17796ce..1ac8d61cd 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -825,7 +825,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -864,7 +864,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
protected void v() { protected void v() {
co.aikar.timings.TimingsManager.FULL_SERVER_TICK.startTiming(); // Paper co.aikar.timings.TimingsManager.FULL_SERVER_TICK.startTiming(); // Paper
this.slackActivityAccountant.tickStarted(); // Spigot this.slackActivityAccountant.tickStarted(); // Spigot
@ -126,7 +126,7 @@ index 2e691b9f6..4473c3b51 100644
++this.ticks; ++this.ticks;
if (this.S) { if (this.S) {
@@ -883,6 +883,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -922,6 +922,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.methodProfiler.e(); this.methodProfiler.e();
this.methodProfiler.e(); this.methodProfiler.e();
org.spigotmc.WatchdogThread.tick(); // Spigot org.spigotmc.WatchdogThread.tick(); // Spigot
@ -233,7 +233,7 @@ index 000000000..345cd5824
+ } + }
+} +}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index c605d7e52..f57bd081b 100644 index bfe09a205..c40ecbc0c 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -325,7 +325,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -325,7 +325,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose

View file

@ -1,4 +1,4 @@
From 46d962a94e8bfe83e54319f47e57da34b4e7f741 Mon Sep 17 00:00:00 2001 From b8d7f6c6cd036f9e845a1f07708681a023b68a2e Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net> From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 11:59:48 -0600 Date: Wed, 2 Mar 2016 11:59:48 -0600
Subject: [PATCH] Optimize explosions Subject: [PATCH] Optimize explosions
@ -25,7 +25,7 @@ index dccccbf5b..3626aa717 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java
index 6b9f6c956..8fdcd52b2 100644 index e558a3a57..18c55402d 100644
--- a/src/main/java/net/minecraft/server/Explosion.java --- a/src/main/java/net/minecraft/server/Explosion.java
+++ b/src/main/java/net/minecraft/server/Explosion.java +++ b/src/main/java/net/minecraft/server/Explosion.java
@@ -136,7 +136,7 @@ public class Explosion { @@ -136,7 +136,7 @@ public class Explosion {
@ -124,10 +124,10 @@ index 6b9f6c956..8fdcd52b2 100644
+ // Paper end + // Paper end
} }
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 4473c3b51..1027b0588 100644 index 1ac8d61cd..96d31f874 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -990,6 +990,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -1029,6 +1029,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
worldserver.getTracker().updatePlayers(); worldserver.getTracker().updatePlayers();
this.methodProfiler.e(); this.methodProfiler.e();
this.methodProfiler.e(); this.methodProfiler.e();
@ -136,7 +136,7 @@ index 4473c3b51..1027b0588 100644
// this.f[i][this.ticks % 100] = SystemUtils.c() - j; // CraftBukkit // this.f[i][this.ticks % 100] = SystemUtils.c() - j; // CraftBukkit
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index f57bd081b..04493a1f9 100644 index c40ecbc0c..1ca3eef11 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -18,6 +18,7 @@ import org.apache.logging.log4j.Logger; @@ -18,6 +18,7 @@ import org.apache.logging.log4j.Logger;

View file

@ -1,4 +1,4 @@
From 2c3fc9d8180148edd78d5ce513eb6bd792cf7d0c Mon Sep 17 00:00:00 2001 From f620d59ecbd4bff1544e6d010208a17cb8549df5 Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com> From: Sudzzy <originmc@outlook.com>
Date: Wed, 2 Mar 2016 14:48:03 -0600 Date: Wed, 2 Mar 2016 14:48:03 -0600
Subject: [PATCH] Disable explosion knockback Subject: [PATCH] Disable explosion knockback
@ -19,7 +19,7 @@ index 3626aa717..be92c1af6 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index f1840f4fa..17955d0f7 100644 index d6e9915c1..574883462 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java --- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1004,6 +1004,7 @@ public abstract class EntityLiving extends Entity { @@ -1004,6 +1004,7 @@ public abstract class EntityLiving extends Entity {
@ -46,9 +46,9 @@ index f1840f4fa..17955d0f7 100644
+ +
if (this.getHealth() <= 0.0F) { if (this.getHealth() <= 0.0F) {
if (!this.e(damagesource)) { if (!this.e(damagesource)) {
SoundEffect soundeffect = this.cr(); SoundEffect soundeffect = this.cs();
diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java
index 8fdcd52b2..75b21010b 100644 index 18c55402d..7c676f9f3 100644
--- a/src/main/java/net/minecraft/server/Explosion.java --- a/src/main/java/net/minecraft/server/Explosion.java
+++ b/src/main/java/net/minecraft/server/Explosion.java +++ b/src/main/java/net/minecraft/server/Explosion.java
@@ -152,7 +152,7 @@ public class Explosion { @@ -152,7 +152,7 @@ public class Explosion {

View file

@ -1,4 +1,4 @@
From 77d4e20f2d1dcbac4798b664c809dbcf3819dbf2 Mon Sep 17 00:00:00 2001 From a582f2795d2b29ef1c1d52de9dafde6db552ec36 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 02:02:07 -0600 Date: Thu, 3 Mar 2016 02:02:07 -0600
Subject: [PATCH] Optimize Pathfinding Subject: [PATCH] Optimize Pathfinding
@ -7,7 +7,7 @@ Prevents pathfinding from spamming failures for things such as
arrow attacks. arrow attacks.
diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java
index 9337b9397..1964684ac 100644 index 62cb81516..8111317e3 100644
--- a/src/main/java/net/minecraft/server/NavigationAbstract.java --- a/src/main/java/net/minecraft/server/NavigationAbstract.java
+++ b/src/main/java/net/minecraft/server/NavigationAbstract.java +++ b/src/main/java/net/minecraft/server/NavigationAbstract.java
@@ -122,10 +122,26 @@ public abstract class NavigationAbstract { @@ -122,10 +122,26 @@ public abstract class NavigationAbstract {
@ -41,7 +41,7 @@ index 9337b9397..1964684ac 100644
@@ -258,6 +274,7 @@ public abstract class NavigationAbstract { @@ -258,6 +274,7 @@ public abstract class NavigationAbstract {
} }
public void r() { public void q() {
+ this.pathfindFailures = 0; this.lastFailure = 0; // Paper - Pathfinding optimizations + this.pathfindFailures = 0; this.lastFailure = 0; // Paper - Pathfinding optimizations
this.c = null; this.c = null;
} }

View file

@ -1,14 +1,14 @@
From 7ad52fafe34a337de31950cfcb5714b42936672c Mon Sep 17 00:00:00 2001 From bd50b8b817431b942df9ac1ed7cb17e6f9854b63 Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc> From: kashike <kashike@vq.lc>
Date: Thu, 3 Mar 2016 02:15:57 -0600 Date: Thu, 3 Mar 2016 02:15:57 -0600
Subject: [PATCH] Expose server CommandMap Subject: [PATCH] Expose server CommandMap
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index d637199ca..703d38f0c 100644 index 2d8820070..6d00be24b 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1604,6 +1604,7 @@ public final class CraftServer implements Server { @@ -1586,6 +1586,7 @@ public final class CraftServer implements Server {
return helpMap; return helpMap;
} }

View file

@ -1,4 +1,4 @@
From 8dbd8eba1f8a7f3c7dc31d92225602ea6438fb91 Mon Sep 17 00:00:00 2001 From 1bba90c8786ff7744430062680e3f9f2fb1e09be Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io> From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 03:15:41 -0600 Date: Thu, 3 Mar 2016 03:15:41 -0600
Subject: [PATCH] Add exception reporting event Subject: [PATCH] Add exception reporting event
@ -50,7 +50,7 @@ index 000000000..93397188b
+} +}
\ No newline at end of file \ No newline at end of file
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 2d55abd7a..7ea4b9b5c 100644 index 0c2540938..15ecac26c 100644
--- a/src/main/java/net/minecraft/server/Chunk.java --- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
@ -98,7 +98,7 @@ index 2d55abd7a..7ea4b9b5c 100644
} }
} }
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 51bc23daf..bb96a7392 100644 index 48b484da1..6917fdbe0 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -17,6 +17,7 @@ import java.util.concurrent.ExecutionException; @@ -17,6 +17,7 @@ import java.util.concurrent.ExecutionException;
@ -109,7 +109,7 @@ index 51bc23daf..bb96a7392 100644
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
@@ -215,7 +216,11 @@ public class ChunkProviderServer implements IChunkProvider { @@ -214,7 +215,11 @@ public class ChunkProviderServer implements IChunkProvider {
try { try {
// this.chunkLoader.a(this.world, chunk); // Spigot // this.chunkLoader.a(this.world, chunk); // Spigot
} catch (Exception exception) { } catch (Exception exception) {
@ -122,7 +122,7 @@ index 51bc23daf..bb96a7392 100644
} }
} }
@@ -225,9 +230,14 @@ public class ChunkProviderServer implements IChunkProvider { @@ -224,9 +229,14 @@ public class ChunkProviderServer implements IChunkProvider {
ichunkaccess.setLastSaved(this.world.getTime()); ichunkaccess.setLastSaved(this.world.getTime());
this.chunkLoader.saveChunk(this.world, ichunkaccess, unloaded); // Spigot this.chunkLoader.saveChunk(this.world, ichunkaccess, unloaded); // Spigot
} catch (IOException ioexception) { } catch (IOException ioexception) {
@ -167,7 +167,7 @@ index 33e5aaf2c..f13534917 100644
} }
// CraftBukkit end // CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/PersistentCollection.java b/src/main/java/net/minecraft/server/PersistentCollection.java diff --git a/src/main/java/net/minecraft/server/PersistentCollection.java b/src/main/java/net/minecraft/server/PersistentCollection.java
index 0ffca4301..86d8fd0d9 100644 index 6b5600ba5..72f386720 100644
--- a/src/main/java/net/minecraft/server/PersistentCollection.java --- a/src/main/java/net/minecraft/server/PersistentCollection.java
+++ b/src/main/java/net/minecraft/server/PersistentCollection.java +++ b/src/main/java/net/minecraft/server/PersistentCollection.java
@@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
@ -194,7 +194,7 @@ index 0ffca4301..86d8fd0d9 100644
} }
diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java
index 94364baae..c80d724f0 100644 index 31899549d..cc7cad8be 100644
--- a/src/main/java/net/minecraft/server/RegionFile.java --- a/src/main/java/net/minecraft/server/RegionFile.java
+++ b/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java
@@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
@ -212,7 +212,7 @@ index 94364baae..c80d724f0 100644
} }
} }
@@ -209,6 +211,7 @@ public class RegionFile { @@ -237,6 +239,7 @@ public class RegionFile {
this.b(i, j, (int) (SystemUtils.d() / 1000L)); this.b(i, j, (int) (SystemUtils.d() / 1000L));
} catch (IOException ioexception) { } catch (IOException ioexception) {
ioexception.printStackTrace(); ioexception.printStackTrace();
@ -221,7 +221,7 @@ index 94364baae..c80d724f0 100644
} }
diff --git a/src/main/java/net/minecraft/server/RegionFileCache.java b/src/main/java/net/minecraft/server/RegionFileCache.java diff --git a/src/main/java/net/minecraft/server/RegionFileCache.java b/src/main/java/net/minecraft/server/RegionFileCache.java
index d394645a5..384628ccc 100644 index 0e91aeec3..ff473a263 100644
--- a/src/main/java/net/minecraft/server/RegionFileCache.java --- a/src/main/java/net/minecraft/server/RegionFileCache.java
+++ b/src/main/java/net/minecraft/server/RegionFileCache.java +++ b/src/main/java/net/minecraft/server/RegionFileCache.java
@@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
@ -240,7 +240,7 @@ index d394645a5..384628ccc 100644
} }
diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java
index aec9cdae5..6d842df62 100644 index b12e767db..342a15db5 100644
--- a/src/main/java/net/minecraft/server/SpawnerCreature.java --- a/src/main/java/net/minecraft/server/SpawnerCreature.java
+++ b/src/main/java/net/minecraft/server/SpawnerCreature.java +++ b/src/main/java/net/minecraft/server/SpawnerCreature.java
@@ -10,6 +10,7 @@ import org.apache.logging.log4j.LogManager; @@ -10,6 +10,7 @@ import org.apache.logging.log4j.LogManager;
@ -288,7 +288,7 @@ index 4ff243dab..67b2e41c7 100644
} }
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 26b2a1fd4..d51ed0f80 100644 index 30cafca04..fa75ed496 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -1,6 +1,8 @@ @@ -1,6 +1,8 @@

View file

@ -1,4 +1,4 @@
From ac2e096b98ab349ce20eb01bb7543fa3aaf4f4ee Mon Sep 17 00:00:00 2001 From 9cb479ab95970eba850de078eaa105429a3024a7 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Fri, 4 Mar 2016 18:18:37 -0600 Date: Fri, 4 Mar 2016 18:18:37 -0600
Subject: [PATCH] Chunk save queue improvements Subject: [PATCH] Chunk save queue improvements
@ -41,7 +41,7 @@ index 36689db74..3898ad8fa 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index 3a0e52d88..8701777cc 100644 index 5001fd11d..b247d5f07 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -25,6 +25,7 @@ import java.util.function.Consumer; @@ -25,6 +25,7 @@ import java.util.function.Consumer;
@ -75,22 +75,7 @@ index 3a0e52d88..8701777cc 100644
private final File c; private final File c;
private final DataFixer d; private final DataFixer d;
private PersistentStructureLegacy e; private PersistentStructureLegacy e;
@@ -285,7 +299,13 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -298,8 +312,8 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
}
};
} else {
- if (this.b.containsKey(chunkcoordintpair) && this.a(this.b.get(chunkcoordintpair).get()) == ChunkStatus.Type.LEVELCHUNK || this.a(this.b(world, chunkcoordintpair.x, chunkcoordintpair.z)) == ChunkStatus.Type.LEVELCHUNK) {
+ // Paper start
+ Supplier<NBTTagCompound> existingSave;
+ synchronized (this) {
+ existingSave = this.b.get(chunkcoordintpair);
+ }
+ if (existingSave != null && this.a(existingSave.get()) == ChunkStatus.Type.LEVELCHUNK || this.a(this.b(world, chunkcoordintpair.x, chunkcoordintpair.z)) == ChunkStatus.Type.LEVELCHUNK) { // Paper - extract existingSave to synchronized lookup
+ // Paper end
return;
}
@@ -296,8 +316,8 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
} }
}; };
} }
@ -101,7 +86,7 @@ index 3a0e52d88..8701777cc 100644
// Spigot end // Spigot end
} catch (Exception exception) { } catch (Exception exception) {
ChunkRegionLoader.a.error("Failed to save chunk", exception); ChunkRegionLoader.a.error("Failed to save chunk", exception);
@@ -306,18 +326,22 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -308,18 +322,22 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
} }
protected synchronized void a(ChunkCoordIntPair chunkcoordintpair, Supplier<NBTTagCompound> nbttagcompound) { // Spigot protected synchronized void a(ChunkCoordIntPair chunkcoordintpair, Supplier<NBTTagCompound> nbttagcompound) { // Spigot
@ -128,7 +113,7 @@ index 3a0e52d88..8701777cc 100644
if (logCompletion) { if (logCompletion) {
// CraftBukkit end // CraftBukkit end
ChunkRegionLoader.a.info("ThreadedAnvilChunkStorage ({}): All chunks are saved", this.c.getName()); ChunkRegionLoader.a.info("ThreadedAnvilChunkStorage ({}): All chunks are saved", this.c.getName());
@@ -325,17 +349,13 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -327,17 +345,13 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
return false; return false;
} else { } else {
@ -148,7 +133,7 @@ index 3a0e52d88..8701777cc 100644
if (nbttagcompound != null) { if (nbttagcompound != null) {
try { try {
@@ -347,7 +367,14 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -349,7 +363,14 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
flag = true; flag = true;
} finally { } finally {

View file

@ -1,4 +1,4 @@
From 2fafede916dc83820145ee9a6663fa1f9725d8da Mon Sep 17 00:00:00 2001 From cd1396b77d29f151316d181df8ce104bd61c5974 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Mon, 4 Mar 2013 23:46:10 -0500 Date: Mon, 4 Mar 2013 23:46:10 -0500
Subject: [PATCH] Chunk Save Reattempt Subject: [PATCH] Chunk Save Reattempt
@ -6,10 +6,10 @@ Subject: [PATCH] Chunk Save Reattempt
We commonly have "Stream Closed" errors on chunk saving, so this code should re-try to save the chunk in the event of failure and hopefully prevent rollbacks. We commonly have "Stream Closed" errors on chunk saving, so this code should re-try to save the chunk in the event of failure and hopefully prevent rollbacks.
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index 8701777cc..ad3bd3808 100644 index b247d5f07..f007af2e1 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -358,11 +358,16 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -354,11 +354,16 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
NBTTagCompound nbttagcompound = SupplierUtils.getIfExists(chunk.compoundSupplier); // Spigot // Paper NBTTagCompound nbttagcompound = SupplierUtils.getIfExists(chunk.compoundSupplier); // Spigot // Paper
if (nbttagcompound != null) { if (nbttagcompound != null) {
@ -28,10 +28,10 @@ index 8701777cc..ad3bd3808 100644
flag = true; flag = true;
diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java
index c80d724f0..3f9aa5923 100644 index cc7cad8be..b8b514c87 100644
--- a/src/main/java/net/minecraft/server/RegionFile.java --- a/src/main/java/net/minecraft/server/RegionFile.java
+++ b/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java
@@ -210,8 +210,7 @@ public class RegionFile { @@ -238,8 +238,7 @@ public class RegionFile {
this.b(i, j, (int) (SystemUtils.d() / 1000L)); this.b(i, j, (int) (SystemUtils.d() / 1000L));
} catch (IOException ioexception) { } catch (IOException ioexception) {

View file

@ -1,4 +1,4 @@
From 63781dcbca84f8aa63d89c21777f46521465843f Mon Sep 17 00:00:00 2001 From 03aaffbcad2bfeb80e38be011d9da2f2934c57e8 Mon Sep 17 00:00:00 2001
From: William <admin@domnian.com> From: William <admin@domnian.com>
Date: Fri, 18 Mar 2016 03:30:17 -0400 Date: Fri, 18 Mar 2016 03:30:17 -0400
Subject: [PATCH] Allow Reloading of Custom Permissions Subject: [PATCH] Allow Reloading of Custom Permissions
@ -6,10 +6,10 @@ Subject: [PATCH] Allow Reloading of Custom Permissions
https://github.com/PaperMC/Paper/issues/49 https://github.com/PaperMC/Paper/issues/49
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 4db5aacc4..1c9637ff7 100644 index ff966de55..3f51eb384 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1960,5 +1960,20 @@ public final class CraftServer implements Server { @@ -1942,5 +1942,20 @@ public final class CraftServer implements Server {
return false; return false;
} }
} }

View file

@ -1,4 +1,4 @@
From 2223947a61cc98c1e2b2c3e52c5e0bad7399dceb Mon Sep 17 00:00:00 2001 From db448a33d090f16e94422a122727963472d771a1 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 14:24:53 -0400 Date: Fri, 18 Mar 2016 14:24:53 -0400
Subject: [PATCH] Fix Furnace cook time bug Subject: [PATCH] Fix Furnace cook time bug
@ -9,10 +9,10 @@ cook in the expected amount of time as the cook time was not decremented correct
This patch ensures that furnaces cook to the correct wall time expectation. This patch ensures that furnaces cook to the correct wall time expectation.
diff --git a/src/main/java/net/minecraft/server/TileEntityFurnace.java b/src/main/java/net/minecraft/server/TileEntityFurnace.java diff --git a/src/main/java/net/minecraft/server/TileEntityFurnace.java b/src/main/java/net/minecraft/server/TileEntityFurnace.java
index 8f9a59693..3a587a766 100644 index b484fc721..bc158b877 100644
--- a/src/main/java/net/minecraft/server/TileEntityFurnace.java --- a/src/main/java/net/minecraft/server/TileEntityFurnace.java
+++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java +++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java
@@ -272,7 +272,7 @@ public class TileEntityFurnace extends TileEntityContainer implements IWorldInve @@ -267,7 +267,7 @@ public class TileEntityFurnace extends TileEntityContainer implements IWorldInve
if (this.isBurning() && this.canBurn(irecipe)) { if (this.isBurning() && this.canBurn(irecipe)) {
this.cookTime += elapsedTicks; this.cookTime += elapsedTicks;
if (this.cookTime >= this.cookTimeTotal) { if (this.cookTime >= this.cookTimeTotal) {

View file

@ -1,4 +1,4 @@
From b13a9f38c46d3600d2b142d3b69bee8e8c6f5cd4 Mon Sep 17 00:00:00 2001 From a773200d9ab31e884e149a3fd9a108d1e94e618b Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 21:22:56 -0400 Date: Fri, 18 Mar 2016 21:22:56 -0400
Subject: [PATCH] Optimized Light Level Comparisons Subject: [PATCH] Optimized Light Level Comparisons
@ -8,7 +8,7 @@ Use an optimized method to test if a block position meets a desired light level.
This method benefits from returning as soon as the desired light level matches. This method benefits from returning as soon as the desired light level matches.
diff --git a/src/main/java/net/minecraft/server/BlockCrops.java b/src/main/java/net/minecraft/server/BlockCrops.java diff --git a/src/main/java/net/minecraft/server/BlockCrops.java b/src/main/java/net/minecraft/server/BlockCrops.java
index e64b6dbda..8acfe9e66 100644 index b392846aa..c64e6c197 100644
--- a/src/main/java/net/minecraft/server/BlockCrops.java --- a/src/main/java/net/minecraft/server/BlockCrops.java
+++ b/src/main/java/net/minecraft/server/BlockCrops.java +++ b/src/main/java/net/minecraft/server/BlockCrops.java
@@ -44,7 +44,7 @@ public class BlockCrops extends BlockPlant implements IBlockFragilePlantElement @@ -44,7 +44,7 @@ public class BlockCrops extends BlockPlant implements IBlockFragilePlantElement
@ -17,9 +17,9 @@ index e64b6dbda..8acfe9e66 100644
super.a(iblockdata, world, blockposition, random); super.a(iblockdata, world, blockposition, random);
- if (world.getLightLevel(blockposition.up(), 0) >= 9) { - if (world.getLightLevel(blockposition.up(), 0) >= 9) {
+ if (world.isLightLevel(blockposition.up(), 9)) { // Paper + if (world.isLightLevel(blockposition.up(), 9)) { // Paper
int i = this.j(iblockdata); int i = this.k(iblockdata);
if (i < this.d()) { if (i < this.e()) {
diff --git a/src/main/java/net/minecraft/server/BlockSapling.java b/src/main/java/net/minecraft/server/BlockSapling.java diff --git a/src/main/java/net/minecraft/server/BlockSapling.java b/src/main/java/net/minecraft/server/BlockSapling.java
index 723e5c9b4..e24fb1736 100644 index 723e5c9b4..e24fb1736 100644
--- a/src/main/java/net/minecraft/server/BlockSapling.java --- a/src/main/java/net/minecraft/server/BlockSapling.java
@ -34,7 +34,7 @@ index 723e5c9b4..e24fb1736 100644
world.captureTreeGeneration = true; world.captureTreeGeneration = true;
// CraftBukkit end // CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/BlockStem.java b/src/main/java/net/minecraft/server/BlockStem.java diff --git a/src/main/java/net/minecraft/server/BlockStem.java b/src/main/java/net/minecraft/server/BlockStem.java
index 3959e0700..c4aff522b 100644 index 0192f9386..334c42d0d 100644
--- a/src/main/java/net/minecraft/server/BlockStem.java --- a/src/main/java/net/minecraft/server/BlockStem.java
+++ b/src/main/java/net/minecraft/server/BlockStem.java +++ b/src/main/java/net/minecraft/server/BlockStem.java
@@ -27,7 +27,7 @@ public class BlockStem extends BlockPlant implements IBlockFragilePlantElement { @@ -27,7 +27,7 @@ public class BlockStem extends BlockPlant implements IBlockFragilePlantElement {
@ -47,7 +47,7 @@ index 3959e0700..c4aff522b 100644
if (random.nextInt((int) ((100.0F / (this == Blocks.PUMPKIN_STEM ? world.spigotConfig.pumpkinModifier : world.spigotConfig.melonModifier)) * (25.0F / f)) + 1) == 0) { // Spigot if (random.nextInt((int) ((100.0F / (this == Blocks.PUMPKIN_STEM ? world.spigotConfig.pumpkinModifier : world.spigotConfig.melonModifier)) * (25.0F / f)) + 1) == 0) { // Spigot
diff --git a/src/main/java/net/minecraft/server/EntityMonster.java b/src/main/java/net/minecraft/server/EntityMonster.java diff --git a/src/main/java/net/minecraft/server/EntityMonster.java b/src/main/java/net/minecraft/server/EntityMonster.java
index bef146aa9..9c387365b 100644 index 494ce0bc0..f06c34c6f 100644
--- a/src/main/java/net/minecraft/server/EntityMonster.java --- a/src/main/java/net/minecraft/server/EntityMonster.java
+++ b/src/main/java/net/minecraft/server/EntityMonster.java +++ b/src/main/java/net/minecraft/server/EntityMonster.java
@@ -64,9 +64,18 @@ public abstract class EntityMonster extends EntityCreature implements IMonster { @@ -64,9 +64,18 @@ public abstract class EntityMonster extends EntityCreature implements IMonster {
@ -73,7 +73,7 @@ index bef146aa9..9c387365b 100644
} }
diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java
index 268e4d57b..24224efc6 100644 index 9f8f667c1..90aa8641b 100644
--- a/src/main/java/net/minecraft/server/EntityZombie.java --- a/src/main/java/net/minecraft/server/EntityZombie.java
+++ b/src/main/java/net/minecraft/server/EntityZombie.java +++ b/src/main/java/net/minecraft/server/EntityZombie.java
@@ -262,7 +262,7 @@ public class EntityZombie extends EntityMonster { @@ -262,7 +262,7 @@ public class EntityZombie extends EntityMonster {

View file

@ -1,11 +1,11 @@
From a9821eba8de7feae6fcaed3baccc7451992f2fc6 Mon Sep 17 00:00:00 2001 From 7b31831037d962e312445ec6f9e32fa2506bc4f9 Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com> From: Jedediah Smith <jedediah@silencegreys.com>
Date: Sun, 21 Jun 2015 15:07:20 -0400 Date: Sun, 21 Jun 2015 15:07:20 -0400
Subject: [PATCH] Custom replacement for eaten items Subject: [PATCH] Custom replacement for eaten items
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 00cd44a72..bcbc77ad2 100644 index dd48c6af0..acd8034e8 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java --- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2563,12 +2563,13 @@ public abstract class EntityLiving extends Entity { @@ -2563,12 +2563,13 @@ public abstract class EntityLiving extends Entity {
@ -23,7 +23,7 @@ index 00cd44a72..bcbc77ad2 100644
world.getServer().getPluginManager().callEvent(event); world.getServer().getPluginManager().callEvent(event);
if (event.isCancelled()) { if (event.isCancelled()) {
@@ -2583,9 +2584,19 @@ public abstract class EntityLiving extends Entity { @@ -2583,9 +2584,20 @@ public abstract class EntityLiving extends Entity {
itemstack = this.activeItem.a(this.world, this); itemstack = this.activeItem.a(this.world, this);
} }
@ -33,13 +33,14 @@ index 00cd44a72..bcbc77ad2 100644
+ itemstack = CraftItemStack.asNMSCopy(event.getReplacement()); + itemstack = CraftItemStack.asNMSCopy(event.getReplacement());
+ } + }
+ // Paper end + // Paper end
this.a(this.cT(), itemstack); this.a(this.cU(), itemstack);
// CraftBukkit end // CraftBukkit end
this.cZ(); this.da();
+ // Paper start - if the replacement is anything but the default, update the client inventory + // Paper start - if the replacement is anything but the default, update the client inventory
+ if (this instanceof EntityPlayer && !com.google.common.base.Objects.equal(defaultReplacement, itemstack)) { + if (this instanceof EntityPlayer && !com.google.common.base.Objects.equal(defaultReplacement, itemstack)) {
+ ((EntityPlayer) this).getBukkitEntity().updateInventory(); + ((EntityPlayer) this).getBukkitEntity().updateInventory();
+ } + }
+ // Paper end
} }
} }

View file

@ -1,4 +1,4 @@
From 4710b24774a3e974f01b1db6348dcc36a4d2ded7 Mon Sep 17 00:00:00 2001 From 2ad7998f791d185616cd9fe917db69a70eed172a Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 02:07:55 -0600 Date: Thu, 3 Mar 2016 02:07:55 -0600
Subject: [PATCH] Optimize isValidLocation, getType and getBlockData for inling Subject: [PATCH] Optimize isValidLocation, getType and getBlockData for inling
@ -31,7 +31,7 @@ index e2a7b4be2..58f8b4b72 100644
public BaseBlockPosition(int i, int j, int k) { public BaseBlockPosition(int i, int j, int k) {
this.a = i; this.a = i;
diff --git a/src/main/java/net/minecraft/server/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java diff --git a/src/main/java/net/minecraft/server/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java
index 70a7edf57..fff08f09d 100644 index 35ec4981c..ca73ac82f 100644
--- a/src/main/java/net/minecraft/server/BlockPosition.java --- a/src/main/java/net/minecraft/server/BlockPosition.java
+++ b/src/main/java/net/minecraft/server/BlockPosition.java +++ b/src/main/java/net/minecraft/server/BlockPosition.java
@@ -339,6 +339,16 @@ public class BlockPosition extends BaseBlockPosition { @@ -339,6 +339,16 @@ public class BlockPosition extends BaseBlockPosition {
@ -52,7 +52,7 @@ index 70a7edf57..fff08f09d 100644
public MutableBlockPosition() { public MutableBlockPosition() {
this(0, 0, 0); this(0, 0, 0);
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index fb27dcac2..1c0580f79 100644 index 0dc05b644..94d036865 100644
--- a/src/main/java/net/minecraft/server/Chunk.java --- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -430,12 +430,24 @@ public class Chunk implements IChunkAccess { @@ -430,12 +430,24 @@ public class Chunk implements IChunkAccess {
@ -96,7 +96,7 @@ index 7c6308dbe..880058a9e 100644
private NibbleArray skyLight; private NibbleArray skyLight;
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index d3785f73b..f8e4cd14c 100644 index 11cf087e7..489c152ee 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -262,11 +262,11 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -262,11 +262,11 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
@ -172,7 +172,7 @@ index d3785f73b..f8e4cd14c 100644
return FluidTypes.a.i(); return FluidTypes.a.i();
} else { } else {
Chunk chunk = this.getChunkAtWorldCoords(blockposition); Chunk chunk = this.getChunkAtWorldCoords(blockposition);
@@ -1764,7 +1764,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -1768,7 +1768,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
public Map<BlockPosition, TileEntity> capturedTileEntities = Maps.newHashMap(); public Map<BlockPosition, TileEntity> capturedTileEntities = Maps.newHashMap();
@Nullable @Nullable
public TileEntity getTileEntity(BlockPosition blockposition) { public TileEntity getTileEntity(BlockPosition blockposition) {
@ -181,7 +181,7 @@ index d3785f73b..f8e4cd14c 100644
return null; return null;
} else { } else {
// CraftBukkit start // CraftBukkit start
@@ -1805,7 +1805,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -1809,7 +1809,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
} }
public void setTileEntity(BlockPosition blockposition, @Nullable TileEntity tileentity) { public void setTileEntity(BlockPosition blockposition, @Nullable TileEntity tileentity) {
@ -190,7 +190,7 @@ index d3785f73b..f8e4cd14c 100644
if (tileentity != null && !tileentity.x()) { if (tileentity != null && !tileentity.x()) {
// CraftBukkit start // CraftBukkit start
if (captureBlockStates) { if (captureBlockStates) {
@@ -1866,7 +1866,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -1870,7 +1870,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
} }
public boolean p(BlockPosition blockposition) { public boolean p(BlockPosition blockposition) {

View file

@ -1,4 +1,4 @@
From 6455ce561b9117bf7b6752c1553f5159fb3712f3 Mon Sep 17 00:00:00 2001 From 6f900d976e49e29d9a3cfd377e94d7121ddb6e65 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Mon, 28 Mar 2016 21:22:26 -0400 Date: Mon, 28 Mar 2016 21:22:26 -0400
Subject: [PATCH] EntityPathfindEvent Subject: [PATCH] EntityPathfindEvent
@ -6,7 +6,7 @@ Subject: [PATCH] EntityPathfindEvent
Fires when an Entity decides to start moving to a location. Fires when an Entity decides to start moving to a location.
diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java
index 1964684ac..0c5215657 100644 index 8111317e3..76d1f4bd2 100644
--- a/src/main/java/net/minecraft/server/NavigationAbstract.java --- a/src/main/java/net/minecraft/server/NavigationAbstract.java
+++ b/src/main/java/net/minecraft/server/NavigationAbstract.java +++ b/src/main/java/net/minecraft/server/NavigationAbstract.java
@@ -4,7 +4,7 @@ import javax.annotation.Nullable; @@ -4,7 +4,7 @@ import javax.annotation.Nullable;
@ -24,7 +24,7 @@ index 1964684ac..0c5215657 100644
} else { } else {
+ if (!new com.destroystokyo.paper.event.entity.EntityPathfindEvent(getEntity().getBukkitEntity(), MCUtil.toLocation(getEntity().world, blockposition), null).callEvent()) { return null; } // Paper + if (!new com.destroystokyo.paper.event.entity.EntityPathfindEvent(getEntity().getBukkitEntity(), MCUtil.toLocation(getEntity().world, blockposition), null).callEvent()) { return null; } // Paper
this.q = blockposition; this.q = blockposition;
float f = this.k(); float f = this.j();
@@ -102,6 +103,7 @@ public abstract class NavigationAbstract { @@ -102,6 +103,7 @@ public abstract class NavigationAbstract {
if (this.c != null && !this.c.b() && blockposition.equals(this.q)) { if (this.c != null && !this.c.b() && blockposition.equals(this.q)) {
@ -32,7 +32,7 @@ index 1964684ac..0c5215657 100644
} else { } else {
+ if (!new com.destroystokyo.paper.event.entity.EntityPathfindEvent(getEntity().getBukkitEntity(), MCUtil.toLocation(entity.world, blockposition), entity.getBukkitEntity()).callEvent()) { return null; } // Paper + if (!new com.destroystokyo.paper.event.entity.EntityPathfindEvent(getEntity().getBukkitEntity(), MCUtil.toLocation(entity.world, blockposition), entity.getBukkitEntity()).callEvent()) { return null; } // Paper
this.q = blockposition; this.q = blockposition;
float f = this.k(); float f = this.j();
-- --
2.18.0 2.18.0

View file

@ -1,4 +1,4 @@
From a064f1ff86cfe2af3e4659d3b4ab7191c1bbdee5 Mon Sep 17 00:00:00 2001 From dfd965ef359e7bf7dfc9ed33736374439c753e83 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Sat, 13 Sep 2014 23:14:43 -0400 Date: Sat, 13 Sep 2014 23:14:43 -0400
Subject: [PATCH] Configurable Keep Spawn Loaded range per world Subject: [PATCH] Configurable Keep Spawn Loaded range per world
@ -21,10 +21,10 @@ index eb09be512..6ac58e5ec 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 1027b0588..b7aa9e869 100644 index 96d31f874..664007c29 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -446,8 +446,11 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -485,8 +485,11 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
ArrayList arraylist = Lists.newArrayList(); ArrayList arraylist = Lists.newArrayList();
Set set = Sets.newConcurrentHashSet(); Set set = Sets.newConcurrentHashSet();
@ -39,10 +39,10 @@ index 1027b0588..b7aa9e869 100644
} }
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index cc1492e4d..2c6774082 100644 index 6ec1ee26d..a4c8e62e2 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -2821,8 +2821,9 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -2825,8 +2825,9 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
int k = i * 16 + 8 - blockposition.getX(); int k = i * 16 + 8 - blockposition.getX();
int l = j * 16 + 8 - blockposition.getZ(); int l = j * 16 + 8 - blockposition.getZ();
boolean flag = true; boolean flag = true;
@ -54,10 +54,10 @@ index cc1492e4d..2c6774082 100644
public void a(Packet<?> packet) { public void a(Packet<?> packet) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index f90dc11f2..06b59657f 100644 index 62872675d..7cb795dd8 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1008,7 +1008,7 @@ public final class CraftServer implements Server { @@ -990,7 +990,7 @@ public final class CraftServer implements Server {
System.out.println("Preparing start region for level " + (console.worlds.size() - 1) + " (Seed: " + internal.getSeed() + ")"); System.out.println("Preparing start region for level " + (console.worlds.size() - 1) + " (Seed: " + internal.getSeed() + ")");
if (internal.getWorld().getKeepSpawnInMemory()) { if (internal.getWorld().getKeepSpawnInMemory()) {

View file

@ -1,14 +1,14 @@
From 0fcdea66258db413a6b24290ed64dbe31665a343 Mon Sep 17 00:00:00 2001 From afb30e11f473e9edbeff81f0bad1736ab90b28b9 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Tue, 5 Apr 2016 19:42:22 -0400 Date: Tue, 5 Apr 2016 19:42:22 -0400
Subject: [PATCH] Don't spam reload spawn chunks in nether/end Subject: [PATCH] Don't spam reload spawn chunks in nether/end
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 5b2d67260..3aecf7a5d 100644 index ae953d85d..e747d1e46 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -2817,6 +2817,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -2821,6 +2821,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
return this.K; return this.K;
} }

View file

@ -1,4 +1,4 @@
From e2d1cd0843677e1a8e8dea3ed851c5c8e2e94e69 Mon Sep 17 00:00:00 2001 From 43bd8c9254a8f40906a62978cf6045d7e1eff64b Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Wed, 13 Apr 2016 00:25:28 -0400 Date: Wed, 13 Apr 2016 00:25:28 -0400
Subject: [PATCH] Remove unused World Tile Entity List Subject: [PATCH] Remove unused World Tile Entity List
@ -6,7 +6,7 @@ Subject: [PATCH] Remove unused World Tile Entity List
Massive hit to performance and it is completely unnecessary. Massive hit to performance and it is completely unnecessary.
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 3aecf7a5d..e5ecfdbf0 100644 index e747d1e46..46eab028d 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -73,7 +73,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -73,7 +73,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
@ -57,7 +57,7 @@ index 3aecf7a5d..e5ecfdbf0 100644
this.tileEntityListTick.add(tileentity); this.tileEntityListTick.add(tileentity);
} }
@@ -1852,7 +1852,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -1856,7 +1856,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
} else { } else {
if (tileentity != null) { if (tileentity != null) {
this.c.remove(tileentity); this.c.remove(tileentity);

View file

@ -1,4 +1,4 @@
From 9f2f1b9ab1eed83663f5141642da3ed16f93bdaf Mon Sep 17 00:00:00 2001 From 3ee292c7290a2edfc9b0e97fb5ff14e1f8e0a595 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Wed, 13 Apr 2016 02:10:49 -0400 Date: Wed, 13 Apr 2016 02:10:49 -0400
Subject: [PATCH] Configurable Player Collision Subject: [PATCH] Configurable Player Collision
@ -19,10 +19,10 @@ index ec4643384..430b5d0cd 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index b7aa9e869..c5670fe8d 100644 index 664007c29..eb0e1361a 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -379,6 +379,20 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -418,6 +418,20 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.a(this.getDifficulty()); this.a(this.getDifficulty());
this.g_(); this.g_();
@ -44,7 +44,7 @@ index b7aa9e869..c5670fe8d 100644
protected void a(File file, WorldData worlddata) { protected void a(File file, WorldData worlddata) {
diff --git a/src/main/java/net/minecraft/server/PacketPlayOutScoreboardTeam.java b/src/main/java/net/minecraft/server/PacketPlayOutScoreboardTeam.java diff --git a/src/main/java/net/minecraft/server/PacketPlayOutScoreboardTeam.java b/src/main/java/net/minecraft/server/PacketPlayOutScoreboardTeam.java
index 5f54e7b9c..759288b97 100644 index a6aed2531..575e3762b 100644
--- a/src/main/java/net/minecraft/server/PacketPlayOutScoreboardTeam.java --- a/src/main/java/net/minecraft/server/PacketPlayOutScoreboardTeam.java
+++ b/src/main/java/net/minecraft/server/PacketPlayOutScoreboardTeam.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutScoreboardTeam.java
@@ -94,7 +94,7 @@ public class PacketPlayOutScoreboardTeam implements Packet<PacketListenerPlayOut @@ -94,7 +94,7 @@ public class PacketPlayOutScoreboardTeam implements Packet<PacketListenerPlayOut
@ -57,7 +57,7 @@ index 5f54e7b9c..759288b97 100644
packetdataserializer.a(this.c); packetdataserializer.a(this.c);
packetdataserializer.a(this.d); packetdataserializer.a(this.d);
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 8e1edde31..6b7d81933 100644 index 7f324a9c0..d0c547cc9 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java --- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -74,6 +74,7 @@ public abstract class PlayerList { @@ -74,6 +74,7 @@ public abstract class PlayerList {
@ -99,7 +99,7 @@ index 8e1edde31..6b7d81933 100644
this.savePlayerFile(entityplayer); this.savePlayerFile(entityplayer);
if (entityplayer.isPassenger()) { if (entityplayer.isPassenger()) {
Entity entity = entityplayer.getRootVehicle(); Entity entity = entityplayer.getRootVehicle();
@@ -1318,7 +1336,13 @@ public abstract class PlayerList { @@ -1311,7 +1329,13 @@ public abstract class PlayerList {
player.playerConnection.disconnect(this.server.server.getShutdownMessage()); // CraftBukkit - add custom shutdown message player.playerConnection.disconnect(this.server.server.getShutdownMessage()); // CraftBukkit - add custom shutdown message
} }
// CraftBukkit end // CraftBukkit end

View file

@ -1,4 +1,4 @@
From c1a4ecfa714d709d6c41f26869d7f52f45e27db2 Mon Sep 17 00:00:00 2001 From 977b959e4d5d6964c13e43d5f3a6b6db6af2cb32 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Thu, 28 Apr 2016 00:57:27 -0400 Date: Thu, 28 Apr 2016 00:57:27 -0400
Subject: [PATCH] remove null possibility for getServer singleton Subject: [PATCH] remove null possibility for getServer singleton
@ -6,7 +6,7 @@ Subject: [PATCH] remove null possibility for getServer singleton
to stop IDE complaining about potential NPE 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 diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 3c201c2e2..05dc8451e 100644 index eb0e1361a..68ab9b7eb 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -68,6 +68,7 @@ import co.aikar.timings.MinecraftTimings; // Paper @@ -68,6 +68,7 @@ import co.aikar.timings.MinecraftTimings; // Paper
@ -17,7 +17,7 @@ index 3c201c2e2..05dc8451e 100644
public static final Logger LOGGER = LogManager.getLogger(); public static final Logger LOGGER = LogManager.getLogger();
public static final File a = new File("usercache.json"); public static final File a = new File("usercache.json");
public Convertable convertable; public Convertable convertable;
@@ -153,6 +154,8 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -154,6 +155,8 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
// Spigot end // Spigot end
public MinecraftServer(OptionSet options, Proxy proxy, DataFixer datafixer, CommandDispatcher commanddispatcher, YggdrasilAuthenticationService yggdrasilauthenticationservice, MinecraftSessionService minecraftsessionservice, GameProfileRepository gameprofilerepository, UserCache usercache) { public MinecraftServer(OptionSet options, Proxy proxy, DataFixer datafixer, CommandDispatcher commanddispatcher, YggdrasilAuthenticationService yggdrasilauthenticationservice, MinecraftSessionService minecraftsessionservice, GameProfileRepository gameprofilerepository, UserCache usercache) {
@ -26,7 +26,7 @@ index 3c201c2e2..05dc8451e 100644
this.ac = new ResourceManager(EnumResourcePackType.SERVER_DATA); this.ac = new ResourceManager(EnumResourcePackType.SERVER_DATA);
this.resourcePackRepository = new ResourcePackRepository(ResourcePackLoader::new); this.resourcePackRepository = new ResourcePackRepository(ResourcePackLoader::new);
this.ag = new CraftingManager(); this.ag = new CraftingManager();
@@ -1742,7 +1745,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -1806,7 +1809,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
// CraftBukkit start // CraftBukkit start
@Deprecated @Deprecated
public static MinecraftServer getServer() { public static MinecraftServer getServer() {

View file

@ -1,4 +1,4 @@
From 9d96b8545503e22d3196831671b54fc1a5e80009 Mon Sep 17 00:00:00 2001 From 89c539bf9cd6e0a1ac5fd61cbcb7bf6a08ed570d Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Sun, 1 May 2016 21:19:14 -0400 Date: Sun, 1 May 2016 21:19:14 -0400
Subject: [PATCH] LootTable API & Replenishable Lootables Feature Subject: [PATCH] LootTable API & Replenishable Lootables Feature
@ -418,7 +418,7 @@ index 000000000..9a65603bc
+ } + }
+} +}
diff --git a/src/main/java/net/minecraft/server/EntityMinecartContainer.java b/src/main/java/net/minecraft/server/EntityMinecartContainer.java diff --git a/src/main/java/net/minecraft/server/EntityMinecartContainer.java b/src/main/java/net/minecraft/server/EntityMinecartContainer.java
index dc329dcc5..d3bf88585 100644 index 9ec73ac06..8bd7976f9 100644
--- a/src/main/java/net/minecraft/server/EntityMinecartContainer.java --- a/src/main/java/net/minecraft/server/EntityMinecartContainer.java
+++ b/src/main/java/net/minecraft/server/EntityMinecartContainer.java +++ b/src/main/java/net/minecraft/server/EntityMinecartContainer.java
@@ -6,17 +6,21 @@ import javax.annotation.Nullable; @@ -6,17 +6,21 @@ import javax.annotation.Nullable;
@ -445,7 +445,7 @@ index dc329dcc5..d3bf88585 100644
// CraftBukkit start // CraftBukkit start
public List<HumanEntity> transaction = new java.util.ArrayList<HumanEntity>(); public List<HumanEntity> transaction = new java.util.ArrayList<HumanEntity>();
@@ -159,12 +163,13 @@ public abstract class EntityMinecartContainer extends EntityMinecartAbstract imp @@ -168,12 +172,13 @@ public abstract class EntityMinecartContainer extends EntityMinecartAbstract imp
protected void b(NBTTagCompound nbttagcompound) { protected void b(NBTTagCompound nbttagcompound) {
super.b(nbttagcompound); super.b(nbttagcompound);
@ -460,7 +460,7 @@ index dc329dcc5..d3bf88585 100644
ContainerUtil.a(nbttagcompound, this.items); ContainerUtil.a(nbttagcompound, this.items);
} }
@@ -172,11 +177,12 @@ public abstract class EntityMinecartContainer extends EntityMinecartAbstract imp @@ -181,11 +186,12 @@ public abstract class EntityMinecartContainer extends EntityMinecartAbstract imp
protected void a(NBTTagCompound nbttagcompound) { protected void a(NBTTagCompound nbttagcompound) {
super.a(nbttagcompound); super.a(nbttagcompound);
@ -474,7 +474,7 @@ index dc329dcc5..d3bf88585 100644
ContainerUtil.b(nbttagcompound, this.items); ContainerUtil.b(nbttagcompound, this.items);
} }
@@ -225,10 +231,10 @@ public abstract class EntityMinecartContainer extends EntityMinecartAbstract imp @@ -234,10 +240,10 @@ public abstract class EntityMinecartContainer extends EntityMinecartAbstract imp
} }
public void f(@Nullable EntityHuman entityhuman) { public void f(@Nullable EntityHuman entityhuman) {
@ -487,7 +487,7 @@ index dc329dcc5..d3bf88585 100644
Random random; Random random;
if (this.d == 0L) { if (this.d == 0L) {
@@ -253,12 +259,51 @@ public abstract class EntityMinecartContainer extends EntityMinecartAbstract imp @@ -262,12 +268,51 @@ public abstract class EntityMinecartContainer extends EntityMinecartAbstract imp
this.items.clear(); this.items.clear();
} }
@ -540,7 +540,7 @@ index dc329dcc5..d3bf88585 100644
+ // Paper end + // Paper end
} }
diff --git a/src/main/java/net/minecraft/server/TileEntityLootable.java b/src/main/java/net/minecraft/server/TileEntityLootable.java diff --git a/src/main/java/net/minecraft/server/TileEntityLootable.java b/src/main/java/net/minecraft/server/TileEntityLootable.java
index ce710d219..9c8bebe4b 100644 index fbda02b32..e6fc1ae92 100644
--- a/src/main/java/net/minecraft/server/TileEntityLootable.java --- a/src/main/java/net/minecraft/server/TileEntityLootable.java
+++ b/src/main/java/net/minecraft/server/TileEntityLootable.java +++ b/src/main/java/net/minecraft/server/TileEntityLootable.java
@@ -1,12 +1,16 @@ @@ -1,12 +1,16 @@

View file

@ -1,4 +1,4 @@
From e1f368e70c67a8656883a4a1025adfce7f085a83 Mon Sep 17 00:00:00 2001 From a348c3710bdb5813fc2278b285f8f77f3a5d4368 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Sat, 7 May 2016 23:33:08 -0400 Date: Sat, 7 May 2016 23:33:08 -0400
Subject: [PATCH] Don't save empty scoreboard teams to scoreboard.dat Subject: [PATCH] Don't save empty scoreboard teams to scoreboard.dat
@ -19,10 +19,10 @@ index 430b5d0cd..011cbf5e3 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/PersistentScoreboard.java b/src/main/java/net/minecraft/server/PersistentScoreboard.java diff --git a/src/main/java/net/minecraft/server/PersistentScoreboard.java b/src/main/java/net/minecraft/server/PersistentScoreboard.java
index 81afa3195..ed3d5c889 100644 index 0260fb7ec..45d8de1b7 100644
--- a/src/main/java/net/minecraft/server/PersistentScoreboard.java --- a/src/main/java/net/minecraft/server/PersistentScoreboard.java
+++ b/src/main/java/net/minecraft/server/PersistentScoreboard.java +++ b/src/main/java/net/minecraft/server/PersistentScoreboard.java
@@ -175,6 +175,7 @@ public class PersistentScoreboard extends PersistentBase { @@ -177,6 +177,7 @@ public class PersistentScoreboard extends PersistentBase {
while (iterator.hasNext()) { while (iterator.hasNext()) {
ScoreboardTeam scoreboardteam = (ScoreboardTeam) iterator.next(); ScoreboardTeam scoreboardteam = (ScoreboardTeam) iterator.next();

View file

@ -1,4 +1,4 @@
From 5f52336745925855acb58d3b4f55fc404c5a1766 Mon Sep 17 00:00:00 2001 From 570d7c506c2cc65f5899a4ca5e6b5cd5c2f38182 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Thu, 12 May 2016 02:03:56 -0400 Date: Thu, 12 May 2016 02:03:56 -0400
Subject: [PATCH] Fix Chunk Unload Queue Issues Subject: [PATCH] Fix Chunk Unload Queue Issues
@ -9,7 +9,7 @@ has not resolved all the bugs with the changes.
This patch fixes known issues and really should be applied by Spigot team. This patch fixes known issues and really should be applied by Spigot team.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 744b5bc6d..718ebfea0 100644 index 49c5953fb..8da7e39ee 100644
--- a/src/main/java/net/minecraft/server/Chunk.java --- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -58,7 +58,7 @@ public class Chunk implements IChunkAccess { @@ -58,7 +58,7 @@ public class Chunk implements IChunkAccess {
@ -22,10 +22,10 @@ index 744b5bc6d..718ebfea0 100644
private int E; private int E;
private final AtomicInteger F; private final AtomicInteger F;
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index bb96a7392..7825dc91b 100644 index 6917fdbe0..bac5c921b 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -302,6 +302,7 @@ public class ChunkProviderServer implements IChunkProvider { @@ -301,6 +301,7 @@ public class ChunkProviderServer implements IChunkProvider {
if (chunk != null && chunk.d) { if (chunk != null && chunk.d) {
// CraftBukkit start - move unload logic to own method // CraftBukkit start - move unload logic to own method

View file

@ -1,4 +1,4 @@
From 1b066a794864bf5d0073b12f7d575ee00775466e Mon Sep 17 00:00:00 2001 From 575168a9432ee2e2241160b96d5a72f299dfa366 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Mon, 16 May 2016 20:47:41 -0400 Date: Mon, 16 May 2016 20:47:41 -0400
Subject: [PATCH] Optimize UserCache / Thread Safe Subject: [PATCH] Optimize UserCache / Thread Safe
@ -10,10 +10,10 @@ Additionally, move Saving of the User cache to be done async, incase
the user never changed the default setting for Spigot's save on stop only. the user never changed the default setting for Spigot's save on stop only.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 05dc8451e..0e59fc9eb 100644 index 68ab9b7eb..0e385e4ea 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -632,7 +632,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -671,7 +671,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
// Spigot start // Spigot start
if (org.spigotmc.SpigotConfig.saveUserCacheOnStopOnly) { if (org.spigotmc.SpigotConfig.saveUserCacheOnStopOnly) {
LOGGER.info("Saving usercache.json"); LOGGER.info("Saving usercache.json");

View file

@ -1,14 +1,14 @@
From 6b56636274fd02421525e8c2000511fe4cf89272 Mon Sep 17 00:00:00 2001 From 66f789bf81987858175b8ef9204c85c50a69d1b1 Mon Sep 17 00:00:00 2001
From: Martin Panzer <postremus1996@googlemail.com> From: Martin Panzer <postremus1996@googlemail.com>
Date: Sat, 28 May 2016 16:54:03 +0200 Date: Sat, 28 May 2016 16:54:03 +0200
Subject: [PATCH] Add server-name parameter Subject: [PATCH] Add server-name parameter
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index d9059129d..aad208f47 100644 index 38e696aa9..c552c624e 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java --- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -134,6 +134,14 @@ public class Main { @@ -136,6 +136,14 @@ public class Main {
.defaultsTo(new File("paper.yml")) .defaultsTo(new File("paper.yml"))
.describedAs("Yml file"); .describedAs("Yml file");
// Paper end // Paper end

View file

@ -1,4 +1,4 @@
From 8b0ebf88191276c87b61235e51405887463861a3 Mon Sep 17 00:00:00 2001 From 51db9f7a8b2e9545edec3a323c0d6c1e298d30d8 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Sat, 18 Jun 2016 23:22:12 -0400 Date: Sat, 18 Jun 2016 23:22:12 -0400
Subject: [PATCH] Delay Chunk Unloads based on Player Movement Subject: [PATCH] Delay Chunk Unloads based on Player Movement
@ -40,7 +40,7 @@ index 321da3be3..0e6c18b32 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 718ebfea0..6c6924937 100644 index 8da7e39ee..99421aca9 100644
--- a/src/main/java/net/minecraft/server/Chunk.java --- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -39,6 +39,7 @@ public class Chunk implements IChunkAccess { @@ -39,6 +39,7 @@ public class Chunk implements IChunkAccess {
@ -52,10 +52,10 @@ index 718ebfea0..6c6924937 100644
public final int locZ; public final int locZ;
private boolean m; private boolean m;
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 7825dc91b..2e72a294d 100644 index bac5c921b..4f9ece9e4 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -318,6 +318,19 @@ public class ChunkProviderServer implements IChunkProvider { @@ -317,6 +317,19 @@ public class ChunkProviderServer implements IChunkProvider {
activityAccountant.endActivity(); // Spigot activityAccountant.endActivity(); // Spigot
} }
@ -131,7 +131,7 @@ index 4d888d6d4..cf5c76a78 100644
} }
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 5102f24ed..c9b6b57af 100644 index f1c036aa6..95ec4f48f 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -1294,7 +1294,13 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -1294,7 +1294,13 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose

View file

@ -1,4 +1,4 @@
From c4546f54875964aa47af70957bae0bc9a8840b28 Mon Sep 17 00:00:00 2001 From dbfe877863ead07c12ce6bc9fe159f20cd3a8563 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Tue, 21 Jun 2016 22:54:34 -0400 Date: Tue, 21 Jun 2016 22:54:34 -0400
Subject: [PATCH] Fix Double World Add issues Subject: [PATCH] Fix Double World Add issues
@ -8,10 +8,10 @@ Vanilla will double add Spider Jockeys to the world, so ignore already added.
Also add debug if something else tries to, and abort before world gets bad state Also add debug if something else tries to, and abort before world gets bad state
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index ad3bd3808..e70c2184c 100644 index f007af2e1..2f1488ee5 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -1058,7 +1058,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -1050,7 +1050,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
} }
public static void a(Entity entity, GeneratorAccess generatoraccess, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason reason) { public static void a(Entity entity, GeneratorAccess generatoraccess, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason reason) {
@ -21,7 +21,7 @@ index ad3bd3808..e70c2184c 100644
Iterator iterator = entity.bP().iterator(); Iterator iterator = entity.bP().iterator();
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index c9b6b57af..067b92f3e 100644 index 95ec4f48f..45ab70167 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -955,6 +955,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -955,6 +955,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose

View file

@ -1,4 +1,4 @@
From 3345a0866470144d0accf25736ef329d09bdf279 Mon Sep 17 00:00:00 2001 From ee073c0208ecf659a81f02bd43bf65b4fe99699d Mon Sep 17 00:00:00 2001
From: Gabriele C <sgdc3.mail@gmail.com> From: Gabriele C <sgdc3.mail@gmail.com>
Date: Fri, 5 Aug 2016 01:03:08 +0200 Date: Fri, 5 Aug 2016 01:03:08 +0200
Subject: [PATCH] Add setting for proxy online mode status Subject: [PATCH] Add setting for proxy online mode status
@ -33,10 +33,10 @@ index f13534917..85c7a96c5 100644
} else { } else {
String[] astring1 = astring; String[] astring1 = astring;
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 06b59657f..6c7151536 100644 index 7cb795dd8..e125632ff 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1375,7 +1375,8 @@ public final class CraftServer implements Server { @@ -1357,7 +1357,8 @@ public final class CraftServer implements Server {
// Spigot Start // Spigot Start
GameProfile profile = null; GameProfile profile = null;
// Only fetch an online UUID in online mode // Only fetch an online UUID in online mode

View file

@ -1,4 +1,4 @@
From 71e6ced752630d941c3d5bf62881eb81b72eb156 Mon Sep 17 00:00:00 2001 From b790f76209c8a401084cc4d03b4c78164ee79c41 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Mon, 19 Sep 2016 23:16:39 -0400 Date: Mon, 19 Sep 2016 23:16:39 -0400
Subject: [PATCH] Auto Save Improvements Subject: [PATCH] Auto Save Improvements
@ -64,7 +64,7 @@ index 0e6c18b32..c182ceffb 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 6c6924937..2f40f687a 100644 index 99421aca9..ee992e346 100644
--- a/src/main/java/net/minecraft/server/Chunk.java --- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -52,9 +52,9 @@ public class Chunk implements IChunkAccess { @@ -52,9 +52,9 @@ public class Chunk implements IChunkAccess {
@ -96,7 +96,7 @@ index 6c6924937..2f40f687a 100644
public boolean isEmpty() { public boolean isEmpty() {
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 2e72a294d..1e6ea3084 100644 index 4f9ece9e4..afeb0685b 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
@ -106,7 +106,7 @@ index 2e72a294d..1e6ea3084 100644
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import it.unimi.dsi.fastutil.longs.Long2ObjectMap; import it.unimi.dsi.fastutil.longs.Long2ObjectMap;
import it.unimi.dsi.fastutil.longs.Long2ObjectMaps; import it.unimi.dsi.fastutil.longs.Long2ObjectMaps;
@@ -260,7 +261,7 @@ public class ChunkProviderServer implements IChunkProvider { @@ -259,7 +260,7 @@ public class ChunkProviderServer implements IChunkProvider {
this.saveChunk(chunk, false); // Spigot this.saveChunk(chunk, false); // Spigot
chunk.a(false); chunk.a(false);
++i; ++i;
@ -116,7 +116,7 @@ index 2e72a294d..1e6ea3084 100644
} }
} }
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 08d6f77ae..5122cee42 100644 index 982e18f8a..1879c3238 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java --- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -38,6 +38,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -38,6 +38,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@ -128,10 +128,10 @@ index 08d6f77ae..5122cee42 100644
public final MinecraftServer server; public final MinecraftServer server;
public final PlayerInteractManager playerInteractManager; public final PlayerInteractManager playerInteractManager;
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 0e59fc9eb..603ce9fe2 100644 index 0e385e4ea..326d4242d 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -143,6 +143,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -144,6 +144,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
public org.bukkit.command.RemoteConsoleCommandSender remoteConsole; public org.bukkit.command.RemoteConsoleCommandSender remoteConsole;
public ConsoleReader reader; public ConsoleReader reader;
public static int currentTick = 0; // Paper - Further improve tick loop public static int currentTick = 0; // Paper - Further improve tick loop
@ -139,7 +139,7 @@ index 0e59fc9eb..603ce9fe2 100644
public final Thread primaryThread; public final Thread primaryThread;
public java.util.Queue<Runnable> processQueue = new java.util.concurrent.ConcurrentLinkedQueue<Runnable>(); public java.util.Queue<Runnable> processQueue = new java.util.concurrent.ConcurrentLinkedQueue<Runnable>();
public int autosavePeriod; public int autosavePeriod;
@@ -869,22 +870,30 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -908,22 +909,30 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.n.b().a(agameprofile); this.n.b().a(agameprofile);
} }
@ -175,7 +175,7 @@ index 0e59fc9eb..603ce9fe2 100644
this.methodProfiler.a("snooper"); this.methodProfiler.a("snooper");
if (getSnooperEnabled() && !this.j.d() && this.ticks > 100) { // Spigot if (getSnooperEnabled() && !this.j.d() && this.ticks > 100) { // Spigot
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 6b7d81933..3ee587014 100644 index d0c547cc9..12f6812d6 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java --- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -341,6 +341,7 @@ public abstract class PlayerList { @@ -341,6 +341,7 @@ public abstract class PlayerList {
@ -186,7 +186,7 @@ index 6b7d81933..3ee587014 100644
this.playerFileData.save(entityplayer); this.playerFileData.save(entityplayer);
ServerStatisticManager serverstatisticmanager = (ServerStatisticManager) entityplayer.getStatisticManager(); // CraftBukkit ServerStatisticManager serverstatisticmanager = (ServerStatisticManager) entityplayer.getStatisticManager(); // CraftBukkit
@@ -1220,13 +1221,25 @@ public abstract class PlayerList { @@ -1213,13 +1214,25 @@ public abstract class PlayerList {
} }
@ -214,7 +214,7 @@ index 6b7d81933..3ee587014 100644
public WhiteList getWhitelist() { public WhiteList getWhitelist() {
return this.whitelist; return this.whitelist;
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 6c976e3b1..a08ef197e 100644 index 96002184b..bf07155bc 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java --- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -872,8 +872,9 @@ public class WorldServer extends World implements IAsyncTaskHandler { @@ -872,8 +872,9 @@ public class WorldServer extends World implements IAsyncTaskHandler {

View file

@ -1,4 +1,4 @@
From 977d7d2021db60c67df0f9fa5fa7fc5ae5089144 Mon Sep 17 00:00:00 2001 From be60b6d44fc147afab85cfd2e75313fd053fd746 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Wed, 21 Sep 2016 22:54:28 -0400 Date: Wed, 21 Sep 2016 22:54:28 -0400
Subject: [PATCH] Chunk registration fixes Subject: [PATCH] Chunk registration fixes
@ -8,10 +8,10 @@ World checks and the Chunk Add logic are inconsistent on how Y > 256, < 0, is tr
Keep them consistent Keep them consistent
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 067b92f3e..04b5521cd 100644 index 45ab70167..5d3378be0 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -1470,7 +1470,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -1474,7 +1474,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose
} }
i = MathHelper.floor(entity.locX / 16.0D); i = MathHelper.floor(entity.locX / 16.0D);

View file

@ -1,4 +1,4 @@
From 86f5120f1974823a7b6aa8ffd62575bfcdb812fb Mon Sep 17 00:00:00 2001 From c6e872685630cb2732c1f34b2f53d95867fcea05 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Thu, 3 Nov 2016 20:28:12 -0400 Date: Thu, 3 Nov 2016 20:28:12 -0400
Subject: [PATCH] Don't load Chunks from Hoppers and other things Subject: [PATCH] Don't load Chunks from Hoppers and other things
@ -13,13 +13,13 @@ This of course is undesirable, so just return the loaded side as "primary"
and treat it as a single chest if the other sides are unloaded and treat it as a single chest if the other sides are unloaded
diff --git a/src/main/java/net/minecraft/server/BlockChest.java b/src/main/java/net/minecraft/server/BlockChest.java diff --git a/src/main/java/net/minecraft/server/BlockChest.java b/src/main/java/net/minecraft/server/BlockChest.java
index f8be07258..633c75ffe 100644 index 1ad39aca3..7262c2b19 100644
--- a/src/main/java/net/minecraft/server/BlockChest.java --- a/src/main/java/net/minecraft/server/BlockChest.java
+++ b/src/main/java/net/minecraft/server/BlockChest.java +++ b/src/main/java/net/minecraft/server/BlockChest.java
@@ -196,7 +196,12 @@ public class BlockChest extends BlockTileEntity implements IFluidSource, IFluidC @@ -196,7 +196,12 @@ public class BlockChest extends BlockTileEntity implements IFluidSource, IFluidC
return (ITileInventory) object; return (ITileInventory) object;
} else { } else {
BlockPosition blockposition1 = blockposition.shift(j(iblockdata)); BlockPosition blockposition1 = blockposition.shift(k(iblockdata));
- IBlockData iblockdata1 = world.getType(blockposition1); - IBlockData iblockdata1 = world.getType(blockposition1);
+ // Paper start - don't load chunks if the other side of the chest is in unloaded chunk + // Paper start - don't load chunks if the other side of the chest is in unloaded chunk
+ final IBlockData iblockdata1 = world.getTypeIfLoaded(blockposition1); // Paper + final IBlockData iblockdata1 = world.getTypeIfLoaded(blockposition1); // Paper

View file

@ -1,4 +1,4 @@
From 3efd56fcbb76e3a5ed65644d6040c9e030f641b7 Mon Sep 17 00:00:00 2001 From 821c5c8577518add23e8a91fec1d7dc1ca81d7f2 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Thu, 3 Nov 2016 21:52:22 -0400 Date: Thu, 3 Nov 2016 21:52:22 -0400
Subject: [PATCH] Prevent Auto Save if Save Queue is full Subject: [PATCH] Prevent Auto Save if Save Queue is full
@ -23,10 +23,10 @@ index 9a2ec0793..f88444c7e 100644
private void removeCorruptTEs() { private void removeCorruptTEs() {
removeCorruptTEs = getBoolean("remove-corrupt-tile-entities", false); removeCorruptTEs = getBoolean("remove-corrupt-tile-entities", false);
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 1e6ea3084..9145401bc 100644 index afeb0685b..a4c4a9486 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -250,6 +250,14 @@ public class ChunkProviderServer implements IChunkProvider { @@ -249,6 +249,14 @@ public class ChunkProviderServer implements IChunkProvider {
ArrayList arraylist = Lists.newArrayList(this.chunks.values()); ArrayList arraylist = Lists.newArrayList(this.chunks.values());
Iterator iterator = arraylist.iterator(); Iterator iterator = arraylist.iterator();
@ -41,7 +41,7 @@ index 1e6ea3084..9145401bc 100644
while (iterator.hasNext()) { while (iterator.hasNext()) {
Chunk chunk = (Chunk) iterator.next(); Chunk chunk = (Chunk) iterator.next();
@@ -261,7 +269,7 @@ public class ChunkProviderServer implements IChunkProvider { @@ -260,7 +268,7 @@ public class ChunkProviderServer implements IChunkProvider {
this.saveChunk(chunk, false); // Spigot this.saveChunk(chunk, false); // Spigot
chunk.a(false); chunk.a(false);
++i; ++i;
@ -51,7 +51,7 @@ index 1e6ea3084..9145401bc 100644
} }
} }
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index e70c2184c..20aa20a98 100644 index 2f1488ee5..859148cb8 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -137,6 +137,8 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -137,6 +137,8 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {

View file

@ -1,4 +1,4 @@
From 2180b64ba27758854a3d43a078e959ae159b8a8d Mon Sep 17 00:00:00 2001 From 908a149ec4d6d824d1457eb2745f45e5afbfb942 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Fri, 4 Nov 2016 02:12:10 -0400 Date: Fri, 4 Nov 2016 02:12:10 -0400
Subject: [PATCH] Chunk Save Stats Debug Option Subject: [PATCH] Chunk Save Stats Debug Option
@ -8,7 +8,7 @@ Adds a command line flag to enable stats on how chunk saves are processing.
Stats on current queue, how many was processed and how many were queued. Stats on current queue, how many was processed and how many were queued.
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 9145401bc..ef35eb7ec 100644 index a4c4a9486..4be7173bf 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -36,6 +36,11 @@ public class ChunkProviderServer implements IChunkProvider { @@ -36,6 +36,11 @@ public class ChunkProviderServer implements IChunkProvider {
@ -23,7 +23,7 @@ index 9145401bc..ef35eb7ec 100644
public final WorldServer world; public final WorldServer world;
public ChunkProviderServer(WorldServer worldserver, IChunkLoader ichunkloader, ChunkGenerator<?> chunkgenerator, IAsyncTaskHandler iasynctaskhandler) { public ChunkProviderServer(WorldServer worldserver, IChunkLoader ichunkloader, ChunkGenerator<?> chunkgenerator, IAsyncTaskHandler iasynctaskhandler) {
@@ -253,6 +258,30 @@ public class ChunkProviderServer implements IChunkProvider { @@ -252,6 +257,30 @@ public class ChunkProviderServer implements IChunkProvider {
// Paper start // Paper start
final ChunkRegionLoader chunkLoader = (ChunkRegionLoader) world.getChunkProviderServer().chunkLoader; final ChunkRegionLoader chunkLoader = (ChunkRegionLoader) world.getChunkProviderServer().chunkLoader;
final int queueSize = chunkLoader.getQueueSize(); final int queueSize = chunkLoader.getQueueSize();
@ -55,7 +55,7 @@ index 9145401bc..ef35eb7ec 100644
return false; return false;
} }
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index 20aa20a98..de2231bb0 100644 index 859148cb8..ea8684747 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -137,7 +137,13 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -137,7 +137,13 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
@ -73,7 +73,7 @@ index 20aa20a98..de2231bb0 100644
// CraftBukkit start - Add async variant, provide compatibility // CraftBukkit start - Add async variant, provide compatibility
@Nullable @Nullable
@@ -329,6 +335,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -325,6 +331,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
protected synchronized void a(ChunkCoordIntPair chunkcoordintpair, Supplier<NBTTagCompound> nbttagcompound) { // Spigot protected synchronized void a(ChunkCoordIntPair chunkcoordintpair, Supplier<NBTTagCompound> nbttagcompound) { // Spigot
queue.add(new QueuedChunk(chunkcoordintpair, nbttagcompound)); // Paper - Chunk queue improvements queue.add(new QueuedChunk(chunkcoordintpair, nbttagcompound)); // Paper - Chunk queue improvements
@ -81,7 +81,7 @@ index 20aa20a98..de2231bb0 100644
this.b.put(chunkcoordintpair, nbttagcompound); this.b.put(chunkcoordintpair, nbttagcompound);
FileIOThread.a().a(this); FileIOThread.a().a(this);
} }
@@ -352,6 +359,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -348,6 +355,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
return false; return false;
} else { } else {
ChunkCoordIntPair chunkcoordintpair = chunk.coords; // Paper - Chunk queue improvements ChunkCoordIntPair chunkcoordintpair = chunk.coords; // Paper - Chunk queue improvements

View file

@ -1,4 +1,4 @@
From 21a06c5a111434636227935f23120b53773e3316 Mon Sep 17 00:00:00 2001 From 8c64658c0fc06e452f61e18f3e5c5191edd1890b Mon Sep 17 00:00:00 2001
From: willies952002 <admin@domnian.com> From: willies952002 <admin@domnian.com>
Date: Mon, 28 Nov 2016 10:21:52 -0500 Date: Mon, 28 Nov 2016 10:21:52 -0500
Subject: [PATCH] Allow Reloading of Command Aliases Subject: [PATCH] Allow Reloading of Command Aliases
@ -6,10 +6,10 @@ Subject: [PATCH] Allow Reloading of Command Aliases
Reload the aliases stored in commands.yml Reload the aliases stored in commands.yml
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 6c7151536..1b6a849e2 100644 index e125632ff..d7247a1ec 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1986,5 +1986,24 @@ public final class CraftServer implements Server { @@ -1968,5 +1968,24 @@ public final class CraftServer implements Server {
}); });
} }
} }

View file

@ -1,11 +1,11 @@
From c454c72a987b25fdfd7dd8a651f4aa4beb8b891e Mon Sep 17 00:00:00 2001 From 542ff3ee75511fdfb8bd5963063c428d43a82747 Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc> From: kashike <kashike@vq.lc>
Date: Wed, 21 Dec 2016 11:47:25 -0600 Date: Wed, 21 Dec 2016 11:47:25 -0600
Subject: [PATCH] Add API methods to control if armour stands can move Subject: [PATCH] Add API methods to control if armour stands can move
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
index 4c615baea..52a1036fd 100644 index cf11a2225..578d96640 100644
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java --- a/src/main/java/net/minecraft/server/EntityArmorStand.java
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java +++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
@@ -44,6 +44,7 @@ public class EntityArmorStand extends EntityLiving { @@ -44,6 +44,7 @@ public class EntityArmorStand extends EntityLiving {
@ -17,7 +17,7 @@ index 4c615baea..52a1036fd 100644
public EntityArmorStand(World world) { public EntityArmorStand(World world) {
super(EntityTypes.ARMOR_STAND, world); super(EntityTypes.ARMOR_STAND, world);
@@ -755,4 +756,13 @@ public class EntityArmorStand extends EntityLiving { @@ -755,4 +756,13 @@ public class EntityArmorStand extends EntityLiving {
public boolean de() { public boolean df() {
return false; return false;
} }
+ +

View file

@ -1,4 +1,4 @@
From 905fa22f222f8547b63412650bc2927850fa8382 Mon Sep 17 00:00:00 2001 From 92dd98b36207e4e5aa69b572e52cf01641543621 Mon Sep 17 00:00:00 2001
From: Alfie Cleveland <alfeh@me.com> From: Alfie Cleveland <alfeh@me.com>
Date: Tue, 27 Dec 2016 01:57:57 +0000 Date: Tue, 27 Dec 2016 01:57:57 +0000
Subject: [PATCH] Properly fix item duplication bug Subject: [PATCH] Properly fix item duplication bug
@ -6,10 +6,10 @@ Subject: [PATCH] Properly fix item duplication bug
Credit to prplz for figuring out the real issue Credit to prplz for figuring out the real issue
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index cf2a39384..c91caf578 100644 index 4bde378af..7059fc118 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java --- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1531,7 +1531,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -1525,7 +1525,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@Override @Override
protected boolean isFrozen() { protected boolean isFrozen() {
@ -19,7 +19,7 @@ index cf2a39384..c91caf578 100644
@Override @Override
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 1f2cfbc92..f26636e30 100644 index fc4e927d6..9ac86f7af 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java --- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -2504,7 +2504,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { @@ -2504,7 +2504,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {

View file

@ -1,4 +1,4 @@
From 527982777c9728d51edc763ccf27080487902c05 Mon Sep 17 00:00:00 2001 From f99c9ad753cb27454bb9bbc36b4c9ba4d54027e2 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Tue, 27 Dec 2016 22:38:06 -0500 Date: Tue, 27 Dec 2016 22:38:06 -0500
Subject: [PATCH] Activation Range Improvements Subject: [PATCH] Activation Range Improvements
@ -6,7 +6,7 @@ Subject: [PATCH] Activation Range Improvements
Fixes and adds new Immunities to improve gameplay behavior Fixes and adds new Immunities to improve gameplay behavior
diff --git a/src/main/java/net/minecraft/server/EntityCreature.java b/src/main/java/net/minecraft/server/EntityCreature.java diff --git a/src/main/java/net/minecraft/server/EntityCreature.java b/src/main/java/net/minecraft/server/EntityCreature.java
index e2e1095118..34dcd01ded 100644 index b34756769..53b25dd80 100644
--- a/src/main/java/net/minecraft/server/EntityCreature.java --- a/src/main/java/net/minecraft/server/EntityCreature.java
+++ b/src/main/java/net/minecraft/server/EntityCreature.java +++ b/src/main/java/net/minecraft/server/EntityCreature.java
@@ -6,6 +6,7 @@ import org.bukkit.event.entity.EntityUnleashEvent; @@ -6,6 +6,7 @@ import org.bukkit.event.entity.EntityUnleashEvent;
@ -18,7 +18,7 @@ index e2e1095118..34dcd01ded 100644
private float b; private float b;
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 1bef317758..c1618f8c36 100644 index 8dbff3c37..3da4bc356 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java --- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -74,7 +74,7 @@ public abstract class EntityLiving extends Entity { @@ -74,7 +74,7 @@ public abstract class EntityLiving extends Entity {
@ -31,19 +31,19 @@ index 1bef317758..c1618f8c36 100644
protected int ticksFarFromPlayer; protected int ticksFarFromPlayer;
protected float aZ; protected float aZ;
diff --git a/src/main/java/net/minecraft/server/EntityLlama.java b/src/main/java/net/minecraft/server/EntityLlama.java diff --git a/src/main/java/net/minecraft/server/EntityLlama.java b/src/main/java/net/minecraft/server/EntityLlama.java
index 2698579603..864ca3cc6e 100644 index bb86ecb2f..5cd8c3f28 100644
--- a/src/main/java/net/minecraft/server/EntityLlama.java --- a/src/main/java/net/minecraft/server/EntityLlama.java
+++ b/src/main/java/net/minecraft/server/EntityLlama.java +++ b/src/main/java/net/minecraft/server/EntityLlama.java
@@ -363,6 +363,7 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn @@ -363,6 +363,7 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn
return this.bR != null; return this.bR != null;
} }
+ public boolean inCaravan() { return this.em(); } // Paper - OBFHELPER + public boolean inCaravan() { return this.en(); } // Paper - OBFHELPER
public boolean em() { public boolean en() {
return this.bQ != null; return this.bQ != null;
} }
diff --git a/src/main/java/net/minecraft/server/PathfinderGoal.java b/src/main/java/net/minecraft/server/PathfinderGoal.java diff --git a/src/main/java/net/minecraft/server/PathfinderGoal.java b/src/main/java/net/minecraft/server/PathfinderGoal.java
index a146a8b459..a19853463c 100644 index a146a8b45..a19853463 100644
--- a/src/main/java/net/minecraft/server/PathfinderGoal.java --- a/src/main/java/net/minecraft/server/PathfinderGoal.java
+++ b/src/main/java/net/minecraft/server/PathfinderGoal.java +++ b/src/main/java/net/minecraft/server/PathfinderGoal.java
@@ -18,7 +18,10 @@ public abstract class PathfinderGoal { @@ -18,7 +18,10 @@ public abstract class PathfinderGoal {
@ -59,7 +59,7 @@ index a146a8b459..a19853463c 100644
public void e() {} public void e() {}
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java b/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java diff --git a/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java b/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java
index d5c08aa7cb..fe6570c88d 100644 index d5c08aa7c..fe6570c88 100644
--- a/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java --- a/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java
+++ b/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java +++ b/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java
@@ -2,17 +2,24 @@ package net.minecraft.server; @@ -2,17 +2,24 @@ package net.minecraft.server;
@ -99,7 +99,7 @@ index d5c08aa7cb..fe6570c88d 100644
} }
} }
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
index e02647f806..cdbf769e7b 100644 index e02647f80..cdbf769e7 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java --- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -20,6 +20,7 @@ import net.minecraft.server.EntityFireball; @@ -20,6 +20,7 @@ import net.minecraft.server.EntityFireball;

View file

@ -1,4 +1,4 @@
From 61d3c06b65d8a1032845bff14e2dbfc071cd9906 Mon Sep 17 00:00:00 2001 From 0e2d3a5968ee223fd6d7c206a3393be137bd0046 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Sat, 7 Jan 2017 15:41:58 -0500 Date: Sat, 7 Jan 2017 15:41:58 -0500
Subject: [PATCH] Enforce Sync Player Saves Subject: [PATCH] Enforce Sync Player Saves
@ -7,10 +7,10 @@ Saving players async is extremely dangerous. This will force it to main
the same way we handle async chunk loads. the same way we handle async chunk loads.
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 3ee587014..fdbc01792 100644 index 12f6812d6..c8b5a610a 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java --- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -1227,6 +1227,7 @@ public abstract class PlayerList { @@ -1220,6 +1220,7 @@ public abstract class PlayerList {
} }
public void savePlayers(Integer interval) { public void savePlayers(Integer interval) {
@ -18,7 +18,7 @@ index 3ee587014..fdbc01792 100644
long now = MinecraftServer.currentTick; long now = MinecraftServer.currentTick;
MinecraftTimings.savePlayers.startTiming(); // Paper MinecraftTimings.savePlayers.startTiming(); // Paper
int numSaved = 0; // Paper int numSaved = 0; // Paper
@@ -1238,6 +1239,7 @@ public abstract class PlayerList { @@ -1231,6 +1232,7 @@ public abstract class PlayerList {
} }
} }
MinecraftTimings.savePlayers.stopTiming(); // Paper MinecraftTimings.savePlayers.stopTiming(); // Paper

View file

@ -1,4 +1,4 @@
From b381115d1a60cf615a6bc13d874fd8bb29a02c1b Mon Sep 17 00:00:00 2001 From cf91146dbca0cbe6b854ea98e00be7a4bf6de4c6 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Tue, 19 Dec 2017 16:31:46 -0500 Date: Tue, 19 Dec 2017 16:31:46 -0500
Subject: [PATCH] ExperienceOrbs API for Reason/Source/Triggering player Subject: [PATCH] ExperienceOrbs API for Reason/Source/Triggering player
@ -8,10 +8,10 @@ Adds lots of information about why this orb exists.
Replaces isFromBottle() with logic that persists entity reloads too. Replaces isFromBottle() with logic that persists entity reloads too.
diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java
index ff110c8e95..d95587c8cc 100644 index 43feccef8..e820bfbd5 100644
--- a/src/main/java/net/minecraft/server/Block.java --- a/src/main/java/net/minecraft/server/Block.java
+++ b/src/main/java/net/minecraft/server/Block.java +++ b/src/main/java/net/minecraft/server/Block.java
@@ -473,13 +473,13 @@ public class Block implements IMaterial { @@ -471,13 +471,13 @@ public class Block implements IMaterial {
} }
} }
@ -28,7 +28,7 @@ index ff110c8e95..d95587c8cc 100644
} }
diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java
index e5f0645774..e237c5dc1a 100644 index 131f8a515..d8ab87e21 100644
--- a/src/main/java/net/minecraft/server/EntityEnderDragon.java --- a/src/main/java/net/minecraft/server/EntityEnderDragon.java
+++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java +++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java
@@ -618,7 +618,7 @@ public class EntityEnderDragon extends EntityInsentient implements IComplex, IMo @@ -618,7 +618,7 @@ public class EntityEnderDragon extends EntityInsentient implements IComplex, IMo
@ -41,7 +41,7 @@ index e5f0645774..e237c5dc1a 100644
} }
diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java
index 3c888d6015..79d80596df 100644 index 3c888d601..79d80596d 100644
--- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java --- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java
+++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java +++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java
@@ -15,9 +15,59 @@ public class EntityExperienceOrb extends Entity { @@ -15,9 +15,59 @@ public class EntityExperienceOrb extends Entity {
@ -120,7 +120,7 @@ index 3c888d6015..79d80596df 100644
public void d(EntityHuman entityhuman) { public void d(EntityHuman entityhuman) {
diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java
index 7440e4a2a9..895254c155 100644 index 1804a49de..82e4d2eab 100644
--- a/src/main/java/net/minecraft/server/EntityFishingHook.java --- a/src/main/java/net/minecraft/server/EntityFishingHook.java
+++ b/src/main/java/net/minecraft/server/EntityFishingHook.java +++ b/src/main/java/net/minecraft/server/EntityFishingHook.java
@@ -467,7 +467,7 @@ public class EntityFishingHook extends Entity { @@ -467,7 +467,7 @@ public class EntityFishingHook extends Entity {
@ -131,9 +131,9 @@ index 7440e4a2a9..895254c155 100644
+ this.owner.world.addEntity(new EntityExperienceOrb(this.owner.world, this.owner.locX, this.owner.locY + 0.5D, this.owner.locZ + 0.5D, playerFishEvent.getExpToDrop(), org.bukkit.entity.ExperienceOrb.SpawnReason.FISHING, this.owner, this)); // Paper + this.owner.world.addEntity(new EntityExperienceOrb(this.owner.world, this.owner.locX, this.owner.locY + 0.5D, this.owner.locZ + 0.5D, playerFishEvent.getExpToDrop(), org.bukkit.entity.ExperienceOrb.SpawnReason.FISHING, this.owner, this)); // Paper
} }
// CraftBukkit end // CraftBukkit end
if (itemstack1.getItem().a(TagsItem.G)) { if (itemstack1.getItem().a(TagsItem.D)) {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index c1618f8c36..9f493e43d4 100644 index 3da4bc356..f9a76ce27 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java --- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -353,7 +353,8 @@ public abstract class EntityLiving extends Entity { @@ -353,7 +353,8 @@ public abstract class EntityLiving extends Entity {
@ -147,7 +147,7 @@ index c1618f8c36..9f493e43d4 100644
this.expToDrop = 0; this.expToDrop = 0;
// CraftBukkit end // CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/EntityThrownExpBottle.java b/src/main/java/net/minecraft/server/EntityThrownExpBottle.java diff --git a/src/main/java/net/minecraft/server/EntityThrownExpBottle.java b/src/main/java/net/minecraft/server/EntityThrownExpBottle.java
index a5e1939e05..e73dba09a6 100644 index a5e1939e0..e73dba09a 100644
--- a/src/main/java/net/minecraft/server/EntityThrownExpBottle.java --- a/src/main/java/net/minecraft/server/EntityThrownExpBottle.java
+++ b/src/main/java/net/minecraft/server/EntityThrownExpBottle.java +++ b/src/main/java/net/minecraft/server/EntityThrownExpBottle.java
@@ -36,7 +36,7 @@ public class EntityThrownExpBottle extends EntityProjectile { @@ -36,7 +36,7 @@ public class EntityThrownExpBottle extends EntityProjectile {
@ -160,7 +160,7 @@ index a5e1939e05..e73dba09a6 100644
this.die(); this.die();
diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
index fc0c1cc3b2..dd4ecfa883 100644 index e8fdf8625..b51543ea7 100644
--- a/src/main/java/net/minecraft/server/EntityVillager.java --- a/src/main/java/net/minecraft/server/EntityVillager.java
+++ b/src/main/java/net/minecraft/server/EntityVillager.java +++ b/src/main/java/net/minecraft/server/EntityVillager.java
@@ -411,7 +411,7 @@ public class EntityVillager extends EntityAgeable implements NPC, IMerchant { @@ -411,7 +411,7 @@ public class EntityVillager extends EntityAgeable implements NPC, IMerchant {
@ -173,7 +173,7 @@ index fc0c1cc3b2..dd4ecfa883 100644
if (this.tradingPlayer instanceof EntityPlayer) { if (this.tradingPlayer instanceof EntityPlayer) {
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalBreed.java b/src/main/java/net/minecraft/server/PathfinderGoalBreed.java diff --git a/src/main/java/net/minecraft/server/PathfinderGoalBreed.java b/src/main/java/net/minecraft/server/PathfinderGoalBreed.java
index 4a128f707b..b870964674 100644 index 4a128f707..b87096467 100644
--- a/src/main/java/net/minecraft/server/PathfinderGoalBreed.java --- a/src/main/java/net/minecraft/server/PathfinderGoalBreed.java
+++ b/src/main/java/net/minecraft/server/PathfinderGoalBreed.java +++ b/src/main/java/net/minecraft/server/PathfinderGoalBreed.java
@@ -122,7 +122,7 @@ public class PathfinderGoalBreed extends PathfinderGoal { @@ -122,7 +122,7 @@ public class PathfinderGoalBreed extends PathfinderGoal {
@ -186,7 +186,7 @@ index 4a128f707b..b870964674 100644
// CraftBukkit end // CraftBukkit end
} }
diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java
index 33b5080147..e34198e407 100644 index 545a98302..55ec29bd2 100644
--- a/src/main/java/net/minecraft/server/PlayerInteractManager.java --- a/src/main/java/net/minecraft/server/PlayerInteractManager.java
+++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java +++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java
@@ -384,7 +384,7 @@ public class PlayerInteractManager { @@ -384,7 +384,7 @@ public class PlayerInteractManager {
@ -199,7 +199,7 @@ index 33b5080147..e34198e407 100644
// CraftBukkit end // CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/SlotFurnaceResult.java b/src/main/java/net/minecraft/server/SlotFurnaceResult.java diff --git a/src/main/java/net/minecraft/server/SlotFurnaceResult.java b/src/main/java/net/minecraft/server/SlotFurnaceResult.java
index 998662d9e6..6b4eb7f053 100644 index 998662d9e..6b4eb7f05 100644
--- a/src/main/java/net/minecraft/server/SlotFurnaceResult.java --- a/src/main/java/net/minecraft/server/SlotFurnaceResult.java
+++ b/src/main/java/net/minecraft/server/SlotFurnaceResult.java +++ b/src/main/java/net/minecraft/server/SlotFurnaceResult.java
@@ -9,7 +9,7 @@ import org.bukkit.event.inventory.FurnaceExtractEvent; @@ -9,7 +9,7 @@ import org.bukkit.event.inventory.FurnaceExtractEvent;
@ -221,7 +221,7 @@ index 998662d9e6..6b4eb7f053 100644
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index 86848543d0..7004f11764 100644 index 86848543d..7004f1176 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -1220,7 +1220,7 @@ public class CraftWorld implements World { @@ -1220,7 +1220,7 @@ public class CraftWorld implements World {
@ -234,7 +234,7 @@ index 86848543d0..7004f11764 100644
// not sure what this can do // not sure what this can do
if (LightningStrike.class.isAssignableFrom(clazz)) { if (LightningStrike.class.isAssignableFrom(clazz)) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java
index 3a09cab3d4..3302af0e45 100644 index 3a09cab3d..3302af0e4 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java
@@ -18,6 +18,18 @@ public class CraftExperienceOrb extends CraftEntity implements ExperienceOrb { @@ -18,6 +18,18 @@ public class CraftExperienceOrb extends CraftEntity implements ExperienceOrb {

View file

@ -1,14 +1,14 @@
From 31b95b88c25e4b25cf7ef32ff4692d1bf937b679 Mon Sep 17 00:00:00 2001 From 990b651cbd64dc43013878c653744f461492478e Mon Sep 17 00:00:00 2001
From: Brokkonaut <hannos17@gmx.de> From: Brokkonaut <hannos17@gmx.de>
Date: Tue, 7 Feb 2017 16:55:35 -0600 Date: Tue, 7 Feb 2017 16:55:35 -0600
Subject: [PATCH] Make targetSize more aggressive in the chunk unload queue Subject: [PATCH] Make targetSize more aggressive in the chunk unload queue
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index ef35eb7ec..70790386e 100644 index 4be7173bf..7d77c5fb3 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -328,7 +328,7 @@ public class ChunkProviderServer implements IChunkProvider { @@ -327,7 +327,7 @@ public class ChunkProviderServer implements IChunkProvider {
// Spigot start // Spigot start
org.spigotmc.SlackActivityAccountant activityAccountant = this.world.getMinecraftServer().slackActivityAccountant; org.spigotmc.SlackActivityAccountant activityAccountant = this.world.getMinecraftServer().slackActivityAccountant;
activityAccountant.startActivity(0.5); activityAccountant.startActivity(0.5);
@ -18,5 +18,5 @@ index ef35eb7ec..70790386e 100644
LongIterator longiterator = this.unloadQueue.iterator(); LongIterator longiterator = this.unloadQueue.iterator();
-- --
2.17.1 2.18.0

View file

@ -1,11 +1,11 @@
From 0628af2631258500bd906bbaf21bcaca89c8de03 Mon Sep 17 00:00:00 2001 From 0fa5dce73cc9cdf2630c65eaa2ffaf4787580165 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com> From: Zach Brown <zach.brown@destroystokyo.com>
Date: Sat, 18 Feb 2017 19:29:58 -0600 Date: Sat, 18 Feb 2017 19:29:58 -0600
Subject: [PATCH] Do not let armorstands drown Subject: [PATCH] Do not let armorstands drown
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
index 52a1036fdb..26171b3430 100644 index 578d96640..e9a746f13 100644
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java --- a/src/main/java/net/minecraft/server/EntityArmorStand.java
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java +++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
@@ -764,5 +764,10 @@ public class EntityArmorStand extends EntityLiving { @@ -764,5 +764,10 @@ public class EntityArmorStand extends EntityLiving {
@ -20,23 +20,23 @@ index 52a1036fdb..26171b3430 100644
// Paper end // Paper end
} }
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index fc0e440798..38baecd862 100644 index 3b4867bfc..b596a616f 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java --- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -201,6 +201,7 @@ public abstract class EntityLiving extends Entity { @@ -201,6 +201,7 @@ public abstract class EntityLiving extends Entity {
super.a(d0, flag, iblockdata, blockposition); super.a(d0, flag, iblockdata, blockposition);
} }
+ public boolean canBreatheUnderwater() { return this.bZ(); } // Paper - OBFHELPER + public boolean canBreatheUnderwater() { return this.ca(); } // Paper - OBFHELPER
public boolean bZ() { public boolean ca() {
return this.getMonsterType() == EnumMonsterType.UNDEAD; return this.getMonsterType() == EnumMonsterType.UNDEAD;
} }
@@ -235,7 +236,7 @@ public abstract class EntityLiving extends Entity { @@ -235,7 +236,7 @@ public abstract class EntityLiving extends Entity {
if (this.isAlive()) { if (this.isAlive()) {
if (this.a(TagsFluid.a) && this.world.getType(new BlockPosition(this.locX, this.locY + (double) this.getHeadHeight(), this.locZ)).getBlock() != Blocks.BUBBLE_COLUMN) { if (this.a(TagsFluid.a) && this.world.getType(new BlockPosition(this.locX, this.locY + (double) this.getHeadHeight(), this.locZ)).getBlock() != Blocks.BUBBLE_COLUMN) {
- if (!this.bZ() && !MobEffectUtil.c(this) && !flag1) { - if (!this.ca() && !MobEffectUtil.c(this) && !flag1) {
+ if (!this.canBreatheUnderwater() && !MobEffectUtil.c(this) && !flag1) { // Paper - use OBFHELPER + if (!this.canBreatheUnderwater() && !MobEffectUtil.c(this) && !flag1) { // Paper - use OBFHELPER so it can be overridden
this.setAirTicks(this.l(this.getAirTicks())); this.setAirTicks(this.l(this.getAirTicks()));
if (this.getAirTicks() == -20) { if (this.getAirTicks() == -20) {
this.setAirTicks(0); this.setAirTicks(0);

View file

@ -1,4 +1,4 @@
From 97859bd335e381d24dfb98d703ee44295283f04c Mon Sep 17 00:00:00 2001 From a196d99aed3b693c24cece49966b2089b7123812 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com> From: Zach Brown <zach.brown@destroystokyo.com>
Date: Fri, 12 May 2017 23:34:11 -0500 Date: Fri, 12 May 2017 23:34:11 -0500
Subject: [PATCH] Properly handle async calls to restart the server Subject: [PATCH] Properly handle async calls to restart the server
@ -30,7 +30,7 @@ will have plugins and worlds saving to the disk has a high potential to result
in corruption/dataloss. in corruption/dataloss.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index ab3193295..5d13f053f 100644 index 9405dc7bf..eb8c7aaad 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -85,6 +85,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -85,6 +85,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@ -41,7 +41,7 @@ index ab3193295..5d13f053f 100644
private boolean isStopped; private boolean isStopped;
private int ticks; private int ticks;
protected final Proxy d; protected final Proxy d;
@@ -591,7 +592,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -630,7 +631,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
if (this.s != null) { if (this.s != null) {
MinecraftServer.LOGGER.info("Saving players"); MinecraftServer.LOGGER.info("Saving players");
this.s.savePlayers(); this.s.savePlayers();
@ -50,7 +50,7 @@ index ab3193295..5d13f053f 100644
try { Thread.sleep(100); } catch (InterruptedException ex) {} // CraftBukkit - SPIGOT-625 - give server at least a chance to send packets try { Thread.sleep(100); } catch (InterruptedException ex) {} // CraftBukkit - SPIGOT-625 - give server at least a chance to send packets
} }
@@ -650,10 +651,18 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -689,10 +690,18 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
return this.isRunning; return this.isRunning;
} }
@ -69,7 +69,7 @@ index ab3193295..5d13f053f 100644
// Paper start - Further improve server tick loop // Paper start - Further improve server tick loop
private static final int TPS = 20; private static final int TPS = 20;
private static final long SEC_IN_NANO = 1000000000; private static final long SEC_IN_NANO = 1000000000;
@@ -1608,6 +1617,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -1662,6 +1671,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
return this.aa; return this.aa;
} }
@ -78,10 +78,10 @@ index ab3193295..5d13f053f 100644
return this.serverThread; return this.serverThread;
} }
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index fdbc01792..4c9ff8c29 100644 index c8b5a610a..0b0d99652 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java --- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -1345,10 +1345,15 @@ public abstract class PlayerList { @@ -1338,10 +1338,15 @@ public abstract class PlayerList {
entityplayer.playerInteractManager.b(generatoraccess.getWorldData().getGameType()); entityplayer.playerInteractManager.b(generatoraccess.getWorldData().getGameType());
} }
@ -98,7 +98,7 @@ index fdbc01792..4c9ff8c29 100644
} }
// CraftBukkit end // CraftBukkit end
// Paper start - Remove collideRule team if it exists // Paper start - Remove collideRule team if it exists
@@ -1359,6 +1364,7 @@ public abstract class PlayerList { @@ -1352,6 +1357,7 @@ public abstract class PlayerList {
} }
// Paper end // Paper end
} }

View file

@ -1,4 +1,4 @@
From 7c1020f87381d93af07c2ac419e8780a643c7405 Mon Sep 17 00:00:00 2001 From b7ebc8e864503bb53440d7d919063dbce2971df6 Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc> From: kashike <kashike@vq.lc>
Date: Fri, 9 Jun 2017 07:24:34 -0700 Date: Fri, 9 Jun 2017 07:24:34 -0700
Subject: [PATCH] Add configuration option to prevent player names from being Subject: [PATCH] Add configuration option to prevent player names from being
@ -20,10 +20,10 @@ index ea6fcb39f..dbafef023 100644
+ } + }
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 1b6a849e2..470e334f7 100644 index d7247a1ec..ff9346023 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -2005,5 +2005,10 @@ public final class CraftServer implements Server { @@ -1987,5 +1987,10 @@ public final class CraftServer implements Server {
commandMap.registerServerAliases(); commandMap.registerServerAliases();
return true; return true;
} }

View file

@ -1,4 +1,4 @@
From af3fcc467f9180b820aaa4e89b3695f7d7d420cd Mon Sep 17 00:00:00 2001 From 9192bd2b48900aca881a1ac43bc94dfea1585a2f Mon Sep 17 00:00:00 2001
From: Minecrell <minecrell@minecrell.net> From: Minecrell <minecrell@minecrell.net>
Date: Fri, 9 Jun 2017 19:03:43 +0200 Date: Fri, 9 Jun 2017 19:03:43 +0200
Subject: [PATCH] Use TerminalConsoleAppender for console improvements Subject: [PATCH] Use TerminalConsoleAppender for console improvements
@ -19,10 +19,10 @@ Other changes:
configuration configuration
diff --git a/pom.xml b/pom.xml diff --git a/pom.xml b/pom.xml
index 17bc80776..47cb2c036 100644 index 09b4ddf19..47e307a24 100644
--- a/pom.xml --- a/pom.xml
+++ b/pom.xml +++ b/pom.xml
@@ -40,12 +40,6 @@ @@ -39,12 +39,6 @@
<version>${minecraft.version}-SNAPSHOT</version> <version>${minecraft.version}-SNAPSHOT</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
@ -35,7 +35,7 @@ index 17bc80776..47cb2c036 100644
<dependency> <dependency>
<groupId>org.ow2.asm</groupId> <groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId> <artifactId>asm</artifactId>
@@ -70,6 +64,32 @@ @@ -69,6 +63,32 @@
<version>3.0.3</version> <version>3.0.3</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
@ -68,7 +68,7 @@ index 17bc80776..47cb2c036 100644
<!-- testing --> <!-- testing -->
<dependency> <dependency>
<groupId>junit</groupId> <groupId>junit</groupId>
@@ -203,10 +223,18 @@ @@ -202,10 +222,18 @@
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/services/java.sql.Driver</resource> <resource>META-INF/services/java.sql.Driver</resource>
</transformer> </transformer>
@ -157,7 +157,7 @@ index 000000000..685deaa0e
+ +
+} +}
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
index a3d58b5ce..681194e94 100644 index bf1fffcfe..af430b73f 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java --- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java
@@ -79,6 +79,9 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer @@ -79,6 +79,9 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
@ -199,7 +199,7 @@ index a3d58b5ce..681194e94 100644
System.setOut(new PrintStream(new LoggerOutputStream(logger, Level.INFO), true)); System.setOut(new PrintStream(new LoggerOutputStream(logger, Level.INFO), true));
System.setErr(new PrintStream(new LoggerOutputStream(logger, Level.WARN), true)); System.setErr(new PrintStream(new LoggerOutputStream(logger, Level.WARN), true));
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 5d13f053f..c95f12351 100644 index eb8c7aaad..88900121d 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -57,7 +57,6 @@ import org.apache.commons.lang3.Validate; @@ -57,7 +57,6 @@ import org.apache.commons.lang3.Validate;
@ -210,7 +210,7 @@ index 5d13f053f..c95f12351 100644
import joptsimple.OptionSet; import joptsimple.OptionSet;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.craftbukkit.CraftServer; import org.bukkit.craftbukkit.CraftServer;
@@ -142,7 +141,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -143,7 +142,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
public OptionSet options; public OptionSet options;
public org.bukkit.command.ConsoleCommandSender console; public org.bukkit.command.ConsoleCommandSender console;
public org.bukkit.command.RemoteConsoleCommandSender remoteConsole; public org.bukkit.command.RemoteConsoleCommandSender remoteConsole;
@ -219,7 +219,7 @@ index 5d13f053f..c95f12351 100644
public static int currentTick = 0; // Paper - Further improve tick loop public static int currentTick = 0; // Paper - Further improve tick loop
public boolean serverAutoSave = false; // Paper public boolean serverAutoSave = false; // Paper
public final Thread primaryThread; public final Thread primaryThread;
@@ -184,7 +183,9 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -185,7 +184,9 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.ac.a((IResourcePackListener) this.al); this.ac.a((IResourcePackListener) this.al);
// CraftBukkit start // CraftBukkit start
this.options = options; this.options = options;
@ -229,7 +229,7 @@ index 5d13f053f..c95f12351 100644
if (System.console() == null && System.getProperty("jline.terminal") == null) { if (System.console() == null && System.getProperty("jline.terminal") == null) {
System.setProperty("jline.terminal", "jline.UnsupportedTerminal"); System.setProperty("jline.terminal", "jline.UnsupportedTerminal");
Main.useJline = false; Main.useJline = false;
@@ -205,6 +206,8 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -206,6 +207,8 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
LOGGER.warn((String) null, ex); LOGGER.warn((String) null, ex);
} }
} }
@ -238,7 +238,7 @@ index 5d13f053f..c95f12351 100644
Runtime.getRuntime().addShutdownHook(new org.bukkit.craftbukkit.util.ServerShutdownThread(this)); Runtime.getRuntime().addShutdownHook(new org.bukkit.craftbukkit.util.ServerShutdownThread(this));
this.serverThread = primaryThread = new Thread(this, "Server thread"); // Moved from main this.serverThread = primaryThread = new Thread(this, "Server thread"); // Moved from main
@@ -805,7 +808,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -844,7 +847,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
} finally { } finally {
// CraftBukkit start - Restore terminal to original settings // CraftBukkit start - Restore terminal to original settings
try { try {
@ -247,7 +247,7 @@ index 5d13f053f..c95f12351 100644
} catch (Exception ignored) { } catch (Exception ignored) {
} }
// CraftBukkit end // CraftBukkit end
@@ -1286,7 +1289,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -1340,7 +1343,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
} }
public void sendMessage(IChatBaseComponent ichatbasecomponent) { public void sendMessage(IChatBaseComponent ichatbasecomponent) {
@ -257,7 +257,7 @@ index 5d13f053f..c95f12351 100644
public KeyPair G() { public KeyPair G() {
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 4c9ff8c29..9e403d625 100644 index 0b0d99652..4cbe14801 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java --- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -78,8 +78,7 @@ public abstract class PlayerList { @@ -78,8 +78,7 @@ public abstract class PlayerList {
@ -271,7 +271,7 @@ index 4c9ff8c29..9e403d625 100644
this.k = new GameProfileBanList(PlayerList.a); this.k = new GameProfileBanList(PlayerList.a);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 8719fe35e..f6dfe2e2b 100644 index ff9346023..21d9f381c 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -137,8 +137,8 @@ import java.nio.ByteBuffer; @@ -137,8 +137,8 @@ import java.nio.ByteBuffer;
@ -284,7 +284,7 @@ index 8719fe35e..f6dfe2e2b 100644
import org.bukkit.NamespacedKey; import org.bukkit.NamespacedKey;
import org.bukkit.block.data.BlockData; import org.bukkit.block.data.BlockData;
import org.bukkit.craftbukkit.block.data.CraftBlockData; import org.bukkit.craftbukkit.block.data.CraftBlockData;
@@ -1141,9 +1141,13 @@ public final class CraftServer implements Server { @@ -1123,9 +1123,13 @@ public final class CraftServer implements Server {
return logger; return logger;
} }
@ -299,7 +299,7 @@ index 8719fe35e..f6dfe2e2b 100644
@Override @Override
public PluginCommand getPluginCommand(String name) { public PluginCommand getPluginCommand(String name) {
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index aad208f47..ac38028d7 100644 index c552c624e..3245fded9 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java --- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -14,7 +14,7 @@ import java.util.logging.Logger; @@ -14,7 +14,7 @@ import java.util.logging.Logger;
@ -311,7 +311,7 @@ index aad208f47..ac38028d7 100644
public class Main { public class Main {
public static boolean useJline = true; public static boolean useJline = true;
@@ -176,6 +176,8 @@ public class Main { @@ -178,6 +178,8 @@ public class Main {
} }
try { try {
@ -320,7 +320,7 @@ index aad208f47..ac38028d7 100644
// This trick bypasses Maven Shade's clever rewriting of our getProperty call when using String literals // This trick bypasses Maven Shade's clever rewriting of our getProperty call when using String literals
String jline_UnsupportedTerminal = new String(new char[] {'j','l','i','n','e','.','U','n','s','u','p','p','o','r','t','e','d','T','e','r','m','i','n','a','l'}); String jline_UnsupportedTerminal = new String(new char[] {'j','l','i','n','e','.','U','n','s','u','p','p','o','r','t','e','d','T','e','r','m','i','n','a','l'});
String jline_terminal = new String(new char[] {'j','l','i','n','e','.','t','e','r','m','i','n','a','l'}); String jline_terminal = new String(new char[] {'j','l','i','n','e','.','t','e','r','m','i','n','a','l'});
@@ -193,10 +195,18 @@ public class Main { @@ -195,10 +197,18 @@ public class Main {
// This ensures the terminal literal will always match the jline implementation // This ensures the terminal literal will always match the jline implementation
System.setProperty(jline.TerminalFactory.JLINE_TERMINAL, jline.UnsupportedTerminal.class.getName()); System.setProperty(jline.TerminalFactory.JLINE_TERMINAL, jline.UnsupportedTerminal.class.getName());
} }

View file

@ -1,4 +1,4 @@
From bf87bdd3574f5c1a208ffe8ea73199994905069c Mon Sep 17 00:00:00 2001 From 36d19d1a7e42d31db09f1d3b94cb2293dbf484df Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com> From: Shane Freeder <theboyetronic@gmail.com>
Date: Sun, 11 Jun 2017 21:01:18 +0100 Date: Sun, 11 Jun 2017 21:01:18 +0100
Subject: [PATCH] provide a configurable option to disable creeper lingering Subject: [PATCH] provide a configurable option to disable creeper lingering
@ -21,11 +21,11 @@ index 99fe720e8..c80d84b9b 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java diff --git a/src/main/java/net/minecraft/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java
index f286b6286..f37169d73 100644 index 8b0134ecd..0147054df 100644
--- a/src/main/java/net/minecraft/server/EntityCreeper.java --- a/src/main/java/net/minecraft/server/EntityCreeper.java
+++ b/src/main/java/net/minecraft/server/EntityCreeper.java +++ b/src/main/java/net/minecraft/server/EntityCreeper.java
@@ -214,7 +214,7 @@ public class EntityCreeper extends EntityMonster { @@ -214,7 +214,7 @@ public class EntityCreeper extends EntityMonster {
private void dF() { private void dG() {
Collection collection = this.getEffects(); Collection collection = this.getEffects();
- if (!collection.isEmpty()) { - if (!collection.isEmpty()) {

View file

@ -1,4 +1,4 @@
From 6a116ada95d75bf31b18a32818efe792c9b39d49 Mon Sep 17 00:00:00 2001 From 5ba0adc0334b2371f2b4647ac4f91d800402923e Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Mon, 15 Jan 2018 22:11:48 -0500 Date: Mon, 15 Jan 2018 22:11:48 -0500
Subject: [PATCH] Basic PlayerProfile API Subject: [PATCH] Basic PlayerProfile API
@ -429,10 +429,10 @@ index 70db1cc14..9ab3844fc 100644
* Calculates distance between 2 entities * Calculates distance between 2 entities
* @param e1 * @param e1
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index c95f12351..26ace3cbf 100644 index 88900121d..5d12855ba 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1115,7 +1115,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -1157,7 +1157,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
*/ // CraftBukkit end */ // CraftBukkit end
String s1 = "."; // PAIL? String s1 = "."; // PAIL?
@ -441,7 +441,7 @@ index c95f12351..26ace3cbf 100644
MinecraftSessionService minecraftsessionservice = yggdrasilauthenticationservice.createMinecraftSessionService(); MinecraftSessionService minecraftsessionservice = yggdrasilauthenticationservice.createMinecraftSessionService();
GameProfileRepository gameprofilerepository = yggdrasilauthenticationservice.createProfileRepository(); GameProfileRepository gameprofilerepository = yggdrasilauthenticationservice.createProfileRepository();
UserCache usercache = new UserCache(gameprofilerepository, new File(s1, MinecraftServer.a.getName())); UserCache usercache = new UserCache(gameprofilerepository, new File(s1, MinecraftServer.a.getName()));
@@ -1563,6 +1563,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -1617,6 +1617,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.G = i; this.G = i;
} }
@ -486,7 +486,7 @@ index a47a51a41..4c476f757 100644
private UserCacheEntry(GameProfile gameprofile, Date date) { private UserCacheEntry(GameProfile gameprofile, Date date) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index ac46e50ac..a8da20e35 100644 index 814a65ec5..202c6c492 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -152,6 +152,10 @@ import org.bukkit.craftbukkit.util.CraftNamespacedKey; @@ -152,6 +152,10 @@ import org.bukkit.craftbukkit.util.CraftNamespacedKey;
@ -500,7 +500,7 @@ index ac46e50ac..a8da20e35 100644
public final class CraftServer implements Server { public final class CraftServer implements Server {
private final String serverName = "Paper"; // Paper private final String serverName = "Paper"; // Paper
private final String serverVersion; private final String serverVersion;
@@ -2021,5 +2025,21 @@ public final class CraftServer implements Server { @@ -2003,5 +2007,21 @@ public final class CraftServer implements Server {
public boolean suggestPlayerNamesWhenNullTabCompletions() { public boolean suggestPlayerNamesWhenNullTabCompletions() {
return com.destroystokyo.paper.PaperConfig.suggestPlayersWhenNullTabCompletions; return com.destroystokyo.paper.PaperConfig.suggestPlayersWhenNullTabCompletions;
} }

View file

@ -1,17 +1,17 @@
From 147cea6aa1decfdcbf1f3d7fc2bca8f22fdaae5a Mon Sep 17 00:00:00 2001 From dd04e617cb4eb245710fe0691eb157a0ab850400 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com> From: Zach Brown <zach.brown@destroystokyo.com>
Date: Sun, 2 Jul 2017 21:35:56 -0500 Date: Sun, 2 Jul 2017 21:35:56 -0500
Subject: [PATCH] Block player logins during server shutdown Subject: [PATCH] Block player logins during server shutdown
diff --git a/src/main/java/net/minecraft/server/LoginListener.java b/src/main/java/net/minecraft/server/LoginListener.java diff --git a/src/main/java/net/minecraft/server/LoginListener.java b/src/main/java/net/minecraft/server/LoginListener.java
index 89a11a496..bab13a4fd 100644 index b6e829682..85eff6e2d 100644
--- a/src/main/java/net/minecraft/server/LoginListener.java --- a/src/main/java/net/minecraft/server/LoginListener.java
+++ b/src/main/java/net/minecraft/server/LoginListener.java +++ b/src/main/java/net/minecraft/server/LoginListener.java
@@ -50,6 +50,12 @@ public class LoginListener implements PacketLoginInListener, ITickable { @@ -50,6 +50,12 @@ public class LoginListener implements PacketLoginInListener, ITickable {
} }
public void X_() { public void Y_() {
+ // Paper start - Do not allow logins while the server is shutting down + // Paper start - Do not allow logins while the server is shutting down
+ if (!MinecraftServer.getServer().isRunning()) { + if (!MinecraftServer.getServer().isRunning()) {
+ this.disconnect(new ChatMessage(org.spigotmc.SpigotConfig.restartMessage)); + this.disconnect(new ChatMessage(org.spigotmc.SpigotConfig.restartMessage));

View file

@ -1,11 +1,11 @@
From 29abeacb899601637af19e18457fff1ba671f470 Mon Sep 17 00:00:00 2001 From 81ace36f21de4341d47d827637fcfe406d40b33a Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Mon, 3 Jul 2017 18:11:10 -0500 Date: Mon, 3 Jul 2017 18:11:10 -0500
Subject: [PATCH] ProfileWhitelistVerifyEvent Subject: [PATCH] ProfileWhitelistVerifyEvent
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 9e403d625..879780c5b 100644 index 4cbe14801..45e42e998 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java --- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -543,9 +543,9 @@ public abstract class PlayerList { @@ -543,9 +543,9 @@ public abstract class PlayerList {
@ -20,7 +20,7 @@ index 9e403d625..879780c5b 100644
} else if (getIPBans().isBanned(socketaddress) && !getIPBans().get(socketaddress).hasExpired()) { } else if (getIPBans().isBanned(socketaddress) && !getIPBans().get(socketaddress).hasExpired()) {
IpBanEntry ipbanentry = this.l.get(socketaddress); IpBanEntry ipbanentry = this.l.get(socketaddress);
@@ -1184,9 +1184,25 @@ public abstract class PlayerList { @@ -1177,9 +1177,25 @@ public abstract class PlayerList {
this.server.getCommandDispatcher().a(entityplayer); this.server.getCommandDispatcher().a(entityplayer);
} }

View file

@ -1,4 +1,4 @@
From 65acab73c8ed9963f274dd34e30d183069604441 Mon Sep 17 00:00:00 2001 From ae43b5d79b454b6a616f610119360894023cb5c1 Mon Sep 17 00:00:00 2001
From: DemonWav <demonwav@gmail.com> From: DemonWav <demonwav@gmail.com>
Date: Sun, 6 Aug 2017 17:17:53 -0500 Date: Sun, 6 Aug 2017 17:17:53 -0500
Subject: [PATCH] Fix this stupid bullshit Subject: [PATCH] Fix this stupid bullshit
@ -9,10 +9,10 @@ modified in order to prevent merge conflicts when Spigot changes/disables the wa
and to provide some level of hint without being disruptive. and to provide some level of hint without being disruptive.
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index ac38028d7..ad0635925 100644 index 3245fded9..d4f6e009e 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java --- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -215,10 +215,12 @@ public class Main { @@ -217,10 +217,12 @@ public class Main {
Calendar deadline = Calendar.getInstance(); Calendar deadline = Calendar.getInstance();
deadline.add(Calendar.DAY_OF_YEAR, -3); deadline.add(Calendar.DAY_OF_YEAR, -3);
if (buildDate.before(deadline.getTime())) { if (buildDate.before(deadline.getTime())) {

View file

@ -1,4 +1,4 @@
From 85d40c5071b3c70477b3dfbb204207f97904c8d3 Mon Sep 17 00:00:00 2001 From 73bbebc2ba89bec6a0a886d598bac3901e2f81c8 Mon Sep 17 00:00:00 2001
From: Minecrell <minecrell@minecrell.net> From: Minecrell <minecrell@minecrell.net>
Date: Mon, 18 Sep 2017 12:00:03 +0200 Date: Mon, 18 Sep 2017 12:00:03 +0200
Subject: [PATCH] Use Log4j IOStreams to redirect System.out/err to logger Subject: [PATCH] Use Log4j IOStreams to redirect System.out/err to logger
@ -12,10 +12,10 @@ results in a separate line, even though it should not result in
a line break. Log4j's implementation handles it correctly. a line break. Log4j's implementation handles it correctly.
diff --git a/pom.xml b/pom.xml diff --git a/pom.xml b/pom.xml
index f2c7d2ba8b..fa6c3702a7 100644 index 47e307a24..a93ed45df 100644
--- a/pom.xml --- a/pom.xml
+++ b/pom.xml +++ b/pom.xml
@@ -90,6 +90,13 @@ @@ -89,6 +89,13 @@
<scope>runtime</scope> <scope>runtime</scope>
</dependency> </dependency>
@ -30,7 +30,7 @@ index f2c7d2ba8b..fa6c3702a7 100644
<dependency> <dependency>
<groupId>junit</groupId> <groupId>junit</groupId>
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
index 681194e94f..927cbeedcd 100644 index af430b73f..8c7630018 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java --- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java
@@ -131,8 +131,10 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer @@ -131,8 +131,10 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer

View file

@ -1,4 +1,4 @@
From 3b947e0656877c19c211ce7680e3937ae5dea267 Mon Sep 17 00:00:00 2001 From d5b28ecc49de351485333e2960919669c43780e7 Mon Sep 17 00:00:00 2001
From: Minecrell <minecrell@minecrell.net> From: Minecrell <minecrell@minecrell.net>
Date: Thu, 21 Sep 2017 16:14:55 +0200 Date: Thu, 21 Sep 2017 16:14:55 +0200
Subject: [PATCH] Handle plugin prefixes using Log4J configuration Subject: [PATCH] Handle plugin prefixes using Log4J configuration
@ -15,10 +15,10 @@ This may cause additional prefixes to be disabled for plugins bypassing
the plugin logger. the plugin logger.
diff --git a/pom.xml b/pom.xml diff --git a/pom.xml b/pom.xml
index 9d2473317..eb2cdf129 100644 index a93ed45df..bb32cb749 100644
--- a/pom.xml --- a/pom.xml
+++ b/pom.xml +++ b/pom.xml
@@ -87,7 +87,7 @@ @@ -86,7 +86,7 @@
<groupId>org.apache.logging.log4j</groupId> <groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId> <artifactId>log4j-core</artifactId>
<version>2.8.1</version> <version>2.8.1</version>
@ -28,7 +28,7 @@ index 9d2473317..eb2cdf129 100644
<!-- Paper - Add additional Log4J dependencies --> <!-- Paper - Add additional Log4J dependencies -->
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index 9a1ffed07..b39096f04 100644 index 676780b61..5a873fe9d 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java --- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java +++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -286,7 +286,7 @@ public class SpigotConfig @@ -286,7 +286,7 @@ public class SpigotConfig

View file

@ -1,14 +1,14 @@
From edb75eca4cd2549499d4475155065a2e73d4b9c0 Mon Sep 17 00:00:00 2001 From 7c9fbb91ca5a19e2e151dbf2e4021220d5347a31 Mon Sep 17 00:00:00 2001
From: Minecrell <minecrell@minecrell.net> From: Minecrell <minecrell@minecrell.net>
Date: Thu, 21 Sep 2017 16:33:35 +0200 Date: Thu, 21 Sep 2017 16:33:35 +0200
Subject: [PATCH] Include Log4J2 SLF4J implementation Subject: [PATCH] Include Log4J2 SLF4J implementation
diff --git a/pom.xml b/pom.xml diff --git a/pom.xml b/pom.xml
index eb2cdf129..353a5560e 100644 index bb32cb749..a319cfe3b 100644
--- a/pom.xml --- a/pom.xml
+++ b/pom.xml +++ b/pom.xml
@@ -91,6 +91,12 @@ @@ -90,6 +90,12 @@
</dependency> </dependency>
<!-- Paper - Add additional Log4J dependencies --> <!-- Paper - Add additional Log4J dependencies -->

View file

@ -1,23 +1,23 @@
From dd4f541fca1b685e85db063ff2813f6d552cb262 Mon Sep 17 00:00:00 2001 From e2039fa94b546d69eae59942ae8af658cb991af5 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com> From: Zach Brown <zach.brown@destroystokyo.com>
Date: Thu, 28 Sep 2017 17:21:44 -0400 Date: Thu, 28 Sep 2017 17:21:44 -0400
Subject: [PATCH] Add PlayerJumpEvent Subject: [PATCH] Add PlayerJumpEvent
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
index f08c0ba60..1b944abea 100644 index b20cab58b..1bfe9d0e7 100644
--- a/src/main/java/net/minecraft/server/EntityHuman.java --- a/src/main/java/net/minecraft/server/EntityHuman.java
+++ b/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java
@@ -1460,6 +1460,7 @@ public abstract class EntityHuman extends EntityLiving { @@ -1460,6 +1460,7 @@ public abstract class EntityHuman extends EntityLiving {
return 0; return 0;
} }
+ public void jump() { this.cG(); } // Paper - OBFHELPER + public void jump() { this.cH(); } // Paper - OBFHELPER
public void cG() { public void cH() {
super.cG(); super.cH();
this.a(StatisticList.JUMP); this.a(StatisticList.JUMP);
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 383ef87ba..480b93aa0 100644 index 932eeb19d..7465c548a 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java --- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -57,6 +57,8 @@ import org.bukkit.inventory.CraftingInventory; @@ -57,6 +57,8 @@ import org.bukkit.inventory.CraftingInventory;
@ -33,7 +33,7 @@ index 383ef87ba..480b93aa0 100644
d8 = d5 - this.p; d8 = d5 - this.p;
d9 = d6 - this.q; d9 = d6 - this.q;
if (this.player.onGround && !packetplayinflying.b() && d8 > 0.0D) { if (this.player.onGround && !packetplayinflying.b() && d8 > 0.0D) {
- this.player.cG(); - this.player.cH();
+ // Paper start - Add player jump event + // Paper start - Add player jump event
+ Player player = this.getPlayer(); + Player player = this.getPlayer();
+ Location from = new Location(player.getWorld(), lastPosX, lastPosY, lastPosZ, lastYaw, lastPitch); // Get the Players previous Event location. + Location from = new Location(player.getWorld(), lastPosX, lastPosY, lastPosZ, lastYaw, lastPitch); // Get the Players previous Event location.

View file

@ -1,4 +1,4 @@
From 6ded5c4dfe33c7a2da270fb889d550c0f89afcc2 Mon Sep 17 00:00:00 2001 From 68d7cdfbe8d650efad86ee10f528f15670eabe04 Mon Sep 17 00:00:00 2001
From: Brokkonaut <hannos17@gmx.de> From: Brokkonaut <hannos17@gmx.de>
Date: Tue, 31 Oct 2017 03:26:18 +0100 Date: Tue, 31 Oct 2017 03:26:18 +0100
Subject: [PATCH] Send attack SoundEffects only to players who can see the Subject: [PATCH] Send attack SoundEffects only to players who can see the
@ -6,7 +6,7 @@ Subject: [PATCH] Send attack SoundEffects only to players who can see the
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
index 1b944abea..ae4dd621d 100644 index 1bfe9d0e7..cd3e021a0 100644
--- a/src/main/java/net/minecraft/server/EntityHuman.java --- a/src/main/java/net/minecraft/server/EntityHuman.java
+++ b/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java
@@ -981,6 +981,15 @@ public abstract class EntityHuman extends EntityLiving { @@ -981,6 +981,15 @@ public abstract class EntityHuman extends EntityLiving {
@ -40,7 +40,7 @@ index 1b944abea..ae4dd621d 100644
- this.world.a((EntityHuman) null, this.locX, this.locY, this.locZ, SoundEffects.ENTITY_PLAYER_ATTACK_SWEEP, this.bV(), 1.0F, 1.0F); - this.world.a((EntityHuman) null, this.locX, this.locY, this.locZ, SoundEffects.ENTITY_PLAYER_ATTACK_SWEEP, this.bV(), 1.0F, 1.0F);
+ sendSoundEffect(this, this.locX, this.locY, this.locZ, SoundEffects.ENTITY_PLAYER_ATTACK_SWEEP, this.bV(), 1.0F, 1.0F); // Paper - send while respecting visibility + sendSoundEffect(this, this.locX, this.locY, this.locZ, SoundEffects.ENTITY_PLAYER_ATTACK_SWEEP, this.bV(), 1.0F, 1.0F); // Paper - send while respecting visibility
this.dk(); this.dl();
} }
@@ -1113,15 +1122,15 @@ public abstract class EntityHuman extends EntityLiving { @@ -1113,15 +1122,15 @@ public abstract class EntityHuman extends EntityLiving {
@ -72,7 +72,7 @@ index 1b944abea..ae4dd621d 100644
entity.extinguish(); entity.extinguish();
} }
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index d0ce6b363..56292fad9 100644 index 2f9aa10f8..2904a845b 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -916,6 +916,12 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -916,6 +916,12 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose

View file

@ -1,4 +1,4 @@
From 9b2ecdc4d560d69dfd41dad01498207a3ef040f9 Mon Sep 17 00:00:00 2001 From f4914b7018762e1d9e23715905c35c231f5d697c Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Sun, 26 Nov 2017 13:19:58 -0500 Date: Sun, 26 Nov 2017 13:19:58 -0500
Subject: [PATCH] AsyncTabCompleteEvent Subject: [PATCH] AsyncTabCompleteEvent
@ -14,7 +14,7 @@ completion, such as offline players.
Also adds isCommand and getLocation to the sync TabCompleteEvent Also adds isCommand and getLocation to the sync TabCompleteEvent
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 7e96c4eb4..ab2bd6dae 100644 index cb9f25e96..c0249933b 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java --- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -504,18 +504,59 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { @@ -504,18 +504,59 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@ -85,10 +85,10 @@ index 7e96c4eb4..ab2bd6dae 100644
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 0ef1186b9..d605e5792 100644 index 202c6c492..c74831b3d 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1685,7 +1685,7 @@ public final class CraftServer implements Server { @@ -1667,7 +1667,7 @@ public final class CraftServer implements Server {
offers = tabCompleteChat(player, message); offers = tabCompleteChat(player, message);
} }

View file

@ -1,4 +1,4 @@
From a1e5ecf741cca8862642895e14580b92151b92ff Mon Sep 17 00:00:00 2001 From 0d34338ddc54622e57515a7f8281f3726f33b1f6 Mon Sep 17 00:00:00 2001
From: Minecrell <minecrell@minecrell.net> From: Minecrell <minecrell@minecrell.net>
Date: Wed, 11 Oct 2017 15:56:26 +0200 Date: Wed, 11 Oct 2017 15:56:26 +0200
Subject: [PATCH] Implement extended PaperServerListPingEvent Subject: [PATCH] Implement extended PaperServerListPingEvent
@ -177,10 +177,10 @@ index 000000000..350410527
+ +
+} +}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 26ace3cbf..bc2712898 100644 index 5d12855ba..ebc0709eb 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -871,7 +871,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -910,7 +910,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
if (i - this.Y >= 5000000000L) { if (i - this.Y >= 5000000000L) {
this.Y = i; this.Y = i;
this.n.setPlayerSample(new ServerPing.ServerPingPlayerSample(this.B(), this.A())); this.n.setPlayerSample(new ServerPing.ServerPingPlayerSample(this.B(), this.A()));
@ -189,8 +189,8 @@ index 26ace3cbf..bc2712898 100644
int j = MathHelper.nextInt(this.o, 0, this.A() - agameprofile.length); int j = MathHelper.nextInt(this.o, 0, this.A() - agameprofile.length);
for (int k = 0; k < agameprofile.length; ++k) { for (int k = 0; k < agameprofile.length; ++k) {
@@ -1221,10 +1221,12 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -1275,10 +1275,12 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
return "1.13-pre7"; return "1.13";
} }
+ public int getPlayerCount() { return A(); } // Paper - OBFHELPER + public int getPlayerCount() { return A(); } // Paper - OBFHELPER
@ -251,7 +251,7 @@ index d7e1ecc03..f20cddc41 100644
this.c = agameprofile; this.c = agameprofile;
} }
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index b39096f04..d89224e7d 100644 index 5a873fe9d..42bd3b6ed 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java --- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java +++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -285,7 +285,7 @@ public class SpigotConfig @@ -285,7 +285,7 @@ public class SpigotConfig

View file

@ -1,4 +1,4 @@
From 3cf669e70d479742197c2514cda5bd38a37c53d6 Mon Sep 17 00:00:00 2001 From 2881f51e09aaf6feb720969e323bbdcb87b054b7 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Thu, 22 Mar 2018 01:40:24 -0400 Date: Thu, 22 Mar 2018 01:40:24 -0400
Subject: [PATCH] getPlayerUniqueId API Subject: [PATCH] getPlayerUniqueId API
@ -9,10 +9,10 @@ In Offline Mode, will return an Offline UUID
This is a more performant way to obtain a UUID for a name than loading an OfflinePlayer This is a more performant way to obtain a UUID for a name than loading an OfflinePlayer
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index b1d3f2a5e..f3050b126 100644 index c74831b3d..e860a83d3 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1379,6 +1379,26 @@ public final class CraftServer implements Server { @@ -1361,6 +1361,26 @@ public final class CraftServer implements Server {
return recipients.size(); return recipients.size();
} }

View file

@ -1,4 +1,4 @@
From b5b9280ab8819c53ce5fdcaf92e9967a002bc18a Mon Sep 17 00:00:00 2001 From 2c487e159f55a7145d0e7a32048fa08fa60dcdae Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Mon, 30 Apr 2018 13:15:55 -0400 Date: Mon, 30 Apr 2018 13:15:55 -0400
Subject: [PATCH] EndermanEscapeEvent Subject: [PATCH] EndermanEscapeEvent
@ -8,7 +8,7 @@ Fires an event anytime an enderman intends to teleport away from the player
You may cancel this, enabling ranged attacks to damage the enderman for example. You may cancel this, enabling ranged attacks to damage the enderman for example.
diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java
index 96e29539b..e5eb0189d 100644 index ddf64ee6c..a766b3895 100644
--- a/src/main/java/net/minecraft/server/EntityEnderman.java --- a/src/main/java/net/minecraft/server/EntityEnderman.java
+++ b/src/main/java/net/minecraft/server/EntityEnderman.java +++ b/src/main/java/net/minecraft/server/EntityEnderman.java
@@ -1,6 +1,7 @@ @@ -1,6 +1,7 @@
@ -39,7 +39,7 @@ index 96e29539b..e5eb0189d 100644
- if (f > 0.5F && this.world.e(new BlockPosition(this)) && this.random.nextFloat() * 30.0F < (f - 0.4F) * 2.0F) { - if (f > 0.5F && this.world.e(new BlockPosition(this)) && this.random.nextFloat() * 30.0F < (f - 0.4F) * 2.0F) {
+ if (f > 0.5F && this.world.e(new BlockPosition(this)) && this.random.nextFloat() * 30.0F < (f - 0.4F) * 2.0F && tryEscape(EndermanEscapeEvent.Reason.RUNAWAY)) { // Paper + if (f > 0.5F && this.world.e(new BlockPosition(this)) && this.random.nextFloat() * 30.0F < (f - 0.4F) * 2.0F && tryEscape(EndermanEscapeEvent.Reason.RUNAWAY)) { // Paper
this.setGoalTarget((EntityLiving) null); this.setGoalTarget((EntityLiving) null);
this.dz(); this.dA();
} }
@@ -247,7 +254,7 @@ public class EntityEnderman extends EntityMonster { @@ -247,7 +254,7 @@ public class EntityEnderman extends EntityMonster {
public boolean damageEntity(DamageSource damagesource, float f) { public boolean damageEntity(DamageSource damagesource, float f) {
@ -48,7 +48,7 @@ index 96e29539b..e5eb0189d 100644
- } else if (damagesource instanceof EntityDamageSourceIndirect) { - } else if (damagesource instanceof EntityDamageSourceIndirect) {
+ } else if (damagesource instanceof EntityDamageSourceIndirect && tryEscape(EndermanEscapeEvent.Reason.INDIRECT)) { // Paper + } else if (damagesource instanceof EntityDamageSourceIndirect && tryEscape(EndermanEscapeEvent.Reason.INDIRECT)) { // Paper
for (int i = 0; i < 64; ++i) { for (int i = 0; i < 64; ++i) {
if (this.dz()) { if (this.dA()) {
return true; return true;
@@ -258,7 +265,7 @@ public class EntityEnderman extends EntityMonster { @@ -258,7 +265,7 @@ public class EntityEnderman extends EntityMonster {
} else { } else {
@ -56,7 +56,7 @@ index 96e29539b..e5eb0189d 100644
- if (damagesource.ignoresArmor() && this.random.nextInt(10) != 0) { - if (damagesource.ignoresArmor() && this.random.nextInt(10) != 0) {
+ if (damagesource.ignoresArmor() && this.random.nextInt(10) != 0 && tryEscape(damagesource == DamageSource.DROWN ? EndermanEscapeEvent.Reason.DROWN : EndermanEscapeEvent.Reason.CRITICAL_HIT)) { // Paper + if (damagesource.ignoresArmor() && this.random.nextInt(10) != 0 && tryEscape(damagesource == DamageSource.DROWN ? EndermanEscapeEvent.Reason.DROWN : EndermanEscapeEvent.Reason.CRITICAL_HIT)) { // Paper
this.dz(); this.dA();
} }
@@ -347,7 +354,7 @@ public class EntityEnderman extends EntityMonster { @@ -347,7 +354,7 @@ public class EntityEnderman extends EntityMonster {
@ -74,7 +74,7 @@ index 96e29539b..e5eb0189d 100644
if (this.i.f((EntityHuman) this.d)) { if (this.i.f((EntityHuman) this.d)) {
- if (((EntityHuman) this.d).h(this.i) < 16.0D) { - if (((EntityHuman) this.d).h(this.i) < 16.0D) {
+ if (((EntityHuman) this.d).h(this.i) < 16.0D && this.getEnderman().tryEscape(EndermanEscapeEvent.Reason.STARE)) { // Paper + if (((EntityHuman) this.d).h(this.i) < 16.0D && this.getEnderman().tryEscape(EndermanEscapeEvent.Reason.STARE)) { // Paper
this.i.dz(); this.i.dA();
} }
-- --

View file

@ -1,4 +1,4 @@
From 880a89e66ceb7046eff5ee0e63c34e8c58789991 Mon Sep 17 00:00:00 2001 From 4554c34485e08548f66997ac51e4ae290a56eecf Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Mon, 30 Apr 2018 13:29:44 -0400 Date: Mon, 30 Apr 2018 13:29:44 -0400
Subject: [PATCH] Enderman.teleportRandomly() Subject: [PATCH] Enderman.teleportRandomly()
@ -6,15 +6,15 @@ Subject: [PATCH] Enderman.teleportRandomly()
Ability to trigger the vanilla "teleport randomly" mechanic of an enderman. Ability to trigger the vanilla "teleport randomly" mechanic of an enderman.
diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java
index e5eb0189d..df94b4ca9 100644 index a766b3895..0f64c8f2b 100644
--- a/src/main/java/net/minecraft/server/EntityEnderman.java --- a/src/main/java/net/minecraft/server/EntityEnderman.java
+++ b/src/main/java/net/minecraft/server/EntityEnderman.java +++ b/src/main/java/net/minecraft/server/EntityEnderman.java
@@ -184,6 +184,7 @@ public class EntityEnderman extends EntityMonster { @@ -184,6 +184,7 @@ public class EntityEnderman extends EntityMonster {
super.mobTick(); super.mobTick();
} }
+ public boolean teleportRandomly() { return dz(); } // Paper - OBFHELPER + public boolean teleportRandomly() { return dA(); } // Paper - OBFHELPER
protected boolean dz() { protected boolean dA() {
double d0 = this.locX + (this.random.nextDouble() - 0.5D) * 64.0D; double d0 = this.locX + (this.random.nextDouble() - 0.5D) * 64.0D;
double d1 = this.locY + (double) (this.random.nextInt(64) - 32); double d1 = this.locY + (double) (this.random.nextInt(64) - 32);
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEnderman.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEnderman.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEnderman.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEnderman.java

View file

@ -1,4 +1,4 @@
From 6ed48dc3d24f2c96bc25877a4b9039fb81dfe608 Mon Sep 17 00:00:00 2001 From f00d585a8bbb438d74f7802fd5fb536bfc69185b Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Sun, 10 Jun 2018 01:18:49 -0400 Date: Sun, 10 Jun 2018 01:18:49 -0400
Subject: [PATCH] Unset Ignited flag on cancel of Explosion Event Subject: [PATCH] Unset Ignited flag on cancel of Explosion Event
@ -6,7 +6,7 @@ Subject: [PATCH] Unset Ignited flag on cancel of Explosion Event
Otherwise the creeper infinite explodes Otherwise the creeper infinite explodes
diff --git a/src/main/java/net/minecraft/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java diff --git a/src/main/java/net/minecraft/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java
index f37169d73..86935f70a 100644 index 0147054df..bbb4ca0fe 100644
--- a/src/main/java/net/minecraft/server/EntityCreeper.java --- a/src/main/java/net/minecraft/server/EntityCreeper.java
+++ b/src/main/java/net/minecraft/server/EntityCreeper.java +++ b/src/main/java/net/minecraft/server/EntityCreeper.java
@@ -12,7 +12,7 @@ public class EntityCreeper extends EntityMonster { @@ -12,7 +12,7 @@ public class EntityCreeper extends EntityMonster {
@ -19,7 +19,7 @@ index f37169d73..86935f70a 100644
private int fuseTicks; private int fuseTicks;
public int maxFuseTicks = 30; public int maxFuseTicks = 30;
@@ -205,6 +205,7 @@ public class EntityCreeper extends EntityMonster { @@ -205,6 +205,7 @@ public class EntityCreeper extends EntityMonster {
this.dF(); this.dG();
} else { } else {
fuseTicks = 0; fuseTicks = 0;
+ this.datawatcher.set(isIgnitedDW, Boolean.valueOf(false)); // Paper + this.datawatcher.set(isIgnitedDW, Boolean.valueOf(false)); // Paper

View file

@ -1,4 +1,4 @@
From 8d4c2d59264801c858ea9086dcda25380a409942 Mon Sep 17 00:00:00 2001 From 1bf8f7ce7285ba62fda47503cf9ac20e460b2926 Mon Sep 17 00:00:00 2001
From: BillyGalbreath <Blake.Galbreath@GMail.com> From: BillyGalbreath <Blake.Galbreath@GMail.com>
Date: Sat, 16 Jun 2018 01:18:16 -0500 Date: Sat, 16 Jun 2018 01:18:16 -0500
Subject: [PATCH] Make shield blocking delay configurable Subject: [PATCH] Make shield blocking delay configurable
@ -19,10 +19,10 @@ index f1db4becd..ef4bfb480 100644
+ } + }
} }
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index a4026d64a..dffa42ba5 100644 index 999a02cad..eaab10a14 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java --- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2663,7 +2663,7 @@ public abstract class EntityLiving extends Entity { @@ -2664,7 +2664,7 @@ public abstract class EntityLiving extends Entity {
if (this.isHandRaised() && !this.activeItem.isEmpty()) { if (this.isHandRaised() && !this.activeItem.isEmpty()) {
Item item = this.activeItem.getItem(); Item item = this.activeItem.getItem();
@ -31,8 +31,8 @@ index a4026d64a..dffa42ba5 100644
} else { } else {
return false; return false;
} }
@@ -2751,4 +2751,16 @@ public abstract class EntityLiving extends Entity { @@ -2752,4 +2752,16 @@ public abstract class EntityLiving extends Entity {
public boolean de() { public boolean df() {
return true; return true;
} }
+ +
@ -49,7 +49,7 @@ index a4026d64a..dffa42ba5 100644
+ // Paper end + // Paper end
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 460a050cc..35ba95e0f 100644 index 524cfd99b..a6f847e31 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -530,5 +530,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { @@ -530,5 +530,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {

View file

@ -1,4 +1,4 @@
From a8a715a958825c0714c667dd9fb939e330e09551 Mon Sep 17 00:00:00 2001 From 8f9dd75bf0186ef9e145b0399cedd29b5b090740 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Fri, 29 Jun 2018 00:21:28 -0400 Date: Fri, 29 Jun 2018 00:21:28 -0400
Subject: [PATCH] LivingEntity Hand Raised/Item Use API Subject: [PATCH] LivingEntity Hand Raised/Item Use API
@ -6,29 +6,33 @@ Subject: [PATCH] LivingEntity Hand Raised/Item Use API
How long an entity has raised hands to charge an attack or use an item How long an entity has raised hands to charge an attack or use an item
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 7cacbaffe..5f3ccee2e 100644 index 4455dc489..8be1ba526 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java --- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2648,14 +2648,17 @@ public abstract class EntityLiving extends Entity { @@ -106,7 +106,7 @@ public abstract class EntityLiving extends Entity {
private float bI;
} private int bJ;
private float bK;
+ public ItemStack getActiveItem() { return cV(); } // Paper - OBFHELPER - protected ItemStack activeItem;
public ItemStack cV() { + public ItemStack activeItem; // Paper - public
protected int bu;
protected int bv;
private BlockPosition bL;
@@ -2653,10 +2653,12 @@ public abstract class EntityLiving extends Entity {
return this.activeItem; return this.activeItem;
} }
+ public int getItemUseRemainingTime() { return cW(); } // Paper - OBFHELPER + public int getItemUseRemainingTime() { return cX(); } // Paper - OBFHELPER
public int cW() { public int cX() {
return this.bu; return this.bu;
} }
+ public int getHandRaisedTime() { return cX(); } // Paper - OBFHELPER + public int getHandRaisedTime() { return cY(); } // Paper - OBFHELPER
public int cX() { public int cY() {
return this.isHandRaised() ? this.activeItem.k() - this.cW() : 0; return this.isHandRaised() ? this.activeItem.k() - this.cX() : 0;
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 35ba95e0f..0975181e0 100644 index a6f847e31..768bce141 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -540,5 +540,25 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { @@ -540,5 +540,25 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@ -38,7 +42,7 @@ index 35ba95e0f..0975181e0 100644
+ +
+ @Override + @Override
+ public ItemStack getActiveItem() { + public ItemStack getActiveItem() {
+ return getHandle().getActiveItem().asBukkitMirror(); + return getHandle().activeItem.asBukkitMirror();
+ } + }
+ +
+ @Override + @Override

View file

@ -1,4 +1,4 @@
From 087cf44f244fd8c9afe5831e5714891a26585028 Mon Sep 17 00:00:00 2001 From a110ff1f46dcdda93c0d692af44fd4d36b0dbc26 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co> From: Aikar <aikar@aikar.co>
Date: Tue, 3 Jul 2018 21:56:23 -0400 Date: Tue, 3 Jul 2018 21:56:23 -0400
Subject: [PATCH] InventoryCloseEvent Reason API Subject: [PATCH] InventoryCloseEvent Reason API
@ -7,7 +7,7 @@ Allows you to determine why an inventory was closed, enabling plugin developers
to "confirm" things based on if it was player triggered close or not. to "confirm" things based on if it was player triggered close or not.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index ac90ca802..9e798038b 100644 index a5a63a01d..e504b7858 100644
--- a/src/main/java/net/minecraft/server/Chunk.java --- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -886,7 +886,7 @@ public class Chunk implements IChunkAccess { @@ -886,7 +886,7 @@ public class Chunk implements IChunkAccess {
@ -29,11 +29,11 @@ index ac90ca802..9e798038b 100644
} }
} }
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
index 4aba5716c..d84bb0e40 100644 index 738ac8570..14a61f68e 100644
--- a/src/main/java/net/minecraft/server/EntityHuman.java --- a/src/main/java/net/minecraft/server/EntityHuman.java
+++ b/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java
@@ -153,7 +153,7 @@ public abstract class EntityHuman extends EntityLiving { @@ -153,7 +153,7 @@ public abstract class EntityHuman extends EntityLiving {
this.df(); this.dg();
super.tick(); super.tick();
if (!this.world.isClientSide && this.activeContainer != null && !this.activeContainer.canUse(this)) { if (!this.world.isClientSide && this.activeContainer != null && !this.activeContainer.canUse(this)) {
- this.closeInventory(); - this.closeInventory();
@ -56,7 +56,7 @@ index 4aba5716c..d84bb0e40 100644
this.activeContainer = this.defaultContainer; this.activeContainer = this.defaultContainer;
} }
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 5db6e0764..99c638857 100644 index 7059fc118..0c01f8daf 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java --- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -343,7 +343,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -343,7 +343,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@ -110,7 +110,7 @@ index 5db6e0764..99c638857 100644
this.m(); this.m();
} }
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 067f7b990..97b315bca 100644 index 42bb86d31..2860df860 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java --- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -2038,7 +2038,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { @@ -2038,7 +2038,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@ -123,7 +123,7 @@ index 067f7b990..97b315bca 100644
this.player.m(); this.player.m();
} }
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 879780c5b..907f0232b 100644 index 45e42e998..7a2b219c6 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java --- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -422,7 +422,7 @@ public abstract class PlayerList { @@ -422,7 +422,7 @@ public abstract class PlayerList {
@ -155,7 +155,7 @@ index 4b9ecb4a6..b602a5d1b 100644
public boolean isBlocking() { public boolean isBlocking() {
return getHandle().isBlocking(); return getHandle().isBlocking();
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 60bc6d331..b25980027 100644 index ab9956fa2..0f3e1d5ae 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -687,7 +687,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -687,7 +687,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View file

@ -1,14 +1,14 @@
From 1b2b2a7ce9672bd95eb9708047a5761eb9b64b80 Mon Sep 17 00:00:00 2001 From 4f6298ddaea7e4a4437ea321033433a16d8cf8fd Mon Sep 17 00:00:00 2001
From: Minecrell <minecrell@minecrell.net> From: Minecrell <minecrell@minecrell.net>
Date: Tue, 17 Jul 2018 16:42:17 +0200 Date: Tue, 17 Jul 2018 16:42:17 +0200
Subject: [PATCH] Use asynchronous Log4j 2 loggers Subject: [PATCH] Use asynchronous Log4j 2 loggers
diff --git a/pom.xml b/pom.xml diff --git a/pom.xml b/pom.xml
index a034c87d6..efa52f356 100644 index a319cfe3b..ddee1b048 100644
--- a/pom.xml --- a/pom.xml
+++ b/pom.xml +++ b/pom.xml
@@ -103,6 +103,14 @@ @@ -102,6 +102,14 @@
<version>2.8.1</version> <version>2.8.1</version>
</dependency> </dependency>

@ -1 +1 @@
Subproject commit a5effc614208d06202688a775f25d7b820b36d47 Subproject commit 351106b6336fc52f6acf94aabd34ac54fc772432

@ -1 +1 @@
Subproject commit 2ba30dddd4acb3bd789b4e487ed0647984576e8c Subproject commit 7f2225966203a65e7d2c32d686121360489375f3

@ -1 +1 @@
Subproject commit 961295e4327324766a0404857c1ca85051971995 Subproject commit 4e2f57133714acc3f84bec56d8ebcbcfc0228326

@ -1 +1 @@
Subproject commit 3fa6cc486bf213165cc95cc3809162036cf9bf78 Subproject commit ed1cec9ae9ee07f1b51bdda14dfe14b40e92c9ed