From 76e1e4d79f15c025442fe71f9b91d56a2497e1b7 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 30 Jul 2018 01:08:59 -0400 Subject: [PATCH] Update Upstream Removed my ChunkLoadEvent patch as upstream fixed it --- .../0006-Entity-Origin-API.patch | 6 +- .../0058-Entity-fromMobSpawner.patch | 6 +- .../0120-Entity-getChunk-API.patch | 6 +- ...-MinecraftKey-Information-to-Objects.patch | 6 +- ...to-current-Chunk-for-Entity-and-Bloc.patch | 12 ++-- Spigot-Server-Patches/0009-Timings-v2.patch | 18 ++--- ...ck-and-tnt-entities-at-the-specified.patch | 6 +- .../0023-Entity-Origin-API.patch | 16 ++--- ...nfigurable-top-of-nether-void-damage.patch | 10 +-- .../0028-Lighting-Queue.patch | 6 +- .../0029-Configurable-end-credits.patch | 8 +-- ...figurable-container-update-tick-rate.patch | 8 +-- ...opper-searches-if-there-are-no-items.patch | 8 +-- ...oreboards-for-non-players-by-default.patch | 6 +- ...078-Use-a-Shared-Random-for-Entities.patch | 6 +- .../0079-Don-t-teleport-dead-entities.patch | 6 +- .../0080-Optimize-Chunk-Access.patch | 6 +- ...6-Configurable-Chunk-Inhabited-Timer.patch | 6 +- ...nilla-per-world-scoreboard-coloring-.patch | 6 +- ...07-Implement-PlayerLocaleChangeEvent.patch | 8 +-- ...1-Optional-TNT-doesn-t-move-in-water.patch | 8 +-- ...ers-that-dismount-from-other-players.patch | 6 +- .../0138-Auto-Save-Improvements.patch | 8 +-- .../0151-Optimise-removeQueue.patch | 8 +-- ...63-Properly-fix-item-duplication-bug.patch | 6 +- ...llow-entities-to-ride-themselves-572.patch | 6 +- .../0175-Cap-Entity-Collisions.patch | 10 +-- .../0194-Entity-fromMobSpawner.patch | 14 ++-- ...emove-entities-on-dimension-teleport.patch | 6 +- .../0272-Fix-CraftEntity-hashCode.patch | 6 +- .../0288-InventoryCloseEvent-Reason-API.patch | 32 ++++----- ...-more-information-to-Entity.toString.patch | 6 +- .../0302-Duplicate-UUID-Resolve-Option.patch | 8 +-- ...dd-some-Debug-to-Chunk-Entity-slices.patch | 8 +-- ...cess-chunk-registration-after-moving.patch | 8 +-- ...nk.addEntities-before-chunkLoadEvent.patch | 71 ------------------- ...-use-a-versioned-world-folder-for-t.patch} | 4 +- ...22-MC-111480-Start-Entity-ID-s-at-1.patch} | 4 +- ...3-Implement-Expanded-ArmorStand-API.patch} | 2 +- ...vent.patch => 0324-AnvilDamageEvent.patch} | 2 +- work/Bukkit | 2 +- work/CraftBukkit | 2 +- 42 files changed, 158 insertions(+), 229 deletions(-) delete mode 100644 Spigot-Server-Patches/0321-Process-Chunk.addEntities-before-chunkLoadEvent.patch rename Spigot-Server-Patches/{0322-Provide-option-to-use-a-versioned-world-folder-for-t.patch => 0321-Provide-option-to-use-a-versioned-world-folder-for-t.patch} (99%) rename Spigot-Server-Patches/{0323-MC-111480-Start-Entity-ID-s-at-1.patch => 0322-MC-111480-Start-Entity-ID-s-at-1.patch} (91%) rename Spigot-Server-Patches/{0324-Implement-Expanded-ArmorStand-API.patch => 0323-Implement-Expanded-ArmorStand-API.patch} (98%) rename Spigot-Server-Patches/{0325-AnvilDamageEvent.patch => 0324-AnvilDamageEvent.patch} (96%) diff --git a/Spigot-API-Patches/0006-Entity-Origin-API.patch b/Spigot-API-Patches/0006-Entity-Origin-API.patch index ac51c91301..2c5c1a0693 100644 --- a/Spigot-API-Patches/0006-Entity-Origin-API.patch +++ b/Spigot-API-Patches/0006-Entity-Origin-API.patch @@ -1,14 +1,14 @@ -From ac7a0eff76dedc21f1bc6fc1eb0d6cbb367f6f90 Mon Sep 17 00:00:00 2001 +From 9275a4d5758169700f30e763bdc4875991a3fbaa Mon Sep 17 00:00:00 2001 From: Byteflux 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 28b169d2..9b0f97f1 100644 +index ddda34de..f91b3fd3 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -497,4 +497,15 @@ public interface Entity extends Metadatable, CommandSender, Nameable { +@@ -527,4 +527,15 @@ public interface Entity extends Metadatable, CommandSender, Nameable { @Override Spigot spigot(); // Spigot end diff --git a/Spigot-API-Patches/0058-Entity-fromMobSpawner.patch b/Spigot-API-Patches/0058-Entity-fromMobSpawner.patch index 616565bd80..e44f230af5 100644 --- a/Spigot-API-Patches/0058-Entity-fromMobSpawner.patch +++ b/Spigot-API-Patches/0058-Entity-fromMobSpawner.patch @@ -1,14 +1,14 @@ -From d12b4647862ab81272f1030da1a9fbeb2e7d30b1 Mon Sep 17 00:00:00 2001 +From bd7616fdffd024a27253dc7613e74e7fb600659b Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sun, 18 Jun 2017 18:17:05 -0500 Subject: [PATCH] Entity#fromMobSpawner() diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 9b0f97f1..3ae4de7a 100644 +index f91b3fd3..4548c95b 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -507,5 +507,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable { +@@ -537,5 +537,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable { * @return Location where entity originates or null if not yet added */ Location getOrigin(); diff --git a/Spigot-API-Patches/0120-Entity-getChunk-API.patch b/Spigot-API-Patches/0120-Entity-getChunk-API.patch index 6c79e5691f..5e22b5b52c 100644 --- a/Spigot-API-Patches/0120-Entity-getChunk-API.patch +++ b/Spigot-API-Patches/0120-Entity-getChunk-API.patch @@ -1,4 +1,4 @@ -From 3d06d7bea98b884dbda0cf95be3494af6c509546 Mon Sep 17 00:00:00 2001 +From 5b4f6eb2598e8b89c0c3ba00b1f8f7af18ed9a36 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 4 Jul 2018 02:25:48 -0400 Subject: [PATCH] Entity#getChunk API @@ -6,7 +6,7 @@ Subject: [PATCH] Entity#getChunk API Get the chunk the entity is currently registered to diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 3ae4de7a..e2a2b78c 100644 +index 4548c95b..573a6918 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java @@ -1,5 +1,6 @@ @@ -16,7 +16,7 @@ index 3ae4de7a..e2a2b78c 100644 import org.bukkit.Location; import org.bukkit.EntityEffect; import org.bukkit.Nameable; -@@ -514,5 +515,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable { +@@ -544,5 +545,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable { * @return True if entity spawned from a mob spawner */ boolean fromMobSpawner(); diff --git a/Spigot-Server-Patches/0006-Add-MinecraftKey-Information-to-Objects.patch b/Spigot-Server-Patches/0006-Add-MinecraftKey-Information-to-Objects.patch index 63b5fb1482..478e2dc092 100644 --- a/Spigot-Server-Patches/0006-Add-MinecraftKey-Information-to-Objects.patch +++ b/Spigot-Server-Patches/0006-Add-MinecraftKey-Information-to-Objects.patch @@ -1,4 +1,4 @@ -From 9718682b425bcb58c93c962b5f9530e27dc3a90c Mon Sep 17 00:00:00 2001 +From 04982f8161c4fa45ebd2115b734a9f72cd35790c Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 4 Jul 2018 01:40:13 -0400 Subject: [PATCH] Add MinecraftKey Information to Objects @@ -19,7 +19,7 @@ index e8f7b7292d..7ff8e70b24 100644 MutablePair> info = list.computeIfAbsent(key, k -> MutablePair.of(0, Maps.newHashMap())); ChunkCoordIntPair chunk = new ChunkCoordIntPair(e.getChunkX(), e.getChunkZ()); diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index f381cd47fb..38e606c131 100644 +index ef21637c44..5faaf3b199 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -45,7 +45,7 @@ import org.bukkit.event.entity.EntityPortalEvent; @@ -40,7 +40,7 @@ index f381cd47fb..38e606c131 100644 private int id; public boolean j; public final List passengers; -@@ -1761,12 +1761,29 @@ public abstract class Entity implements INamableTileEntity, ICommandListener { +@@ -1762,12 +1762,29 @@ public abstract class Entity implements INamableTileEntity, ICommandListener { return true; } diff --git a/Spigot-Server-Patches/0007-Store-reference-to-current-Chunk-for-Entity-and-Bloc.patch b/Spigot-Server-Patches/0007-Store-reference-to-current-Chunk-for-Entity-and-Bloc.patch index 6b67674182..3ebccc0aaf 100644 --- a/Spigot-Server-Patches/0007-Store-reference-to-current-Chunk-for-Entity-and-Bloc.patch +++ b/Spigot-Server-Patches/0007-Store-reference-to-current-Chunk-for-Entity-and-Bloc.patch @@ -1,4 +1,4 @@ -From b4426208394038596094e3d30684b8f22aa25a92 Mon Sep 17 00:00:00 2001 +From bda9bfa66f13a5452e94d471c406ea177822827e Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 4 Jul 2018 02:10:36 -0400 Subject: [PATCH] Store reference to current Chunk for Entity and Block @@ -8,7 +8,7 @@ This enables us a fast reference to the entities current chunk instead of having to look it up by hashmap lookups. diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index cd4fbee0ca..5aedd386fe 100644 +index 2d06202da7..8d9aa271a1 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -33,7 +33,7 @@ public class Chunk implements IChunkAccess { @@ -85,7 +85,7 @@ index cd4fbee0ca..5aedd386fe 100644 } public boolean c(BlockPosition blockposition) { -@@ -818,6 +848,7 @@ public class Chunk implements IChunkAccess { +@@ -829,6 +859,7 @@ public class Chunk implements IChunkAccess { } } // Spigot End @@ -94,7 +94,7 @@ index cd4fbee0ca..5aedd386fe 100644 // Do not pass along players, as doing so can get them stuck outside of time. // (which for example disables inventory icon updates and prevents block breaking) diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 38e606c131..5451ab07f5 100644 +index 5faaf3b199..8934ff699b 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -133,7 +133,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -106,7 +106,7 @@ index 38e606c131..5451ab07f5 100644 public int ae; public int getChunkX() { return ae; } // Paper - OBFHELPER public int af; public int getChunkY() { return af; } // Paper - OBFHELPER public int ag; public int getChunkZ() { return ag; } // Paper - OBFHELPER -@@ -1762,6 +1762,39 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1763,6 +1763,39 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } // Paper start @@ -167,7 +167,7 @@ index 5ca7fef518..9361667c3b 100644 @Nullable diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 72164e11af..f09251eec8 100644 +index b542b17fd0..9fc7ac8c02 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -9,6 +9,7 @@ import java.util.UUID; diff --git a/Spigot-Server-Patches/0009-Timings-v2.patch b/Spigot-Server-Patches/0009-Timings-v2.patch index 1746514aff..8169d8ebce 100644 --- a/Spigot-Server-Patches/0009-Timings-v2.patch +++ b/Spigot-Server-Patches/0009-Timings-v2.patch @@ -1,4 +1,4 @@ -From 7efabb01daa41444c86d565126597aa9f5ee134b Mon Sep 17 00:00:00 2001 +From 9f38656090ca3c9125d795061af4c51544f9265e Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 3 Mar 2016 04:00:11 -0600 Subject: [PATCH] Timings v2 @@ -499,7 +499,7 @@ index 06f10e1e84..43feccef8f 100644 Object2ByteLinkedOpenHashMap object2bytelinkedopenhashmap = new Object2ByteLinkedOpenHashMap(200) { protected void rehash(int i) {} diff --git a/src/main/java/net/minecraft/server/ChunkMap.java b/src/main/java/net/minecraft/server/ChunkMap.java -index 5164e5c928..0c2386f5ec 100644 +index 027b7cce98..4e51bd301a 100644 --- a/src/main/java/net/minecraft/server/ChunkMap.java +++ b/src/main/java/net/minecraft/server/ChunkMap.java @@ -14,6 +14,7 @@ public class ChunkMap extends Long2ObjectOpenHashMap { @@ -510,7 +510,7 @@ index 5164e5c928..0c2386f5ec 100644 Chunk chunk1 = (Chunk) super.put(i, chunk); ChunkCoordIntPair chunkcoordintpair = new ChunkCoordIntPair(i); -@@ -55,8 +56,10 @@ public class ChunkMap extends Long2ObjectOpenHashMap { +@@ -46,8 +47,10 @@ public class ChunkMap extends Long2ObjectOpenHashMap { } } } @@ -521,14 +521,14 @@ index 5164e5c928..0c2386f5ec 100644 BlockSand.instaFall = true; java.util.Random random = new java.util.Random(); random.setSeed(chunk.world.getSeed()); -@@ -77,6 +80,7 @@ public class ChunkMap extends Long2ObjectOpenHashMap { +@@ -68,6 +71,7 @@ public class ChunkMap extends Long2ObjectOpenHashMap { } BlockSand.instaFall = false; chunk.world.getServer().getPluginManager().callEvent(new org.bukkit.event.world.ChunkPopulateEvent(chunk.bukkitChunk)); + chunk.world.timings.syncChunkLoadPopulateTimer.stopTiming(); // Paper } + // CraftBukkit end - return chunk1; diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java index 00cd8d8cea..aabdc9e2f0 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -660,7 +660,7 @@ index 3706e44a34..bf1fffcfee 100644 return waitable.get(); } catch (java.util.concurrent.ExecutionException e) { diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 5451ab07f5..5c733506d5 100644 +index 8934ff699b..31b612d516 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -29,7 +29,8 @@ import org.bukkit.command.CommandSender; @@ -673,7 +673,7 @@ index 5451ab07f5..5c733506d5 100644 import org.bukkit.event.entity.EntityCombustByEntityEvent; import org.bukkit.event.hanging.HangingBreakByEntityEvent; import org.bukkit.event.vehicle.VehicleBlockCollisionEvent; -@@ -158,7 +159,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -159,7 +160,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke public boolean valid; public org.bukkit.projectiles.ProjectileSource projectileSource; // For projectiles only public boolean forceExplosionKnockback; // SPIGOT-949 @@ -682,7 +682,7 @@ index 5451ab07f5..5c733506d5 100644 // Spigot start public final byte activationType = org.spigotmc.ActivationRange.initializeEntityActivationType(this); public final boolean defaultActivationState; -@@ -539,7 +540,6 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -540,7 +541,6 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } public void move(EnumMoveType enummovetype, double d0, double d1, double d2) { @@ -690,7 +690,7 @@ index 5451ab07f5..5c733506d5 100644 if (this.noclip) { this.a(this.getBoundingBox().d(d0, d1, d2)); this.recalcPosition(); -@@ -888,7 +888,6 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -889,7 +889,6 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.world.methodProfiler.e(); } diff --git a/Spigot-Server-Patches/0016-Drop-falling-block-and-tnt-entities-at-the-specified.patch b/Spigot-Server-Patches/0016-Drop-falling-block-and-tnt-entities-at-the-specified.patch index e3fc5bd493..785ea75b8a 100644 --- a/Spigot-Server-Patches/0016-Drop-falling-block-and-tnt-entities-at-the-specified.patch +++ b/Spigot-Server-Patches/0016-Drop-falling-block-and-tnt-entities-at-the-specified.patch @@ -1,4 +1,4 @@ -From 32e23b10cef6565183eaa14c9cc3ca17f60f6414 Mon Sep 17 00:00:00 2001 +From 8057f460fde7cbe69626c2e6897585b128fc7496 Mon Sep 17 00:00:00 2001 From: Byteflux Date: Tue, 1 Mar 2016 14:14:15 -0600 Subject: [PATCH] Drop falling block and tnt entities at the specified height @@ -24,10 +24,10 @@ index cef0c47ac7..38a697e1b7 100644 + } } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 5c733506d5..daf83a8b12 100644 +index 31b612d516..d0535bf160 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -1865,6 +1865,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1866,6 +1866,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.a(itemstack, 0.0F); } diff --git a/Spigot-Server-Patches/0023-Entity-Origin-API.patch b/Spigot-Server-Patches/0023-Entity-Origin-API.patch index bd5512f1ab..0d1fa4f5f0 100644 --- a/Spigot-Server-Patches/0023-Entity-Origin-API.patch +++ b/Spigot-Server-Patches/0023-Entity-Origin-API.patch @@ -1,14 +1,14 @@ -From c1f35d2b808d0f11da561d02d9ba2244d6821866 Mon Sep 17 00:00:00 2001 +From ae313c17800421f9c254c21750a19b85db89e5b9 Mon Sep 17 00:00:00 2001 From: Byteflux 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 daf83a8b12..674ca3304d 100644 +index d0535bf160..37392bdf20 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -160,6 +160,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -161,6 +161,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke public org.bukkit.projectiles.ProjectileSource projectileSource; // For projectiles only public boolean forceExplosionKnockback; // SPIGOT-949 public Timing tickTimer = MinecraftTimings.getEntityTimings(this); // Paper @@ -16,7 +16,7 @@ index daf83a8b12..674ca3304d 100644 // Spigot start public final byte activationType = org.spigotmc.ActivationRange.initializeEntityActivationType(this); public final boolean defaultActivationState; -@@ -1605,6 +1606,11 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1606,6 +1607,11 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } } @@ -28,7 +28,7 @@ index daf83a8b12..674ca3304d 100644 return nbttagcompound; } catch (Throwable throwable) { CrashReport crashreport = CrashReport.a(throwable, "Saving entity NBT"); -@@ -1747,6 +1753,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1748,6 +1754,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } // CraftBukkit end @@ -42,7 +42,7 @@ index daf83a8b12..674ca3304d 100644 } catch (Throwable throwable) { CrashReport crashreport = CrashReport.a(throwable, "Loading entity NBT"); CrashReportSystemDetails crashreportsystemdetails = crashreport.a("Entity being loaded"); -@@ -1822,6 +1835,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1823,6 +1836,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke protected abstract void b(NBTTagCompound nbttagcompound); @@ -118,10 +118,10 @@ index d0516b0885..6bb52c7d4d 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 f09251eec8..34246369c5 100644 +index 9fc7ac8c02..249d8115e8 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -777,4 +777,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -787,4 +787,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { return spigot; } // Spigot end diff --git a/Spigot-Server-Patches/0025-Configurable-top-of-nether-void-damage.patch b/Spigot-Server-Patches/0025-Configurable-top-of-nether-void-damage.patch index bc688557cc..c8a5ddbf2f 100644 --- a/Spigot-Server-Patches/0025-Configurable-top-of-nether-void-damage.patch +++ b/Spigot-Server-Patches/0025-Configurable-top-of-nether-void-damage.patch @@ -1,4 +1,4 @@ -From de8f58f64cbe8823e170a5dfaa5393c4d88e8e6f Mon Sep 17 00:00:00 2001 +From c30ee8d5915f87ff6f3b77284e50d8a53965f4fa Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 1 Mar 2016 23:58:50 -0600 Subject: [PATCH] Configurable top of nether void damage @@ -20,10 +20,10 @@ index 38a697e1b7..68898d624f 100644 + } } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 5ba537bab2..f95024cba5 100644 +index 37392bdf20..e5e4437332 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -460,9 +460,15 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -461,9 +461,15 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.fallDistance *= 0.5F; } @@ -39,7 +39,7 @@ index 5ba537bab2..f95024cba5 100644 if (!this.world.isClientSide) { this.setFlag(0, this.fireTicks > 0); -@@ -472,6 +478,14 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -473,6 +479,14 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.world.methodProfiler.e(); } @@ -54,7 +54,7 @@ index 5ba537bab2..f95024cba5 100644 protected void E() { if (this.portalCooldown > 0) { --this.portalCooldown; -@@ -528,6 +542,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -529,6 +543,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.fireTicks = 0; } diff --git a/Spigot-Server-Patches/0028-Lighting-Queue.patch b/Spigot-Server-Patches/0028-Lighting-Queue.patch index edd1411eb1..21185f8d2d 100644 --- a/Spigot-Server-Patches/0028-Lighting-Queue.patch +++ b/Spigot-Server-Patches/0028-Lighting-Queue.patch @@ -1,4 +1,4 @@ -From 683354cb417c352fb5f5507f7c56192b970f65e2 Mon Sep 17 00:00:00 2001 +From bd3f0e313c51ef6862f1a954ad030883532ed4d0 Mon Sep 17 00:00:00 2001 From: Byteflux Date: Wed, 2 Mar 2016 00:52:31 -0600 Subject: [PATCH] Lighting Queue @@ -43,7 +43,7 @@ index 68898d624f..4b36a0f053 100644 + } } diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 7e5fa65ad7..476f5b4062 100644 +index 849d8de69b..01401c4447 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -91,6 +91,7 @@ public class Chunk implements IChunkAccess { @@ -84,7 +84,7 @@ index 7e5fa65ad7..476f5b4062 100644 } TileEntity tileentity; -@@ -1288,6 +1298,16 @@ public class Chunk implements IChunkAccess { +@@ -1299,6 +1309,16 @@ public class Chunk implements IChunkAccess { return this.E == 8; } diff --git a/Spigot-Server-Patches/0029-Configurable-end-credits.patch b/Spigot-Server-Patches/0029-Configurable-end-credits.patch index bc59ff5333..25a25ba8b2 100644 --- a/Spigot-Server-Patches/0029-Configurable-end-credits.patch +++ b/Spigot-Server-Patches/0029-Configurable-end-credits.patch @@ -1,11 +1,11 @@ -From f73a01ec2601dd1fc514d363f860195dc920ce36 Mon Sep 17 00:00:00 2001 +From e017ff95e08c7717f7bc428735b97eacfa48f9cd Mon Sep 17 00:00:00 2001 From: DoctorDark Date: Wed, 16 Mar 2016 02:21:39 -0500 Subject: [PATCH] Configurable end credits diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 4b36a0f05..53921b381 100644 +index 4b36a0f053..53921b381e 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -136,4 +136,10 @@ public class PaperWorldConfig { @@ -20,7 +20,7 @@ index 4b36a0f05..53921b381 100644 + } } diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 67f14370e..47808e22d 100644 +index 3a04cac5c9..2dc70ffbf0 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -62,7 +62,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -32,7 +32,7 @@ index 67f14370e..47808e22d 100644 private final RecipeBookServer cz; private Vec3D cA; private int cB; -@@ -621,6 +621,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -634,6 +634,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { this.world.kill(this); if (!this.viewingCredits) { this.viewingCredits = true; diff --git a/Spigot-Server-Patches/0039-Configurable-container-update-tick-rate.patch b/Spigot-Server-Patches/0039-Configurable-container-update-tick-rate.patch index 80d20ad6fe..48febbbd93 100644 --- a/Spigot-Server-Patches/0039-Configurable-container-update-tick-rate.patch +++ b/Spigot-Server-Patches/0039-Configurable-container-update-tick-rate.patch @@ -1,11 +1,11 @@ -From de00011ef7d2a81cec22bf1ee37a8c00441150d1 Mon Sep 17 00:00:00 2001 +From 481e2235aad6d8ad72f169278fbb3da2f4a379a0 Mon Sep 17 00:00:00 2001 From: Sudzzy Date: Wed, 2 Mar 2016 23:34:44 -0600 Subject: [PATCH] Configurable container update tick rate diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 59bd3e28f..f8d2aae08 100644 +index 59bd3e28f0..f8d2aae082 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -168,4 +168,9 @@ public class PaperWorldConfig { @@ -19,7 +19,7 @@ index 59bd3e28f..f8d2aae08 100644 + } } diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 2b13729e4..80371a836 100644 +index b66df45bde..0b1c5ca475 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -81,6 +81,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -30,7 +30,7 @@ index 2b13729e4..80371a836 100644 // CraftBukkit start public String displayName; -@@ -331,7 +332,12 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -344,7 +345,12 @@ public class EntityPlayer extends EntityHuman implements ICrafting { --this.noDamageTicks; } diff --git a/Spigot-Server-Patches/0048-Avoid-hopper-searches-if-there-are-no-items.patch b/Spigot-Server-Patches/0048-Avoid-hopper-searches-if-there-are-no-items.patch index 0c78d541e7..1a986f5834 100644 --- a/Spigot-Server-Patches/0048-Avoid-hopper-searches-if-there-are-no-items.patch +++ b/Spigot-Server-Patches/0048-Avoid-hopper-searches-if-there-are-no-items.patch @@ -1,4 +1,4 @@ -From 74c31e8ae4ee9d9949abf0b1d68bb464c13b7da9 Mon Sep 17 00:00:00 2001 +From 09dde82aeb83b408f1256e9ce7fefde0ced411ba Mon Sep 17 00:00:00 2001 From: CullanP 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 476f5b4062..dc9664732b 100644 +index 01401c4447..57ebd1e77a 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -92,6 +92,10 @@ public class Chunk implements IChunkAccess { @@ -52,7 +52,7 @@ index 476f5b4062..dc9664732b 100644 entity.setCurrentChunk(null); entityCounts.decrement(entity.getMinecraftKeyString()); // Paper end -@@ -899,6 +913,15 @@ public class Chunk implements IChunkAccess { +@@ -910,6 +924,15 @@ public class Chunk implements IChunkAccess { if (!this.entitySlices[k].isEmpty()) { Iterator iterator = this.entitySlices[k].iterator(); @@ -68,7 +68,7 @@ index 476f5b4062..dc9664732b 100644 while (iterator.hasNext()) { Entity entity1 = (Entity) iterator.next(); -@@ -935,7 +958,18 @@ public class Chunk implements IChunkAccess { +@@ -946,7 +969,18 @@ public class Chunk implements IChunkAccess { i = MathHelper.clamp(i, 0, this.entitySlices.length - 1); j = MathHelper.clamp(j, 0, this.entitySlices.length - 1); diff --git a/Spigot-Server-Patches/0059-Disable-Scoreboards-for-non-players-by-default.patch b/Spigot-Server-Patches/0059-Disable-Scoreboards-for-non-players-by-default.patch index 31e68f99ae..885a75bcea 100644 --- a/Spigot-Server-Patches/0059-Disable-Scoreboards-for-non-players-by-default.patch +++ b/Spigot-Server-Patches/0059-Disable-Scoreboards-for-non-players-by-default.patch @@ -1,4 +1,4 @@ -From dc8c3f891cd996794eade8803ff88a58ea309125 Mon Sep 17 00:00:00 2001 +From d58a95bd0ff1060723ed73b6745f35f4550bb395 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 8 Mar 2016 23:25:45 -0500 Subject: [PATCH] Disable Scoreboards for non players by default @@ -25,10 +25,10 @@ index 4a2d296746..2b25da0465 100644 + } } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 2174b50419..0af06481f0 100644 +index e5e4437332..4ae39ba9b3 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2239,6 +2239,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2240,6 +2240,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @Nullable public ScoreboardTeamBase be() { diff --git a/Spigot-Server-Patches/0078-Use-a-Shared-Random-for-Entities.patch b/Spigot-Server-Patches/0078-Use-a-Shared-Random-for-Entities.patch index 3a401143c6..f1170ef851 100644 --- a/Spigot-Server-Patches/0078-Use-a-Shared-Random-for-Entities.patch +++ b/Spigot-Server-Patches/0078-Use-a-Shared-Random-for-Entities.patch @@ -1,4 +1,4 @@ -From ce7ffaa9f437f871b1c1b87d5f22b482e25e9edc Mon Sep 17 00:00:00 2001 +From 58f22d3cd3c6775a56674da5767cefe141436d8b Mon Sep 17 00:00:00 2001 From: Aikar 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 e16579116..56aa89b45 100644 +index 4ae39ba9b3..77c5b34286 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -50,6 +50,20 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -30,7 +30,7 @@ index e16579116..56aa89b45 100644 static boolean isLevelAtLeast(NBTTagCompound tag, int level) { return tag.hasKey("Bukkit.updateLevel") && tag.getInt("Bukkit.updateLevel") >= level; } -@@ -182,7 +196,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -183,7 +197,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.length = 1.8F; this.aA = 1.0F; this.aB = 1.0F; diff --git a/Spigot-Server-Patches/0079-Don-t-teleport-dead-entities.patch b/Spigot-Server-Patches/0079-Don-t-teleport-dead-entities.patch index cabf7ac676..2e1b5604bd 100644 --- a/Spigot-Server-Patches/0079-Don-t-teleport-dead-entities.patch +++ b/Spigot-Server-Patches/0079-Don-t-teleport-dead-entities.patch @@ -1,4 +1,4 @@ -From ab87d0e5ea454a39fb631c067598f129465eaeb9 Mon Sep 17 00:00:00 2001 +From 3c89785b87c8e201dd3aed8bf3879bb898336d30 Mon Sep 17 00:00:00 2001 From: Aikar 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 97e6aedad7..fd2a21182a 100644 +index 77c5b34286..1f2981529e 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2556,7 +2556,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2557,7 +2557,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } public Entity teleportTo(Location exit, boolean portal) { diff --git a/Spigot-Server-Patches/0080-Optimize-Chunk-Access.patch b/Spigot-Server-Patches/0080-Optimize-Chunk-Access.patch index 91ffe2add0..335dc7d21d 100644 --- a/Spigot-Server-Patches/0080-Optimize-Chunk-Access.patch +++ b/Spigot-Server-Patches/0080-Optimize-Chunk-Access.patch @@ -1,4 +1,4 @@ -From 196ffe1d3f60888cdd167fab8e5e514254f2eb55 Mon Sep 17 00:00:00 2001 +From 44f37fdd16c122b143b05d4a1c0e6aaaa4b84e34 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 27 Aug 2015 01:15:02 -0400 Subject: [PATCH] Optimize Chunk Access @@ -9,10 +9,10 @@ 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/ChunkMap.java b/src/main/java/net/minecraft/server/ChunkMap.java -index 0c2386f5e..5757aa80f 100644 +index 4e51bd301a..7100ec7747 100644 --- a/src/main/java/net/minecraft/server/ChunkMap.java +++ b/src/main/java/net/minecraft/server/ChunkMap.java -@@ -106,8 +106,22 @@ public class ChunkMap extends Long2ObjectOpenHashMap { +@@ -98,8 +98,22 @@ public class ChunkMap extends Long2ObjectOpenHashMap { } } diff --git a/Spigot-Server-Patches/0086-Configurable-Chunk-Inhabited-Timer.patch b/Spigot-Server-Patches/0086-Configurable-Chunk-Inhabited-Timer.patch index d77e017057..2fe77fad86 100644 --- a/Spigot-Server-Patches/0086-Configurable-Chunk-Inhabited-Timer.patch +++ b/Spigot-Server-Patches/0086-Configurable-Chunk-Inhabited-Timer.patch @@ -1,4 +1,4 @@ -From ec58c14b8584b009bb326b0164d746a7e4daed47 Mon Sep 17 00:00:00 2001 +From ec0220446f2d37c7138941ebd903fb1f49849fa9 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 28 Mar 2016 20:46:14 -0400 Subject: [PATCH] Configurable Chunk Inhabited Timer @@ -23,7 +23,7 @@ index b3b3baddc0..613964ce04 100644 + } } diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index b8e3307f36..00f55355f6 100644 +index 4b440c7077..e8a943cf74 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -55,7 +55,7 @@ public class Chunk implements IChunkAccess { @@ -35,7 +35,7 @@ index b8e3307f36..00f55355f6 100644 private int B; private final ConcurrentLinkedQueue C; public boolean d; -@@ -1229,7 +1229,7 @@ public class Chunk implements IChunkAccess { +@@ -1240,7 +1240,7 @@ public class Chunk implements IChunkAccess { } public long m() { diff --git a/Spigot-Server-Patches/0099-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch b/Spigot-Server-Patches/0099-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch index 007bfc62d8..c5cc911aa6 100644 --- a/Spigot-Server-Patches/0099-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch +++ b/Spigot-Server-Patches/0099-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch @@ -1,4 +1,4 @@ -From 4f408e254c35c900b05ee861f55cb84712180374 Mon Sep 17 00:00:00 2001 +From c43b466a7fb9981256385d2d6c1bd6abc75e743e Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Wed, 6 Apr 2016 01:04:23 -0500 Subject: [PATCH] Option to use vanilla per-world scoreboard coloring on names @@ -19,10 +19,10 @@ index 667a0dde8c..b6ef1d4378 100644 + } } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index fd2a21182a..b9ec47de2a 100644 +index 1f2981529e..f694463d20 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2251,6 +2251,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2252,6 +2252,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.getFlag(5); } diff --git a/Spigot-Server-Patches/0107-Implement-PlayerLocaleChangeEvent.patch b/Spigot-Server-Patches/0107-Implement-PlayerLocaleChangeEvent.patch index 44ebc3820d..33f4d09880 100644 --- a/Spigot-Server-Patches/0107-Implement-PlayerLocaleChangeEvent.patch +++ b/Spigot-Server-Patches/0107-Implement-PlayerLocaleChangeEvent.patch @@ -1,11 +1,11 @@ -From a07d8e2a3c06f3548e343ff6a5eb63d8e54766c3 Mon Sep 17 00:00:00 2001 +From 131ee1008d2dfd177be70bf14d7b1741b1b2094b Mon Sep 17 00:00:00 2001 From: Isaac Moore Date: Tue, 19 Apr 2016 14:09:31 -0500 Subject: [PATCH] Implement PlayerLocaleChangeEvent diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 80371a836..27ea8984f 100644 +index 0b1c5ca475..e036716970 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -37,7 +37,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -17,7 +17,7 @@ index 80371a836..27ea8984f 100644 public PlayerConnection playerConnection; public final MinecraftServer server; public final PlayerInteractManager playerInteractManager; -@@ -1228,12 +1228,19 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1241,12 +1241,19 @@ public class EntityPlayer extends EntityHuman implements ICrafting { PlayerChangedMainHandEvent event = new PlayerChangedMainHandEvent(getBukkitEntity(), getMainHand() == EnumMainHand.LEFT ? MainHand.LEFT : MainHand.RIGHT); this.server.server.getPluginManager().callEvent(event); } @@ -39,7 +39,7 @@ index 80371a836..27ea8984f 100644 this.cu = packetplayinsettings.e(); this.getDataWatcher().set(EntityPlayer.bx, Byte.valueOf((byte) packetplayinsettings.f())); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index a84f1a055..6f23ef5b8 100644 +index a84f1a055c..6f23ef5b81 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1725,8 +1725,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/Spigot-Server-Patches/0121-Optional-TNT-doesn-t-move-in-water.patch b/Spigot-Server-Patches/0121-Optional-TNT-doesn-t-move-in-water.patch index 36595dc336..e96fc36179 100644 --- a/Spigot-Server-Patches/0121-Optional-TNT-doesn-t-move-in-water.patch +++ b/Spigot-Server-Patches/0121-Optional-TNT-doesn-t-move-in-water.patch @@ -1,4 +1,4 @@ -From 8ca5cfdb56d5805d1473cae58e2b2a38b22e8a77 Mon Sep 17 00:00:00 2001 +From f10aef89a91ed3e191c69f92352a56970f8a5a95 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Sun, 22 May 2016 20:20:55 -0500 Subject: [PATCH] Optional TNT doesn't move in water @@ -32,10 +32,10 @@ index a3823408ca..41e73b3409 100644 + } } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 334751e3e7..ca08ed9d60 100644 +index c2e6272804..a39152e117 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -1171,6 +1171,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1172,6 +1172,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } public boolean aq() { @@ -48,7 +48,7 @@ index 334751e3e7..ca08ed9d60 100644 return this.isInWater() || this.q(); } -@@ -2717,6 +2723,11 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2718,6 +2724,11 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } public boolean bw() { diff --git a/Spigot-Server-Patches/0131-Re-track-players-that-dismount-from-other-players.patch b/Spigot-Server-Patches/0131-Re-track-players-that-dismount-from-other-players.patch index 1951d5dec2..082a54d3fc 100644 --- a/Spigot-Server-Patches/0131-Re-track-players-that-dismount-from-other-players.patch +++ b/Spigot-Server-Patches/0131-Re-track-players-that-dismount-from-other-players.patch @@ -1,14 +1,14 @@ -From bcfa3dba803fbc577ffba930dab5c3e7617d6533 Mon Sep 17 00:00:00 2001 +From 296fbd3b2fcdd172ac1ed1afdbbfe5b80324fb2a Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Sun, 31 Jul 2016 16:33:03 -0500 Subject: [PATCH] Re-track players that dismount from other players diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 27ea8984fb..982e18f8af 100644 +index e036716970..bdd1fef710 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java -@@ -733,6 +733,13 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -746,6 +746,13 @@ public class EntityPlayer extends EntityHuman implements ICrafting { if (entity1 != entity && this.playerConnection != null) { this.playerConnection.a(this.locX, this.locY, this.locZ, this.yaw, this.pitch); } diff --git a/Spigot-Server-Patches/0138-Auto-Save-Improvements.patch b/Spigot-Server-Patches/0138-Auto-Save-Improvements.patch index 19e26ecbde..5f1d49e8e4 100644 --- a/Spigot-Server-Patches/0138-Auto-Save-Improvements.patch +++ b/Spigot-Server-Patches/0138-Auto-Save-Improvements.patch @@ -1,4 +1,4 @@ -From 038b2b417070812666a5b72ccf29309d9ea7833f Mon Sep 17 00:00:00 2001 +From 06fde62d101a14f97ad1a3b537c28345e6ca2807 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 19 Sep 2016 23:16:39 -0400 Subject: [PATCH] Auto Save Improvements @@ -64,7 +64,7 @@ index ec6b550ff6..499230af60 100644 + } } diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 74ff495ad4..7dd1887762 100644 +index ace64c0345..229215180b 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -52,9 +52,9 @@ public class Chunk implements IChunkAccess { @@ -79,7 +79,7 @@ index 74ff495ad4..7dd1887762 100644 private int z; private long A; public long getInhabitedTime() { return A; } // Paper - OBFHELPER private int B; -@@ -1011,11 +1011,11 @@ public class Chunk implements IChunkAccess { +@@ -1022,11 +1022,11 @@ public class Chunk implements IChunkAccess { if (this.w && this.world.getTime() != this.lastSaved || this.y) { return true; } @@ -116,7 +116,7 @@ index a5139b0b0d..aa8d25e765 100644 } } diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 982e18f8af..1879c32381 100644 +index bdd1fef710..9c04fa4a6f 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -38,6 +38,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { diff --git a/Spigot-Server-Patches/0151-Optimise-removeQueue.patch b/Spigot-Server-Patches/0151-Optimise-removeQueue.patch index aa0576713c..a405fd83c4 100644 --- a/Spigot-Server-Patches/0151-Optimise-removeQueue.patch +++ b/Spigot-Server-Patches/0151-Optimise-removeQueue.patch @@ -1,11 +1,11 @@ -From 046d278b356f8850334858fdf7c1e4b1048e667b Mon Sep 17 00:00:00 2001 +From e9debd0d37b58e79725dbb5f4bc8029f23ee63f5 Mon Sep 17 00:00:00 2001 From: Alfie Cleveland Date: Fri, 25 Nov 2016 13:22:40 +0000 Subject: [PATCH] Optimise removeQueue diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index b76c28147b..4bde378afb 100644 +index 9bb70c151d..9505511b14 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -5,8 +5,10 @@ import com.mojang.authlib.GameProfile; @@ -28,7 +28,7 @@ index b76c28147b..4bde378afb 100644 private final AdvancementDataPlayer cg; private final ServerStatisticManager ch; private float ci = Float.MIN_VALUE; -@@ -351,10 +353,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -364,10 +366,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting { Iterator iterator = this.removeQueue.iterator(); int j = 0; @@ -47,7 +47,7 @@ index b76c28147b..4bde378afb 100644 this.playerConnection.sendPacket(new PacketPlayOutEntityDestroy(aint)); } -@@ -1119,7 +1128,11 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1132,7 +1141,11 @@ public class EntityPlayer extends EntityHuman implements ICrafting { this.lastHealthSent = -1.0F; this.cp = -1; // this.cz.a((RecipeBook) entityplayer.cz); // CraftBukkit diff --git a/Spigot-Server-Patches/0163-Properly-fix-item-duplication-bug.patch b/Spigot-Server-Patches/0163-Properly-fix-item-duplication-bug.patch index 1dd9abade5..7d95f61795 100644 --- a/Spigot-Server-Patches/0163-Properly-fix-item-duplication-bug.patch +++ b/Spigot-Server-Patches/0163-Properly-fix-item-duplication-bug.patch @@ -1,4 +1,4 @@ -From 99549bbd0a129084cb529b8d7d5aa1b2cca756c8 Mon Sep 17 00:00:00 2001 +From d7f1fa572f569e45b105296e0dfd07c0eb661cb3 Mon Sep 17 00:00:00 2001 From: Alfie Cleveland Date: Tue, 27 Dec 2016 01:57:57 +0000 Subject: [PATCH] Properly fix item duplication bug @@ -6,10 +6,10 @@ Subject: [PATCH] Properly fix item duplication bug Credit to prplz for figuring out the real issue diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 4bde378afb..7059fc1187 100644 +index 9505511b14..9b1edab77d 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java -@@ -1525,7 +1525,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1538,7 +1538,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @Override protected boolean isFrozen() { diff --git a/Spigot-Server-Patches/0172-Don-t-allow-entities-to-ride-themselves-572.patch b/Spigot-Server-Patches/0172-Don-t-allow-entities-to-ride-themselves-572.patch index f267d16b33..17da80fad7 100644 --- a/Spigot-Server-Patches/0172-Don-t-allow-entities-to-ride-themselves-572.patch +++ b/Spigot-Server-Patches/0172-Don-t-allow-entities-to-ride-themselves-572.patch @@ -1,14 +1,14 @@ -From 898566e459ff4fc3346be2686d57e9a3fde2ad3b Mon Sep 17 00:00:00 2001 +From 21d1fb00e372eb869d84e295e926e705cefaab60 Mon Sep 17 00:00:00 2001 From: Alfie Cleveland Date: Sun, 8 Jan 2017 04:31:36 +0000 Subject: [PATCH] Don't allow entities to ride themselves - #572 diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index dca8dd55a4..a8f321640c 100644 +index b430fe1337..71ae40aae6 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2068,6 +2068,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2069,6 +2069,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } protected void o(Entity entity) { diff --git a/Spigot-Server-Patches/0175-Cap-Entity-Collisions.patch b/Spigot-Server-Patches/0175-Cap-Entity-Collisions.patch index 476ff6d2b2..36f7ae7816 100644 --- a/Spigot-Server-Patches/0175-Cap-Entity-Collisions.patch +++ b/Spigot-Server-Patches/0175-Cap-Entity-Collisions.patch @@ -1,4 +1,4 @@ -From 24e6eede4853d38e743e99254a59a3d849df67bb Mon Sep 17 00:00:00 2001 +From 255be07d1698feb90a2de0b84e6d11f76ba1ed56 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 22 Jan 2017 18:07:56 -0500 Subject: [PATCH] Cap Entity Collisions @@ -12,7 +12,7 @@ just as it does in Vanilla, but entity pushing logic will be capped. You can set this to 0 to disable collisions. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index b95f259a9..4991138df 100644 +index b95f259a9a..4991138dfe 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -344,4 +344,10 @@ public class PaperWorldConfig { @@ -27,10 +27,10 @@ index b95f259a9..4991138df 100644 + } } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 78b7b8be9..6db20aa75 100644 +index 71ae40aae6..0484aa381b 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -181,6 +181,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -182,6 +182,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke public final boolean defaultActivationState; public long activatedTick = Integer.MIN_VALUE; public boolean fromMobSpawner; @@ -39,7 +39,7 @@ index 78b7b8be9..6db20aa75 100644 // Spigot end diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index f9a76ce27..3b4867bfc 100644 +index f9a76ce27c..3b4867bfc9 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -2318,8 +2318,11 @@ public abstract class EntityLiving extends Entity { diff --git a/Spigot-Server-Patches/0194-Entity-fromMobSpawner.patch b/Spigot-Server-Patches/0194-Entity-fromMobSpawner.patch index 18bfd6d923..b38f8c3edb 100644 --- a/Spigot-Server-Patches/0194-Entity-fromMobSpawner.patch +++ b/Spigot-Server-Patches/0194-Entity-fromMobSpawner.patch @@ -1,14 +1,14 @@ -From e81f68160c4f55e3cf50f2f15889b88ab9032b79 Mon Sep 17 00:00:00 2001 +From c2df3eb88d3f965d4c60e056307e7753bf3e4c8c Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sun, 18 Jun 2017 18:17:05 -0500 Subject: [PATCH] Entity#fromMobSpawner() diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index a09cf2e3f9..caed668bed 100644 +index 0484aa381b..89d284fa7e 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -181,6 +181,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -182,6 +182,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke public final boolean defaultActivationState; public long activatedTick = Integer.MIN_VALUE; public boolean fromMobSpawner; @@ -16,7 +16,7 @@ index a09cf2e3f9..caed668bed 100644 protected int numCollisions = 0; // Paper public void inactiveTick() { } // Spigot end -@@ -1647,6 +1648,10 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1648,6 +1649,10 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke if (origin != null) { nbttagcompound.set("Paper.Origin", this.createList(origin.getX(), origin.getY(), origin.getZ())); } @@ -27,7 +27,7 @@ index a09cf2e3f9..caed668bed 100644 // Paper end return nbttagcompound; } catch (Throwable throwable) { -@@ -1795,6 +1800,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1796,6 +1801,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke if (!originTag.isEmpty()) { origin = new Location(world.getWorld(), originTag.getDoubleAt(0), originTag.getDoubleAt(1), originTag.getDoubleAt(2)); } @@ -49,10 +49,10 @@ index 61472a0eb2..2b6b062c61 100644 if ( entity.world.spigotConfig.nerfSpawnerMobs ) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 03a3328b06..6d4dc539cb 100644 +index dedf1526e6..2801e34f6b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -816,5 +816,10 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -826,5 +826,10 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { Location origin = getHandle().origin; return origin == null ? null : origin.clone(); } diff --git a/Spigot-Server-Patches/0271-Properly-remove-entities-on-dimension-teleport.patch b/Spigot-Server-Patches/0271-Properly-remove-entities-on-dimension-teleport.patch index 57637b9628..9cc3d63d74 100644 --- a/Spigot-Server-Patches/0271-Properly-remove-entities-on-dimension-teleport.patch +++ b/Spigot-Server-Patches/0271-Properly-remove-entities-on-dimension-teleport.patch @@ -1,4 +1,4 @@ -From 195598bc7fb39365fdeb074313ca63ddc84a87cc Mon Sep 17 00:00:00 2001 +From 87ca24731083dde07c9007597285ecce4bcd6af4 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 10 Jun 2018 20:04:42 -0400 Subject: [PATCH] Properly remove entities on dimension teleport @@ -22,10 +22,10 @@ requirement, but plugins (such as my own) use this method to trigger a "reload" of the entity on the client. diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index caed668bed..fa9d68bd18 100644 +index 89d284fa7e..ffc92a6edc 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2587,7 +2587,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2588,7 +2588,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } // CraftBukkit end */ diff --git a/Spigot-Server-Patches/0272-Fix-CraftEntity-hashCode.patch b/Spigot-Server-Patches/0272-Fix-CraftEntity-hashCode.patch index 8a04e333a0..23b52c8f41 100644 --- a/Spigot-Server-Patches/0272-Fix-CraftEntity-hashCode.patch +++ b/Spigot-Server-Patches/0272-Fix-CraftEntity-hashCode.patch @@ -1,4 +1,4 @@ -From 4e9e1e8a0136e140460f3054bd60ee7795002846 Mon Sep 17 00:00:00 2001 +From fd9f7d8ba57935af3e3126cc41e5910ac3bd9f7f Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 10 Jun 2018 20:20:15 -0400 Subject: [PATCH] Fix CraftEntity hashCode @@ -21,10 +21,10 @@ check is essentially the same as this.getHandle() == other.getHandle() However, replaced it too to make it clearer of intent. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 6d4dc539cb..7da6a25f1d 100644 +index 2801e34f6b..6af229ce2e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -525,14 +525,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -535,14 +535,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { return false; } final CraftEntity other = (CraftEntity) obj; diff --git a/Spigot-Server-Patches/0288-InventoryCloseEvent-Reason-API.patch b/Spigot-Server-Patches/0288-InventoryCloseEvent-Reason-API.patch index de9500770b..f391c22636 100644 --- a/Spigot-Server-Patches/0288-InventoryCloseEvent-Reason-API.patch +++ b/Spigot-Server-Patches/0288-InventoryCloseEvent-Reason-API.patch @@ -1,4 +1,4 @@ -From a9cbbc9910dedbb2ff7f032eec3e9bc16bce3a1c Mon Sep 17 00:00:00 2001 +From 7b6fefc4f1fbcb78813a93ca4798d0d2e53520bc Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 3 Jul 2018 21:56:23 -0400 Subject: [PATCH] InventoryCloseEvent Reason API @@ -7,10 +7,10 @@ Allows you to determine why an inventory was closed, enabling plugin developers to "confirm" things based on if it was player triggered close or not. diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 060e01304..8e6d32bd8 100644 +index f6beb6886d..d2e87693fa 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -883,7 +883,7 @@ public class Chunk implements IChunkAccess { +@@ -894,7 +894,7 @@ public class Chunk implements IChunkAccess { { if ( h instanceof org.bukkit.craftbukkit.entity.CraftHumanEntity ) { @@ -19,7 +19,7 @@ index 060e01304..8e6d32bd8 100644 } } } -@@ -908,7 +908,7 @@ public class Chunk implements IChunkAccess { +@@ -919,7 +919,7 @@ public class Chunk implements IChunkAccess { { if ( h instanceof org.bukkit.craftbukkit.entity.CraftHumanEntity ) { @@ -29,7 +29,7 @@ index 060e01304..8e6d32bd8 100644 } } diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 738ac8570..14a61f68e 100644 +index 738ac8570c..14a61f68e1 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -153,7 +153,7 @@ public abstract class EntityHuman extends EntityLiving { @@ -56,10 +56,10 @@ index 738ac8570..14a61f68e 100644 this.activeContainer = this.defaultContainer; } diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 7059fc118..0c01f8daf 100644 +index 9b1edab77d..8fd7a0d029 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java -@@ -343,7 +343,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -356,7 +356,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } // Paper end if (!this.world.isClientSide && !this.activeContainer.canUse(this)) { @@ -68,7 +68,7 @@ index 7059fc118..0c01f8daf 100644 this.activeContainer = this.defaultContainer; } -@@ -534,7 +534,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -547,7 +547,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { this.inventory.clear(); } @@ -77,7 +77,7 @@ index 7059fc118..0c01f8daf 100644 this.setSpectatorTarget(this); // Remove spectated target // CraftBukkit end -@@ -846,7 +846,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -859,7 +859,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { this.a((new ChatMessage("container.spectatorCantOpen", new Object[0])).a(EnumChatFormat.RED), true); } else { if (this.activeContainer != this.defaultContainer) { @@ -86,7 +86,7 @@ index 7059fc118..0c01f8daf 100644 } if (iinventory instanceof ITileInventory) { -@@ -912,7 +912,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -925,7 +925,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } // CraftBukkit end if (this.activeContainer != this.defaultContainer) { @@ -95,7 +95,7 @@ index 7059fc118..0c01f8daf 100644 } this.nextContainerCounter(); -@@ -977,7 +977,12 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -990,7 +990,12 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } public void closeInventory() { @@ -110,7 +110,7 @@ index 7059fc118..0c01f8daf 100644 this.m(); } diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 7bf99cae1..5ffc4fccd 100644 +index 7bf99cae1b..5ffc4fccd0 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -2040,7 +2040,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { @@ -123,7 +123,7 @@ index 7bf99cae1..5ffc4fccd 100644 this.player.m(); } diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 45e42e998..7a2b219c6 100644 +index 45e42e9989..7a2b219c67 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -422,7 +422,7 @@ public abstract class PlayerList { @@ -136,7 +136,7 @@ index 45e42e998..7a2b219c6 100644 PlayerQuitEvent playerQuitEvent = new PlayerQuitEvent(cserver.getPlayer(entityplayer), "\u00A7e" + entityplayer.getName() + " left the game"); cserver.getPluginManager().callEvent(playerQuitEvent); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 6f1659b22..26b30a150 100644 +index 6f1659b221..26b30a1503 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java @@ -411,8 +411,13 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { @@ -155,7 +155,7 @@ index 6f1659b22..26b30a150 100644 public boolean isBlocking() { return getHandle().isBlocking(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index b768327bb..029d8d817 100644 +index b768327bbb..029d8d8179 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -729,7 +729,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -168,7 +168,7 @@ index b768327bb..029d8d817 100644 // Check if the fromWorld and toWorld are the same. diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 8ac599b7a..cf398cd25 100644 +index 8ac599b7a2..cf398cd250 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -913,8 +913,19 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/0298-add-more-information-to-Entity.toString.patch b/Spigot-Server-Patches/0298-add-more-information-to-Entity.toString.patch index 331bc96769..918198cc75 100644 --- a/Spigot-Server-Patches/0298-add-more-information-to-Entity.toString.patch +++ b/Spigot-Server-Patches/0298-add-more-information-to-Entity.toString.patch @@ -1,4 +1,4 @@ -From 387fb09cb5dbdce3838cbd4e9b1ef93971fb8214 Mon Sep 17 00:00:00 2001 +From 02b7efd5e03d5ed806722f1182602d21c532da6a Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 19 Jul 2018 01:13:28 -0400 Subject: [PATCH] add more information to Entity.toString() @@ -6,10 +6,10 @@ Subject: [PATCH] add more information to Entity.toString() UUID, ticks lived, valid, dead diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index fa9d68bd18..ff15c52f8b 100644 +index ffc92a6edc..e47687d399 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2486,7 +2486,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2487,7 +2487,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } public String toString() { diff --git a/Spigot-Server-Patches/0302-Duplicate-UUID-Resolve-Option.patch b/Spigot-Server-Patches/0302-Duplicate-UUID-Resolve-Option.patch index 74dc1475eb..bf6b06f64a 100644 --- a/Spigot-Server-Patches/0302-Duplicate-UUID-Resolve-Option.patch +++ b/Spigot-Server-Patches/0302-Duplicate-UUID-Resolve-Option.patch @@ -1,4 +1,4 @@ -From fe6da864bc88651793c314f2c56b4424877f8833 Mon Sep 17 00:00:00 2001 +From cba824c7d5ebb95ca2eff42bbe03b129409632e8 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 21 Jul 2018 14:27:34 -0400 Subject: [PATCH] Duplicate UUID Resolve Option @@ -78,7 +78,7 @@ index 7bd7aa0d94..5d9bed3f19 100644 + } } diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 3ac115ff65..ba2aeb432d 100644 +index 1997cbdc65..114a13b625 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -1,5 +1,10 @@ @@ -149,10 +149,10 @@ index 3ac115ff65..ba2aeb432d 100644 this.world.a((Collection) entityslice); } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index d84a3fe4cc..97b1e5ceac 100644 +index 347273b553..69e0cf85c8 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2715,6 +2715,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2716,6 +2716,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke }); } diff --git a/Spigot-Server-Patches/0312-Add-some-Debug-to-Chunk-Entity-slices.patch b/Spigot-Server-Patches/0312-Add-some-Debug-to-Chunk-Entity-slices.patch index 6debcdcd81..1b3b6257b0 100644 --- a/Spigot-Server-Patches/0312-Add-some-Debug-to-Chunk-Entity-slices.patch +++ b/Spigot-Server-Patches/0312-Add-some-Debug-to-Chunk-Entity-slices.patch @@ -1,4 +1,4 @@ -From a0fd8d4331087f2561345829c3ce613fe3cfbef2 Mon Sep 17 00:00:00 2001 +From 7d7344bc52e21efffa59a82f694fbd085c43a41f Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 23 Jul 2018 22:44:23 -0400 Subject: [PATCH] Add some Debug to Chunk Entity slices @@ -9,7 +9,7 @@ This should hopefully avoid duplicate entities ever being created if the entity was to end up in 2 different chunk slices diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 982ab51f62..14e98fcedf 100644 +index 92a3c8b5d7..6d4b9adff0 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -712,8 +712,33 @@ public class Chunk implements IChunkAccess { @@ -60,7 +60,7 @@ index 982ab51f62..14e98fcedf 100644 this.markDirty(); if (entity instanceof EntityItem) { itemCounts[i]--; -@@ -957,6 +988,7 @@ public class Chunk implements IChunkAccess { +@@ -968,6 +999,7 @@ public class Chunk implements IChunkAccess { } // Spigot End entity.setCurrentChunk(null); // Paper @@ -69,7 +69,7 @@ index 982ab51f62..14e98fcedf 100644 // Do not pass along players, as doing so can get them stuck outside of time. // (which for example disables inventory icon updates and prevents block breaking) diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index afbd846aad..181a9b7546 100644 +index fdd9c1f219..3faa28593e 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -63,6 +63,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke diff --git a/Spigot-Server-Patches/0320-Always-process-chunk-registration-after-moving.patch b/Spigot-Server-Patches/0320-Always-process-chunk-registration-after-moving.patch index 77b3fd27ef..642a321316 100644 --- a/Spigot-Server-Patches/0320-Always-process-chunk-registration-after-moving.patch +++ b/Spigot-Server-Patches/0320-Always-process-chunk-registration-after-moving.patch @@ -1,4 +1,4 @@ -From 51494b5e21263e67c2a6dd97a403232b66cf8511 Mon Sep 17 00:00:00 2001 +From ce2e7e90417950771a00802c97dd23db3dd314a7 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 29 Jul 2018 11:58:05 -0400 Subject: [PATCH] Always process chunk registration after moving @@ -7,10 +7,10 @@ This will help guarantee that entities are always in the chunk that they are currently located at. diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 3a6ada187b..91408ce597 100644 +index 5c2e80d6ba..037e6ebae8 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -338,6 +338,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -339,6 +339,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.locX = d0; this.locY = d1; this.locZ = d2; @@ -18,7 +18,7 @@ index 3a6ada187b..91408ce597 100644 float f = this.width / 2.0F; float f1 = this.length; -@@ -936,6 +937,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -937,6 +938,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.locX = (axisalignedbb.a + axisalignedbb.d) / 2.0D; this.locY = axisalignedbb.b; this.locZ = (axisalignedbb.c + axisalignedbb.f) / 2.0D; diff --git a/Spigot-Server-Patches/0321-Process-Chunk.addEntities-before-chunkLoadEvent.patch b/Spigot-Server-Patches/0321-Process-Chunk.addEntities-before-chunkLoadEvent.patch deleted file mode 100644 index 85e24f0356..0000000000 --- a/Spigot-Server-Patches/0321-Process-Chunk.addEntities-before-chunkLoadEvent.patch +++ /dev/null @@ -1,71 +0,0 @@ -From a02a1b3c9ef37a959c88e9872d74b9c51ff589b4 Mon Sep 17 00:00:00 2001 -From: Aikar -Date: Sun, 29 Jul 2018 16:56:48 -0400 -Subject: [PATCH] Process Chunk.addEntities before chunkLoadEvent - -1.13 undesirably changed behavior here that chunk load event fired -before the entities were added to the world. - -This means any plugin that spawns entities in chunk load event -causes the entities to be registered to the chunk, and then -added to the world twice. - -Moves Entity Add to World to be done anytime a chunk is -registered to the Chunk Map, and ignore other calls. - -diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 4e32ae7db6..f0098e910a 100644 ---- a/src/main/java/net/minecraft/server/Chunk.java -+++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -897,7 +897,8 @@ public class Chunk implements IChunkAccess { - - } - -- public void addEntities() { -+ public void addEntities() { } // Paper - do nothing if anything calls this, we call it properly during ChunkMap.put -+ public void addEntitiesToWorld() { // Paper - rename to ensure noone else calls it - this.j = true; - this.world.b(this.tileEntities.values()); - List[] aentityslice = this.entitySlices; // Spigot -diff --git a/src/main/java/net/minecraft/server/ChunkMap.java b/src/main/java/net/minecraft/server/ChunkMap.java -index 5757aa80f3..c6cedba96e 100644 ---- a/src/main/java/net/minecraft/server/ChunkMap.java -+++ b/src/main/java/net/minecraft/server/ChunkMap.java -@@ -31,6 +31,7 @@ public class ChunkMap extends Long2ObjectOpenHashMap { - } - } - } -+ chunk.addEntitiesToWorld(); // Paper - call before ChunkLoadEvent to maintain pre 1.13 order, otherwise CLE can manipulate the chunks entities - - org.bukkit.Server server = chunk.world.getServer(); - if (server != null) { -diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index bd52bf6561..e27e952a1b 100644 ---- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java -+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -@@ -154,8 +154,8 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { - if (data != null) { - Chunk chunk = (Chunk) data[0]; - NBTTagCompound nbttagcompound = (NBTTagCompound) data[1]; -- consumer.accept(chunk); - this.loadEntities(nbttagcompound.getCompound("Level"), chunk); -+ consumer.accept(chunk); // Paper - call AFTER entities are loaded - return chunk; - } - -diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index ece1871294..4fc3c2c354 100644 ---- a/src/main/java/net/minecraft/server/World.java -+++ b/src/main/java/net/minecraft/server/World.java -@@ -2464,7 +2464,7 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose - while (iterator.hasNext()) { - Entity entity = (Entity) iterator.next(); - -- if (entity == null) { -+ if (entity == null || entity.valid) { // Paper - if already added, skip (shouldn't happen, but safety) - continue; - } - this.entityList.add(entity); --- -2.18.0 - diff --git a/Spigot-Server-Patches/0322-Provide-option-to-use-a-versioned-world-folder-for-t.patch b/Spigot-Server-Patches/0321-Provide-option-to-use-a-versioned-world-folder-for-t.patch similarity index 99% rename from Spigot-Server-Patches/0322-Provide-option-to-use-a-versioned-world-folder-for-t.patch rename to Spigot-Server-Patches/0321-Provide-option-to-use-a-versioned-world-folder-for-t.patch index e64975dffe..70409ffa75 100644 --- a/Spigot-Server-Patches/0322-Provide-option-to-use-a-versioned-world-folder-for-t.patch +++ b/Spigot-Server-Patches/0321-Provide-option-to-use-a-versioned-world-folder-for-t.patch @@ -1,4 +1,4 @@ -From a7a1dcd531c2215064128d003ab61949e4155ee1 Mon Sep 17 00:00:00 2001 +From af897c1497575fd6fd1f25b0bc644264f4d7127f Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 29 Jul 2018 15:48:50 -0400 Subject: [PATCH] Provide option to use a versioned world folder for testing @@ -59,7 +59,7 @@ index 5a17ce3d22..f7ece47ed9 100644 + } } diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index e27e952a1b..bf79865105 100644 +index bd52bf6561..54840851ba 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java @@ -55,8 +55,56 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { diff --git a/Spigot-Server-Patches/0323-MC-111480-Start-Entity-ID-s-at-1.patch b/Spigot-Server-Patches/0322-MC-111480-Start-Entity-ID-s-at-1.patch similarity index 91% rename from Spigot-Server-Patches/0323-MC-111480-Start-Entity-ID-s-at-1.patch rename to Spigot-Server-Patches/0322-MC-111480-Start-Entity-ID-s-at-1.patch index 409d2b1e6d..19a098bef8 100644 --- a/Spigot-Server-Patches/0323-MC-111480-Start-Entity-ID-s-at-1.patch +++ b/Spigot-Server-Patches/0322-MC-111480-Start-Entity-ID-s-at-1.patch @@ -1,4 +1,4 @@ -From dd9e73724d7d3039bd0da34f3588109242df8435 Mon Sep 17 00:00:00 2001 +From 54ed0870dbbf50b0bbfdf73c5738a2ed82fb6fe7 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 29 Jul 2018 22:58:47 -0400 Subject: [PATCH] MC-111480: Start Entity ID's at 1 @@ -7,7 +7,7 @@ DataWatchers that store Entity ID's treat 0 as special, and can break things such as Elytra Fireworks. diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 91408ce597..67df79e311 100644 +index 037e6ebae8..ac0af4695c 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -90,7 +90,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke diff --git a/Spigot-Server-Patches/0324-Implement-Expanded-ArmorStand-API.patch b/Spigot-Server-Patches/0323-Implement-Expanded-ArmorStand-API.patch similarity index 98% rename from Spigot-Server-Patches/0324-Implement-Expanded-ArmorStand-API.patch rename to Spigot-Server-Patches/0323-Implement-Expanded-ArmorStand-API.patch index 6752d6d211..455937889c 100644 --- a/Spigot-Server-Patches/0324-Implement-Expanded-ArmorStand-API.patch +++ b/Spigot-Server-Patches/0323-Implement-Expanded-ArmorStand-API.patch @@ -1,4 +1,4 @@ -From 73306253e6d50a22e18f0d4626caaa3504d5cd4e Mon Sep 17 00:00:00 2001 +From 977c05ac1ba9db6d8adbddf1e53bca3c26661a7d Mon Sep 17 00:00:00 2001 From: willies952002 Date: Thu, 26 Jul 2018 02:25:46 -0400 Subject: [PATCH] Implement Expanded ArmorStand API diff --git a/Spigot-Server-Patches/0325-AnvilDamageEvent.patch b/Spigot-Server-Patches/0324-AnvilDamageEvent.patch similarity index 96% rename from Spigot-Server-Patches/0325-AnvilDamageEvent.patch rename to Spigot-Server-Patches/0324-AnvilDamageEvent.patch index 1004499286..a5878bf5ed 100644 --- a/Spigot-Server-Patches/0325-AnvilDamageEvent.patch +++ b/Spigot-Server-Patches/0324-AnvilDamageEvent.patch @@ -1,4 +1,4 @@ -From 0d77d311b323dc6dbccc0b11fe6ad81bcdea832d Mon Sep 17 00:00:00 2001 +From 453d41b94e3ac15af479ff88fe2431cd2b46adda Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 20 Jul 2018 23:37:03 -0500 Subject: [PATCH] AnvilDamageEvent diff --git a/work/Bukkit b/work/Bukkit index 949d53709b..cf6548b4fd 160000 --- a/work/Bukkit +++ b/work/Bukkit @@ -1 +1 @@ -Subproject commit 949d53709bae68956175c93f540f46e97b427422 +Subproject commit cf6548b4fd81f5be6a243eaf00da815c76611495 diff --git a/work/CraftBukkit b/work/CraftBukkit index bef764020e..3f9d7f7770 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit bef764020e65646765a0d2af8a2a2638c75c480a +Subproject commit 3f9d7f7770c2c700ef1cc2e9568cfb253996eff8