Update for upstream changes

This commit is contained in:
Zach Brown 2016-03-03 03:46:26 -06:00
parent c169c4a685
commit 6287e97b6b
33 changed files with 160 additions and 159 deletions

1
.gitignore vendored
View file

@ -47,3 +47,4 @@ Bukkit
CraftBukkit
Paperclip
Paperclip.jar
paperclip.jar

@ -1 +1 @@
Subproject commit 1b58efd4de067e40562ba01fefe70cc22a32ffeb
Subproject commit 98c39e89d130e39c75cf4ebeea914f7ceb359a84

View file

@ -24,7 +24,7 @@ index dec3b6c..b85201d 100644
- <artifactId>spigot-api</artifactId>
+ <groupId>com.destroystokyo.paper</groupId>
+ <artifactId>paper-api</artifactId>
<version>1.9-SNAPSHOT</version>
<version>1.9-R0.1-SNAPSHOT</version>
<packaging>jar</packaging>
- <name>Spigot-API</name>

View file

@ -1,5 +1,5 @@
From 3c8bd87bc36a0c83f24b14609fe615824d1b6002 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
From 84ef6c67c70f704918f2d6d1ae00a1ae10b317be Mon Sep 17 00:00:00 2001
From: Isaac Moore <rmsy@me.com>
Date: Mon, 29 Feb 2016 18:02:25 -0600
Subject: [PATCH] Add PlayerLocaleChangeEvent

View file

@ -17,7 +17,7 @@ index 953cdbc..ddbb829 100644
+ <groupId>com.destroystokyo.paper</groupId>
+ <artifactId>paper</artifactId>
<packaging>jar</packaging>
<version>1.9-SNAPSHOT</version>
<version>1.9-R0.1-SNAPSHOT</version>
- <name>Spigot</name>
- <url>http://www.spigotmc.org</url>
+ <name>Paper</name>

View file

@ -1,4 +1,4 @@
From de4a6a9e00d7de06c75df36b7b96ee4d3750a430 Mon Sep 17 00:00:00 2001
From 9e8464320b6233bac928471a67ff7ff099d3915f 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
@ -75,10 +75,10 @@ index 300573a..6eeb03b 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 92f9e3d..93dbc9c 100644
index 2c4e46e..e9c54ee 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1646,6 +1646,14 @@ public abstract class World implements IBlockAccess {
@@ -1649,6 +1649,14 @@ public abstract class World implements IBlockAccess {
for (int i = 0; i < list.size(); ++i) {
Entity entity1 = (Entity) list.get(i);

View file

@ -1,11 +1,11 @@
From 6b7626be9f683f5e31323cdd56e10546437785c4 Mon Sep 17 00:00:00 2001
From d61790e52a4e3c10ac24a44892afa270b1c06abb 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 881e989..c8638a8 100644
index dca7763..0ffa733 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -119,4 +119,12 @@ public class PaperConfig {
@ -22,10 +22,10 @@ index 881e989..c8638a8 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 0f873ae..b7db9b6 100644
index 83befa9..3116227 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -864,7 +864,8 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -875,7 +875,8 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
this.player.resetIdleTimer();
// Spigot start
boolean throttled = false;

View file

@ -1,11 +1,11 @@
From d5804afa686172f201f7d7f7cef178f54ba4a4f3 Mon Sep 17 00:00:00 2001
From a595984e22203c305cc110aa23357e6afb0a91ee 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
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index 2f30b66..d5b4756 100644
index f042253..7a7547f 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -94,4 +94,13 @@ public class PaperWorldConfig {
@ -36,10 +36,10 @@ index 1d2f580..bed5577 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 53936de..d8161a8 100644
index 1ad18f4..7b7025f 100644
--- a/src/main/java/net/minecraft/server/EntityHuman.java
+++ b/src/main/java/net/minecraft/server/EntityHuman.java
@@ -1446,13 +1446,13 @@ public abstract class EntityHuman extends EntityLiving {
@@ -1448,13 +1448,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);

View file

@ -1,11 +1,11 @@
From 44d08ff1133630f18994c477b7408a9bca02da16 Mon Sep 17 00:00:00 2001
From: Dmck2b <itallhappenedverysuddenly@gmail.com>
Date: Tue, 1 Mar 2016 13:59:50 -0600
From 3c434790ac382eaa86a47efb3267c4f9db51db46 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
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index a662f26..41747bd 100644
index 375ac89..22d68af 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -119,4 +119,10 @@ public class PaperWorldConfig {
@ -20,13 +20,13 @@ index a662f26..41747bd 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 93dbc9c..d3d92a3 100644
index e9c54ee..7705d0d 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -168,6 +168,7 @@ public abstract class World implements IBlockAccess {
this.isClientSide = flag;
this.N = worldprovider.getWorldBorder();
this.getServer().addWorld(this.world); // CraftBukkit
@@ -171,6 +171,7 @@ public abstract class World implements IBlockAccess {
this.N.world = (WorldServer) this;
this.getServer().addWorld(this.world);
// CraftBukkit end
+ this.keepSpawnInMemory = this.paperConfig.keepSpawnInMemory; // Paper
timings = new SpigotTimings.WorldTimingsHandler(this); // Spigot - code below can generate new world and access timings
this.entityLimiter = new org.spigotmc.TickLimiter(spigotConfig.entityMaxTickTime);

View file

@ -1,4 +1,4 @@
From 61ede748726903b893c445653d8efe03a567607d Mon Sep 17 00:00:00 2001
From 451930ce992808fcdfd35ed1d385be7d1fb9c08b 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,10 +6,10 @@ Subject: [PATCH] Show 'Paper' in client crashes, server lists, and Mojang
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 89e6ad3..7b99c2f 100644
index 4cc436d..11dbde5 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1017,7 +1017,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -1022,7 +1022,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
}
public String getServerModName() {

View file

@ -1,11 +1,11 @@
From 068300d37fa5f1d5782feaf840b64294e69bd72e Mon Sep 17 00:00:00 2001
From d64749677d07c4a81f77aba15e47315933ec6fb4 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 d8161a8..5fcd6b8 100644
index 7b7025f..9534bf9 100644
--- a/src/main/java/net/minecraft/server/EntityHuman.java
+++ b/src/main/java/net/minecraft/server/EntityHuman.java
@@ -63,6 +63,7 @@ public abstract class EntityHuman extends EntityLiving {
@ -30,7 +30,7 @@ index 916c913..c04490a 100644
if (entityhuman != null) {
double d0 = entityhuman.locX - this.locX;
diff --git a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java
index efe792b..917b626 100644
index a7903a2..2eee845 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 {
@ -65,10 +65,10 @@ index 9e19dfd..b724586 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 9bee723..1c5718e 100644
index 7705d0d..b4630c4 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -2650,6 +2650,53 @@ public abstract class World implements IBlockAccess {
@@ -2653,6 +2653,53 @@ public abstract class World implements IBlockAccess {
return i;
}
@ -123,10 +123,10 @@ index 9bee723..1c5718e 100644
return this.a(entity.locX, entity.locY, entity.locZ, d0, false);
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 9298344..a9f55ac 100644
index 250f112..03cdefd 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1416,6 +1416,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1412,6 +1412,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}

View file

@ -1,4 +1,4 @@
From 9d63918c050e6ef7fd07581bc6563a8076c62424 Mon Sep 17 00:00:00 2001
From e240cad9f99160a8e690e0b7bc1f32b8557ea6d1 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
@ -185,7 +185,7 @@ index e454622..d01b65a 100644
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index f0988fa..d9a84b6 100644
index b4630c4..43f0716 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -60,7 +60,7 @@ public abstract class World implements IBlockAccess {
@ -197,7 +197,7 @@ index f0988fa..d9a84b6 100644
public final List<TileEntity> tileEntityListTick = Lists.newArrayList();
private final List<TileEntity> b = Lists.newArrayList();
private final List<TileEntity> tileEntityListUnload = Lists.newArrayList();
@@ -1428,7 +1428,7 @@ public abstract class World implements IBlockAccess {
@@ -1431,7 +1431,7 @@ public abstract class World implements IBlockAccess {
// CraftBukkit start - From below, clean up tile entities before ticking them
if (!this.tileEntityListUnload.isEmpty()) {
this.tileEntityListTick.removeAll(this.tileEntityListUnload);
@ -206,7 +206,7 @@ index f0988fa..d9a84b6 100644
this.tileEntityListUnload.clear();
}
// CraftBukkit end
@@ -1476,7 +1476,7 @@ public abstract class World implements IBlockAccess {
@@ -1479,7 +1479,7 @@ public abstract class World implements IBlockAccess {
if (tileentity.x()) {
tilesThisCycle--;
this.tileEntityListTick.remove(tileTickPosition--);
@ -215,7 +215,7 @@ index f0988fa..d9a84b6 100644
if (this.isLoaded(tileentity.getPosition())) {
this.getChunkAtWorldCoords(tileentity.getPosition()).d(tileentity.getPosition());
}
@@ -1527,7 +1527,7 @@ public abstract class World implements IBlockAccess {
@@ -1530,7 +1530,7 @@ public abstract class World implements IBlockAccess {
protected void l() {}
public boolean a(TileEntity tileentity) {
@ -224,7 +224,7 @@ index f0988fa..d9a84b6 100644
if (flag && tileentity instanceof ITickable) {
this.tileEntityListTick.add(tileentity);
@@ -2000,7 +2000,7 @@ public abstract class World implements IBlockAccess {
@@ -2003,7 +2003,7 @@ public abstract class World implements IBlockAccess {
} else {
if (tileentity != null) {
this.b.remove(tileentity);

View file

@ -1,4 +1,4 @@
From b5989dbd8369d267021623b3426053f1e020a2e3 Mon Sep 17 00:00:00 2001
From f9ee0e86f8a7e899e52e2d574ac9d91194452526 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 7b99c2f..0a23d2a 100644
index 11dbde5..db425fb 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -109,17 +109,11 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@ -34,7 +34,7 @@ index 7b99c2f..0a23d2a 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
@@ -510,12 +504,54 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -515,12 +509,54 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
this.isRunning = false;
}
@ -94,7 +94,7 @@ index 7b99c2f..0a23d2a 100644
public void run() {
try {
@@ -529,24 +565,41 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -534,24 +570,41 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
// Spigot start
Arrays.fill( recentTps, 20 );

View file

@ -1,14 +1,14 @@
From 43233efe6e6330c3c626f395b56b566db354b57f Mon Sep 17 00:00:00 2001
From c34fa8a780ab569ffb75fb59206f0675522e1ed8 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 9298344..039a170 100644
index 03cdefd..972ead0 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1143,12 +1143,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1139,12 +1139,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public void setFlying(boolean value) {

View file

@ -1,4 +1,4 @@
From e235a4f67d0e1b770147f4666b04193a91e05314 Mon Sep 17 00:00:00 2001
From 1b4d0016dc95c2e8fe1eba1a0d823f0da1292e41 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 23:45:08 -0600
Subject: [PATCH] FallingBlock and TNTPrimed source location API
@ -74,7 +74,7 @@ index d7bea3d..c1c0c7c 100644
world.addEntity(entitytntprimed);
diff --git a/src/main/java/net/minecraft/server/EntityFallingBlock.java b/src/main/java/net/minecraft/server/EntityFallingBlock.java
index 9c506ed..500163b 100644
index 4c8e336..c44e493 100644
--- a/src/main/java/net/minecraft/server/EntityFallingBlock.java
+++ b/src/main/java/net/minecraft/server/EntityFallingBlock.java
@@ -17,13 +17,25 @@ public class EntityFallingBlock extends Entity {
@ -193,7 +193,7 @@ index 564ea37..1820c7b 100644
public EntityLiving getSource() {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index 173f1c5..24ecfae 100644
index db29976..dfb656a 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -880,7 +880,10 @@ public class CraftWorld implements World {
@ -220,7 +220,7 @@ index 173f1c5..24ecfae 100644
} else if (Projectile.class.isAssignableFrom(clazz)) {
if (Snowball.class.isAssignableFrom(clazz)) {
entity = new EntitySnowball(world, x, y, z);
@@ -1111,7 +1117,8 @@ public class CraftWorld implements World {
@@ -1108,7 +1114,8 @@ public class CraftWorld implements World {
throw new IllegalArgumentException("Cannot spawn hanging entity for " + clazz.getName() + " at " + location);
}
} else if (TNTPrimed.class.isAssignableFrom(clazz)) {

View file

@ -1,4 +1,4 @@
From 45a92c6e251d7281edc48b071e4371b9467cd4a6 Mon Sep 17 00:00:00 2001
From 94d3a4e3de2a7e6a19a82bfb5a59f69f6fb9c6e1 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
@ -23,10 +23,10 @@ index e6524e9..d898428 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 d9a84b6..2406541 100644
index 43f0716..58abd10 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1395,10 +1395,13 @@ public abstract class World implements IBlockAccess {
@@ -1398,10 +1398,13 @@ public abstract class World implements IBlockAccess {
this.g(entity);
SpigotTimings.tickEntityTimer.stopTiming(); // Spigot
} catch (Throwable throwable1) {
@ -44,7 +44,7 @@ index d9a84b6..2406541 100644
}
}
@@ -1460,10 +1463,14 @@ public abstract class World implements IBlockAccess {
@@ -1463,10 +1466,14 @@ public abstract class World implements IBlockAccess {
((ITickable) tileentity).c();
this.methodProfiler.b();
} catch (Throwable throwable2) {

View file

@ -1,11 +1,11 @@
From aad4d45a696b28cd81f39fdcadea59802c9b08d7 Mon Sep 17 00:00:00 2001
From 7cc8852fb82b77ed0c37f262cabbdd01c40c18de Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Wed, 2 Mar 2016 00:21:24 -0600
Subject: [PATCH] Fix redstone lag issues
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index a45bb02..3ac2edd 100644
index a9489de..28e3e3c 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -147,4 +147,15 @@ public class PaperWorldConfig {
@ -25,10 +25,10 @@ index a45bb02..3ac2edd 100644
+
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index c2ca2df..1c8f6a1 100644
index 46004f0..14d92bb 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -689,6 +689,8 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -690,6 +690,8 @@ public class WorldServer extends World implements IAsyncTaskHandler {
if (false) { // CraftBukkit
throw new IllegalStateException("TickNextTick list out of synch");
} else {
@ -37,7 +37,7 @@ index c2ca2df..1c8f6a1 100644
if (i > 1000) {
// CraftBukkit start - If the server has too much to process over time, try to alleviate that
if (i > 20 * 1000) {
@@ -698,6 +700,11 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -699,6 +701,11 @@ public class WorldServer extends World implements IAsyncTaskHandler {
}
// CraftBukkit end
}
@ -49,7 +49,7 @@ index c2ca2df..1c8f6a1 100644
this.methodProfiler.a("cleaning");
@@ -715,6 +722,24 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -716,6 +723,24 @@ public class WorldServer extends World implements IAsyncTaskHandler {
this.U.add(nextticklistentry);
}

View file

@ -1,11 +1,11 @@
From be968a89c4fbd89664c97deeeeaacbc8b004209b Mon Sep 17 00:00:00 2001
From 229a02dbfcc982bb407cd6044c935c71a9dcd913 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 00:52:31 -0600
Subject: [PATCH] Configurable async light updates
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index 3ac2edd..3506b1b 100644
index 28e3e3c..402ed0a 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -158,4 +158,9 @@ public class PaperWorldConfig {
@ -85,7 +85,7 @@ index 2f37957..3e9b26f 100644
// Spigot Start
/*
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index fd3f457..72c1fc7 100644
index 21e7709..1f99e85 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -46,6 +46,12 @@ public class ChunkProviderServer implements IChunkProvider {
@ -102,7 +102,7 @@ index fd3f457..72c1fc7 100644
// CraftBukkit start
this.unloadQueue.add(i, j);
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 180eccb..79cd94d 100644
index 58abd10..bbdfb3b 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -29,6 +29,12 @@ import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason;
@ -126,7 +126,7 @@ index 180eccb..79cd94d 100644
public CraftWorld getWorld() {
return this.world;
@@ -447,7 +454,7 @@ public abstract class World implements IBlockAccess {
@@ -450,7 +457,7 @@ public abstract class World implements IBlockAccess {
if (!this.worldProvider.m()) {
for (i1 = k; i1 <= l; ++i1) {
@ -135,7 +135,7 @@ index 180eccb..79cd94d 100644
}
}
@@ -2215,10 +2222,10 @@ public abstract class World implements IBlockAccess {
@@ -2218,10 +2225,10 @@ public abstract class World implements IBlockAccess {
boolean flag = false;
if (!this.worldProvider.m()) {
@ -148,7 +148,7 @@ index 180eccb..79cd94d 100644
return flag;
}
@@ -2268,10 +2275,15 @@ public abstract class World implements IBlockAccess {
@@ -2271,10 +2278,15 @@ public abstract class World implements IBlockAccess {
}
}
@ -166,7 +166,7 @@ index 180eccb..79cd94d 100644
// CraftBukkit end
return false;
} else {
@@ -2342,6 +2354,17 @@ public abstract class World implements IBlockAccess {
@@ -2345,6 +2357,17 @@ public abstract class World implements IBlockAccess {
i = 0;
}
@ -184,7 +184,7 @@ index 180eccb..79cd94d 100644
this.methodProfiler.b();
this.methodProfiler.a("checkedPosition < toCheckCount");
@@ -2396,6 +2419,52 @@ public abstract class World implements IBlockAccess {
@@ -2399,6 +2422,52 @@ public abstract class World implements IBlockAccess {
}
}

View file

@ -1,4 +1,4 @@
From d173d8966a5f250a5aac7191b46b297e26d72f3b Mon Sep 17 00:00:00 2001
From 983be83bdbd9f5a39c09dd55eee555a6438dc434 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
@ -10,7 +10,7 @@ This patch adds a per-tick cache that is used for storing and retrieving
an entity's exposure during an explosion.
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index 3cde5fd..ee50493 100644
index 74d22f7..d022513 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -193,4 +193,10 @@ public class PaperWorldConfig {
@ -124,10 +124,10 @@ index 87e123c..afe402e 100644
+ // Paper end
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 0a23d2a..ac1bec6 100644
index db425fb..733f8e7 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -858,6 +858,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -863,6 +863,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
worldserver.timings.tracker.stopTiming(); // Spigot
this.methodProfiler.b();
this.methodProfiler.b();
@ -136,7 +136,7 @@ index 0a23d2a..ac1bec6 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 79cd94d..8925c67 100644
index bbdfb3b..ee4642f 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -32,6 +32,7 @@ import org.bukkit.generator.ChunkGenerator;

View file

@ -1,11 +1,11 @@
From 69fe942c444ac6c117ed54c4d8729cf2a70c7bdc Mon Sep 17 00:00:00 2001
From 58791be2a7a101b811e2c0dce46d0ec39720c5cd 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 b32617b..8be847d 100644
index 94b487c..3536c34 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -53,6 +53,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@ -88,10 +88,10 @@ index 8ef7eb2..5421026 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 8fcbba3..6fb4fb0 100644
index 972ead0..1a3c6d7 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1427,6 +1427,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1423,6 +1423,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public void setAffectsSpawning(boolean affects) {
getHandle().affectsSpawning = affects;
}

View file

@ -1,4 +1,4 @@
From 6ebaa01ec3801936dddbffe7fa626d99bb9bac5b Mon Sep 17 00:00:00 2001
From 93f794b1ca83d9f2f5fd6df068114e597a31defd 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,10 +19,10 @@ index 6b5067a..b8262fc 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 1c8f6a1..5afc655 100644
index 14d92bb..36e4dab 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -416,7 +416,8 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -417,7 +417,8 @@ public class WorldServer extends World implements IAsyncTaskHandler {
int l;
BlockPosition blockposition;

View file

@ -1,4 +1,4 @@
From 848f1ede210fd27e9b0177c78d6a620ce78f89a0 Mon Sep 17 00:00:00 2001
From 2df4975985ef29a5bcd4710fdf9430ad856adb4e 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,10 +19,10 @@ index b8262fc..cd67b7d 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 5afc655..6cc8d28 100644
index 36e4dab..4c7a99f 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -440,7 +440,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -441,7 +441,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
}
this.methodProfiler.c("iceandsnow");

View file

@ -1,14 +1,14 @@
From ee0074f3f7228f1a8975526964f30bfc917ddd2b Mon Sep 17 00:00:00 2001
From 10e9ad852d5f1b56dd3eac57fb68df1f73ae5ef7 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 8925c67..6e021c6 100644
index ee4642f..195bfa5 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1380,10 +1380,10 @@ public abstract class World implements IBlockAccess {
@@ -1383,10 +1383,10 @@ public abstract class World implements IBlockAccess {
guardEntityList = true; // Spigot
// CraftBukkit start - Use field for loop variable
int entitiesThisCycle = 0;
@ -23,7 +23,7 @@ index 8925c67..6e021c6 100644
tickPosition = (tickPosition < entityList.size()) ? tickPosition : 0;
entity = (Entity) this.entityList.get(this.tickPosition);
// CraftBukkit end
@@ -1448,9 +1448,7 @@ public abstract class World implements IBlockAccess {
@@ -1451,9 +1451,7 @@ public abstract class World implements IBlockAccess {
// Spigot start
// Iterator iterator = this.tileEntityListTick.iterator();
int tilesThisCycle = 0;

View file

@ -1,6 +1,6 @@
From fa5b865733cbba448c5bfb411c1de56bae085cca Mon Sep 17 00:00:00 2001
From 3d6af186058dc01e3be7ac63a873ee40c9fc9a9a Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 01:03:42 -0600
Date: Thu, 3 Mar 2016 04:00:11 -0600
Subject: [PATCH] Timings v2
@ -277,7 +277,7 @@ index bed5577..0f71013 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 45680ed..a06ea85 100644
index dd3abb8..a0186ef 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java
@@ -22,7 +22,7 @@ import java.io.PrintStream;
@ -290,7 +290,7 @@ index 45680ed..a06ea85 100644
import org.bukkit.craftbukkit.util.Waitable;
import org.bukkit.event.server.RemoteServerCommandEvent;
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 7fa5440..d10fd67 100644
index 429749a..b0aef4c 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;
@ -400,7 +400,7 @@ index 8d91f7c..a8e8557 100644
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index ac1bec6..cf5dbd5 100644
index 733f8e7..92b98a0 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -45,7 +45,7 @@ import org.bukkit.craftbukkit.CraftServer;
@ -417,10 +417,10 @@ index ac1bec6..cf5dbd5 100644
// CraftBukkit end
MinecraftServer.LOGGER.info("Stopping server");
+ SpigotTimings.stopServer(); // Paper
if (this.am() != null) {
this.am().b();
}
@@ -694,7 +695,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
// CraftBukkit start
if (this.server != null) {
this.server.disablePlugins();
@@ -699,7 +700,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
protected void B() {}
protected void C() throws ExceptionWorldConflict { // CraftBukkit - added throws
@ -429,7 +429,7 @@ index ac1bec6..cf5dbd5 100644
long i = System.nanoTime();
++this.ticks;
@@ -754,11 +755,11 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -759,11 +760,11 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
this.methodProfiler.b();
this.methodProfiler.b();
org.spigotmc.WatchdogThread.tick(); // Spigot
@ -443,7 +443,7 @@ index ac1bec6..cf5dbd5 100644
this.methodProfiler.a("jobs");
Queue queue = this.j;
@@ -769,13 +770,14 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -774,13 +775,14 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
SystemUtils.a(entry, MinecraftServer.LOGGER);
}
// Spigot end
@ -461,7 +461,7 @@ index ac1bec6..cf5dbd5 100644
// Run tasks that are waiting on processing
SpigotTimings.processQueueTimer.startTiming(); // Spigot
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index b7db9b6..0388f6d 100644
index 3116227..4badf18 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -56,6 +56,7 @@ import org.bukkit.event.player.PlayerToggleSprintEvent;
@ -472,7 +472,7 @@ index b7db9b6..0388f6d 100644
// CraftBukkit end
public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -1284,7 +1285,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -1295,7 +1296,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
// CraftBukkit end
private void handleCommand(String s) {
@ -481,7 +481,7 @@ index b7db9b6..0388f6d 100644
// CraftBukkit start - whole method
if ( org.spigotmc.SpigotConfig.logCommands ) // Spigot
this.LOGGER.info(this.player.getName() + " issued server command: " + s);
@@ -1295,22 +1296,22 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -1306,22 +1307,22 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
this.server.getPluginManager().callEvent(event);
if (event.isCancelled()) {
@ -529,7 +529,7 @@ index d898428..f579d28 100644
private static Map<String, Class<? extends TileEntity>> f = Maps.newHashMap();
private static 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 6e021c6..a1cdef6 100644
index 195bfa5..a5eeef8 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;
@ -554,16 +554,16 @@ index 6e021c6..a1cdef6 100644
private boolean guardEntityList; // Spigot
public static boolean haveWeSilencedAPhysicsCrash;
public static String blockLocation;
@@ -178,7 +178,7 @@ public abstract class World implements IBlockAccess {
this.N = worldprovider.getWorldBorder();
this.getServer().addWorld(this.world); // CraftBukkit
@@ -181,7 +181,7 @@ public abstract class World implements IBlockAccess {
this.getServer().addWorld(this.world);
// CraftBukkit end
this.keepSpawnInMemory = this.paperConfig.keepSpawnInMemory; // Paper
- timings = new SpigotTimings.WorldTimingsHandler(this); // Spigot - code below can generate new world and access timings
+ timings = new co.aikar.timings.WorldTimingsHandler(this); // Paper - code below can generate new world and access timings
this.entityLimiter = new org.spigotmc.TickLimiter(spigotConfig.entityMaxTickTime);
this.tileLimiter = new org.spigotmc.TickLimiter(spigotConfig.tileMaxTickTime);
}
@@ -1350,6 +1350,7 @@ public abstract class World implements IBlockAccess {
@@ -1353,6 +1353,7 @@ public abstract class World implements IBlockAccess {
}
this.methodProfiler.c("remove");
@ -571,7 +571,7 @@ index 6e021c6..a1cdef6 100644
this.entityList.removeAll(this.f);
int j;
@@ -1370,6 +1371,7 @@ public abstract class World implements IBlockAccess {
@@ -1373,6 +1374,7 @@ public abstract class World implements IBlockAccess {
this.f.clear();
this.l();
@ -579,7 +579,7 @@ index 6e021c6..a1cdef6 100644
this.methodProfiler.c("regular");
CrashReportSystemDetails crashreportsystemdetails1;
@@ -1379,6 +1381,7 @@ public abstract class World implements IBlockAccess {
@@ -1382,6 +1384,7 @@ public abstract class World implements IBlockAccess {
timings.entityTick.startTiming(); // Spigot
guardEntityList = true; // Spigot
// CraftBukkit start - Use field for loop variable
@ -587,7 +587,7 @@ index 6e021c6..a1cdef6 100644
int entitiesThisCycle = 0;
// Paper start - Disable tick limiters
//if (tickPosition < 0) tickPosition = 0;
@@ -1400,12 +1403,12 @@ public abstract class World implements IBlockAccess {
@@ -1403,12 +1406,12 @@ public abstract class World implements IBlockAccess {
this.methodProfiler.a("tick");
if (!entity.dead && !(entity instanceof EntityPlayer)) {
try {
@ -603,7 +603,7 @@ index 6e021c6..a1cdef6 100644
System.err.println("Entity threw exception at " + entity.world.getWorld().getName() + ":" + entity.locX + "," + entity.locY + "," + entity.locZ);
throwable1.printStackTrace();
entity.dead = true;
@@ -1534,6 +1537,7 @@ public abstract class World implements IBlockAccess {
@@ -1537,6 +1540,7 @@ public abstract class World implements IBlockAccess {
}
timings.tileEntityPending.stopTiming(); // Spigot
@ -611,7 +611,7 @@ index 6e021c6..a1cdef6 100644
this.methodProfiler.b();
this.methodProfiler.b();
}
@@ -1579,7 +1583,6 @@ public abstract class World implements IBlockAccess {
@@ -1582,7 +1586,6 @@ public abstract class World implements IBlockAccess {
entity.ticksLived++;
entity.inactiveTick();
} else {
@ -619,7 +619,7 @@ index 6e021c6..a1cdef6 100644
// CraftBukkit end
entity.M = entity.locX;
entity.N = entity.locY;
@@ -1588,6 +1591,7 @@ public abstract class World implements IBlockAccess {
@@ -1591,6 +1594,7 @@ public abstract class World implements IBlockAccess {
entity.lastPitch = entity.pitch;
if (flag && entity.aa) {
++entity.ticksLived;
@ -627,7 +627,7 @@ index 6e021c6..a1cdef6 100644
if (entity.isPassenger()) {
entity.aw();
} else {
@@ -1646,8 +1650,6 @@ public abstract class World implements IBlockAccess {
@@ -1649,8 +1653,6 @@ public abstract class World implements IBlockAccess {
}
}
}
@ -637,7 +637,7 @@ index 6e021c6..a1cdef6 100644
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 6cc8d28..3567133 100644
index 4c7a99f..66b7e77 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -241,13 +241,13 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@ -658,7 +658,7 @@ index 6cc8d28..3567133 100644
this.methodProfiler.c("chunkMap");
timings.doChunkMap.startTiming(); // Spigot
this.manager.flush();
@@ -477,7 +477,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -478,7 +478,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
}
}
@ -667,7 +667,7 @@ index 6cc8d28..3567133 100644
if (i > 0) {
ChunkSection[] achunksection = chunk.getSections();
int i1 = achunksection.length;
@@ -505,6 +505,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -506,6 +506,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
}
}
}
@ -675,7 +675,7 @@ index 6cc8d28..3567133 100644
}
this.methodProfiler.b();
@@ -709,6 +710,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -710,6 +711,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
this.methodProfiler.a("cleaning");
@ -683,7 +683,7 @@ index 6cc8d28..3567133 100644
NextTickListEntry nextticklistentry;
for (int j = 0; j < i; ++j) {
@@ -722,6 +724,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -723,6 +725,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
// this.nextTickListHash.remove(nextticklistentry);
this.U.add(nextticklistentry);
}
@ -691,7 +691,7 @@ index 6cc8d28..3567133 100644
// Paper start - Allow redstone ticks to bypass the tickNextTickListCap
if (paperConfig.tickNextTickListCapIgnoresRedstone) {
@@ -743,6 +746,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -744,6 +747,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
this.methodProfiler.b();
this.methodProfiler.a("ticking");
@ -699,7 +699,7 @@ index 6cc8d28..3567133 100644
Iterator iterator = this.U.iterator();
while (iterator.hasNext()) {
@@ -752,6 +756,8 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -753,6 +757,8 @@ public class WorldServer extends World implements IAsyncTaskHandler {
if (this.areChunksLoadedBetween(nextticklistentry.a.a(-b0, -b0, -b0), nextticklistentry.a.a(b0, b0, b0))) {
IBlockData iblockdata = this.getType(nextticklistentry.a);
@ -708,7 +708,7 @@ index 6cc8d28..3567133 100644
if (iblockdata.getMaterial() != Material.AIR && Block.a(iblockdata.getBlock(), nextticklistentry.a())) {
try {
@@ -764,10 +770,12 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@@ -765,10 +771,12 @@ public class WorldServer extends World implements IAsyncTaskHandler {
throw new ReportedException(crashreport);
}
}
@ -938,7 +938,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 6fb4fb0..a2f2b8e 100644
index 1a3c6d7..e49057f 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;
@ -958,7 +958,7 @@ index 6fb4fb0..a2f2b8e 100644
import org.bukkit.craftbukkit.map.CraftMapView;
import org.bukkit.craftbukkit.map.RenderData;
import org.bukkit.craftbukkit.scoreboard.CraftScoreboard;
@@ -1559,6 +1553,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1555,6 +1549,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
packet.components = components;
getHandle().playerConnection.sendPacket(packet);
}
@ -1107,7 +1107,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 df2fce7..4032dcb 100644
index 75941ec..4d6362d 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -4,7 +4,7 @@ import java.util.List;

View file

@ -1,4 +1,4 @@
From 8fbd7be5a61295bdb939a4a5f6eb8b7f9d0ba349 Mon Sep 17 00:00:00 2001
From 44fe67033cd744250a99062291bb96543dffbaca 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 0388f6d..15c9827 100644
index 4badf18..d62d033 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -1217,6 +1217,29 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -1228,6 +1228,29 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
}
if (!async && s.startsWith("/")) {

View file

@ -1,4 +1,4 @@
From b55b954c4db1cb750cc40bb2d84b6e104d8fdec4 Mon Sep 17 00:00:00 2001
From 4832c2374cfe6206c3684452864bb671a88d613e 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 ed520d0..50fc4a0 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index cf5dbd5..1f9d56f 100644
index 92b98a0..4c0b0ba 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1146,7 +1146,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
@@ -1151,7 +1151,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs
return arraylist;
}
*/

View file

@ -1,11 +1,11 @@
From 5c18f5c1534e3aa5152cbc64360cabecd1797e66 Mon Sep 17 00:00:00 2001
From 1bed4e4301f897bbbfe538ff9fe93aa1d183c175 Mon Sep 17 00:00:00 2001
From: Nik Gil <nikmanG@users.noreply.github.com>
Date: Thu, 3 Mar 2016 01:50:54 -0600
Date: Thu, 3 Mar 2016 04:04:19 -0600
Subject: [PATCH] Made EntityDismountEvent Cancellable
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index d10fd67..4b66c59 100644
index b0aef4c..a6dde74 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -38,6 +38,7 @@ import org.bukkit.craftbukkit.event.CraftEventFactory;
@ -16,11 +16,10 @@ index d10fd67..4b66c59 100644
// CraftBukkit end
public abstract class Entity implements ICommandListener {
@@ -1734,7 +1735,11 @@ public abstract class Entity implements ICommandListener {
}
@@ -1735,6 +1736,11 @@ public abstract class Entity implements ICommandListener {
}
// CraftBukkit end
- Bukkit.getPluginManager().callEvent( new org.spigotmc.event.entity.EntityDismountEvent( this.getBukkitEntity(), entity.getBukkitEntity() ) ); // Spigot
Bukkit.getPluginManager().callEvent( new org.spigotmc.event.entity.EntityDismountEvent(entity.getBukkitEntity(), this.getBukkitEntity())); // Spigot
+ // Paper start - make EntityDismountEvent cancellable
+ EntityDismountEvent dismountEvent = new EntityDismountEvent(this.getBukkitEntity(), entity.getBukkitEntity()); // Spigot
+ Bukkit.getPluginManager().callEvent(dismountEvent);

View file

@ -1,14 +1,14 @@
From 2409601a3a2f0aeec28e4b2cbc03447b42e16d66 Mon Sep 17 00:00:00 2001
From 4034b13cc0e4afe7c20fc0a85428978d4bccba8c 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
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 2895628..4b67dbe 100644
index 0c234c7..c9a7091 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -83,7 +83,10 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@@ -84,7 +84,10 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
public void setHealth(double health) {
if ((health < 0) || (health > getMaxHealth())) {

View file

@ -1,11 +1,11 @@
From 6a8586923dd65b1afc26798d8f69a14a3a4c4d00 Mon Sep 17 00:00:00 2001
From dcc0b3337d42767dacea1910dd3b872e27cd2199 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
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index c37ad0e..e360757 100644
index e139217..3d5bccd 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 @@
@ -99,7 +99,7 @@ index c37ad0e..e360757 100644
// Paper end
@Override
@@ -1346,20 +1424,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1342,20 +1420,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public void sendTitle(String title, String subtitle) {
if (title != null) {

View file

@ -1,11 +1,11 @@
From 7c6aa404106093661e0c94a50910b7e076aba750 Mon Sep 17 00:00:00 2001
From d9842022cfac2ac27871dc3b363954d3492528cc 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/World.java b/src/main/java/net/minecraft/server/World.java
index a1cdef6..05f3e45 100644
index a5eeef8..1c95c96 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -33,6 +33,8 @@ import org.bukkit.generator.ChunkGenerator;
@ -31,7 +31,7 @@ index a1cdef6..05f3e45 100644
public final List<EntityHuman> players = Lists.newArrayList();
public final List<Entity> j = Lists.newArrayList();
protected final IntHashMap<Entity> entitiesById = new IntHashMap();
@@ -1355,19 +1357,20 @@ public abstract class World implements IBlockAccess {
@@ -1358,19 +1360,20 @@ public abstract class World implements IBlockAccess {
int j;

View file

@ -1,4 +1,4 @@
From f770b75020f976e76e313a997d49cc32dd37e37b Mon Sep 17 00:00:00 2001
From 9434875bc68169f237fd9e2088bf99b0e0c2650f 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,10 +25,10 @@ index f42efe7..c5c49bf 100644
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index d8b4316..b5c9e04 100644
index 3d5bccd..79f5352 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 {
@@ -553,7 +553,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
if (fromWorld == toWorld) {
entity.playerConnection.teleport(to);
} else {

View file

@ -1,4 +1,4 @@
From 2dc6b2c55d255fd4cbd996f7f01244739691260a Mon Sep 17 00:00:00 2001
From 7437a350b5016312d44dd9cb22a39994063342ab 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
@ -89,7 +89,7 @@ index f0c464b..e0c0a26 100644
}
}
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 72c1fc7..aaf844a 100644
index 1f99e85..71ab040 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -4,6 +4,7 @@ import java.io.IOException;
@ -100,7 +100,7 @@ index 72c1fc7..aaf844a 100644
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -220,7 +221,11 @@ public class ChunkProviderServer implements IChunkProvider {
@@ -221,7 +222,11 @@ public class ChunkProviderServer implements IChunkProvider {
return chunk;
} catch (Exception exception) {
@ -113,7 +113,7 @@ index 72c1fc7..aaf844a 100644
return null;
}
}
@@ -229,7 +234,11 @@ public class ChunkProviderServer implements IChunkProvider {
@@ -230,7 +235,11 @@ public class ChunkProviderServer implements IChunkProvider {
try {
this.chunkLoader.b(this.world, chunk);
} catch (Exception exception) {
@ -126,7 +126,7 @@ index 72c1fc7..aaf844a 100644
}
}
@@ -239,9 +248,14 @@ public class ChunkProviderServer implements IChunkProvider {
@@ -240,9 +249,14 @@ public class ChunkProviderServer implements IChunkProvider {
chunk.setLastSaved(this.world.getTime());
this.chunkLoader.a(this.world, chunk);
} catch (IOException ioexception) {
@ -292,7 +292,7 @@ index 320e52e..d40257f 100644
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 05f3e45..2b22762 100644
index 1c95c96..75b0d89 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 05f3e45..2b22762 100644
import com.google.common.base.Function;
import com.google.common.base.Objects;
import com.google.common.base.Predicate;
@@ -1412,8 +1414,10 @@ public abstract class World implements IBlockAccess {
@@ -1415,8 +1417,10 @@ public abstract class World implements IBlockAccess {
} catch (Throwable throwable1) {
// Paper start - Prevent tile entity and entity crashes
entity.tickTimer.stopTiming();
@ -315,7 +315,7 @@ index 05f3e45..2b22762 100644
entity.dead = true;
continue;
// Paper end
@@ -1478,8 +1482,10 @@ public abstract class World implements IBlockAccess {
@@ -1481,8 +1485,10 @@ public abstract class World implements IBlockAccess {
} catch (Throwable throwable2) {
// Paper start - Prevent tile entity and entity crashes
tileentity.tickTimer.stopTiming();

View file

@ -12,4 +12,5 @@ function update {
update Bukkit
update CraftBukkit
update Paperclip