Update to Minecraft 1.10

This commit is contained in:
Zach Brown 2016-06-08 22:57:14 -05:00
parent 171a079cd2
commit c442e96eb9
No known key found for this signature in database
GPG Key ID: CC9DA35FC5450B76
173 changed files with 966 additions and 1138 deletions

View File

@ -1,11 +1,11 @@
From 40a793d76f1bb04ad6d9d6cbbadb2a04024ed1b3 Mon Sep 17 00:00:00 2001
From f24f0b8ba5724ebdbe7d09a476607b43dd626645 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Mon, 29 Feb 2016 17:16:08 -0600
Subject: [PATCH] POM changes
diff --git a/pom.xml b/pom.xml
index 0ab9e14..79498ae 100644
index 0f5b26c..ead01eb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,35 +4,37 @@
@ -24,7 +24,7 @@ index 0ab9e14..79498ae 100644
- <artifactId>spigot-api</artifactId>
+ <groupId>com.destroystokyo.paper</groupId>
+ <artifactId>paper-api</artifactId>
<version>1.9.4-R0.1-SNAPSHOT</version>
<version>1.10-R0.1-SNAPSHOT</version>
<packaging>jar</packaging>
- <name>Spigot-API</name>
@ -95,5 +95,5 @@ index 0ab9e14..79498ae 100644
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.1</version>
--
2.8.2
2.8.3

View File

@ -1,14 +1,14 @@
From e1bfb9a5ac6112089f5a13e5b8db381c4d872bcf Mon Sep 17 00:00:00 2001
From 3ce5b4bd388da96e7866319ee200652797a3b74b Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Mon, 29 Feb 2016 17:50:31 -0600
Subject: [PATCH] Entity Origin API
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
index 8837641..713add6 100644
index aa7cc17..434334a 100644
--- a/src/main/java/org/bukkit/entity/Entity.java
+++ b/src/main/java/org/bukkit/entity/Entity.java
@@ -407,4 +407,15 @@ public interface Entity extends Metadatable, CommandSender {
@@ -421,4 +421,15 @@ public interface Entity extends Metadatable, CommandSender {
Spigot spigot();
// Spigot End

View File

@ -1,11 +1,11 @@
From 1f44ac1349b9039a365ca63f7ec578fdbc0974ea Mon Sep 17 00:00:00 2001
From ed260d61a8f87e73dc55565aff787e53b87b3037 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Mon, 29 Feb 2016 20:40:33 -0600
Subject: [PATCH] POM Changes
diff --git a/pom.xml b/pom.xml
index 95a9224..00edfb5 100644
index 9fa8bde..eb45129 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,12 +1,12 @@
@ -17,16 +17,16 @@ index 95a9224..00edfb5 100644
+ <groupId>com.destroystokyo.paper</groupId>
+ <artifactId>paper</artifactId>
<packaging>jar</packaging>
<version>1.9.4-R0.1-SNAPSHOT</version>
<version>1.10-R0.1-SNAPSHOT</version>
- <name>Spigot</name>
- <url>http://www.spigotmc.org</url>
+ <name>Paper</name>
+ <url>https://github.com/PaperSpigot/Paper</url>
+ <url>https://github.com/PaperMC/Paper</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -15,21 +15,22 @@
<minecraft_version>1_9_R2</minecraft_version>
<minecraft_version>1_10_R1</minecraft_version>
<buildtag.prefix>git-Bukkit-</buildtag.prefix>
<buildtag.suffix></buildtag.suffix>
- <maven.compiler.source>1.6</maven.compiler.source>
@ -194,5 +194,5 @@ index 9304637..674096c 100644
if (stream != null) {
--
2.8.3.windows.1
2.8.3

View File

@ -1,4 +1,4 @@
From f9f9612876507164ff9977d6ac22d948ced258c1 Mon Sep 17 00:00:00 2001
From 673985161e2af584e3e18bbbf33829983c25f50e Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Mon, 29 Feb 2016 21:02:09 -0600
Subject: [PATCH] Paper config files
@ -253,10 +253,10 @@ index 0000000..dae60dc
+ }
+}
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
index c956362..6750d85 100644
index 8f26ab4..973e2c5 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java
@@ -179,6 +179,10 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
@@ -181,6 +181,10 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
org.spigotmc.SpigotConfig.init((File) options.valueOf("spigot-settings"));
org.spigotmc.SpigotConfig.registerCommands();
// Spigot end
@ -268,7 +268,7 @@ index c956362..6750d85 100644
DedicatedServer.LOGGER.info("Generating keypair");
this.a(MinecraftEncryption.b());
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index a7ab03d..4dd6777 100644
index b5b0fd7..4abeccd 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -125,6 +125,8 @@ public abstract class World implements IBlockAccess {
@ -289,7 +289,7 @@ index a7ab03d..4dd6777 100644
this.world = new CraftWorld((WorldServer) this, gen, env);
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
index 5994c1b..12156d4 100644
index d1a33c9..39d60e4 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -693,6 +693,7 @@ public final class CraftServer implements Server {
@ -335,5 +335,5 @@ index 337aa29..979adad 100644
};
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 9fec88bf2a25d685dedd4338cbd7bec7df280fd7 Mon Sep 17 00:00:00 2001
From ab811322114f49feeb05a587ce46cc6dc08a21a8 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 30 Mar 2016 19:36:20 -0400
Subject: [PATCH] MC Dev fixes
@ -18,7 +18,7 @@ index f02fc60..d60e755 100644
}
}
diff --git a/src/main/java/net/minecraft/server/BiomeBase.java b/src/main/java/net/minecraft/server/BiomeBase.java
index 75e98d2..36952ae 100644
index 059c96f..ab04f9c 100644
--- a/src/main/java/net/minecraft/server/BiomeBase.java
+++ b/src/main/java/net/minecraft/server/BiomeBase.java
@@ -49,7 +49,7 @@ public abstract class BiomeBase {
@ -31,7 +31,7 @@ index 75e98d2..36952ae 100644
@Nullable
diff --git a/src/main/java/net/minecraft/server/CommandAbstract.java b/src/main/java/net/minecraft/server/CommandAbstract.java
index f900ff9..95a9c77 100644
index 7876457..20572d4 100644
--- a/src/main/java/net/minecraft/server/CommandAbstract.java
+++ b/src/main/java/net/minecraft/server/CommandAbstract.java
@@ -212,7 +212,7 @@ public abstract class CommandAbstract implements ICommand {
@ -66,5 +66,5 @@ index f5bcbdb..3190cad 100644
for (ZipEntry clazzEntry; (clazzEntry = nmsZipStream.getNextEntry()) != null; ) {
final String entryName = clazzEntry.getName();
--
2.8.2
2.8.3

View File

@ -1,9 +1,8 @@
From 9e9204318a93e93baf42cab944f182a7d8c38d78 Mon Sep 17 00:00:00 2001
From 7da21dbfe05ab9e7d89f7e1f9a5d1cc422205569 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 28 Mar 2016 20:55:47 -0400
Subject: [PATCH] MC Utils
Collection of utils to help reduce NMS diff
diff --git a/src/main/java/net/minecraft/server/MCUtil.java b/src/main/java/net/minecraft/server/MCUtil.java
new file mode 100644
@ -197,15 +196,15 @@ index 0000000..f059bc2
+ }
+}
diff --git a/src/main/java/net/minecraft/server/NBTTagCompound.java b/src/main/java/net/minecraft/server/NBTTagCompound.java
index c01cecb..7fa49dd 100644
index 154a2d5..f8a624e 100644
--- a/src/main/java/net/minecraft/server/NBTTagCompound.java
+++ b/src/main/java/net/minecraft/server/NBTTagCompound.java
@@ -13,7 +13,7 @@ import javax.annotation.Nullable;
public class NBTTagCompound extends NBTBase {
- private Map<String, NBTBase> map = Maps.newHashMap();
+ public Map<String, NBTBase> map = Maps.newHashMap(); // Paper
- private final Map<String, NBTBase> map = Maps.newHashMap();
+ public final Map<String, NBTBase> map = Maps.newHashMap(); // Paper
public NBTTagCompound() {}
@ -224,7 +223,7 @@ index c01cecb..7fa49dd 100644
public UUID a(String s) {
return new UUID(this.getLong(s + "Most"), this.getLong(s + "Least"));
diff --git a/src/main/java/net/minecraft/server/NBTTagList.java b/src/main/java/net/minecraft/server/NBTTagList.java
index 256614d..e86ca6c 100644
index 13b93a4..ffe2353 100644
--- a/src/main/java/net/minecraft/server/NBTTagList.java
+++ b/src/main/java/net/minecraft/server/NBTTagList.java
@@ -12,7 +12,7 @@ import org.apache.logging.log4j.Logger;
@ -237,5 +236,5 @@ index 256614d..e86ca6c 100644
public NBTTagList() {}
--
2.7.4 (Apple Git-66)
2.8.3

View File

@ -1,11 +1,11 @@
From fb2ea5754f6414174122a0d0186e402a0cbee9ca Mon Sep 17 00:00:00 2001
From f2803e9a894738ba64197ddde9ea5fca9e539ff7 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 04:00:11 -0600
Subject: [PATCH] Timings v2
diff --git a/pom.xml b/pom.xml
index 00edfb5..79d2171 100644
index eb45129..34bfeb1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -65,6 +65,12 @@
@ -273,7 +273,7 @@ index 0468372..7739e78 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java
index 8cee6fa..3212255 100644
index a106e44..d17160a 100644
--- a/src/main/java/net/minecraft/server/Block.java
+++ b/src/main/java/net/minecraft/server/Block.java
@@ -33,6 +33,15 @@ public class Block {
@ -293,10 +293,10 @@ index 8cee6fa..3212255 100644
public static int getId(Block block) {
return Block.REGISTRY.a(block); // CraftBukkit - decompile error
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
index 6750d85..70994d4 100644
index 973e2c5..2e8deba 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java
@@ -21,7 +21,7 @@ import java.io.PrintStream;
@@ -22,7 +22,7 @@ import java.io.PrintStream;
import org.apache.logging.log4j.Level;
import org.bukkit.craftbukkit.LoggerOutputStream;
@ -324,7 +324,7 @@ index 6750d85..70994d4 100644
public boolean aa() {
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 6ad99b0..62ada23 100644
index 064b7a9..c0e6dc8 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -24,7 +24,8 @@ import org.bukkit.block.BlockFace;
@ -337,7 +337,7 @@ index 6ad99b0..62ada23 100644
import org.bukkit.event.entity.EntityCombustByEntityEvent;
import org.bukkit.event.hanging.HangingBreakByEntityEvent;
import org.bukkit.event.vehicle.VehicleBlockCollisionEvent;
@@ -141,7 +142,7 @@ public abstract class Entity implements ICommandListener {
@@ -142,7 +143,7 @@ public abstract class Entity implements ICommandListener {
public boolean valid; // CraftBukkit
public org.bukkit.projectiles.ProjectileSource projectileSource; // CraftBukkit - For projectiles only
public boolean forceExplosionKnockback; // CraftBukkit - SPIGOT-949
@ -346,7 +346,7 @@ index 6ad99b0..62ada23 100644
// Spigot start
public final byte activationType = org.spigotmc.ActivationRange.initializeEntityActivationType(this);
public final boolean defaultActivationState;
@@ -464,7 +465,6 @@ public abstract class Entity implements ICommandListener {
@@ -466,7 +467,6 @@ public abstract class Entity implements ICommandListener {
}
public void move(double d0, double d1, double d2) {
@ -354,7 +354,7 @@ index 6ad99b0..62ada23 100644
if (this.noclip) {
this.a(this.getBoundingBox().c(d0, d1, d2));
this.recalcPosition();
@@ -805,7 +805,6 @@ public abstract class Entity implements ICommandListener {
@@ -804,7 +804,6 @@ public abstract class Entity implements ICommandListener {
this.world.methodProfiler.b();
}
@ -363,7 +363,7 @@ index 6ad99b0..62ada23 100644
public void recalcPosition() {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 5f84a70..4d7be74 100644
index 3af0765..b5db35f 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -26,7 +26,7 @@ import org.bukkit.event.entity.EntityTeleportEvent;
@ -375,15 +375,15 @@ index 5f84a70..4d7be74 100644
public abstract class EntityLiving extends Entity {
@@ -1707,7 +1707,6 @@ public abstract class EntityLiving extends Entity {
@@ -1740,7 +1740,6 @@ public abstract class EntityLiving extends Entity {
}
public void m() {
- SpigotTimings.timerEntityBaseTick.startTiming(); // Spigot
super.m();
this.cv();
this.cz();
if (!this.world.isClientSide) {
@@ -1780,9 +1779,7 @@ public abstract class EntityLiving extends Entity {
@@ -1813,9 +1812,7 @@ public abstract class EntityLiving extends Entity {
}
}
@ -393,24 +393,24 @@ index 5f84a70..4d7be74 100644
double d0 = this.locX - this.lastX;
double d1 = this.locZ - this.lastZ;
float f = (float) (d0 * d0 + d1 * d1);
@@ -1851,8 +1848,6 @@ public abstract class EntityLiving extends Entity {
@@ -1884,8 +1881,6 @@ public abstract class EntityLiving extends Entity {
} else {
this.bp = 0;
this.bq = 0;
}
-
- SpigotTimings.timerEntityTickRest.stopTiming(); // Spigot
}
protected float h(float f, float f1) {
@@ -1917,7 +1912,6 @@ public abstract class EntityLiving extends Entity {
@@ -1950,7 +1945,6 @@ public abstract class EntityLiving extends Entity {
}
this.world.methodProfiler.a("ai");
- SpigotTimings.timerEntityAI.startTiming(); // Spigot
if (this.cg()) {
this.bd = false;
this.be = 0.0F;
@@ -1928,7 +1922,6 @@ public abstract class EntityLiving extends Entity {
if (this.cj()) {
this.be = false;
this.bf = 0.0F;
@@ -1961,7 +1955,6 @@ public abstract class EntityLiving extends Entity {
this.doTick();
this.world.methodProfiler.b();
}
@ -418,23 +418,23 @@ index 5f84a70..4d7be74 100644
this.world.methodProfiler.b();
this.world.methodProfiler.a("jump");
@@ -1951,14 +1944,10 @@ public abstract class EntityLiving extends Entity {
this.bf *= 0.98F;
this.bg *= 0.9F;
@@ -1984,14 +1977,10 @@ public abstract class EntityLiving extends Entity {
this.bg *= 0.98F;
this.bh *= 0.9F;
this.r();
- SpigotTimings.timerEntityAIMove.startTiming(); // Spigot
this.g(this.be, this.bf);
this.g(this.bf, this.bg);
- SpigotTimings.timerEntityAIMove.stopTiming(); // Spigot
this.world.methodProfiler.b();
this.world.methodProfiler.a("push");
- SpigotTimings.timerEntityAICollision.startTiming(); // Spigot
this.co();
this.cs();
- SpigotTimings.timerEntityAICollision.stopTiming(); // Spigot
this.world.methodProfiler.b();
}
diff --git a/src/main/java/net/minecraft/server/EntityTracker.java b/src/main/java/net/minecraft/server/EntityTracker.java
index 68242d9..2eea1c1 100644
index 5432e70..72cd51a 100644
--- a/src/main/java/net/minecraft/server/EntityTracker.java
+++ b/src/main/java/net/minecraft/server/EntityTracker.java
@@ -171,7 +171,7 @@ public class EntityTracker {
@ -465,7 +465,7 @@ index 68242d9..2eea1c1 100644
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index e17d5d3..8845ad2 100644
index c5adcc3..6ec5eae 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -50,7 +50,7 @@ import org.apache.logging.log4j.Logger;
@ -485,8 +485,8 @@ index e17d5d3..8845ad2 100644
// CraftBukkit start
if (this.server != null) {
this.server.disablePlugins();
@@ -651,7 +652,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
protected void B() {}
@@ -658,7 +659,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
public void B() {}
protected void C() throws ExceptionWorldConflict { // CraftBukkit - added throws
- SpigotTimings.serverTickTimer.startTiming(); // Spigot
@ -494,7 +494,7 @@ index e17d5d3..8845ad2 100644
long i = System.nanoTime();
++this.ticks;
@@ -678,7 +679,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -685,7 +686,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
}
if (autosavePeriod > 0 && this.ticks % autosavePeriod == 0) { // CraftBukkit
@ -503,7 +503,7 @@ index e17d5d3..8845ad2 100644
this.methodProfiler.a("save");
this.v.savePlayers();
// Spigot Start
@@ -693,7 +694,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -700,7 +701,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
// this.saveChunks(true);
// Spigot End
this.methodProfiler.b();
@ -512,7 +512,7 @@ index e17d5d3..8845ad2 100644
}
this.methodProfiler.a("tallying");
@@ -710,12 +711,13 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -717,12 +718,13 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
this.methodProfiler.b();
this.methodProfiler.b();
@ -528,7 +528,7 @@ index e17d5d3..8845ad2 100644
this.methodProfiler.a("jobs");
Queue queue = this.j;
@@ -726,26 +728,27 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -733,26 +735,27 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
SystemUtils.a(entry, MinecraftServer.LOGGER);
}
// Spigot end
@ -563,7 +563,7 @@ index e17d5d3..8845ad2 100644
// Send time updates to everyone, it will get the right time from the world the player is in.
if (this.ticks % 20 == 0) {
for (int i = 0; i < this.getPlayerList().players.size(); ++i) {
@@ -753,7 +756,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -760,7 +763,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
entityplayer.playerConnection.sendPacket(new PacketPlayOutUpdateTime(entityplayer.world.getTime(), entityplayer.getPlayerTime(), entityplayer.world.getGameRules().getBoolean("doDaylightCycle"))); // Add support for per player time
}
}
@ -572,7 +572,7 @@ index e17d5d3..8845ad2 100644
int i;
@@ -810,9 +813,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -817,9 +820,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
this.methodProfiler.b();
this.methodProfiler.a("tracker");
@ -582,7 +582,7 @@ index e17d5d3..8845ad2 100644
this.methodProfiler.b();
this.methodProfiler.b();
// } // CraftBukkit
@@ -821,20 +822,20 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -828,20 +829,20 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
}
this.methodProfiler.c("connection");
@ -602,7 +602,7 @@ index e17d5d3..8845ad2 100644
- SpigotTimings.tickablesTimer.startTiming(); // Spigot
+ MinecraftTimings.tickablesTimer.startTiming(); // Spigot
for (i = 0; i < this.o.size(); ++i) {
((ITickable) this.o.get(i)).c();
((ITickable) this.o.get(i)).E_();
}
- SpigotTimings.tickablesTimer.stopTiming(); // Spigot
+ MinecraftTimings.tickablesTimer.stopTiming(); // Spigot
@ -710,7 +710,7 @@ index b0249ff..797a84f 100644
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 0a14dd2..7c52e15 100644
index 19be56f..155030d 100644
--- a/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;
@ -721,7 +721,7 @@ index 0a14dd2..7c52e15 100644
// CraftBukkit end
public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -1330,7 +1331,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -1329,7 +1330,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
// CraftBukkit end
private void handleCommand(String s) {
@ -730,7 +730,7 @@ index 0a14dd2..7c52e15 100644
// CraftBukkit start - whole method
if ( org.spigotmc.SpigotConfig.logCommands ) // Spigot
this.LOGGER.info(this.player.getName() + " issued server command: " + s);
@@ -1341,22 +1342,22 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -1340,22 +1341,22 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
this.server.getPluginManager().callEvent(event);
if (event.isCancelled()) {
@ -758,7 +758,7 @@ index 0a14dd2..7c52e15 100644
// CraftBukkit end
}
diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java
index 0cb2e63..6d4f4e7 100644
index 42f37df..2b82312 100644
--- a/src/main/java/net/minecraft/server/TileEntity.java
+++ b/src/main/java/net/minecraft/server/TileEntity.java
@@ -6,12 +6,13 @@ import javax.annotation.Nullable;
@ -775,10 +775,10 @@ index 0cb2e63..6d4f4e7 100644
- public CustomTimingsHandler tickTimer = org.bukkit.craftbukkit.SpigotTimings.getTileEntityTimings(this); // Spigot
+ public Timing tickTimer = MinecraftTimings.getTileEntityTimings(this); // Paper
private static final Logger a = LogManager.getLogger();
private static Map<String, Class<? extends TileEntity>> f = Maps.newHashMap();
private static Map<Class<? extends TileEntity>, String> g = Maps.newHashMap();
private static final Map<String, Class<? extends TileEntity>> f = Maps.newHashMap();
private static final Map<Class<? extends TileEntity>, String> g = Maps.newHashMap();
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 78045c5..7d1272b 100644
index 4abeccd..2a23122 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -18,11 +18,11 @@ import com.google.common.collect.Maps;
@ -812,7 +812,7 @@ index 78045c5..7d1272b 100644
this.entityLimiter = new org.spigotmc.TickLimiter(spigotConfig.entityMaxTickTime);
this.tileLimiter = new org.spigotmc.TickLimiter(spigotConfig.tileMaxTickTime);
}
@@ -1375,6 +1375,7 @@ public abstract class World implements IBlockAccess {
@@ -1379,6 +1379,7 @@ public abstract class World implements IBlockAccess {
}
this.methodProfiler.c("remove");
@ -820,7 +820,7 @@ index 78045c5..7d1272b 100644
this.entityList.removeAll(this.f);
int j;
@@ -1395,6 +1396,7 @@ public abstract class World implements IBlockAccess {
@@ -1399,6 +1400,7 @@ public abstract class World implements IBlockAccess {
this.f.clear();
this.l();
@ -828,7 +828,7 @@ index 78045c5..7d1272b 100644
this.methodProfiler.c("regular");
CrashReportSystemDetails crashreportsystemdetails1;
@@ -1404,6 +1406,7 @@ public abstract class World implements IBlockAccess {
@@ -1408,6 +1410,7 @@ public abstract class World implements IBlockAccess {
timings.entityTick.startTiming(); // Spigot
guardEntityList = true; // Spigot
// CraftBukkit start - Use field for loop variable
@ -836,7 +836,7 @@ index 78045c5..7d1272b 100644
int entitiesThisCycle = 0;
if (tickPosition < 0) tickPosition = 0;
for (entityLimiter.initTick();
@@ -1425,10 +1428,11 @@ public abstract class World implements IBlockAccess {
@@ -1429,10 +1432,11 @@ public abstract class World implements IBlockAccess {
this.methodProfiler.a("tick");
if (!entity.dead && !(entity instanceof EntityPlayer)) {
try {
@ -850,7 +850,7 @@ index 78045c5..7d1272b 100644
crashreport1 = CrashReport.a(throwable1, "Ticking entity");
crashreportsystemdetails1 = crashreport1.a("Entity being ticked");
entity.appendEntityCrashDetails(crashreportsystemdetails1);
@@ -1560,6 +1564,7 @@ public abstract class World implements IBlockAccess {
@@ -1564,6 +1568,7 @@ public abstract class World implements IBlockAccess {
}
timings.tileEntityPending.stopTiming(); // Spigot
@ -858,7 +858,7 @@ index 78045c5..7d1272b 100644
this.methodProfiler.b();
this.methodProfiler.b();
}
@@ -1605,7 +1610,6 @@ public abstract class World implements IBlockAccess {
@@ -1609,7 +1614,6 @@ public abstract class World implements IBlockAccess {
entity.ticksLived++;
entity.inactiveTick();
} else {
@ -866,15 +866,15 @@ index 78045c5..7d1272b 100644
// CraftBukkit end
entity.M = entity.locX;
entity.N = entity.locY;
@@ -1614,6 +1618,7 @@ public abstract class World implements IBlockAccess {
@@ -1618,6 +1622,7 @@ public abstract class World implements IBlockAccess {
entity.lastPitch = entity.pitch;
if (flag && entity.aa) {
if (flag && entity.ab) {
++entity.ticksLived;
+ ++co.aikar.timings.TimingHistory.activatedEntityTicks; // Paper
if (entity.isPassenger()) {
entity.aw();
} else {
@@ -1672,8 +1677,6 @@ public abstract class World implements IBlockAccess {
@@ -1676,8 +1681,6 @@ public abstract class World implements IBlockAccess {
}
}
}
@ -884,7 +884,7 @@ index 78045c5..7d1272b 100644
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index f8ef497..4980c7a 100644
index bcbb368..a691d8f 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -245,13 +245,13 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@ -944,7 +944,7 @@ index f8ef497..4980c7a 100644
while (iterator.hasNext()) {
@@ -731,6 +735,8 @@ public class WorldServer extends World implements IAsyncTaskHandler {
if (this.areChunksLoadedBetween(nextticklistentry.a.a(-b0, -b0, -b0), nextticklistentry.a.a(b0, b0, b0))) {
if (this.areChunksLoadedBetween(nextticklistentry.a.a(0, 0, 0), nextticklistentry.a.a(0, 0, 0))) {
IBlockData iblockdata = this.getType(nextticklistentry.a);
+ co.aikar.timings.Timing timing = iblockdata.getBlock().getTiming(); // Paper
+ timing.startTiming(); // Paper
@ -965,7 +965,7 @@ index f8ef497..4980c7a 100644
this.methodProfiler.b();
this.U.clear();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 12156d4..f0db144 100644
index 39d60e4..218d5db 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1726,6 +1726,7 @@ public final class CraftServer implements Server {
@ -1181,7 +1181,7 @@ index 41d2d87..0000000
- }
-}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 46882f1..35f6c27 100644
index 5941fab..ce85bc2 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -37,15 +37,9 @@ import org.bukkit.configuration.serialization.DelegateDeserialization;
@ -1350,7 +1350,7 @@ index e52ef47..3d90b34 100644
this.value = value;
}
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
index a752376..8870607 100644
index 30efc99..eb30abe 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -29,7 +29,7 @@ import net.minecraft.server.EntityWither;
@ -1398,7 +1398,7 @@ index a752376..8870607 100644
- SpigotTimings.checkIfActiveTimer.startTiming();
// Never safe to skip fireworks or entities not yet added to chunk
// PAIL: inChunk
if ( !entity.aa || entity instanceof EntityFireworks ) {
if ( !entity.ab || entity instanceof EntityFireworks ) {
- SpigotTimings.checkIfActiveTimer.stopTiming();
return true;
}

View File

@ -1,14 +1,14 @@
From 71af32a912b140b221e5df8701fdefe297a19ceb Mon Sep 17 00:00:00 2001
From 44e34ae1a703d858ed23c66eda926d6d3f4b31e2 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Mon, 29 Feb 2016 21:20:21 -0600
Subject: [PATCH] Vanished players don't have rights
diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java
index 7593aa2..29b6f16 100644
index cd2f7be..91fda88 100644
--- a/src/main/java/net/minecraft/server/EntityArrow.java
+++ b/src/main/java/net/minecraft/server/EntityArrow.java
@@ -185,6 +185,14 @@ public abstract class EntityArrow extends Entity implements IProjectile {
@@ -189,6 +189,14 @@ public abstract class EntityArrow extends Entity implements IProjectile {
}
}
@ -24,7 +24,7 @@ index 7593aa2..29b6f16 100644
this.a(movingobjectposition);
}
diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java
index c47b009..12e2303 100644
index 5a62881..da4eaf1 100644
--- a/src/main/java/net/minecraft/server/EntityFishingHook.java
+++ b/src/main/java/net/minecraft/server/EntityFishingHook.java
@@ -198,6 +198,14 @@ public class EntityFishingHook extends Entity {
@ -43,10 +43,10 @@ index c47b009..12e2303 100644
org.bukkit.craftbukkit.event.CraftEventFactory.callProjectileHitEvent(this); // Craftbukkit - Call event
if (movingobjectposition.entity != null) {
diff --git a/src/main/java/net/minecraft/server/EntityProjectile.java b/src/main/java/net/minecraft/server/EntityProjectile.java
index f47b148..0c36bad 100644
index 07dc5cc..770f130 100644
--- a/src/main/java/net/minecraft/server/EntityProjectile.java
+++ b/src/main/java/net/minecraft/server/EntityProjectile.java
@@ -158,6 +158,14 @@ public abstract class EntityProjectile extends Entity implements IProjectile {
@@ -160,6 +160,14 @@ public abstract class EntityProjectile extends Entity implements IProjectile {
movingobjectposition = new MovingObjectPosition(entity);
}
@ -62,7 +62,7 @@ index f47b148..0c36bad 100644
if (movingobjectposition.type == MovingObjectPosition.EnumMovingObjectType.BLOCK && this.world.getType(movingobjectposition.a()).getBlock() == Blocks.PORTAL) {
this.e(movingobjectposition.a());
diff --git a/src/main/java/net/minecraft/server/ItemBlock.java b/src/main/java/net/minecraft/server/ItemBlock.java
index b9aa1fc..6dbad10 100644
index 3b6feb7..1450483 100644
--- a/src/main/java/net/minecraft/server/ItemBlock.java
+++ b/src/main/java/net/minecraft/server/ItemBlock.java
@@ -23,7 +23,7 @@ public class ItemBlock extends Item {
@ -75,10 +75,10 @@ index b9aa1fc..6dbad10 100644
IBlockData iblockdata1 = this.a.getPlacedState(world, blockposition, enumdirection, f, f1, f2, i, entityhuman);
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 0c3ed2d..e2a06f1 100644
index 2a23122..f8c8e4b 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1690,6 +1690,14 @@ public abstract class World implements IBlockAccess {
@@ -1694,6 +1694,14 @@ public abstract class World implements IBlockAccess {
for (int i = 0; i < list.size(); ++i) {
Entity entity1 = (Entity) list.get(i);
@ -94,5 +94,5 @@ index 0c3ed2d..e2a06f1 100644
return false;
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 4e2dd233744cdd1ead4930a0e390656b3270c8f5 Mon Sep 17 00:00:00 2001
From d28a7aa05ce6180aeb5248aeb987ba08a6ab42b7 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 12:45:11 -0600
Subject: [PATCH] Configurable squid spawn ranges
@ -22,19 +22,19 @@ index dae60dc..c74c8a7 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntitySquid.java b/src/main/java/net/minecraft/server/EntitySquid.java
index c771b6b..62469f8 100644
index c5ac670..85aebc0 100644
--- a/src/main/java/net/minecraft/server/EntitySquid.java
+++ b/src/main/java/net/minecraft/server/EntitySquid.java
@@ -141,7 +141,8 @@ public class EntitySquid extends EntityWaterAnimal {
@@ -145,7 +145,8 @@ public class EntitySquid extends EntityWaterAnimal {
}
public boolean cG() {
- return this.locY > 45.0D && this.locY < (double) this.world.K() && super.cG();
public boolean cK() {
- return this.locY > 45.0D && this.locY < (double) this.world.K() && super.cK();
+ // Paper - Configurable squid spawn height range
+ return this.locY > world.paperConfig.squidMinSpawnHeight && this.locY < world.paperConfig.squidMaxSpawnHeight && super.cG();
+ return this.locY > world.paperConfig.squidMinSpawnHeight && this.locY < world.paperConfig.squidMaxSpawnHeight && super.cK();
}
public void b(float f, float f1, float f2) {
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From aa74736eea28148bcbbda202c2c130aeb3636927 Mon Sep 17 00:00:00 2001
From 4247f8b4fd518e49f1bb0e6a22a2a3c1bd4aed29 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 13:02:51 -0600
Subject: [PATCH] Configurable cactus and reed natural growth heights
@ -49,5 +49,5 @@ index 4bb63ff..2e565d3 100644
if (j >= (byte) range(3, ((100.0F / world.spigotConfig.caneModifier) * 15) + 0.5F, 15)) { // Spigot
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 14d9f4590ae91be7b3dd0e32fcf5faab128164b1 Mon Sep 17 00:00:00 2001
From f88c8fd4582df133bd04083eda03b8015e62db30 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 13:09:16 -0600
Subject: [PATCH] Configurable baby zombie movement speed
@ -20,7 +20,7 @@ index 8d9c322..ae3d0e4 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java
index 13af566..9f81142 100644
index c2913d6..3145bdc 100644
--- a/src/main/java/net/minecraft/server/EntityZombie.java
+++ b/src/main/java/net/minecraft/server/EntityZombie.java
@@ -16,7 +16,7 @@ public class EntityZombie extends EntityMonster {
@ -29,9 +29,9 @@ index 13af566..9f81142 100644
private static final UUID b = UUID.fromString("B9766B59-9566-4402-BC1F-2EE2A276D836");
- private static final AttributeModifier c = new AttributeModifier(EntityZombie.b, "Baby speed boost", 0.5D, 1);
+ private final AttributeModifier c = new AttributeModifier(EntityZombie.b, "Baby speed boost", world.paperConfig.babyZombieMovementSpeed, 1); // Paper - Remove static - Make baby speed configurable
private static final DataWatcherObject<Boolean> bw = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.h);
private static final DataWatcherObject<Integer> bx = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.b);
private static final DataWatcherObject<Boolean> by = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.h);
private static final DataWatcherObject<Boolean> bx = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.h);
private static final DataWatcherObject<Integer> by = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.b);
private static final DataWatcherObject<Boolean> bz = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.h);
@@ -106,9 +106,9 @@ public class EntityZombie extends EntityMonster {
if (this.world != null && !this.world.isClientSide) {
AttributeInstance attributeinstance = this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED);
@ -45,5 +45,5 @@ index 13af566..9f81142 100644
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 7360bcabef9effea0d23611bde5a3ed0c3ce699b Mon Sep 17 00:00:00 2001
From 34e9632195c39d7e3a6e49b75c945b67b5f92cae Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 13:14:11 -0600
Subject: [PATCH] Configurable fishing time ranges
@ -22,18 +22,18 @@ index ae3d0e4..9a72ef7 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java
index 12e2303..0e135ce 100644
index da4eaf1..9b71cdd 100644
--- a/src/main/java/net/minecraft/server/EntityFishingHook.java
+++ b/src/main/java/net/minecraft/server/EntityFishingHook.java
@@ -359,7 +359,7 @@ public class EntityFishingHook extends Entity {
this.ax = MathHelper.nextInt(this.random, 20, 80);
this.aw = MathHelper.nextInt(this.random, 20, 80);
}
} else {
- this.aw = MathHelper.nextInt(this.random, 100, 900);
+ this.aw = MathHelper.nextInt(this.random, world.paperConfig.fishingMinTicks, world.paperConfig.fishingMaxTicks); // Paper - Configurable fishing time range
this.aw -= EnchantmentManager.g(this.owner) * 20 * 5;
- this.av = MathHelper.nextInt(this.random, 100, 900);
+ this.av = MathHelper.nextInt(this.random, world.paperConfig.fishingMinTicks, world.paperConfig.fishingMaxTicks); // Paper - Configurable fishing time range
this.av -= EnchantmentManager.g(this.owner) * 20 * 5;
}
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 105ff62df1fc75c06aaa91e9d6c8f61527dd8566 Mon Sep 17 00:00:00 2001
From 61f10185ed47a235d07f9c59ff107cc23818d2cc Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 13:24:16 -0600
Subject: [PATCH] Allow nerfed mobs to jump
@ -19,18 +19,18 @@ index 9a72ef7..a44bbed 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index ea77a33..ecb59e7 100644
index d600fd7..bbf7f02 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -44,6 +44,7 @@ public abstract class EntityInsentient extends EntityLiving {
private boolean bD;
private boolean bE;
private Entity leashHolder;
private NBTTagCompound bF;
private NBTTagCompound bG;
+ public PathfinderGoalFloat goalFloat; // Paper
public EntityInsentient(World world) {
super(world);
@@ -631,6 +632,12 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -654,6 +655,12 @@ public abstract class EntityInsentient extends EntityLiving {
// Spigot Start
if ( this.fromMobSpawner )
{
@ -44,7 +44,7 @@ index ea77a33..ecb59e7 100644
}
// Spigot End
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalFloat.java b/src/main/java/net/minecraft/server/PathfinderGoalFloat.java
index 1a20dbf..c56a0d0 100644
index e3b4058..c16ad2c 100644
--- a/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 {
@ -56,5 +56,5 @@ index 1a20dbf..c56a0d0 100644
((Navigation) entityinsentient.getNavigation()).c(true);
}
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From 3dd75df6f6bc3d751fd8055aa8635f2fceee2f4f Mon Sep 17 00:00:00 2001
From 6fbbdb0f26fb7350a19ffb2d5647f5e8c7d88925 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 13:31:05 -0600
Subject: [PATCH] Toggle for player interact limiter
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 252c6c3..f9a4bf4 100644
index 7739e78..87bae87 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -184,4 +184,12 @@ public class PaperConfig {
@ -22,10 +22,10 @@ index 252c6c3..f9a4bf4 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 7c52e15..0c2c151 100644
index 155030d..378cc6e 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -912,7 +912,8 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -911,7 +911,8 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
this.player.resetIdleTimer();
// Spigot start
boolean throttled = false;
@ -36,5 +36,5 @@ index 7c52e15..0c2c151 100644
} else if ( packetplayinblockplace.timestamp - lastPlace >= 30 || lastPlace == -1 )
{
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From c5ca014520533f97fea98525454b2ef371d0e83a Mon Sep 17 00:00:00 2001
From e74586a69790842697352759b3546ac021c0f027 Mon Sep 17 00:00:00 2001
From: gsand <gsandowns@gmail.com>
Date: Tue, 1 Mar 2016 13:43:16 -0600
Subject: [PATCH] Player Exhaustion Multipliers
@ -23,10 +23,10 @@ index a44bbed..b1d712f 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java
index 3212255..3d6f803 100644
index d17160a..f7cf12f 100644
--- a/src/main/java/net/minecraft/server/Block.java
+++ b/src/main/java/net/minecraft/server/Block.java
@@ -450,7 +450,7 @@ public class Block {
@@ -455,7 +455,7 @@ public class Block {
public void a(World world, EntityHuman entityhuman, BlockPosition blockposition, IBlockData iblockdata, @Nullable TileEntity tileentity, @Nullable ItemStack itemstack) {
entityhuman.b(StatisticList.a(this));
@ -36,10 +36,10 @@ index 3212255..3d6f803 100644
ItemStack itemstack1 = this.u(iblockdata);
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
index 6a8f499..3e1a84e 100644
index ca9f0fe..cbceeca 100644
--- a/src/main/java/net/minecraft/server/EntityHuman.java
+++ b/src/main/java/net/minecraft/server/EntityHuman.java
@@ -1455,13 +1455,13 @@ public abstract class EntityHuman extends EntityLiving {
@@ -1464,13 +1464,13 @@ public abstract class EntityHuman extends EntityLiving {
i = Math.round(MathHelper.sqrt(d0 * d0 + d1 * d1 + d2 * d2) * 100.0F);
if (i > 0) {
this.a(StatisticList.q, i);
@ -53,8 +53,8 @@ index 6a8f499..3e1a84e 100644
- this.applyExhaustion(0.015F * (float) i * 0.01F);
+ this.applyExhaustion(world.paperConfig.playerSwimmingExhaustion); // Paper - Configurable swimming exhaustion
}
} else if (this.n_()) {
} else if (this.m_()) {
if (d1 > 0.0D) {
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 2540f8f92c0ba3791668eaab910567ee1c0234bd Mon Sep 17 00:00:00 2001
From f40e12f5196e4d6a1f4b5a216616133016dc780b Mon Sep 17 00:00:00 2001
From: Suddenly <suddenly@suddenly.coffee>
Date: Tue, 1 Mar 2016 13:51:54 -0600
Subject: [PATCH] Add configurable despawn distances for living entities
@ -30,10 +30,10 @@ index b1d712f..402dbe7 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index ecb59e7..ff3443a 100644
index bbf7f02..85d4b81 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -610,13 +610,13 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -633,13 +633,13 @@ public abstract class EntityInsentient extends EntityLiving {
double d2 = entityhuman.locZ - this.locZ;
double d3 = d0 * d0 + d1 * d1 + d2 * d2;
@ -51,5 +51,5 @@ index ecb59e7..ff3443a 100644
}
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 45ab98c4fc1e70b8214aa368871d6621d04815c1 Mon Sep 17 00:00:00 2001
From 87ba7a3f09983fa690278baf262b8ba6c3823e37 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Thu, 3 Mar 2016 03:53:43 -0600
Subject: [PATCH] Allow for toggling of spawn chunks
@ -20,7 +20,7 @@ index 402dbe7..78dcf26 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index e2a06f1..9599849 100644
index f8c8e4b..c110c74 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -198,6 +198,7 @@ public abstract class World implements IBlockAccess {
@ -32,5 +32,5 @@ index e2a06f1..9599849 100644
this.tileLimiter = new org.spigotmc.TickLimiter(spigotConfig.tileMaxTickTime);
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 7d0cc5ff146d3fbf97eb9006f7013fca14c14eea Mon Sep 17 00:00:00 2001
From 32ef7d31604f2cf0aee7bae369ab702f2e626441 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Tue, 1 Mar 2016 14:14:15 -0600
Subject: [PATCH] Drop falling block and tnt entities at the specified height
@ -24,12 +24,12 @@ index 78dcf26..f19ae97 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityFallingBlock.java b/src/main/java/net/minecraft/server/EntityFallingBlock.java
index 0b2c5d7..5ec5e44 100644
index 4514401..65c1150 100644
--- a/src/main/java/net/minecraft/server/EntityFallingBlock.java
+++ b/src/main/java/net/minecraft/server/EntityFallingBlock.java
@@ -77,6 +77,17 @@ public class EntityFallingBlock extends Entity {
@@ -80,6 +80,17 @@ public class EntityFallingBlock extends Entity {
}
this.motY -= 0.03999999910593033D;
this.move(this.motX, this.motY, this.motZ);
+
+ // Paper start - Configurable EntityFallingBlock height nerf
@ -46,12 +46,12 @@ index 0b2c5d7..5ec5e44 100644
this.motY *= 0.9800000190734863D;
this.motZ *= 0.9800000190734863D;
diff --git a/src/main/java/net/minecraft/server/EntityTNTPrimed.java b/src/main/java/net/minecraft/server/EntityTNTPrimed.java
index 35ed2a6..564ea37 100644
index 0ed3f89..2745c49 100644
--- a/src/main/java/net/minecraft/server/EntityTNTPrimed.java
+++ b/src/main/java/net/minecraft/server/EntityTNTPrimed.java
@@ -51,6 +51,13 @@ public class EntityTNTPrimed extends Entity {
this.lastZ = this.locZ;
this.motY -= 0.03999999910593033D;
@@ -54,6 +54,13 @@ public class EntityTNTPrimed extends Entity {
}
this.move(this.motX, this.motY, this.motZ);
+
+ // Paper start - Configurable TNT entity height nerf
@ -64,5 +64,5 @@ index 35ed2a6..564ea37 100644
this.motY *= 0.9800000190734863D;
this.motZ *= 0.9800000190734863D;
--
1.9.1
2.8.3

View File

@ -1,4 +1,4 @@
From ad6832d5982a4f8af5dfcac70d5a17c97c73a780 Mon Sep 17 00:00:00 2001
From 95738bca3c885025041cad1726919f30b68a8055 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Tue, 1 Mar 2016 14:27:13 -0600
Subject: [PATCH] Configurable speed for water flowing over lava
@ -20,7 +20,7 @@ index f19ae97..8fc2f6c 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/BlockFlowing.java b/src/main/java/net/minecraft/server/BlockFlowing.java
index ab1efab..be8020a 100644
index c0f4961..b00865e 100644
--- a/src/main/java/net/minecraft/server/BlockFlowing.java
+++ b/src/main/java/net/minecraft/server/BlockFlowing.java
@@ -35,7 +35,7 @@ public class BlockFlowing extends BlockFluids {
@ -57,5 +57,5 @@ index ab1efab..be8020a 100644
+ }
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From b8648e1d9e01eeac13172af13bf3fdce578d0463 Mon Sep 17 00:00:00 2001
From 2e8740a172aac1f963cf64634f6af7c49a5e21bb Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 14:32:43 -0600
Subject: [PATCH] Show 'Paper' in client crashes, server lists, and Mojang
@ -6,7 +6,7 @@ Subject: [PATCH] Show 'Paper' in client crashes, server lists, and Mojang
diff --git a/src/main/java/net/minecraft/server/EULA.java b/src/main/java/net/minecraft/server/EULA.java
index c872029..fac5f88 100644
index a8b5079..ebbc1fc 100644
--- a/src/main/java/net/minecraft/server/EULA.java
+++ b/src/main/java/net/minecraft/server/EULA.java
@@ -51,7 +51,8 @@ public class EULA {
@ -17,13 +17,13 @@ index c872029..fac5f88 100644
+ properties.store(fileoutputstream, "By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula)." +
+ "\nand also agreeing that tacos are tasty."); // Paper - fix lag
} catch (Exception exception) {
EULA.a.warn("Failed to save " + this.b, exception);
EULA.a.warn("Failed to save {}", new Object[] { this.b, exception});
} finally {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 8845ad2..14389dd 100644
index 6ec5eae..ed44a2a 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1028,7 +1028,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -1035,7 +1035,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
}
public String getServerModName() {
@ -33,7 +33,7 @@ index 8845ad2..14389dd 100644
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
index f0db144..abb1653 100644
index 218d5db..d3db0a8 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -131,7 +131,7 @@ import net.md_5.bungee.api.chat.BaseComponent;
@ -80,5 +80,5 @@ index 94a3d42..3ed983c 100644
log.log( Level.SEVERE, "------------------------------" );
//
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From ec731f31e18887483d230fc0ae9143b6e152860c Mon Sep 17 00:00:00 2001
From b10b62e4704a0f5fc2c4500c6a7de5fcafe7b683 Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Tue, 1 Mar 2016 14:47:52 -0600
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
index 3e1a84e..0f73fcf 100644
index cbceeca..cddc7f4 100644
--- a/src/main/java/net/minecraft/server/EntityHuman.java
+++ b/src/main/java/net/minecraft/server/EntityHuman.java
@@ -1,6 +1,7 @@
@ -16,8 +16,8 @@ index 3e1a84e..0f73fcf 100644
import com.google.common.collect.Lists;
import com.mojang.authlib.GameProfile;
import java.util.Arrays;
@@ -66,6 +67,19 @@ public abstract class EntityHuman extends EntityLiving {
private final ItemCooldown bV = this.l();
@@ -65,6 +66,19 @@ public abstract class EntityHuman extends EntityLiving {
private final ItemCooldown bW = this.l();
public EntityFishingHook hookedFish;
+ // Paper start - affectsSpawning API
@ -37,10 +37,10 @@ index 3e1a84e..0f73fcf 100644
public boolean fauxSleeping;
public String spawnWorld = "";
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index ff3443a..da102e3 100644
index 85d4b81..74aaba2 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -602,7 +602,7 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -625,7 +625,7 @@ public abstract class EntityInsentient extends EntityLiving {
if (this.persistent) {
this.ticksFarFromPlayer = 0;
} else {
@ -50,20 +50,20 @@ index ff3443a..da102e3 100644
if (entityhuman != null) {
double d0 = entityhuman.locX - this.locX;
diff --git a/src/main/java/net/minecraft/server/EntitySilverfish.java b/src/main/java/net/minecraft/server/EntitySilverfish.java
index b5fce84..ed8a425 100644
index c4e5f50..d6c70c4 100644
--- a/src/main/java/net/minecraft/server/EntitySilverfish.java
+++ b/src/main/java/net/minecraft/server/EntitySilverfish.java
@@ -88,7 +88,7 @@ public class EntitySilverfish extends EntityMonster {
@@ -93,7 +93,7 @@ public class EntitySilverfish extends EntityMonster {
public boolean cG() {
if (super.cG()) {
public boolean cK() {
if (super.cK()) {
- EntityHuman entityhuman = this.world.b(this, 5.0D);
+ EntityHuman entityhuman = this.world.findNearbyPlayerNotInCreativeMode(this, 5.0D, EntityHuman.affectsSpawningFilter()); // Paper - affectsSpawning filter
return entityhuman == null;
} else {
diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java
index 9f81142..774d773 100644
index 3145bdc..6981185 100644
--- a/src/main/java/net/minecraft/server/EntityZombie.java
+++ b/src/main/java/net/minecraft/server/EntityZombie.java
@@ -197,7 +197,7 @@ public class EntityZombie extends EntityMonster {
@ -76,7 +76,7 @@ index 9f81142..774d773 100644
entityzombie.setGoalTarget(entityliving, EntityTargetEvent.TargetReason.REINFORCEMENT_TARGET, true);
entityzombie.prepare(this.world.D(new BlockPosition(entityzombie)), (GroupDataEntity) null);
diff --git a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
index df35d71..6c3e365 100644
index 7bae42a..f040775 100644
--- a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
+++ b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
@@ -32,7 +32,7 @@ public abstract class MobSpawnerAbstract {
@ -89,7 +89,7 @@ index df35d71..6c3e365 100644
public void c() {
diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java
index 4eedd41..852bdf8 100644
index f8a871d..55c36fc 100644
--- a/src/main/java/net/minecraft/server/SpawnerCreature.java
+++ b/src/main/java/net/minecraft/server/SpawnerCreature.java
@@ -50,6 +50,8 @@ public final class SpawnerCreature {
@ -111,7 +111,7 @@ index 4eedd41..852bdf8 100644
biomebase_biomemeta = worldserver.a(enumcreaturetype, (BlockPosition) blockposition_mutableblockposition);
if (biomebase_biomemeta == null) {
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 9599849..81f4a42 100644
index c110c74..da6b78b 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -3,6 +3,7 @@
@ -122,7 +122,7 @@ index 9599849..81f4a42 100644
import com.google.common.collect.Lists;
import java.util.ArrayList;
import java.util.Calendar;
@@ -2701,16 +2702,31 @@ public abstract class World implements IBlockAccess {
@@ -2705,16 +2706,31 @@ public abstract class World implements IBlockAccess {
@Nullable
public EntityHuman findNearbyPlayer(Entity entity, double d0) {
@ -156,7 +156,7 @@ index 9599849..81f4a42 100644
double d4 = -1.0D;
EntityHuman entityhuman = null;
@@ -2722,6 +2738,8 @@ public abstract class World implements IBlockAccess {
@@ -2726,6 +2742,8 @@ public abstract class World implements IBlockAccess {
}
// CraftBukkit end
@ -165,7 +165,7 @@ index 9599849..81f4a42 100644
if ((IEntitySelector.d.apply(entityhuman1) || !flag) && (IEntitySelector.e.apply(entityhuman1) || flag)) {
double d5 = entityhuman1.e(d0, d1, d2);
@@ -2736,9 +2754,17 @@ public abstract class World implements IBlockAccess {
@@ -2740,9 +2758,17 @@ public abstract class World implements IBlockAccess {
}
public boolean isPlayerNearby(double d0, double d1, double d2, double d3) {
@ -184,7 +184,7 @@ index 9599849..81f4a42 100644
double d4 = entityhuman.e(d0, d1, d2);
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 35f6c27..b7ff27c 100644
index ce85bc2..eb6d41b 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1408,6 +1408,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -205,5 +205,5 @@ index 35f6c27..b7ff27c 100644
private final Player.Spigot spigot = new Player.Spigot()
{
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From a5b335a3eccdd958fa29427010f9ef8a2e1d1639 Mon Sep 17 00:00:00 2001
From 0a3ca307c7e50e0961b26442794c63bf7c356be6 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 14:54:32 -0600
Subject: [PATCH] Metrics
@ -18,5 +18,5 @@ index a5fd59d..680283c 100644
String pluginVersion = (Metrics.class.getPackage().getImplementationVersion() != null) ? Metrics.class.getPackage().getImplementationVersion() : "unknown";
String serverVersion = Bukkit.getVersion();
--
2.7.4
2.8.3

View File

@ -1,14 +1,14 @@
From f739616fdab39b3ef5bdd9e64fdaf319f262026c Mon Sep 17 00:00:00 2001
From d0d31b0118bde005c6a3e08555ebe0e0a4fd58cd Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Tue, 1 Mar 2016 15:08:03 -0600
Subject: [PATCH] Remove invalid mob spawner tile entities
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 00fb20d..5690e81 100644
index 9343615..c051c77 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -721,6 +721,10 @@ public class Chunk {
@@ -719,6 +719,10 @@ public class Chunk {
tileentity.z();
this.tileEntities.put(blockposition, tileentity);
// CraftBukkit start
@ -20,5 +20,5 @@ index 00fb20d..5690e81 100644
System.out.println("Attempted to place a tile entity (" + tileentity + ") at " + tileentity.position.getX() + "," + tileentity.position.getY() + "," + tileentity.position.getZ()
+ " (" + org.bukkit.craftbukkit.util.CraftMagicNumbers.getMaterial(getBlockData(blockposition).getBlock()) + ") where there was no entity tile!");
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From dff7e0d34f098097330c9431e2fda06a6dda2b1a Mon Sep 17 00:00:00 2001
From b2d99fa9ab15185be72c51be72eadd7f05406428 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 22:01:19 -0600
Subject: [PATCH] Optimize TileEntity Ticking
diff --git a/src/main/java/net/minecraft/server/TileEntityChest.java b/src/main/java/net/minecraft/server/TileEntityChest.java
index 0b70d16..7635df9 100644
index 5014903..81db929 100644
--- a/src/main/java/net/minecraft/server/TileEntityChest.java
+++ b/src/main/java/net/minecraft/server/TileEntityChest.java
@@ -9,17 +9,17 @@ import org.bukkit.craftbukkit.entity.CraftHumanEntity;
@ -33,16 +33,16 @@ index 0b70d16..7635df9 100644
private int p;
private BlockChest.Type q;
private String r;
@@ -237,6 +237,8 @@ public class TileEntityChest extends TileEntityLootable implements ITickable, II
@@ -241,6 +241,8 @@ public class TileEntityChest extends TileEntityLootable implements ITickable, II
}
public void c() {
public void E_() {
+ // Paper - Disable all of this, just in case this does get ticked
+ /*
this.m();
int i = this.position.getX();
int j = this.position.getY();
@@ -317,7 +319,8 @@ public class TileEntityChest extends TileEntityLootable implements ITickable, II
@@ -321,7 +323,8 @@ public class TileEntityChest extends TileEntityLootable implements ITickable, II
this.j = 0.0F;
}
}
@ -52,7 +52,7 @@ index 0b70d16..7635df9 100644
}
public boolean c(int i, int j) {
@@ -337,6 +340,28 @@ public class TileEntityChest extends TileEntityLootable implements ITickable, II
@@ -341,6 +344,28 @@ public class TileEntityChest extends TileEntityLootable implements ITickable, II
int oldPower = Math.max(0, Math.min(15, this.l)); // CraftBukkit - Get power before new viewer is added
++this.l;
@ -81,7 +81,7 @@ index 0b70d16..7635df9 100644
if (this.world == null) return; // CraftBukkit
this.world.playBlockAction(this.position, this.getBlock(), 1, this.l);
@@ -360,6 +385,34 @@ public class TileEntityChest extends TileEntityLootable implements ITickable, II
@@ -364,6 +389,34 @@ public class TileEntityChest extends TileEntityLootable implements ITickable, II
int oldPower = Math.max(0, Math.min(15, this.l)); // CraftBukkit - Get power before new viewer is added
--this.l;
if (this.world == null) return; // CraftBukkit
@ -117,7 +117,7 @@ index 0b70d16..7635df9 100644
// CraftBukkit start - Call redstone event
diff --git a/src/main/java/net/minecraft/server/TileEntityEnderChest.java b/src/main/java/net/minecraft/server/TileEntityEnderChest.java
index eca71c0..73085d6 100644
index d5f0d61..b257bc4 100644
--- a/src/main/java/net/minecraft/server/TileEntityEnderChest.java
+++ b/src/main/java/net/minecraft/server/TileEntityEnderChest.java
@@ -1,15 +1,17 @@
@ -135,7 +135,7 @@ index eca71c0..73085d6 100644
public TileEntityEnderChest() {}
public void c() {
public void E_() {
+ // Paper start - Disable all of this, just in case this does get ticked
+ /*
if (++this.h % 20 * 4 == 0) {
@ -162,7 +162,7 @@ index eca71c0..73085d6 100644
+ double d1 = (double) this.getPosition().getX() + 0.5D;
+ double d0 = (double) this.getPosition().getZ() + 0.5D;
+
+ this.world.a((EntityHuman) null, d1, (double) this.getPosition().getY() + 0.5D, d0, SoundEffects.aM, SoundCategory.BLOCKS, 0.5F, this.world.random.nextFloat() * 0.1F + 0.9F);
+ this.world.a((EntityHuman) null, d1, (double) this.getPosition().getY() + 0.5D, d0, SoundEffects.aN, SoundCategory.BLOCKS, 0.5F, this.world.random.nextFloat() * 0.1F + 0.9F);
+ }
+ // Paper end
+
@ -177,7 +177,7 @@ index eca71c0..73085d6 100644
+ double d0 = (double) this.getPosition().getX() + 0.5D;
+ double d2 = (double) this.getPosition().getZ() + 0.5D;
+
+ this.world.a((EntityHuman) null, d0, (double) this.getPosition().getY() + 0.5D, d2, SoundEffects.aL, SoundCategory.BLOCKS, 0.5F, this.world.random.nextFloat() * 0.1F + 0.9F);
+ this.world.a((EntityHuman) null, d0, (double) this.getPosition().getY() + 0.5D, d2, SoundEffects.aM, SoundCategory.BLOCKS, 0.5F, this.world.random.nextFloat() * 0.1F + 0.9F);
+ this.a = 0.0F;
+ }
+ // Paper end
@ -186,5 +186,5 @@ index eca71c0..73085d6 100644
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 5ba80486ec3af8f212ebcfdc8dbdb985d4f1761d Mon Sep 17 00:00:00 2001
From 0951c28931bdeff177c9b9506f18503f647ff8ce Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 1 Mar 2016 23:09:29 -0600
Subject: [PATCH] Further improve server tick loop
@ -12,7 +12,7 @@ Previous implementation did not calculate TPS correctly.
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
index 14389dd..ebf6c48 100644
index ed44a2a..ef0e063 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -114,17 +114,11 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@ -34,7 +34,7 @@ index 14389dd..ebf6c48 100644
public MinecraftServer(OptionSet options, Proxy proxy, DataConverterManager dataconvertermanager, YggdrasilAuthenticationService yggdrasilauthenticationservice, MinecraftSessionService minecraftsessionservice, GameProfileRepository gameprofilerepository, UserCache usercache) {
io.netty.util.ResourceLeakDetector.setEnabled( false ); // Spigot - disable
@@ -521,12 +515,54 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -528,12 +522,54 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
this.isRunning = false;
}
@ -94,7 +94,7 @@ index 14389dd..ebf6c48 100644
public void run() {
try {
@@ -540,24 +576,41 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -547,24 +583,41 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
// Spigot start
Arrays.fill( recentTps, 20 );
@ -148,7 +148,7 @@ index 14389dd..ebf6c48 100644
}
lastTick = curTime;
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index abb1653..cae55fb 100644
index d3db0a8..408ef34 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1723,6 +1723,17 @@ public final class CraftServer implements Server {
@ -211,5 +211,5 @@ index be2e31d..6d21c32 100644
return ( ( tps > 18.0 ) ? ChatColor.GREEN : ( tps > 16.0 ) ? ChatColor.YELLOW : ChatColor.RED ).toString()
+ ( ( tps > 20.0 ) ? "*" : "" ) + Math.min( Math.round( tps * 100.0 ) / 100.0, 20.0 );
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From f66a5ec26463b256252abb850427e24b017d10ed Mon Sep 17 00:00:00 2001
From c6d62c52c9a7172e145447bf0854c856ca8bc01b Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 23:12:03 -0600
Subject: [PATCH] Only refresh abilities if needed
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index b7ff27c..5515958 100644
index eb6d41b..1fe6af5 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1136,12 +1136,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -24,5 +24,5 @@ index b7ff27c..5515958 100644
@Override
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From d8934d31e50f6acafde740667621263e70e57553 Mon Sep 17 00:00:00 2001
From dbace07a52c033002d6798acd32beea67d52d9d8 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 23:19:01 -0600
Subject: [PATCH] Add async chunk load API
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index afbdb5c..898316f 100644
index 4eacee7..4ab7efc 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -125,6 +125,26 @@ public class CraftWorld implements World {
@ -36,5 +36,5 @@ index afbdb5c..898316f 100644
return this.world.getChunkProviderServer().getChunkAt(x, z).bukkitChunk;
}
--
2.8.2
2.8.3

View File

@ -1,14 +1,14 @@
From 5d1aa3294755247d1d1c79c44aa017396179d98f Mon Sep 17 00:00:00 2001
From 664ef5b5c5c1750f856fb081771539e8ae8fb178 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Tue, 1 Mar 2016 23:45:08 -0600
Subject: [PATCH] Entity Origin API
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 62ada23..2455b9c 100644
index c0e6dc8..60c0db0 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -143,6 +143,7 @@ public abstract class Entity implements ICommandListener {
@@ -144,6 +144,7 @@ public abstract class Entity implements ICommandListener {
public org.bukkit.projectiles.ProjectileSource projectileSource; // CraftBukkit - For projectiles only
public boolean forceExplosionKnockback; // CraftBukkit - SPIGOT-949
public Timing tickTimer = MinecraftTimings.getEntityTimings(this); // Paper
@ -16,7 +16,7 @@ index 62ada23..2455b9c 100644
// Spigot start
public final byte activationType = org.spigotmc.ActivationRange.initializeEntityActivationType(this);
public final boolean defaultActivationState;
@@ -1350,6 +1351,11 @@ public abstract class Entity implements ICommandListener {
@@ -1372,6 +1373,11 @@ public abstract class Entity implements ICommandListener {
}
}
@ -28,7 +28,7 @@ index 62ada23..2455b9c 100644
return nbttagcompound;
} catch (Throwable throwable) {
CrashReport crashreport = CrashReport.a(throwable, "Saving entity NBT");
@@ -1485,6 +1491,13 @@ public abstract class Entity implements ICommandListener {
@@ -1516,6 +1522,13 @@ public abstract class Entity implements ICommandListener {
}
// CraftBukkit end
@ -42,19 +42,19 @@ index 62ada23..2455b9c 100644
} catch (Throwable throwable) {
CrashReport crashreport = CrashReport.a(throwable, "Loading entity NBT");
CrashReportSystemDetails crashreportsystemdetails = crashreport.a("Entity being loaded");
@@ -1508,6 +1521,7 @@ public abstract class Entity implements ICommandListener {
@@ -1537,6 +1550,7 @@ public abstract class Entity implements ICommandListener {
public void at() {}
protected abstract void b(NBTTagCompound nbttagcompound);
+ protected NBTTagList createList(double... adouble) { return a(adouble); } // Paper // OBFHELPER
+ protected NBTTagList createList(double... adouble) { return a(adouble); } // Paper - OBFHELPER
protected NBTTagList a(double... adouble) {
NBTTagList nbttaglist = new NBTTagList();
double[] adouble1 = adouble;
diff --git a/src/main/java/net/minecraft/server/EntityFallingBlock.java b/src/main/java/net/minecraft/server/EntityFallingBlock.java
index 08a7969..4c14d75 100644
index 65c1150..bab3cd6 100644
--- a/src/main/java/net/minecraft/server/EntityFallingBlock.java
+++ b/src/main/java/net/minecraft/server/EntityFallingBlock.java
@@ -241,6 +241,14 @@ public class EntityFallingBlock extends Entity {
@@ -246,6 +246,14 @@ public class EntityFallingBlock extends Entity {
this.block = Blocks.SAND.getBlockData();
}
@ -70,10 +70,10 @@ index 08a7969..4c14d75 100644
public void a(boolean flag) {
diff --git a/src/main/java/net/minecraft/server/EntityTNTPrimed.java b/src/main/java/net/minecraft/server/EntityTNTPrimed.java
index 564ea37..1113b1c 100644
index 2745c49..86f3f1f 100644
--- a/src/main/java/net/minecraft/server/EntityTNTPrimed.java
+++ b/src/main/java/net/minecraft/server/EntityTNTPrimed.java
@@ -104,6 +104,14 @@ public class EntityTNTPrimed extends Entity {
@@ -107,6 +107,14 @@ public class EntityTNTPrimed extends Entity {
protected void a(NBTTagCompound nbttagcompound) {
this.setFuseTicks(nbttagcompound.getShort("Fuse"));
@ -89,10 +89,10 @@ index 564ea37..1113b1c 100644
public EntityLiving getSource() {
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 7f239c6..5984ffb 100644
index da6b78b..ae37a79 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -958,6 +958,12 @@ public abstract class World implements IBlockAccess {
@@ -962,6 +962,12 @@ public abstract class World implements IBlockAccess {
int j = MathHelper.floor(entity.locZ / 16.0D);
boolean flag = entity.attachedToPlayer;
@ -106,10 +106,10 @@ index 7f239c6..5984ffb 100644
flag = true;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index 5c7f274..c65585b 100644
index ff7bfdc..5e81076 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -614,4 +614,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@@ -625,4 +625,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
return spigot;
}
// Spigot end

View File

@ -1,14 +1,14 @@
From 05fa7c0419cdcd091313c88da05ef233093893f6 Mon Sep 17 00:00:00 2001
From 3106f00428fd110497311c7e99e77a7eddea260a Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 1 Mar 2016 23:52:34 -0600
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
index 6d4f4e7..f59e6f8 100644
index 2b82312..9fa93ed 100644
--- a/src/main/java/net/minecraft/server/TileEntity.java
+++ b/src/main/java/net/minecraft/server/TileEntity.java
@@ -174,7 +174,12 @@ public abstract class TileEntity {
@@ -177,7 +177,12 @@ public abstract class TileEntity {
}
});
if (this.world != null) {
@ -23,10 +23,10 @@ index 6d4f4e7..f59e6f8 100644
public String a() throws Exception {
int i = Block.getId(TileEntity.this.world.getType(TileEntity.this.position).getBlock());
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 9bfabe0..362df8f 100644
index ae37a79..aa2b984 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1441,10 +1441,12 @@ public abstract class World implements IBlockAccess {
@@ -1445,10 +1445,12 @@ public abstract class World implements IBlockAccess {
entity.tickTimer.stopTiming(); // Paper
} catch (Throwable throwable1) {
entity.tickTimer.stopTiming();
@ -43,8 +43,8 @@ index 9bfabe0..362df8f 100644
}
}
@@ -1506,10 +1508,13 @@ public abstract class World implements IBlockAccess {
((ITickable) tileentity).c();
@@ -1510,10 +1512,13 @@ public abstract class World implements IBlockAccess {
((ITickable) tileentity).E_();
this.methodProfiler.b();
} catch (Throwable throwable2) {
- crashreport1 = CrashReport.a(throwable2, "Ticking block entity");
@ -62,5 +62,5 @@ index 9bfabe0..362df8f 100644
// Spigot start
finally {
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 5897b5a231713af5b38a3da0e2eb7a400da94d6f Mon Sep 17 00:00:00 2001
From 7f3fc798c035b20cfaca5d6cffc6575ba19764a8 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 23:58:50 -0600
Subject: [PATCH] Configurable top of nether void damage
@ -20,10 +20,10 @@ index 8fc2f6c..d78b688 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 2455b9c..751e07d 100644
index 8f88bc8..1b58f7d 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -303,6 +303,13 @@ public abstract class Entity implements ICommandListener {
@@ -305,6 +305,13 @@ public abstract class Entity implements ICommandListener {
this.U();
}
@ -36,8 +36,8 @@ index 2455b9c..751e07d 100644
+
public void U() {
this.world.methodProfiler.a("entityBaseTick");
if (this.isPassenger() && this.bz().dead) {
@@ -383,7 +390,7 @@ public abstract class Entity implements ICommandListener {
if (this.isPassenger() && this.bB().dead) {
@@ -385,7 +392,7 @@ public abstract class Entity implements ICommandListener {
this.fallDistance *= 0.5F;
}
@ -47,5 +47,5 @@ index 2455b9c..751e07d 100644
}
--
2.8.2
2.8.3

View File

@ -1,15 +1,15 @@
From becc47e96fdaf11d96e9bc96f2690f125d5a12b1 Mon Sep 17 00:00:00 2001
From 44bda2888bfd777effdc6a9c6569801f2637263a Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Wed, 2 Mar 2016 00:03:55 -0600
Subject: [PATCH] Check online mode before converting and renaming player data
diff --git a/src/main/java/net/minecraft/server/WorldNBTStorage.java b/src/main/java/net/minecraft/server/WorldNBTStorage.java
index bc6e138..1aed6fe 100644
index 75e2338..f077398 100644
--- a/src/main/java/net/minecraft/server/WorldNBTStorage.java
+++ b/src/main/java/net/minecraft/server/WorldNBTStorage.java
@@ -165,7 +165,7 @@ public class WorldNBTStorage implements IDataManager, IPlayerFileData {
File file = new File(this.playerDir, entityhuman.bd() + ".dat");
File file = new File(this.playerDir, entityhuman.bf() + ".dat");
// Spigot Start
boolean usingWrongFile = false;
- if ( !file.exists() )
@ -18,5 +18,5 @@ index bc6e138..1aed6fe 100644
file = new File( this.playerDir, UUID.nameUUIDFromBytes( ( "OfflinePlayer:" + entityhuman.getName() ).getBytes( "UTF-8" ) ).toString() + ".dat");
if ( file.exists() )
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From 314c57cc2680355fecb09a3fe154c3aa08873dae Mon Sep 17 00:00:00 2001
From 765f4d691c277fc18b11ad8e045bc30a691d3dc2 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Wed, 2 Mar 2016 00:32:25 -0600
Subject: [PATCH] Always tick falling blocks
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
index 0b057fa..f0d3a19 100644
index eb30abe..c4ed64a 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -13,6 +13,7 @@ import net.minecraft.server.EntityCreature;
@ -25,5 +25,5 @@ index 0b057fa..f0d3a19 100644
|| entity instanceof EntityFireworks )
{
--
2.8.0
2.8.3

View File

@ -1,4 +1,4 @@
From bd8d55cdb864658c3e893c2272185b2597a2645c Mon Sep 17 00:00:00 2001
From a9bed340a412f9d38ba5c842931de0a0f778f417 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 00:52:31 -0600
Subject: [PATCH] Lighting Queue
@ -42,7 +42,7 @@ index d78b688..158db3a 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 5690e81..d55beb9 100644
index c051c77..770da2b 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -33,6 +33,7 @@ public class Chunk {
@ -67,7 +67,7 @@ index 5690e81..d55beb9 100644
for (int i = 0; i < 16; ++i) {
for (int j = 0; j < 16; ++j) {
if (this.i[i + j * 16]) {
@@ -478,7 +486,7 @@ public class Chunk {
@@ -479,7 +487,7 @@ public class Chunk {
} else {
if (flag) {
this.initLighting();
@ -76,7 +76,7 @@ index 5690e81..d55beb9 100644
int j1 = iblockdata.c();
int k1 = iblockdata1.c();
@@ -493,6 +501,7 @@ public class Chunk {
@@ -494,6 +502,7 @@ public class Chunk {
if (j1 != k1 && (j1 < k1 || this.getBrightness(EnumSkyBlock.SKY, blockposition) > 0 || this.getBrightness(EnumSkyBlock.BLOCK, blockposition) > 0)) {
this.d(i, k);
}
@ -85,7 +85,7 @@ index 5690e81..d55beb9 100644
TileEntity tileentity;
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index a0b90df..01311c8 100644
index dc6ec1e..e5ee5c6 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -281,6 +281,7 @@ public class ChunkProviderServer implements IChunkProvider {
@ -97,10 +97,10 @@ index a0b90df..01311c8 100644
// Update neighbor counts
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
index ebf6c48..89a40a8 100644
index ef0e063..71710b9 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -706,7 +706,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -713,7 +713,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
protected void C() throws ExceptionWorldConflict { // CraftBukkit - added throws
co.aikar.timings.TimingsManager.FULL_SERVER_TICK.startTiming(); // Paper
@ -109,7 +109,7 @@ index ebf6c48..89a40a8 100644
++this.ticks;
if (this.S) {
@@ -766,6 +766,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -773,6 +773,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
this.methodProfiler.b();
org.spigotmc.WatchdogThread.tick(); // Spigot
@ -222,7 +222,7 @@ index 0000000..2350fe3
+ }
+}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 8735dd4..ccef663 100644
index aa2b984..3aea2af 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -384,7 +384,7 @@ public abstract class World implements IBlockAccess {

View File

@ -1,11 +1,11 @@
From fedd40dec713035b2abc4c4a7f5da4054813ff59 Mon Sep 17 00:00:00 2001
From a403f340774e9d181e2ddd8c2d7f4f738ae0b170 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 00:55:24 -0600
Subject: [PATCH] Optimize draining
diff --git a/src/main/java/net/minecraft/server/BlockFlowing.java b/src/main/java/net/minecraft/server/BlockFlowing.java
index 036e861..f35f30c 100644
index b00865e..72654df 100644
--- a/src/main/java/net/minecraft/server/BlockFlowing.java
+++ b/src/main/java/net/minecraft/server/BlockFlowing.java
@@ -88,7 +88,13 @@ public class BlockFlowing extends BlockFluids {
@ -24,5 +24,5 @@ index 036e861..f35f30c 100644
}
} else {
--
2.8.0
2.8.3

View File

@ -1,4 +1,4 @@
From ab28b5b8b3375defb1293a777672f76a17d9fddb Mon Sep 17 00:00:00 2001
From efc0f30551d46d77f1132db3ebe51095e79f64c6 Mon Sep 17 00:00:00 2001
From: DoctorDark <doctordark11@gmail.com>
Date: Wed, 16 Mar 2016 02:21:39 -0500
Subject: [PATCH] Configurable end credits
@ -20,10 +20,10 @@ index 158db3a..e4e5487 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index d0cd588..7ef3f62 100644
index 37c94f8..522c7f2 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -506,6 +506,15 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -511,6 +511,15 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
return this.world.pvpMode;
}
@ -38,8 +38,8 @@ index d0cd588..7ef3f62 100644
+
@Nullable
public Entity c(int i) {
//this.ck = true; // CraftBukkit - Moved down and into PlayerList#changeDimension
@@ -514,7 +523,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
// this.worldChangeInvuln = true; // CraftBukkit - Moved down and into PlayerList#changeDimension
@@ -519,7 +528,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
this.world.kill(this);
if (!this.viewingCredits) {
this.viewingCredits = true;
@ -52,5 +52,5 @@ index d0cd588..7ef3f62 100644
} else {
this.b((Statistic) AchievementList.D);
--
2.8.2.windows.1
2.8.3

View File

@ -1,11 +1,11 @@
From 8d02e85a56780af5db186431c81995fa4eb0fdbd Mon Sep 17 00:00:00 2001
From 38d908fa1f68546678a01f1a50ab203cf69a1a7d Mon Sep 17 00:00:00 2001
From: Iceee <andrew@opticgaming.tv>
Date: Wed, 2 Mar 2016 01:39:52 -0600
Subject: [PATCH] Fix lag from explosions processing dead entities
diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java
index 77ed4a7..de74fb7 100644
index acbf7a8..f4765d3 100644
--- a/src/main/java/net/minecraft/server/Explosion.java
+++ b/src/main/java/net/minecraft/server/Explosion.java
@@ -103,7 +103,14 @@ public class Explosion {
@ -25,5 +25,5 @@ index 77ed4a7..de74fb7 100644
for (int l1 = 0; l1 < list.size(); ++l1) {
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 4aa8d64815d16a16a1688273eba27172adf4fe14 Mon Sep 17 00:00:00 2001
From 9ce6203dee54a1bdca4a16b5bf8feb683d917fce Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 02:17:54 -0600
Subject: [PATCH] Generator Settings
@ -38,7 +38,7 @@ index e4e5487..7525bcb 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/BiomeBase.java b/src/main/java/net/minecraft/server/BiomeBase.java
index 36952ae..6b84ece 100644
index ab04f9c..bf4f06c 100644
--- a/src/main/java/net/minecraft/server/BiomeBase.java
+++ b/src/main/java/net/minecraft/server/BiomeBase.java
@@ -178,7 +178,7 @@ public abstract class BiomeBase {
@ -51,18 +51,18 @@ index 36952ae..6b84ece 100644
} else {
IBlockData iblockdata2 = chunksnapshot.a(k1, l1, j1);
diff --git a/src/main/java/net/minecraft/server/BiomeMesa.java b/src/main/java/net/minecraft/server/BiomeMesa.java
index 3ce22aa..336fa16 100644
index 8bcc0f3..62abbbd 100644
--- a/src/main/java/net/minecraft/server/BiomeMesa.java
+++ b/src/main/java/net/minecraft/server/BiomeMesa.java
@@ -98,7 +98,7 @@ public class BiomeMesa extends BiomeBase {
chunksnapshot.a(l, l1, k, BiomeMesa.a);
@@ -103,7 +103,7 @@ public class BiomeMesa extends BiomeBase {
chunksnapshot.a(l, i2, k, BiomeMesa.a);
}
- if (l1 <= random.nextInt(5)) {
+ if (l1 <= (world.paperConfig.generateFlatBedrock ? 0 : random.nextInt(5))) { // Paper - Configurable flat bedrock
chunksnapshot.a(l, l1, k, BiomeMesa.c);
} else {
IBlockData iblockdata2 = chunksnapshot.a(l, l1, k);
- if (i2 <= random.nextInt(5)) {
+ if (i2 <= (world.paperConfig.generateFlatBedrock ? 0 : random.nextInt(5))) { // Paper - Configurable flat bedrock
chunksnapshot.a(l, i2, k, BiomeMesa.c);
} else if (l1 < 15) {
IBlockData iblockdata2 = chunksnapshot.a(l, i2, k);
diff --git a/src/main/java/net/minecraft/server/ChunkProviderFlat.java b/src/main/java/net/minecraft/server/ChunkProviderFlat.java
index aa35a24..ea6a00e 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderFlat.java
@ -110,7 +110,7 @@ index aa35a24..ea6a00e 100644
int k = 0;
boolean flag1 = true;
diff --git a/src/main/java/net/minecraft/server/ChunkProviderGenerate.java b/src/main/java/net/minecraft/server/ChunkProviderGenerate.java
index 415b8d0..926f32d 100644
index db49131..534fd9f 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderGenerate.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderGenerate.java
@@ -158,32 +158,32 @@ public class ChunkProviderGenerate implements ChunkGenerator {
@ -153,7 +153,7 @@ index 415b8d0..926f32d 100644
this.B.a(this.n, i, j, chunksnapshot);
}
}
@@ -320,23 +320,23 @@ public class ChunkProviderGenerate implements ChunkGenerator {
@@ -318,23 +318,23 @@ public class ChunkProviderGenerate implements ChunkGenerator {
ChunkCoordIntPair chunkcoordintpair = new ChunkCoordIntPair(i, j);
if (this.o) {
@ -182,7 +182,7 @@ index 415b8d0..926f32d 100644
this.B.a(this.n, this.i, chunkcoordintpair);
}
}
@@ -361,7 +361,7 @@ public class ChunkProviderGenerate implements ChunkGenerator {
@@ -359,7 +359,7 @@ public class ChunkProviderGenerate implements ChunkGenerator {
}
}
@ -191,7 +191,7 @@ index 415b8d0..926f32d 100644
for (k1 = 0; k1 < this.s.t; ++k1) {
l1 = this.i.nextInt(16) + 8;
i2 = this.i.nextInt(256);
@@ -426,23 +426,23 @@ public class ChunkProviderGenerate implements ChunkGenerator {
@@ -424,23 +424,23 @@ public class ChunkProviderGenerate implements ChunkGenerator {
public void recreateStructures(Chunk chunk, int i, int j) {
if (this.o) {
@ -221,10 +221,10 @@ index 415b8d0..926f32d 100644
}
}
diff --git a/src/main/java/net/minecraft/server/ChunkProviderHell.java b/src/main/java/net/minecraft/server/ChunkProviderHell.java
index d758625..1420b14 100644
index 6e6ecd8..e95175e 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderHell.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderHell.java
@@ -149,7 +149,10 @@ public class ChunkProviderHell implements ChunkGenerator {
@@ -151,7 +151,10 @@ public class ChunkProviderHell implements ChunkGenerator {
IBlockData iblockdata1 = ChunkProviderHell.b;
for (int l1 = 127; l1 >= 0; --l1) {
@ -236,16 +236,16 @@ index d758625..1420b14 100644
IBlockData iblockdata2 = chunksnapshot.a(i1, l1, l);
if (iblockdata2.getBlock() != null && iblockdata2.getMaterial() != Material.AIR) {
@@ -366,6 +369,6 @@ public class ChunkProviderHell implements ChunkGenerator {
@@ -380,6 +383,6 @@ public class ChunkProviderHell implements ChunkGenerator {
}
public void recreateStructures(Chunk chunk, int i, int j) {
- this.H.a(this.n, i, j, (ChunkSnapshot) null);
+ if (this.n.paperConfig.generateFortress) this.H.a(this.n, i, j, (ChunkSnapshot) null); // Paper
- this.I.a(this.n, i, j, (ChunkSnapshot) null);
+ if (this.n.paperConfig.generateFortress) this.I.a(this.n, i, j, (ChunkSnapshot) null);
}
}
diff --git a/src/main/java/net/minecraft/server/StructureGenerator.java b/src/main/java/net/minecraft/server/StructureGenerator.java
index 4b4cf89..4b7e34c 100644
index 8dd434c..4248a36 100644
--- a/src/main/java/net/minecraft/server/StructureGenerator.java
+++ b/src/main/java/net/minecraft/server/StructureGenerator.java
@@ -89,6 +89,7 @@ public abstract class StructureGenerator extends WorldGenBase {
@ -265,5 +265,5 @@ index 4b4cf89..4b7e34c 100644
Iterator iterator = this.c.values().iterator();
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 36914be12a1db4d0d548285b1bccf8b4563723ba Mon Sep 17 00:00:00 2001
From fa9528ce47a36f59234986ccad38a75a92afb084 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 11:59:48 -0600
Subject: [PATCH] Optimize explosions
@ -25,7 +25,7 @@ index 7525bcb..ca0ac9b 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java
index de74fb7..8e225a5 100644
index f4765d3..caf29c7 100644
--- a/src/main/java/net/minecraft/server/Explosion.java
+++ b/src/main/java/net/minecraft/server/Explosion.java
@@ -129,7 +129,7 @@ public class Explosion {
@ -124,10 +124,10 @@ index de74fb7..8e225a5 100644
+ // Paper end
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 89a40a8..bbdb19a 100644
index 71710b9..2fc7479 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -870,6 +870,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -877,6 +877,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
worldserver.getTracker().updatePlayers();
this.methodProfiler.b();
this.methodProfiler.b();
@ -136,7 +136,7 @@ index 89a40a8..bbdb19a 100644
// this.i[i][this.ticks % 100] = System.nanoTime() - j; // CraftBukkit
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index dc51a79..c8c2601 100644
index 3aea2af..f2c3409 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -16,6 +16,7 @@ import javax.annotation.Nullable;
@ -156,5 +156,5 @@ index dc51a79..c8c2601 100644
public CraftWorld getWorld() {
return this.world;
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From 32d5f0477fdbb9b41debf0d7267fb80f137814b1 Mon Sep 17 00:00:00 2001
From 0334b767beb65705a85a902bb77a5da60faff822 Mon Sep 17 00:00:00 2001
From: Iceee <andrew@opticgaming.tv>
Date: Wed, 2 Mar 2016 12:03:23 -0600
Subject: [PATCH] Stop updating flowing block if material has changed
diff --git a/src/main/java/net/minecraft/server/BlockFlowing.java b/src/main/java/net/minecraft/server/BlockFlowing.java
index f35f30c..1f07f82 100644
index 72654df..def694a 100644
--- a/src/main/java/net/minecraft/server/BlockFlowing.java
+++ b/src/main/java/net/minecraft/server/BlockFlowing.java
@@ -101,6 +101,7 @@ public class BlockFlowing extends BlockFluids {
@ -17,5 +17,5 @@ index f35f30c..1f07f82 100644
if (this.h(world, blockposition.down(), iblockdata2)) {
--
2.8.0
2.8.3

View File

@ -1,4 +1,4 @@
From 30d62432d64c2e0ff69634d8708c9e28bf74e0c5 Mon Sep 17 00:00:00 2001
From a4d358914233d0cb8f5ac40de23b832507fb39e2 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 12:20:52 -0600
Subject: [PATCH] Fast draining
@ -21,7 +21,7 @@ index ca0ac9b..f8b90e3 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/BlockFlowing.java b/src/main/java/net/minecraft/server/BlockFlowing.java
index 9e88d2d..de10bc4 100644
index def694a..0b5bc19 100644
--- a/src/main/java/net/minecraft/server/BlockFlowing.java
+++ b/src/main/java/net/minecraft/server/BlockFlowing.java
@@ -74,7 +74,7 @@ public class BlockFlowing extends BlockFluids {
@ -109,5 +109,5 @@ index 9e88d2d..de10bc4 100644
+ // Paper end
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 4e9c8a5c496584442c77125e51fda1f54f8bfa8f Mon Sep 17 00:00:00 2001
From b24e5f750fea9cddda7c7379f0e0d3a041c6c4d3 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 12:27:07 -0600
Subject: [PATCH] Configurable lava flow speed
@ -21,7 +21,7 @@ index f8b90e3..004d4c0 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/BlockFlowing.java b/src/main/java/net/minecraft/server/BlockFlowing.java
index de10bc4..2eb8622 100644
index 0b5bc19..0336b9c 100644
--- a/src/main/java/net/minecraft/server/BlockFlowing.java
+++ b/src/main/java/net/minecraft/server/BlockFlowing.java
@@ -280,6 +280,9 @@ public class BlockFlowing extends BlockFluids {
@ -35,5 +35,5 @@ index de10bc4..2eb8622 100644
world.getType(blockposition.north(1)).getBlock().material == Material.LAVA ||
world.getType(blockposition.south(1)).getBlock().material == Material.LAVA ||
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From 1c8fae3651381aeb25d7f4af371147a76b6da5f0 Mon Sep 17 00:00:00 2001
From 753d11d1fab7a122c7da09d6e4242f9357fffaf1 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 14:35:27 -0600
Subject: [PATCH] Add player view distance API
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 7ef3f62..6e19244 100644
index 522c7f2..4950db4 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -56,6 +56,15 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@ -93,7 +93,7 @@ index 797a84f..d554d7d 100644
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 5515958..9770c99 100644
index 1fe6af5..c3ba701 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1419,6 +1419,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View File

@ -1,4 +1,4 @@
From 83fbaeb18c12386e53df07927bc67ffcf0ed06ae Mon Sep 17 00:00:00 2001
From aee68d2743a1f3e7e3633cd3b348282fc2c26fa3 Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Wed, 2 Mar 2016 14:48:03 -0600
Subject: [PATCH] Disable explosion knockback
@ -19,10 +19,10 @@ index 004d4c0..87979dd 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 4d7be74..7fd8585 100644
index b5db35f..c1c6822 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -864,12 +864,14 @@ public abstract class EntityLiving extends Entity {
@@ -872,12 +872,14 @@ public abstract class EntityLiving extends Entity {
}
}
@ -37,17 +37,17 @@ index 4d7be74..7fd8585 100644
this.world.broadcastEntityEffect(this, (byte) 2);
}
@@ -893,6 +895,8 @@ public abstract class EntityLiving extends Entity {
@@ -901,6 +903,8 @@ public abstract class EntityLiving extends Entity {
}
}
+ if (knockbackCancelled) this.world.broadcastEntityEffect(this, (byte) 2); // Paper - Disable explosion knockback
+
if (this.getHealth() <= 0.0F) {
SoundEffect soundeffect = this.bT();
SoundEffect soundeffect = this.bW();
diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java
index 8e225a5..28261c5 100644
index caf29c7..6cdc3a3 100644
--- a/src/main/java/net/minecraft/server/Explosion.java
+++ b/src/main/java/net/minecraft/server/Explosion.java
@@ -145,7 +145,7 @@ public class Explosion {
@ -63,11 +63,11 @@ index 8e225a5..28261c5 100644
if (entity instanceof EntityHuman) {
EntityHuman entityhuman = (EntityHuman) entity;
- if (!entityhuman.isSpectator() && (!entityhuman.l_() || !entityhuman.abilities.isFlying)) {
+ if (!entityhuman.isSpectator() && (!entityhuman.l_() && !world.paperConfig.disableExplosionKnockback|| !entityhuman.abilities.isFlying)) { // Paper - Disable explosion knockback
- if (!entityhuman.isSpectator() && (!entityhuman.z() || !entityhuman.abilities.isFlying)) {
+ if (!entityhuman.isSpectator() && (!entityhuman.z() && !world.paperConfig.disableExplosionKnockback || !entityhuman.abilities.isFlying)) { // Paper - Disable explosion knockback
this.k.put(entityhuman, new Vec3D(d8 * d13, d9 * d13, d10 * d13));
}
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 0da947e01ad657951ae7118c3873af4781376334 Mon Sep 17 00:00:00 2001
From c711eee0e721258c1a39c806dc080353e634b425 Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Wed, 2 Mar 2016 14:52:43 -0600
Subject: [PATCH] Disable thunder
@ -19,7 +19,7 @@ index 87979dd..076fcbb 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 4980c7a..bef2dab 100644
index a691d8f..651ce53 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -423,7 +423,8 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@ -33,5 +33,5 @@ index 4980c7a..bef2dab 100644
l = this.l >> 2;
blockposition = this.a(new BlockPosition(j + (l & 15), 0, k + (l >> 8 & 15)));
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 1f43df2ac1437616a2e6101979fcb06f07eb2f43 Mon Sep 17 00:00:00 2001
From 724df761f25877ebcb44e2353b1c6d6eb036522f Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Wed, 2 Mar 2016 14:57:24 -0600
Subject: [PATCH] Disable ice and snow
@ -19,7 +19,7 @@ index 076fcbb..9018df5 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index bef2dab..c7e5226 100644
index 651ce53..bc6ddc7 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -447,7 +447,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@ -32,5 +32,5 @@ index bef2dab..c7e5226 100644
l = this.l >> 2;
blockposition = this.p(new BlockPosition(j + (l & 15), 0, k + (l >> 8 & 15)));
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From d49a422051ab99ef08a0d45cd381757e64e10982 Mon Sep 17 00:00:00 2001
From f9f44c91550d016394da0bdaacc52398e4f35589 Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Wed, 2 Mar 2016 15:03:53 -0600
Subject: [PATCH] Configurable mob spawner tick rate
@ -19,7 +19,7 @@ index 9018df5..5a139e2 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
index 6c3e365..de6055a 100644
index f040775..f17aea4 100644
--- a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
+++ b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
@@ -18,6 +18,7 @@ public abstract class MobSpawnerAbstract {
@ -64,5 +64,5 @@ index 6c3e365..de6055a 100644
}
--
2.8.2
2.8.3

View File

@ -1,18 +1,18 @@
From 1d7c79814eac0930e924fa43fb4f023faf315b96 Mon Sep 17 00:00:00 2001
From 467701b9fae3fe6b53c2c3d46a4240f50ddc43ed Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Wed, 2 Mar 2016 23:13:07 -0600
Subject: [PATCH] Send absolute position the first time an entity is seen
diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
index d820ba8..6c8da79 100644
index af32116..413925e 100644
--- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java
+++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
@@ -41,7 +41,12 @@ public class EntityTrackerEntry {
private boolean x;
private boolean y;
public boolean b;
- public Set<EntityPlayer> trackedPlayers = Sets.newHashSet();
- public final Set<EntityPlayer> trackedPlayers = Sets.newHashSet();
+ // Paper start
+ // Replace trackedPlayers Set with a Map. The value is true until the player receives
+ // their first update (which is forced to have absolute coordinates), false afterward.
@ -22,40 +22,23 @@ index d820ba8..6c8da79 100644
public EntityTrackerEntry(Entity entity, int i, int j, int k, boolean flag) {
this.tracker = entity;
@@ -126,20 +131,22 @@ public class EntityTrackerEntry {
boolean flag = k1 * k1 + l1 * l1 + i2 * i2 >= 128L || this.a % 60 == 0;
boolean flag1 = Math.abs(i1 - this.yRot) >= 1 || Math.abs(j1 - this.xRot) >= 1;
@@ -142,6 +147,7 @@ public class EntityTrackerEntry {
boolean flag1 = l1 * l1 + i2 * i2 + j2 * j2 >= 128L || this.a % 60 == 0;
boolean flag2 = Math.abs(j1 - this.yRot) >= 1 || Math.abs(k1 - this.xRot) >= 1;
- // CraftBukkit start - Code moved from below
- if (flag) {
- this.xLoc = j;
- this.yLoc = k;
- this.zLoc = l;
- }
+ if (this.a > 0 || this.tracker instanceof EntityArrow) { // Paper - Moved up
+ // CraftBukkit start - Code moved from below
+ if (flag) {
+ this.xLoc = j;
+ this.yLoc = k;
+ this.zLoc = l;
+ }
- if (flag1) {
+ if (flag1) {
+ this.yRot = i1;
+ this.xRot = j1;
+ }
+ // CraftBukkit end
this.yRot = i1;
this.xRot = j1;
- }
// CraftBukkit start - Code moved from below
if (flag1) {
this.xLoc = k;
@@ -155,7 +161,6 @@ public class EntityTrackerEntry {
}
// CraftBukkit end
-
- if (this.a > 0 || this.tracker instanceof EntityArrow) {
if (k1 >= -32768L && k1 < 32768L && l1 >= -32768L && l1 < 32768L && i2 >= -32768L && i2 < 32768L && this.v <= 400 && !this.x && this.y == this.tracker.onGround) {
if ((!flag || !flag1) && !(this.tracker instanceof EntityArrow)) {
if (flag) {
@@ -185,7 +192,26 @@ public class EntityTrackerEntry {
if (l1 >= -32768L && l1 < 32768L && i2 >= -32768L && i2 < 32768L && j2 >= -32768L && j2 < 32768L && this.v <= 400 && !this.x && this.y == this.tracker.onGround) {
if ((!flag1 || !flag2) && !(this.tracker instanceof EntityArrow)) {
if (flag1) {
@@ -201,7 +206,26 @@ public class EntityTrackerEntry {
}
if (object != null) {
@ -83,7 +66,7 @@ index d820ba8..6c8da79 100644
}
this.d();
@@ -338,7 +364,7 @@ public class EntityTrackerEntry {
@@ -338,7 +362,7 @@ public class EntityTrackerEntry {
entityplayer.removeQueue.remove(Integer.valueOf(this.tracker.getId()));
// CraftBukkit end
@ -93,5 +76,5 @@ index d820ba8..6c8da79 100644
entityplayer.playerConnection.sendPacket(packet);
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From 44536adaf25c092b8223739374361ebc14b260bf Mon Sep 17 00:00:00 2001
From ec66ca6a5947ee2ead5f18eb00767ef7f8ae0b7f Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 23:30:53 -0600
Subject: [PATCH] Add BeaconEffectEvent
diff --git a/src/main/java/net/minecraft/server/TileEntityBeacon.java b/src/main/java/net/minecraft/server/TileEntityBeacon.java
index bb771c1..77170aa 100644
index 660e2e5..220eb82 100644
--- a/src/main/java/net/minecraft/server/TileEntityBeacon.java
+++ b/src/main/java/net/minecraft/server/TileEntityBeacon.java
@@ -14,6 +14,15 @@ import org.bukkit.craftbukkit.entity.CraftHumanEntity;
@ -61,5 +61,5 @@ index bb771c1..77170aa 100644
}
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 4019ce9acbe746b7de1f60f5dc970a23cb17b870 Mon Sep 17 00:00:00 2001
From c9968ad7e95cefe2bb154eec2b9695f711e8fa10 Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Wed, 2 Mar 2016 23:34:44 -0600
Subject: [PATCH] Configurable container update tick rate
@ -19,7 +19,7 @@ index 5a139e2..e182e48 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 6e19244..1e33838 100644
index 4950db4..e9baaa2 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -65,6 +65,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@ -45,5 +45,5 @@ index 6e19244..1e33838 100644
this.closeInventory();
this.activeContainer = this.defaultContainer;
--
2.8.2.windows.1
2.8.3

View File

@ -1,11 +1,11 @@
From d9bae1b188028fa421ed5f26e207ba39a8202049 Mon Sep 17 00:00:00 2001
From 123e2e4ee662aefbaf32cce1397b45b43e6c9aee Mon Sep 17 00:00:00 2001
From: Iceee <andrew@opticgaming.tv>
Date: Wed, 2 Mar 2016 23:38:52 -0600
Subject: [PATCH] Fix lava/water some times creating air instead of cobblestone
diff --git a/src/main/java/net/minecraft/server/BlockFluids.java b/src/main/java/net/minecraft/server/BlockFluids.java
index a076f4d..93bfd53 100644
index ddd5199..d7308dd 100644
--- a/src/main/java/net/minecraft/server/BlockFluids.java
+++ b/src/main/java/net/minecraft/server/BlockFluids.java
@@ -169,7 +169,7 @@ public abstract class BlockFluids extends Block {
@ -18,5 +18,5 @@ index a076f4d..93bfd53 100644
this.fizz(world, blockposition);
return true;
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 12a6ea83e2f556fbff99c3704d30b3251d382824 Mon Sep 17 00:00:00 2001
From 020ae40d595f94caf0b507f1da371109cc8a07b7 Mon Sep 17 00:00:00 2001
From: Techcable <Techcable@outlook.com>
Date: Wed, 2 Mar 2016 23:42:37 -0600
Subject: [PATCH] Use UserCache for player heads
@ -32,5 +32,5 @@ index 2abca0c..7d83bbe 100644
return true;
--
2.8.2
2.8.3

View File

@ -1,14 +1,14 @@
From 58ac13abf1d84ad3e446556592682eb8f077ee4a Mon Sep 17 00:00:00 2001
From 3cb5989f9a4ba05b40fb8382228dae8d8c4a7ffe Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Wed, 2 Mar 2016 23:45:17 -0600
Subject: [PATCH] Disable spigot tick limiters
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index c8c2601..b7f45b6 100644
index f2c3409..0b3360c 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1418,10 +1418,10 @@ public abstract class World implements IBlockAccess {
@@ -1422,10 +1422,10 @@ public abstract class World implements IBlockAccess {
// CraftBukkit start - Use field for loop variable
co.aikar.timings.TimingHistory.entityTicks += this.entityList.size(); // Paper
int entitiesThisCycle = 0;
@ -23,7 +23,7 @@ index c8c2601..b7f45b6 100644
tickPosition = (tickPosition < entityList.size()) ? tickPosition : 0;
entity = (Entity) this.entityList.get(this.tickPosition);
// CraftBukkit end
@@ -1486,9 +1486,7 @@ public abstract class World implements IBlockAccess {
@@ -1490,9 +1490,7 @@ public abstract class World implements IBlockAccess {
// Spigot start
// Iterator iterator = this.tileEntityListTick.iterator();
int tilesThisCycle = 0;
@ -35,5 +35,5 @@ index c8c2601..b7f45b6 100644
TileEntity tileentity = (TileEntity) this.tileEntityListTick.get(tileTickPosition);
// Spigot start
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 551087a24681a0f47c192a5a3c40355a4efbdfa1 Mon Sep 17 00:00:00 2001
From e423c9fa1d8a9de6de4cf6b62658cbe3e15d421f Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Wed, 2 Mar 2016 23:46:57 -0600
Subject: [PATCH] Configurable Chunk IO Thread Base Count
@ -39,5 +39,5 @@ index e4fd9bc..7b7a3d0 100644
private static final AsynchronousExecutor<QueuedChunk, Chunk, Runnable, RuntimeException> instance = new AsynchronousExecutor<QueuedChunk, Chunk, Runnable, RuntimeException>(new ChunkIOProvider(), BASE_THREADS);
--
2.8.3.windows.1
2.8.3

View File

@ -1,4 +1,4 @@
From a6f71203988b2af1497b585b28018f1b7bbed9c1 Mon Sep 17 00:00:00 2001
From 0d36bbd3acce3758461d6acd54014d4c68560a25 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 2 Mar 2016 23:51:51 -0600
Subject: [PATCH] Don't create Region File's when checking if chunk exists
@ -7,7 +7,7 @@ Plugins like Dynmap can end up creating tons of emtpy Region Files
when using chunkExists.
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index f6e286f..da7d7fe 100644
index 665851a..24cb51b 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -39,7 +39,10 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
@ -49,5 +49,5 @@ index 5528019..01a08d4 100644
file1.mkdirs();
}
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From 064ef8799679a16ccfc7538d2796d374f4a1b0f4 Mon Sep 17 00:00:00 2001
From b6e34821d3030412b88b2634b2204224b31be785 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 2 Mar 2016 23:55:20 -0600
Subject: [PATCH] Don't create a chunk just to unload it
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index 899ce8f..83b14d9 100644
index 4ab7efc..d1385af 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -213,7 +213,13 @@ public class CraftWorld implements World {

View File

@ -1,4 +1,4 @@
From 36b56f93ab5dc09bea513f84f44b4f3c7e5ddcd3 Mon Sep 17 00:00:00 2001
From 6edb6b079c6896587c0286eab0dfa16b5bd24e58 Mon Sep 17 00:00:00 2001
From: Steve Anton <anxuiz.nx@gmail.com>
Date: Thu, 3 Mar 2016 00:09:38 -0600
Subject: [PATCH] Add PlayerInitialSpawnEvent
@ -6,7 +6,7 @@ Subject: [PATCH] Add PlayerInitialSpawnEvent
For modifying a player's initial spawn location as they join the server
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 13fa79f..a3c0b10 100644
index f6a9384..6e51c43 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -100,6 +100,21 @@ public abstract class PlayerList {
@ -32,5 +32,5 @@ index 13fa79f..a3c0b10 100644
entityplayer.playerInteractManager.a((WorldServer) entityplayer.world);
String s1 = "local";
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From f68afec9bf832efe71d3eb418eb72aa13eb7a7d4 Mon Sep 17 00:00:00 2001
From 2b55727e5ed2d11e5af28f45dc51079b50c8ebfd Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 01:13:45 -0600
Subject: [PATCH] Disable chest cat detection
@ -35,5 +35,5 @@ index 21be295..a5f2fc0 100644
EntityOcelot entityocelot;
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From a36d163a35b3216d034a1344206872f6ab921be4 Mon Sep 17 00:00:00 2001
From d7200d536c15065d8c3f6c6f8ff92d40afefaed4 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 01:17:12 -0600
Subject: [PATCH] Ensure commands are not ran async
@ -14,10 +14,10 @@ big slowdown in execution but throwing an exception at same time to raise awaren
that it is happening so that plugin authors can fix their code to stop executing commands async.
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 0c2c151..2cde490 100644
index 378cc6e..efca444 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -1264,6 +1264,29 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -1263,6 +1263,29 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
}
if (!async && s.startsWith("/")) {
@ -48,7 +48,7 @@ index 0c2c151..2cde490 100644
} else if (this.player.getChatFlags() == EntityHuman.EnumChatVisibility.SYSTEM) {
// Do nothing, this is coming from a plugin
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index cae55fb..2b49d69 100644
index 408ef34..541b8d8 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -643,6 +643,29 @@ public final class CraftServer implements Server {
@ -82,5 +82,5 @@ index cae55fb..2b49d69 100644
return true;
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 65ac541fa8ed62de2d0829d816d0762d723e9ea7 Mon Sep 17 00:00:00 2001
From fb635704e127900190353403ff7999c9b4dc761d Mon Sep 17 00:00:00 2001
From: vemacs <d@nkmem.es>
Date: Thu, 3 Mar 2016 01:19:22 -0600
Subject: [PATCH] All chunks are slime spawn chunks toggle
@ -19,19 +19,19 @@ index c89ab0c..b302cb7 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntitySlime.java b/src/main/java/net/minecraft/server/EntitySlime.java
index 2fae2a9..170cb8a 100644
index 334505f..616c2e8 100644
--- a/src/main/java/net/minecraft/server/EntitySlime.java
+++ b/src/main/java/net/minecraft/server/EntitySlime.java
@@ -245,7 +245,8 @@ public class EntitySlime extends EntityInsentient implements IMonster {
return super.cG();
@@ -249,7 +249,8 @@ public class EntitySlime extends EntityInsentient implements IMonster {
return super.cK();
}
- if (this.random.nextInt(10) == 0 && chunk.a(987234911L).nextInt(10) == 0 && this.locY < 40.0D) {
+ boolean isSlimeChunk = world.paperConfig.allChunksAreSlimeChunks || chunk.a(987234911L).nextInt(10) == 0; // Paper
+ if (this.random.nextInt(10) == 0 && isSlimeChunk && this.locY < 40.0D) { // Paper
return super.cG();
+ if (this.random.nextInt(10) == 0 && isSlimeChunk && this.locY < 40.0D) {
return super.cK();
}
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 47467b9ed89eb4761a409425af0d77d513e98c60 Mon Sep 17 00:00:00 2001
From 666b0179a43b74e82554af6d1c8643afb05a2098 Mon Sep 17 00:00:00 2001
From: DemonWav <demonwav@gmail.com>
Date: Thu, 3 Mar 2016 01:44:39 -0600
Subject: [PATCH] Add Location support to tab completers (vanilla feature
@ -20,10 +20,10 @@ index b302cb7..75e7b78 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index bbdb19a..3d2e0b6 100644
index 2fc7479..4b60fed 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1156,7 +1156,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -1163,7 +1163,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
return arraylist;
}
*/
@ -33,7 +33,7 @@ index bbdb19a..3d2e0b6 100644
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 2b49d69..bc48cf6 100644
index 541b8d8..73f5ea0 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -25,17 +25,11 @@ import javax.imageio.ImageIO;
@ -156,5 +156,5 @@ index 100d84a..a40218c 100644
public static CommandSender lastSender = null; // Nasty :(
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 992e43398a309df8c25659b1d0d0881a6b327a09 Mon Sep 17 00:00:00 2001
From 71e6327dabc023b18b83ca510513acd1a52a7c07 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 02:02:07 -0600
Subject: [PATCH] Optimize Pathfinding
@ -7,10 +7,10 @@ Prevents pathfinding from spamming failures for things such as
arrow attacks.
diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java
index 31e574c..61c0f55 100644
index c9cfe3f..b1a90c1 100644
--- a/src/main/java/net/minecraft/server/NavigationAbstract.java
+++ b/src/main/java/net/minecraft/server/NavigationAbstract.java
@@ -123,10 +123,26 @@ public abstract class NavigationAbstract {
@@ -118,10 +118,26 @@ public abstract class NavigationAbstract {
}
public boolean a(Entity entity, double d0) {
@ -21,7 +21,7 @@ index 31e574c..61c0f55 100644
+
PathEntity pathentity = this.a(entity);
- return pathentity != null ? this.a(pathentity, d0) : false;
- return pathentity != null && this.a(pathentity, d0);
+ if (pathentity != null && this.a(pathentity, d0)) {
+ this.lastFailure = 0;
+ this.pathfindFailures = 0;
@ -38,7 +38,7 @@ index 31e574c..61c0f55 100644
public boolean a(@Nullable PathEntity pathentity, double d0) {
if (pathentity == null) {
@@ -260,6 +276,7 @@ public abstract class NavigationAbstract {
@@ -255,6 +271,7 @@ public abstract class NavigationAbstract {
}
public void o() {
@ -47,5 +47,5 @@ index 31e574c..61c0f55 100644
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 086069acbe2c36b968bd5d853426ff8d38a8cd49 Mon Sep 17 00:00:00 2001
From c70068607b6fe555ded74276fc6331e5df296723 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 02:07:55 -0600
Subject: [PATCH] Optimize getBlockData
@ -6,7 +6,7 @@ Subject: [PATCH] Optimize getBlockData
Hot method, so reduce # of instructions for the method.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index d55beb9..3806def 100644
index 770da2b..9b0b98b 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -395,8 +395,15 @@ public class Chunk {
@ -27,5 +27,5 @@ index d55beb9..3806def 100644
public IBlockData a(final int i, final int j, final int k) {
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 1bba159601a998917f3ebe31c6b6642951a02ef7 Mon Sep 17 00:00:00 2001
From 3ae2bd2580b26f6349a3cd0e52b59af253169654 Mon Sep 17 00:00:00 2001
From: CullanP <cullanpage@gmail.com>
Date: Thu, 3 Mar 2016 02:13:38 -0600
Subject: [PATCH] Avoid hopper searches if there are no items
@ -14,7 +14,7 @@ And since minecart hoppers are used _very_ rarely near we can avoid alot of sear
Combined, this adds up a lot.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 3806def..acce7cb 100644
index 9b0b98b..51a1d85 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -47,6 +47,13 @@ public class Chunk {
@ -31,9 +31,9 @@ index 3806def..acce7cb 100644
// CraftBukkit start - Neighbor loaded cache for chunk lighting and entity ticking
private int neighbors = 0x1 << 12;
@@ -625,6 +632,13 @@ public class Chunk {
entity.ac = k;
entity.ad = this.locZ;
@@ -623,6 +630,13 @@ public class Chunk {
entity.ad = k;
entity.ae = this.locZ;
this.entitySlices[k].add(entity);
+ // Paper start - update count
+ if (entity instanceof EntityItem) {
@ -45,7 +45,7 @@ index 3806def..acce7cb 100644
// Spigot start - increment creature type count
// Keep this synced up with World.a(Class)
if (entity instanceof EntityInsentient) {
@@ -657,6 +671,13 @@ public class Chunk {
@@ -655,6 +669,13 @@ public class Chunk {
}
this.entitySlices[i].remove(entity);
@ -59,7 +59,7 @@ index 3806def..acce7cb 100644
// Spigot start - decrement creature type count
// Keep this synced up with World.a(Class)
if (entity instanceof EntityInsentient) {
@@ -848,6 +869,15 @@ public class Chunk {
@@ -845,6 +866,15 @@ public class Chunk {
if (!this.entitySlices[k].isEmpty()) {
Iterator iterator = this.entitySlices[k].iterator();
@ -75,7 +75,7 @@ index 3806def..acce7cb 100644
while (iterator.hasNext()) {
Entity entity1 = (Entity) iterator.next();
@@ -880,7 +910,18 @@ public class Chunk {
@@ -881,7 +911,18 @@ public class Chunk {
i = MathHelper.clamp(i, 0, this.entitySlices.length - 1);
j = MathHelper.clamp(j, 0, this.entitySlices.length - 1);
@ -95,5 +95,5 @@ index 3806def..acce7cb 100644
while (iterator.hasNext()) {
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From ef4ff54759bcfc8a1002c2bec92d661542798468 Mon Sep 17 00:00:00 2001
From 682d06959c7c22c508a6959c8a158ce6a6a37a73 Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc>
Date: Thu, 3 Mar 2016 02:15:57 -0600
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
index bc48cf6..47851c1 100644
index 73f5ea0..07a69d7 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1561,6 +1561,7 @@ public final class CraftServer implements Server {
@ -17,5 +17,5 @@ index bc48cf6..47851c1 100644
return commandMap;
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From d161119c1c5608813fb96a56afc6ab967c087faf Mon Sep 17 00:00:00 2001
From d17d7a6e2f46be6ccca4462dae4706eeac1d9ca9 Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc>
Date: Thu, 3 Mar 2016 02:18:39 -0600
Subject: [PATCH] Be a bit more informative in maxHealth exception
@ -21,5 +21,5 @@ index e662e4a..f13ca63 100644
if (entity instanceof EntityPlayer && health == 0) {
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From 4f03ec9512277188129246d8315d1cbc42f3ad9b Mon Sep 17 00:00:00 2001
From b070b3e313e0ef0b1f22f4da2f3438123953e99e Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Thu, 3 Mar 2016 02:21:58 -0600
Subject: [PATCH] Graduate bungeecord chat API from spigot subclasses
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 47851c1..08edd53 100644
index 07a69d7..274b83b 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1314,6 +1314,18 @@ public final class CraftServer implements Server {
@ -28,7 +28,7 @@ index 47851c1..08edd53 100644
@Deprecated
public OfflinePlayer getOfflinePlayer(String name) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 9770c99..bd1b74c 100644
index c3ba701..1281514 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -156,6 +156,23 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -56,5 +56,5 @@ index 9770c99..bd1b74c 100644
public String getDisplayName() {
return getHandle().displayName;
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 20ea4296fe6b89252bd5f5a83c4e0ef88736454e Mon Sep 17 00:00:00 2001
From 5c439c32cad69e1b32e7244d20900e1fc695492f Mon Sep 17 00:00:00 2001
From: Techcable <Techcable@outlook.com>
Date: Thu, 3 Mar 2016 02:32:10 -0600
Subject: [PATCH] Player Tab List and Title APIs
@ -78,7 +78,7 @@ index 31a2b21..8a0839c 100644
if (this.a == PacketPlayOutTitle.EnumTitleAction.TIMES) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index bd1b74c..fdbad7d 100644
index 1281514..74fdd3c 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1,5 +1,6 @@
@ -173,5 +173,5 @@ index bd1b74c..fdbad7d 100644
@Override
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From 6d362e1d7af4414e3819f600af7dd740719561ae Mon Sep 17 00:00:00 2001
From 6f591f5aa44578cc019bef95a7b3480f50b9ddb2 Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 02:33:53 -0600
Subject: [PATCH] Ensure inv drag is in bounds
diff --git a/src/main/java/net/minecraft/server/Container.java b/src/main/java/net/minecraft/server/Container.java
index f9ff5cc..fd226f1 100644
index 00f035a..a1368a0 100644
--- a/src/main/java/net/minecraft/server/Container.java
+++ b/src/main/java/net/minecraft/server/Container.java
@@ -142,7 +142,7 @@ public abstract class Container {
@ -18,5 +18,5 @@ index f9ff5cc..fd226f1 100644
if (slot != null && a(slot, playerinventory.getCarried(), true) && slot.isAllowed(playerinventory.getCarried()) && playerinventory.getCarried().count > this.h.size() && this.b(slot)) {
this.h.add(slot);
--
2.8.2
2.8.3

View File

@ -1,28 +1,30 @@
From acf9844949fec83fbc827beef334a584b9b28f2e Mon Sep 17 00:00:00 2001
From 5a6370e213cbfefd2d2b8f3f1d7af85b490d8c7f Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 02:39:54 -0600
Subject: [PATCH] Change implementation of (tile)entity removal list
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 751e07d..c6fe888 100644
index 1b58f7d..1e092b0 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -119,9 +119,9 @@ public abstract class Entity implements ICommandListener {
@@ -119,10 +119,10 @@ public abstract class Entity implements ICommandListener {
private static final DataWatcherObject<Boolean> aB = DataWatcher.a(Entity.class, DataWatcherRegistry.h);
private static final DataWatcherObject<Boolean> aC = DataWatcher.a(Entity.class, DataWatcherRegistry.h);
public boolean aa;
- public int ab;
private static final DataWatcherObject<Boolean> aD = DataWatcher.a(Entity.class, DataWatcherRegistry.h);
- public boolean ab;
- public int ac;
- public int ad;
+ public int ab;public int getChunkX() { return ab; } // Paper
+ public int ac;public int getChunkY() { return ac; } // Paper
+ public int ad;public int getChunkZ() { return ad; } // Paper
public boolean ah;
- public int ae;
+ public boolean ab; public boolean isAddedToChunk() { return ab; } // Paper - OBFHELPER
+ public int ac; public int getChunkX() { return ac; } // Paper - OBFHELPER
+ public int ad; public int getChunkY() { return ad; } // Paper - OBFHELPER
+ public int ae; public int getChunkZ() { return ae; } // Paper - OBFHELPER
public boolean ai;
public boolean impulse;
public int portalCooldown;
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index b7f45b6..26352d2 100644
index 0b3360c..47036e1 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -31,6 +31,11 @@ import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason;
@ -51,23 +53,24 @@ index b7f45b6..26352d2 100644
public final List<EntityHuman> players = Lists.newArrayList();
public final List<Entity> j = Lists.newArrayList();
protected final IntHashMap<Entity> entitiesById = new IntHashMap();
@@ -1390,19 +1395,20 @@ public abstract class World implements IBlockAccess {
@@ -1393,20 +1398,20 @@ public abstract class World implements IBlockAccess {
this.entityList.removeAll(this.f);
int j;
+ // Paper start - Set based removal lists
+ for (Entity e : this.f) {
+ j = e.getChunkZ();
+ int k = e.getChunkX();
- for (i = 0; i < this.f.size(); ++i) {
- entity = (Entity) this.f.get(i);
- int k = entity.ab;
+ // Paper start - Set based removal lists
+ for (Entity e : this.f) {
+ j = e.getChunkX();
+ int k = e.getChunkZ();
- j = entity.ad;
- if (entity.aa && this.isChunkLoaded(k, j, true)) {
- int k = entity.ac;
-
- j = entity.ae;
- if (entity.ab && this.isChunkLoaded(k, j, true)) {
- this.getChunkAt(k, j).b(entity);
+ if (e.aa && this.isChunkLoaded(j, k, true)) {
+ this.getChunkAt(j, k).b(e);
+ if (e.isAddedToChunk() && this.isChunkLoaded(k, j, true)) {
+ this.getChunkAt(k, j).b(e);
}
}
@ -81,5 +84,5 @@ index b7f45b6..26352d2 100644
this.f.clear();
this.l();
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 094f39cebbabf098b5f817d0dd9434ac3af6185b Mon Sep 17 00:00:00 2001
From b9f357936f5bbc5b4f9a6227e266a8d1f95ca45c Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 02:46:17 -0600
Subject: [PATCH] Add configurable portal search radius
@ -19,7 +19,7 @@ index 75e7b78..5807609 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/PortalTravelAgent.java b/src/main/java/net/minecraft/server/PortalTravelAgent.java
index 6bb68c0..b731b53 100644
index 81d65f1..f483a3a 100644
--- a/src/main/java/net/minecraft/server/PortalTravelAgent.java
+++ b/src/main/java/net/minecraft/server/PortalTravelAgent.java
@@ -12,7 +12,7 @@ import org.bukkit.util.Vector;
@ -54,5 +54,5 @@ index 1d5dce1..7ca2617 100644
private boolean canCreatePortal = true;
--
2.8.2
2.8.3

View File

@ -1,14 +1,14 @@
From 128717a58ad4dd6c56d60049de3c8e2c546c6e04 Mon Sep 17 00:00:00 2001
From 786d50439034b85bf6e395da2eb896393d5c6fc3 Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 02:48:12 -0600
Subject: [PATCH] Add velocity warnings
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index a6c0b45..485e204 100644
index 5e81076..43f2c68 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -204,6 +204,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@@ -205,6 +205,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
}
public void setVelocity(Vector vel) {
@ -22,5 +22,5 @@ index a6c0b45..485e204 100644
entity.motY = vel.getY();
entity.motZ = vel.getZ();
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From add5b3b793be2bd95e906affa8f8119ef2fdf6cd Mon Sep 17 00:00:00 2001
From f8f6dac0d1a072992d643f62c80b4f4ae724b5a6 Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Thu, 3 Mar 2016 02:50:31 -0600
Subject: [PATCH] Fix inter-world teleportation glitches
@ -25,7 +25,7 @@ index 5807609..034369a 100644
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index fdbad7d..ef6e9a6 100644
index 74fdd3c..32d69df 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -557,7 +557,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -39,5 +39,5 @@ index fdbad7d..ef6e9a6 100644
return true;
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 46b6f1db57959a42d8f67fbbbb8c7e2f2a8de68f Mon Sep 17 00:00:00 2001
From 9dbe91492774e8e2feb3995f84867d961bf2cfb1 Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 03:15:41 -0600
Subject: [PATCH] Add exception reporting event
@ -50,7 +50,7 @@ index 0000000..9339718
+}
\ 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
index acce7cb..b39960a 100644
index 51a1d85..bc6e190 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -1,5 +1,6 @@
@ -68,7 +68,7 @@ index acce7cb..b39960a 100644
public class Chunk {
@@ -763,10 +765,15 @@ public class Chunk {
@@ -761,10 +763,15 @@ public class Chunk {
this.tileEntities.remove(blockposition);
// Paper end
} else {
@ -89,7 +89,7 @@ index acce7cb..b39960a 100644
}
}
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 01311c8..b268a78 100644
index e5ee5c6..990e3f0 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -11,6 +11,7 @@ import java.util.Iterator;
@ -144,7 +144,7 @@ index 01311c8..b268a78 100644
}
diff --git a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java
index 0906bf7..1d0890d 100644
index d1c83d1..e21a8c4 100644
--- a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java
+++ b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java
@@ -1,5 +1,6 @@
@ -171,7 +171,7 @@ index 0906bf7..1d0890d 100644
}
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/PersistentCollection.java b/src/main/java/net/minecraft/server/PersistentCollection.java
index c221a22..57a892c 100644
index 936d6c6..50056f4 100644
--- a/src/main/java/net/minecraft/server/PersistentCollection.java
+++ b/src/main/java/net/minecraft/server/PersistentCollection.java
@@ -1,5 +1,6 @@
@ -198,7 +198,7 @@ index c221a22..57a892c 100644
}
diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java
index da6d694..2ca94a4 100644
index e18e9bc..2badf24 100644
--- a/src/main/java/net/minecraft/server/RegionFile.java
+++ b/src/main/java/net/minecraft/server/RegionFile.java
@@ -1,5 +1,6 @@
@ -244,7 +244,7 @@ index 01a08d4..5eb01c3 100644
}
diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java
index 852bdf8..5fa35f3 100644
index 55c36fc..b603b2c 100644
--- a/src/main/java/net/minecraft/server/SpawnerCreature.java
+++ b/src/main/java/net/minecraft/server/SpawnerCreature.java
@@ -5,6 +5,7 @@ import java.util.List;
@ -272,7 +272,7 @@ index 852bdf8..5fa35f3 100644
}
diff --git a/src/main/java/net/minecraft/server/VillageSiege.java b/src/main/java/net/minecraft/server/VillageSiege.java
index 26d7d12..fcd2ddf 100644
index e40fd93..d1458aa 100644
--- a/src/main/java/net/minecraft/server/VillageSiege.java
+++ b/src/main/java/net/minecraft/server/VillageSiege.java
@@ -1,5 +1,7 @@
@ -284,7 +284,7 @@ index 26d7d12..fcd2ddf 100644
import java.util.List;
import javax.annotation.Nullable;
@@ -137,6 +139,7 @@ public class VillageSiege {
entityzombie.clearVillagerType();
entityzombie.setVillagerType(EnumZombieType.NORMAL);
} catch (Exception exception) {
exception.printStackTrace();
+ ServerInternalException.reportInternalException(exception); // Paper
@ -292,7 +292,7 @@ index 26d7d12..fcd2ddf 100644
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 26352d2..ccbfda0 100644
index 47036e1..6b2875d 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1,5 +1,7 @@
@ -303,7 +303,7 @@ index 26352d2..ccbfda0 100644
import com.google.common.base.Function;
import com.google.common.base.Objects;
import com.google.common.base.Predicate;
@@ -1450,8 +1452,10 @@ public abstract class World implements IBlockAccess {
@@ -1453,8 +1455,10 @@ public abstract class World implements IBlockAccess {
} catch (Throwable throwable1) {
entity.tickTimer.stopTiming();
// Paper start - Prevent tile entity and entity crashes
@ -315,7 +315,7 @@ index 26352d2..ccbfda0 100644
entity.dead = true;
continue;
// Paper end
@@ -1515,8 +1519,10 @@ public abstract class World implements IBlockAccess {
@@ -1518,8 +1522,10 @@ public abstract class World implements IBlockAccess {
this.methodProfiler.b();
} catch (Throwable throwable2) {
// Paper start - Prevent tile entity and entity crashes
@ -372,5 +372,5 @@ index 2a22697..d82dddf 100644
// (async tasks must live with race-conditions if they attempt to cancel between these few lines of code)
}
--
2.8.2.windows.1
2.8.3

View File

@ -1,4 +1,4 @@
From af2b7145d1158096496c253ccbfd616eb2fb9118 Mon Sep 17 00:00:00 2001
From 14700c98dde8496b26b71b17f280e71263ab314d Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc>
Date: Tue, 8 Mar 2016 18:28:43 -0800
Subject: [PATCH] Don't nest if we don't need to when cerealising text
@ -26,5 +26,5 @@ index c0e1199..bc6c054 100644
packetdataserializer.a(this.a);
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 4d5552cf47f156086b9619a29197cdbb4cff6f7f Mon Sep 17 00:00:00 2001
From 9567aaa67ebbdbfc570e398ba6d9a5ee7676bb59 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 8 Mar 2016 23:25:45 -0500
Subject: [PATCH] Disable Scoreboards for non players by default
@ -25,7 +25,7 @@ index 034369a..308dfdd 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/CommandScoreboard.java b/src/main/java/net/minecraft/server/CommandScoreboard.java
index 989721b..6b2a1a0 100644
index 5f579bc..8e5419d 100644
--- a/src/main/java/net/minecraft/server/CommandScoreboard.java
+++ b/src/main/java/net/minecraft/server/CommandScoreboard.java
@@ -491,6 +491,7 @@ public class CommandScoreboard extends CommandAbstract {
@ -33,21 +33,21 @@ index 989721b..6b2a1a0 100644
while (iterator.hasNext()) {
Entity entity = (Entity) iterator.next();
+ if (!entity.world.paperConfig.nonPlayerEntitiesOnScoreboards && !(entity instanceof EntityHuman)) { continue; } // Paper
String s2 = e(minecraftserver, icommandlistener, entity.bd());
String s2 = e(minecraftserver, icommandlistener, entity.bf());
if (scoreboard.addPlayerToTeam(s2, s)) {
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index c6fe888..035dd20 100644
index 2dfe212..f192fe5 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1853,6 +1853,7 @@ public abstract class Entity implements ICommandListener {
@@ -1882,6 +1882,7 @@ public abstract class Entity implements ICommandListener {
@Nullable
public ScoreboardTeamBase aO() {
public ScoreboardTeamBase aQ() {
+ if (!this.world.paperConfig.nonPlayerEntitiesOnScoreboards && !(this instanceof EntityHuman)) { return null; } // Paper
return this.world.getScoreboard().getPlayerTeam(this.bd());
return this.world.getScoreboard().getPlayerTeam(this.bf());
}
--
2.8.2
2.8.3

View File

@ -1,24 +1,24 @@
From e1870e7610f50cc6024f509c899d00ab7fb198d8 Mon Sep 17 00:00:00 2001
From 092524b44ebe0d815bddc2cc3da6177e97eaa876 Mon Sep 17 00:00:00 2001
From: mrapple <tony@oc.tc>
Date: Sun, 25 Nov 2012 13:43:39 -0600
Subject: [PATCH] Add methods for working with arrows stuck in living entities
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 7fd8585..b151c13 100644
index c1c6822..a5d3657 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1284,10 +1284,12 @@ public abstract class EntityLiving extends Entity {
@@ -1307,10 +1307,12 @@ public abstract class EntityLiving extends Entity {
return (float) this.getAttributeInstance(GenericAttributes.maxHealth).getValue();
}
+ public final int getStuckArrows() { return this.bY(); } // Paper // OBFHELPER
public final int bY() {
+ public final int getStuckArrows() { return this.cb(); } // Paper - OBFHELPER
public final int cb() {
return ((Integer) this.datawatcher.get(EntityLiving.h)).intValue();
}
+ public final void setStuckArrows(int arrows) { this.k(arrows); } // Paper - deobfuscation helper
public final void k(int i) {
+ public final void setStuckArrows(int arrows) { this.f(arrows); } // Paper - OBFHELPER
public final void f(int i) {
this.datawatcher.set(EntityLiving.h, Integer.valueOf(i));
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@ -43,5 +43,5 @@ index f13ca63..16da1c9 100644
+ // Paper end
}
--
2.8.2
2.8.3

View File

@ -1,27 +1,14 @@
From 468dbbaec486911373e779b6f9349066777ef3d7 Mon Sep 17 00:00:00 2001
From 9b0b7c9f2eaf3432259e3124e87c3616aad9a6fb Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Sat, 4 Apr 2015 23:17:52 -0400
Subject: [PATCH] Complete resource pack API
diff --git a/src/main/java/net/minecraft/server/PacketPlayInResourcePackStatus.java b/src/main/java/net/minecraft/server/PacketPlayInResourcePackStatus.java
index 04e52d2..2a14e1a 100644
--- a/src/main/java/net/minecraft/server/PacketPlayInResourcePackStatus.java
+++ b/src/main/java/net/minecraft/server/PacketPlayInResourcePackStatus.java
@@ -4,7 +4,7 @@ import java.io.IOException;
public class PacketPlayInResourcePackStatus implements Packet<PacketListenerPlayIn> {
- private String a;
+ public String a; // Paper - make public
public PacketPlayInResourcePackStatus.EnumResourcePackStatus status;
public PacketPlayInResourcePackStatus() {}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 2cde490..dba953f 100644
index efca444..9e75986 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -1025,7 +1025,13 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -1024,7 +1024,13 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
// CraftBukkit start
public void a(PacketPlayInResourcePackStatus packetplayinresourcepackstatus) {
@ -30,14 +17,14 @@ index 2cde490..dba953f 100644
+ // Paper start
+ PlayerConnectionUtils.ensureMainThread(packetplayinresourcepackstatus, this, this.player.x());
+ final PlayerResourcePackStatusEvent.Status status = PlayerResourcePackStatusEvent.Status.values()[packetplayinresourcepackstatus.status.ordinal()];
+ this.getPlayer().setResourcePackStatus(status, packetplayinresourcepackstatus.a);
+ this.server.getPluginManager().callEvent(new PlayerResourcePackStatusEvent(getPlayer(), status, packetplayinresourcepackstatus.a));
+ this.getPlayer().setResourcePackStatus(status);
+ this.server.getPluginManager().callEvent(new PlayerResourcePackStatusEvent(getPlayer(), status));
+ // paper end
}
// CraftBukkit end
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index ef6e9a6..c018773 100644
index 32d69df..4860701 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -72,6 +72,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -51,7 +38,7 @@ index ef6e9a6..c018773 100644
public CraftPlayer(CraftServer server, EntityPlayer entity) {
super(server, entity);
@@ -1525,6 +1529,33 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1525,6 +1529,32 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
((WorldServer) getHandle().world).getPlayerChunkMap().updateViewDistance(getHandle(), viewDistance);
}
@ -77,14 +64,13 @@ index ef6e9a6..c018773 100644
+ return this.resourcePackStatus == org.bukkit.event.player.PlayerResourcePackStatusEvent.Status.SUCCESSFULLY_LOADED;
+ }
+
+ public void setResourcePackStatus(org.bukkit.event.player.PlayerResourcePackStatusEvent.Status status, String hash) {
+ public void setResourcePackStatus(org.bukkit.event.player.PlayerResourcePackStatusEvent.Status status) {
+ this.resourcePackStatus = status;
+ this.resourcePackHash = hash;
+ }
+
// Spigot start
private final Player.Spigot spigot = new Player.Spigot()
{
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From a94f9554cfbe7e4388e50aca733edd805ebcb52b Mon Sep 17 00:00:00 2001
From 6e48e1f0bcab04adbb381b1488ef6708e5896277 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Sat, 12 Mar 2016 13:37:50 -0600
Subject: [PATCH] Re-add Spigot's hopper-check feature
@ -19,10 +19,10 @@ index 308dfdd..48ea25c 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/TileEntityHopper.java b/src/main/java/net/minecraft/server/TileEntityHopper.java
index 76e2351..de458c8 100644
index d1ce2b9..197bdfe 100644
--- a/src/main/java/net/minecraft/server/TileEntityHopper.java
+++ b/src/main/java/net/minecraft/server/TileEntityHopper.java
@@ -183,6 +183,12 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi
@@ -187,6 +187,12 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi
this.update();
return true;
}
@ -36,5 +36,5 @@ index 76e2351..de458c8 100644
return false;
} else {
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From eb751a1284762ac0d294c8609b57edc8fbaa85e9 Mon Sep 17 00:00:00 2001
From 8d2b17317390f32c79ff90a3aece9ec4fed83d41 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 4 Mar 2016 18:18:37 -0600
Subject: [PATCH] Chunk save queue improvements
@ -41,7 +41,7 @@ index 9ab6445..d01bca1 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index da7d7fe..a5c4e95 100644
index 24cb51b..f298692 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -12,14 +12,17 @@ import java.util.Map;
@ -57,12 +57,12 @@ index da7d7fe..a5c4e95 100644
+ private ConcurrentLinkedQueue<QueuedChunk> queue = new ConcurrentLinkedQueue<>(); // Paper - Chunk queue improvements
+ private final Object lock = new Object(); // Paper - Chunk queue improvements
private static final Logger a = LogManager.getLogger();
private Map<ChunkCoordIntPair, NBTTagCompound> b = new ConcurrentHashMap();
- private Set<ChunkCoordIntPair> c = Collections.newSetFromMap(new ConcurrentHashMap());
+ //private Set<ChunkCoordIntPair> c = Collections.newSetFromMap(new ConcurrentHashMap()); // Paper - Chunk queue improvements
private final Map<ChunkCoordIntPair, NBTTagCompound> b = new ConcurrentHashMap();
- private final Set<ChunkCoordIntPair> c = Collections.newSetFromMap(new ConcurrentHashMap());
+ //private final Set<ChunkCoordIntPair> c = Collections.newSetFromMap(new ConcurrentHashMap()); // Paper - Chunk queue improvements
private final File d;
private final DataConverterManager e;
private boolean f = false;
private boolean f;
@@ -33,11 +36,11 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
public boolean chunkExists(World world, int i, int j) {
ChunkCoordIntPair chunkcoordintpair = new ChunkCoordIntPair(i, j);
@ -128,7 +128,7 @@ index da7d7fe..a5c4e95 100644
}
return flag;
@@ -508,4 +516,16 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
@@ -544,4 +552,16 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
return entity;
}
}
@ -146,7 +146,7 @@ index da7d7fe..a5c4e95 100644
+ // Paper end
}
diff --git a/src/main/java/net/minecraft/server/FileIOThread.java b/src/main/java/net/minecraft/server/FileIOThread.java
index 4733f94..113aea2 100644
index acfdd52..fdbaf5f 100644
--- a/src/main/java/net/minecraft/server/FileIOThread.java
+++ b/src/main/java/net/minecraft/server/FileIOThread.java
@@ -39,11 +39,15 @@ public class FileIOThread implements Runnable {
@ -170,5 +170,5 @@ index 4733f94..113aea2 100644
if (this.b.isEmpty()) {
--
2.8.3.windows.1
2.8.3

View File

@ -1,4 +1,4 @@
From 0e0ec1d44114445a752f0a8fcee7a5e44fcf20d8 Mon Sep 17 00:00:00 2001
From 76b8046fd9231671bccba11f30da3f446028dd4e Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 4 Mar 2013 23:46:10 -0500
Subject: [PATCH] Chunk Save Reattempt
@ -6,7 +6,7 @@ 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.
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index a5c4e95..be0a565 100644
index f298692..4f010ae 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -172,11 +172,16 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
@ -28,7 +28,7 @@ index a5c4e95..be0a565 100644
synchronized (lock) { if (this.b.get(chunkcoordintpair) == nbttagcompound) { this.b.remove(chunkcoordintpair); } }// Paper - This will not equal if a newer version is still pending
diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java
index 2ca94a4..68dd17d 100644
index 2badf24..6dbc80e 100644
--- a/src/main/java/net/minecraft/server/RegionFile.java
+++ b/src/main/java/net/minecraft/server/RegionFile.java
@@ -247,8 +247,7 @@ public class RegionFile {
@ -42,5 +42,5 @@ index 2ca94a4..68dd17d 100644
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 6da295d495dc7a8262baaa2dfc7fe3c291b96bfe Mon Sep 17 00:00:00 2001
From e1968270a2c8cdeddffca1a687a0adee2cdfd00c Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 13:17:38 -0400
Subject: [PATCH] Default loading permissions.yml before plugins
@ -16,7 +16,7 @@ modify that. Under the previous logic, plugins were unable (cleanly) override pe
A config option has been added for those who depend on the previous behavior, but I don't expect that.
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 4c28483..25eb832 100644
index d01bca1..2e17397 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -203,4 +203,9 @@ public class PaperConfig {
@ -30,7 +30,7 @@ index 4c28483..25eb832 100644
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 08edd53..c6c6cfe 100644
index 274b83b..012d707 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -307,6 +307,7 @@ public final class CraftServer implements Server {
@ -51,5 +51,5 @@ index 08edd53..c6c6cfe 100644
CraftDefaultPermissions.registerCorePermissions();
helpMap.initializeCommands();
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 4af257901d3e5e068cb582aa0cb016f17f118f18 Mon Sep 17 00:00:00 2001
From 148f24b5deefd6ffc1dee0dd4091332860377f1a Mon Sep 17 00:00:00 2001
From: William <admin@domnian.com>
Date: Fri, 18 Mar 2016 03:30:17 -0400
Subject: [PATCH] Allow Reloading of Custom Permissions
@ -6,7 +6,7 @@ Subject: [PATCH] Allow Reloading of Custom Permissions
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
index c6c6cfe..1d304eb 100644
index 012d707..25dd732 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1841,4 +1841,21 @@ public final class CraftServer implements Server {
@ -32,5 +32,5 @@ index c6c6cfe..1d304eb 100644
+ // Paper end
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 9c4b544c1ba8f66e8267295fead58da7f7f684c7 Mon Sep 17 00:00:00 2001
From a9bceb5d8baac0ffcd64b2043d5cc8362559bb43 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 13:50:14 -0400
Subject: [PATCH] Remove Metadata on reload
@ -7,7 +7,7 @@ Metadata is not meant to persist reload as things break badly with non primitive
This will remove metadata on reload so it does not crash everything if a plugin uses it.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 1d304eb..e6cce51 100644
index 25dd732..de45d8b 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -730,6 +730,14 @@ public final class CraftServer implements Server {
@ -26,5 +26,5 @@ index 1d304eb..e6cce51 100644
commandMap.clearCommands();
resetRecipes();
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From ffb0e934efe4e2025f43f2d1eb921462b4760838 Mon Sep 17 00:00:00 2001
From 0e2562f117605d13549f2837949909da33c67621 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 14:19:19 -0400
Subject: [PATCH] Undead horse leashing
@ -20,10 +20,10 @@ index 48ea25c..57e1fcf 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityHorse.java b/src/main/java/net/minecraft/server/EntityHorse.java
index 25d788f..dfe1fa5 100644
index ef429c1..38c4f61 100644
--- a/src/main/java/net/minecraft/server/EntityHorse.java
+++ b/src/main/java/net/minecraft/server/EntityHorse.java
@@ -170,6 +170,7 @@ public class EntityHorse extends EntityAnimal implements IInventoryListener, IJu
@@ -169,6 +169,7 @@ public class EntityHorse extends EntityAnimal implements IInventoryListener, IJu
}
public boolean a(EntityHuman entityhuman) {
@ -32,5 +32,5 @@ index 25d788f..dfe1fa5 100644
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 583a58098469f47ebaedf45582208c066cb759b7 Mon Sep 17 00:00:00 2001
From 066074bd90e51a8b89d86a9b977e71fde716545a Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 14:24:53 -0400
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.
diff --git a/src/main/java/net/minecraft/server/TileEntityFurnace.java b/src/main/java/net/minecraft/server/TileEntityFurnace.java
index 94c69be..b908110 100644
index fd6c246..db235c3 100644
--- a/src/main/java/net/minecraft/server/TileEntityFurnace.java
+++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java
@@ -168,7 +168,7 @@ public class TileEntityFurnace extends TileEntityContainer implements ITickable,
@@ -172,7 +172,7 @@ public class TileEntityFurnace extends TileEntityContainer implements ITickable,
if (this.isBurning() && this.canBurn()) {
this.cookTime += elapsedTicks;
if (this.cookTime >= this.cookTimeTotal) {
@ -22,5 +22,5 @@ index 94c69be..b908110 100644
this.burn();
flag1 = true;
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From efe987511bfe705324b10de5ff214193c4e5a7e5 Mon Sep 17 00:00:00 2001
From aae185d1bb080ef2b3a9dc0dbf99e4a587285c70 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 28 May 2015 23:00:19 -0400
Subject: [PATCH] Handle Item Meta Inconsistencies
@ -293,5 +293,5 @@ index 22cc267..94f2ba0 100644
private final Spigot spigot = new Spigot()
{
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 7330300f4ce381a1f67de5cc44b9f0a6a94e67ca Mon Sep 17 00:00:00 2001
From 15b116f7733f5dfd8625af0118f34334eaa774e6 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 15:12:22 -0400
Subject: [PATCH] Configurable Non Player Arrow Despawn Rate
@ -24,18 +24,18 @@ index 57e1fcf..3f8a47b 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java
index 29b6f16..c2ee9ce 100644
index 91fda88..8130ca6 100644
--- a/src/main/java/net/minecraft/server/EntityArrow.java
+++ b/src/main/java/net/minecraft/server/EntityArrow.java
@@ -145,7 +145,7 @@ public abstract class EntityArrow extends Entity implements IProjectile {
@@ -149,7 +149,7 @@ public abstract class EntityArrow extends Entity implements IProjectile {
if (block == this.av && i == this.aw) {
++this.ax;
- if (this.ax >= world.spigotConfig.arrowDespawnRate) { // Spigot - First int after shooter
+ if (this.ax >= (fromPlayer != PickupStatus.DISALLOWED ? world.spigotConfig.arrowDespawnRate : world.paperConfig.nonPlayerArrowDespawnRate)) { // Spigot - First int after shooter // Paper
if (block == this.aw && i == this.ax) {
++this.ay;
- if (this.ay >= world.spigotConfig.arrowDespawnRate) { // Spigot - First int after shooter
+ if (this.ay >= (fromPlayer != PickupStatus.DISALLOWED ? world.spigotConfig.arrowDespawnRate : world.paperConfig.nonPlayerArrowDespawnRate)) { // Spigot - First int after shooter // Paper
this.die();
}
} else {
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 12e2338b328449eb9044d34d5cd5f5ecf2e1f575 Mon Sep 17 00:00:00 2001
From 08a65e6dbb21e258c26f46d19d4f02c44168d2c9 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 20:16:03 -0400
Subject: [PATCH] Add World Util Methods
@ -6,7 +6,7 @@ Subject: [PATCH] Add World Util Methods
Methods that can be used for other patches to help improve logic.
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index e092ba5..276cdf4 100644
index 6b2875d..db4bbd9 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -153,6 +153,12 @@ public abstract class World implements IBlockAccess {
@ -64,7 +64,7 @@ index e092ba5..276cdf4 100644
public int getLightLevel(BlockPosition blockposition) {
return this.c(blockposition, true);
}
@@ -745,6 +786,27 @@ public abstract class World implements IBlockAccess {
@@ -749,6 +790,27 @@ public abstract class World implements IBlockAccess {
return this.worldProvider.n()[this.getLightLevel(blockposition)];
}

View File

@ -1,4 +1,4 @@
From 351015662bd35f4fe257743ee2c65ebf0709b70a Mon Sep 17 00:00:00 2001
From e2a40825c87e38de01e164e494a2103b00fde6d9 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 21:22:56 -0400
Subject: [PATCH] Optimized Light Level Comparisons
@ -65,7 +65,7 @@ index 11d9d3f..21e722d 100644
// world.setTypeUpdate(blockposition1, Blocks.GRASS.getBlockData());
org.bukkit.World bworld = world.getWorld();
diff --git a/src/main/java/net/minecraft/server/BlockSapling.java b/src/main/java/net/minecraft/server/BlockSapling.java
index 76b13a3..b7776fb 100644
index 4118fd1..97784f1 100644
--- a/src/main/java/net/minecraft/server/BlockSapling.java
+++ b/src/main/java/net/minecraft/server/BlockSapling.java
@@ -34,7 +34,7 @@ public class BlockSapling extends BlockPlant implements IBlockFragilePlantElemen
@ -91,10 +91,10 @@ index d378ea4..1185100 100644
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
index 2b79c28..ec00edf 100644
index 1aef91a..733fec7 100644
--- a/src/main/java/net/minecraft/server/EntityMonster.java
+++ b/src/main/java/net/minecraft/server/EntityMonster.java
@@ -118,17 +118,17 @@ public abstract class EntityMonster extends EntityCreature implements IMonster {
@@ -122,17 +122,17 @@ public abstract class EntityMonster extends EntityCreature implements IMonster {
if (this.world.b(EnumSkyBlock.SKY, blockposition) > this.random.nextInt(32)) {
return false;
} else {
@ -118,7 +118,7 @@ index 2b79c28..ec00edf 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java
index 774d773..0aeda93 100644
index 6981185..798b9c5 100644
--- a/src/main/java/net/minecraft/server/EntityZombie.java
+++ b/src/main/java/net/minecraft/server/EntityZombie.java
@@ -195,7 +195,7 @@ public class EntityZombie extends EntityMonster {
@ -131,5 +131,5 @@ index 774d773..0aeda93 100644
if (!this.world.isPlayerNearby((double) i1, (double) j1, (double) k1, 7.0D, EntityHuman.affectsSpawningFilter()) && this.world.a(entityzombie.getBoundingBox(), (Entity) entityzombie) && this.world.getCubes(entityzombie, entityzombie.getBoundingBox()).isEmpty() && !this.world.containsLiquid(entityzombie.getBoundingBox())) { // Paper - affectsSpawning filter
this.world.addEntity(entityzombie, CreatureSpawnEvent.SpawnReason.REINFORCEMENTS); // CraftBukkit
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 4d271a1256717859ffd1692a3bbc5481644b0f8e Mon Sep 17 00:00:00 2001
From dbc19e6395eaca56b7421a2f137e52b988b4b83f Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 19 Mar 2016 15:16:54 -0400
Subject: [PATCH] Pass world to Village creation
@ -6,7 +6,7 @@ Subject: [PATCH] Pass world to Village creation
fixes NPE bug #95
diff --git a/src/main/java/net/minecraft/server/PersistentVillage.java b/src/main/java/net/minecraft/server/PersistentVillage.java
index a285639..22ee682 100644
index 75dc674..2a9444e 100644
--- a/src/main/java/net/minecraft/server/PersistentVillage.java
+++ b/src/main/java/net/minecraft/server/PersistentVillage.java
@@ -236,7 +236,7 @@ public class PersistentVillage extends PersistentBase {
@ -19,11 +19,11 @@ index a285639..22ee682 100644
village.a(nbttagcompound1);
this.villages.add(village);
diff --git a/src/main/java/net/minecraft/server/Village.java b/src/main/java/net/minecraft/server/Village.java
index e674cf9..2624abf 100644
index 1fa7cb2..fc3a6ab 100644
--- a/src/main/java/net/minecraft/server/Village.java
+++ b/src/main/java/net/minecraft/server/Village.java
@@ -22,7 +22,7 @@ public class Village {
private List<Village.Aggressor> k;
private final List<Village.Aggressor> k;
private int l;
- public Village() {
@ -31,15 +31,6 @@ index e674cf9..2624abf 100644
this.c = BlockPosition.ZERO;
this.d = BlockPosition.ZERO;
this.j = new TreeMap();
@@ -391,7 +391,7 @@ public class Village {
NBTTagCompound nbttagcompound2 = nbttaglist1.get(j);
if (nbttagcompound2.hasKey("UUID")) {
- UserCache usercache = this.a.getMinecraftServer().getUserCache();
+ UserCache usercache = MinecraftServer.getServer().getUserCache(); // Paper - Bandaid for world being null
GameProfile gameprofile = usercache.a(UUID.fromString(nbttagcompound2.getString("UUID")));
if (gameprofile != null) {
--
2.8.2
2.8.3

View File

@ -1,15 +1,15 @@
From 7ec96efff6416cfbc3799decabe316e6594ceaec Mon Sep 17 00:00:00 2001
From e197b180f6bdc9f5a0bf812e77f73d3abda9aff9 Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Sun, 21 Jun 2015 15:07:20 -0400
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
index b151c13..d11e01b 100644
index a5d3657..eec5dd5 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2232,12 +2232,25 @@ public abstract class EntityLiving extends Entity {
ItemStack itemstack = (craftItem.equals(event.getItem())) ? this.bn.a(this.world, this) : CraftItemStack.asNMSCopy(event.getItem()).a(world, this);
@@ -2265,12 +2265,24 @@ public abstract class EntityLiving extends Entity {
ItemStack itemstack = (craftItem.equals(event.getItem())) ? this.bo.a(this.world, this) : CraftItemStack.asNMSCopy(event.getItem()).a(world, this);
// CraftBukkit end
+ // Paper start - save the default replacement item and change it if necessary
@ -23,17 +23,16 @@ index b151c13..d11e01b 100644
itemstack = null;
}
this.a(this.cu(), itemstack);
this.cA();
this.a(this.cy(), itemstack);
this.cE();
+
+ // 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)) {
+ ((EntityPlayer) this).getBukkitEntity().updateInventory();
+ }
+ // Paper end
}
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From b5f5309151ea82ece4f4131a649364e0b1cab626 Mon Sep 17 00:00:00 2001
From 9292e503b51f518fc19a70f6be9763fc86381d58 Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Sun, 19 Jul 2015 16:51:38 -0400
Subject: [PATCH] Set health before death event
@ -46,5 +46,5 @@ index 16da1c9..b1e63f0 100644
public double getMaxHealth() {
--
2.8.3.windows.1
2.8.3

View File

@ -1,14 +1,14 @@
From 80095f37e49793ab660d09206d3bf6155a6115c5 Mon Sep 17 00:00:00 2001
From 2708cdeef5f8caa3e8619dcb1abd5cd2cac89675 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sun, 27 Sep 2015 01:18:02 -0400
Subject: [PATCH] handle NaN health/absorb values and repair bad data
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index d11e01b..df4d8d8 100644
index eec5dd5..01f779c 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -465,7 +465,13 @@ public abstract class EntityLiving extends Entity {
@@ -468,7 +468,13 @@ public abstract class EntityLiving extends Entity {
}
public void a(NBTTagCompound nbttagcompound) {
@ -23,7 +23,7 @@ index d11e01b..df4d8d8 100644
if (nbttagcompound.hasKeyOfType("Attributes", 9) && this.world != null && !this.world.isClientSide) {
GenericAttributes.a(this.getAttributeMap(), nbttagcompound.getList("Attributes", 10));
}
@@ -752,6 +758,10 @@ public abstract class EntityLiving extends Entity {
@@ -759,6 +765,10 @@ public abstract class EntityLiving extends Entity {
}
public void setHealth(float f) {
@ -34,7 +34,7 @@ index d11e01b..df4d8d8 100644
// CraftBukkit start - Handle scaled health
if (this instanceof EntityPlayer) {
org.bukkit.craftbukkit.entity.CraftPlayer player = ((EntityPlayer) this).getBukkitEntity();
@@ -2102,7 +2112,7 @@ public abstract class EntityLiving extends Entity {
@@ -2135,7 +2145,7 @@ public abstract class EntityLiving extends Entity {
}
public void setAbsorptionHearts(float f) {
@ -44,7 +44,7 @@ index d11e01b..df4d8d8 100644
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index c018773..2b555c9 100644
index 7edc2e2..087d788 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1375,6 +1375,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -56,5 +56,5 @@ index c018773..2b555c9 100644
}
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From e81998f1d7e8b746800b99873ded73f31db9f51c Mon Sep 17 00:00:00 2001
From c8b7428f7fa5295dc445811bc21c9a24c7422330 Mon Sep 17 00:00:00 2001
From: Daniel Ennis <dennis@icontact.com>
Date: Sun, 20 Mar 2016 15:22:42 -0400
Subject: [PATCH] Catch Async PlayerChunkMap operations

View File

@ -1,11 +1,11 @@
From 99d32a59893bfefda1c1463698b99ad4cf0f9b76 Mon Sep 17 00:00:00 2001
From 348049fa62d381ff2473f83152e3b7f933046499 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Mon, 21 Mar 2016 00:19:18 -0500
Subject: [PATCH] Support offline mode in whitelist command as well
diff --git a/src/main/java/net/minecraft/server/CommandWhitelist.java b/src/main/java/net/minecraft/server/CommandWhitelist.java
index 95ba9c3..ba1cc1b 100644
index c74d1d2..0f4237d 100644
--- a/src/main/java/net/minecraft/server/CommandWhitelist.java
+++ b/src/main/java/net/minecraft/server/CommandWhitelist.java
@@ -44,24 +44,35 @@ public class CommandWhitelist extends CommandAbstract {
@ -24,7 +24,7 @@ index 95ba9c3..ba1cc1b 100644
+ this.whitelist(minecraftserver, astring[1], true);
+ // Paper end
a(icommandlistener, (ICommand) this, "commands.whitelist.add.success", new Object[] { astring[1]});
} else if (astring[0].equals("remove")) {
} else if ("remove".equals(astring[0])) {
if (astring.length < 2) {
throw new ExceptionUsage("commands.whitelist.remove.usage", new Object[0]);
}
@ -42,7 +42,7 @@ index 95ba9c3..ba1cc1b 100644
+ this.whitelist(minecraftserver, astring[1], false);
+ // Paper end
a(icommandlistener, (ICommand) this, "commands.whitelist.remove.success", new Object[] { astring[1]});
} else if (astring[0].equals("reload")) {
} else if ("reload".equals(astring[0])) {
minecraftserver.getPlayerList().reloadWhitelist();
@@ -89,4 +100,43 @@ public class CommandWhitelist extends CommandAbstract {
return Collections.emptyList();
@ -89,5 +89,5 @@ index 95ba9c3..ba1cc1b 100644
+ // Paper end
}
--
2.8.2
2.8.3

View File

@ -1,11 +1,11 @@
From 4ab03fbd5648e5d5d8ffd5711a88ed34e80d3ad6 Mon Sep 17 00:00:00 2001
From 6cd4c784f7c1c06fbea56d9e56989a8286a7d228 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 5 Jan 2016 21:48:24 -0500
Subject: [PATCH] Fix SkullCache case bug
diff --git a/src/main/java/net/minecraft/server/TileEntitySkull.java b/src/main/java/net/minecraft/server/TileEntitySkull.java
index 8aafd36..49ab25b 100644
index 654b51d..a8adbcb 100644
--- a/src/main/java/net/minecraft/server/TileEntitySkull.java
+++ b/src/main/java/net/minecraft/server/TileEntitySkull.java
@@ -191,7 +191,7 @@ public class TileEntitySkull extends TileEntity implements ITickable {
@ -18,5 +18,5 @@ index 8aafd36..49ab25b 100644
callback.apply(profile);
} else {
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 3bc455877e340f5305c1ef2a7280a3066f07a09f Mon Sep 17 00:00:00 2001
From a0b9b1b558de13bfb4cc19a431a8d2dd64fc5697 Mon Sep 17 00:00:00 2001
From: Gabscap <sonstige.netzwerke@gabriel-paradzik.de>
Date: Sat, 19 Mar 2016 22:25:11 +0100
Subject: [PATCH] Waving banner workaround
@ -33,5 +33,5 @@ index c5c3f40..3ed2356 100644
public void a(PacketDataSerializer packetdataserializer) throws IOException {
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From b9b51e7c1c6d31352a01ba0444623f88cc404f31 Mon Sep 17 00:00:00 2001
From 804d1bd1396b4f8a6c264b7e20bd2ab0e7aadedb Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 22 Mar 2016 00:33:47 -0400
Subject: [PATCH] Use a Shared Random for Entities
@ -6,7 +6,7 @@ Subject: [PATCH] Use a Shared Random for Entities
Reduces memory usage and provides ensures more randomness, Especially since a lot of garbage entity objects get created.
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 035dd20..06840ec 100644
index fb2bbda..3db24dd 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -44,6 +44,7 @@ public abstract class Entity implements ICommandListener {
@ -17,15 +17,15 @@ index 035dd20..06840ec 100644
static boolean isLevelAtLeast(NBTTagCompound tag, int level) {
return tag.hasKey("Bukkit.updateLevel") && tag.getInt("Bukkit.updateLevel") >= level;
}
@@ -160,7 +161,7 @@ public abstract class Entity implements ICommandListener {
@@ -161,7 +162,7 @@ public abstract class Entity implements ICommandListener {
this.width = 0.6F;
this.length = 1.8F;
this.aw = 1;
this.ax = 1;
- this.random = new Random();
+ this.random = SHARED_RANDOM; // Paper
this.maxFireTicks = 1;
this.justCreated = true;
this.uniqueID = MathHelper.a(this.random);
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 64f7efffc2eef965370eb5fdcc15a00fb0847fed Mon Sep 17 00:00:00 2001
From b378c82821f7f7a5fee66bd12b7b861c8cd8378f Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 22 Mar 2016 00:55:23 -0400
Subject: [PATCH] Don't teleport dead entities
@ -7,10 +7,10 @@ Had some issue with this in past, and this is the vanilla logic.
Potentially an old CB change that's no longer needed.
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 06840ec..b03e9ee 100644
index 6a1bc3a..306e9cd 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -2103,7 +2103,7 @@ public abstract class Entity implements ICommandListener {
@@ -2132,7 +2132,7 @@ public abstract class Entity implements ICommandListener {
}
public Entity teleportTo(Location exit, boolean portal) {
@ -20,5 +20,5 @@ index 06840ec..b03e9ee 100644
WorldServer worldserver1 = ((CraftWorld) exit.getWorld()).getHandle();
int i = worldserver1.dimension;
--
2.8.2
2.8.3

View File

@ -1,4 +1,4 @@
From 1917871be3d7d048b496022ef54eaf230ff2a900 Mon Sep 17 00:00:00 2001
From 3ca522e3f2ce88a0be43c1d933a921e310346642 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 27 Aug 2015 01:15:02 -0400
Subject: [PATCH] Optimize Chunk Access
@ -9,7 +9,7 @@ getChunkAt is called for the same chunk multiple times in a row, often from getT
Optimize this look up by using a Last Access cache.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index eb60455..22e4728 100644
index bc6e190..770d7ed 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -30,6 +30,7 @@ public class Chunk {
@ -29,11 +29,11 @@ index eb60455..22e4728 100644
for (int k = 0; k < this.entitySlices.length; ++k) {
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 32b71c6..3d36d7a 100644
index 990e3f0..1fd844b 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -27,7 +27,27 @@ public class ChunkProviderServer implements IChunkProvider {
public final Set<Long> unloadQueue = Sets.newHashSet(); // PAIL: private -> public
public final Set<Long> unloadQueue = Sets.newHashSet();
public final ChunkGenerator chunkGenerator;
private final IChunkLoader chunkLoader;
- public final Long2ObjectMap<Chunk> chunks = new Long2ObjectOpenHashMap(8192);
@ -62,5 +62,5 @@ index 32b71c6..3d36d7a 100644
public ChunkProviderServer(WorldServer worldserver, IChunkLoader ichunkloader, ChunkGenerator chunkgenerator) {
--
2.8.2
2.8.3

Some files were not shown because too many files have changed in this diff Show More