diff --git a/Bukkit-Patches/0006-Add-Particle-API.patch b/Bukkit-Patches/0006-Add-Particle-API.patch index 654deea22..3d2321870 100644 --- a/Bukkit-Patches/0006-Add-Particle-API.patch +++ b/Bukkit-Patches/0006-Add-Particle-API.patch @@ -1,11 +1,11 @@ -From 8dda3b718e25ff37aea6e807af0070d78a6d43a4 Mon Sep 17 00:00:00 2001 +From e0d0f0c7b1047c107d22f2c630c6e697e28b007a Mon Sep 17 00:00:00 2001 From: md_5 Date: Sun, 2 Jun 2013 15:57:09 +1000 Subject: [PATCH] Add Particle API diff --git a/src/main/java/org/bukkit/Effect.java b/src/main/java/org/bukkit/Effect.java -index 2474a2d..37f29e2 100644 +index fe29e1c..f28fecd 100644 --- a/src/main/java/org/bukkit/Effect.java +++ b/src/main/java/org/bukkit/Effect.java @@ -5,6 +5,7 @@ import java.util.Map; @@ -271,10 +271,10 @@ index 2474a2d..37f29e2 100644 + public enum Type {SOUND, VISUAL, PARTICLE} } diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index 5cc1fec..5ce8f05 100644 +index 58f4431..ec6a3a5 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -1159,6 +1159,56 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -1173,6 +1173,56 @@ public interface World extends PluginMessageRecipient, Metadatable { */ public boolean isGameRule(String rule); diff --git a/Bukkit-Patches/0020-Silenceable-Lightning-API.patch b/Bukkit-Patches/0020-Silenceable-Lightning-API.patch index afe4bbab4..e5b938360 100644 --- a/Bukkit-Patches/0020-Silenceable-Lightning-API.patch +++ b/Bukkit-Patches/0020-Silenceable-Lightning-API.patch @@ -1,14 +1,14 @@ -From aa93d11f7bf75114678d117ff6716ac053fbfa7a Mon Sep 17 00:00:00 2001 +From 8ab299c1bea363c835338a258edd9685c25d2d59 Mon Sep 17 00:00:00 2001 From: drXor Date: Sun, 23 Feb 2014 16:16:29 -0400 Subject: [PATCH] Silenceable Lightning API diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index 5ce8f05..4125633 100644 +index ec6a3a5..bafba90 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -1204,6 +1204,30 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -1218,6 +1218,30 @@ public interface World extends PluginMessageRecipient, Metadatable { { throw new UnsupportedOperationException( "Not supported yet." ); } diff --git a/CraftBukkit-Patches/0002-Skeleton-API-Implementations.patch b/CraftBukkit-Patches/0002-Skeleton-API-Implementations.patch index 53e160ca4..e94ad8eee 100644 --- a/CraftBukkit-Patches/0002-Skeleton-API-Implementations.patch +++ b/CraftBukkit-Patches/0002-Skeleton-API-Implementations.patch @@ -1,4 +1,4 @@ -From 365c56c933162839fb5c704ca93fa07f0ef3bea8 Mon Sep 17 00:00:00 2001 +From e3469d0a9e3751ba2c72e62022d2749a40312dd5 Mon Sep 17 00:00:00 2001 From: md_5 Date: Sun, 2 Jun 2013 15:10:56 +1000 Subject: [PATCH] Skeleton API Implementations @@ -25,10 +25,10 @@ index d330226..6b37266 100644 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 7023979..064571b 100644 +index f22885f..2d8edf6 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1451,4 +1451,14 @@ public class CraftWorld implements World { +@@ -1462,4 +1462,14 @@ public class CraftWorld implements World { cps.queueUnload(chunk.locX, chunk.locZ); } } @@ -104,7 +104,7 @@ index 64e346d..243e8e5 100644 + // Spigot end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 0f9eeb9..1c41902 100644 +index 303da2d..01ba89f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1402,4 +1402,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/CraftBukkit-Patches/0007-Merge-tweaks-and-configuration.patch b/CraftBukkit-Patches/0007-Merge-tweaks-and-configuration.patch index edc5e7850..61b488bfb 100644 --- a/CraftBukkit-Patches/0007-Merge-tweaks-and-configuration.patch +++ b/CraftBukkit-Patches/0007-Merge-tweaks-and-configuration.patch @@ -1,4 +1,4 @@ -From 53735167b867b6452097a69ee6633b6202e3d2b5 Mon Sep 17 00:00:00 2001 +From e96dfe4a2034662ef8c10920a9e2bfec4466bf8c Mon Sep 17 00:00:00 2001 From: md_5 Date: Sat, 23 Mar 2013 09:46:33 +1100 Subject: [PATCH] Merge tweaks and configuration @@ -43,10 +43,10 @@ index 6009cac..7ea1150 100644 } } else { diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index fa104d1..05175e1 100644 +index c94fbb6..1ee65dd 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -901,6 +901,23 @@ public abstract class World implements IBlockAccess { +@@ -927,6 +927,23 @@ public abstract class World implements IBlockAccess { // Not all projectiles extend EntityProjectile, so check for Bukkit interface instead event = CraftEventFactory.callProjectileLaunchEvent(entity); } diff --git a/CraftBukkit-Patches/0008-Async-Operation-Catching.patch b/CraftBukkit-Patches/0008-Async-Operation-Catching.patch index f3405ae58..395aa6de9 100644 --- a/CraftBukkit-Patches/0008-Async-Operation-Catching.patch +++ b/CraftBukkit-Patches/0008-Async-Operation-Catching.patch @@ -1,4 +1,4 @@ -From 31fcd4d94fe479ee05cb705dc715d59a94ae2dba Mon Sep 17 00:00:00 2001 +From db2dbec6046f1c31ee87ae128ace8c0ffeaf30ce Mon Sep 17 00:00:00 2001 From: md_5 Date: Tue, 25 Mar 2014 16:10:01 +1100 Subject: [PATCH] Async Operation Catching @@ -78,10 +78,10 @@ index 8b38bd2..f8570a8 100644 this.trackedPlayers.remove(entityplayer); this.tracker.c(entityplayer); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 05175e1..c5c7503 100644 +index 1ee65dd..79b0c43 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -871,6 +871,7 @@ public abstract class World implements IBlockAccess { +@@ -897,6 +897,7 @@ public abstract class World implements IBlockAccess { } public boolean addEntity(Entity entity, SpawnReason spawnReason) { // Changed signature, added SpawnReason @@ -89,7 +89,7 @@ index 05175e1..c5c7503 100644 if (entity == null) return false; // CraftBukkit end int i = MathHelper.floor(entity.locX / 16.0D); -@@ -977,6 +978,7 @@ public abstract class World implements IBlockAccess { +@@ -1003,6 +1004,7 @@ public abstract class World implements IBlockAccess { } public void removeEntity(Entity entity) { @@ -97,7 +97,7 @@ index 05175e1..c5c7503 100644 entity.b(false); entity.die(); if (entity instanceof EntityHuman) { -@@ -2420,6 +2422,7 @@ public abstract class World implements IBlockAccess { +@@ -2446,6 +2448,7 @@ public abstract class World implements IBlockAccess { } public void a(Collection collection) { @@ -106,7 +106,7 @@ index 05175e1..c5c7503 100644 // this.entityList.addAll(collection); Iterator iterator = collection.iterator(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 3777f40..eedf49b 100644 +index 2d8edf6..3f530c8 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -166,6 +166,7 @@ public class CraftWorld implements World { @@ -134,7 +134,7 @@ index 3777f40..eedf49b 100644 if (generate) { // Use the default variant of loadChunk when generate == true. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 2c3ee37..cd51b41 100644 +index 01ba89f..e93cedb 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -211,6 +211,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/CraftBukkit-Patches/0010-Spigot-Timings.patch b/CraftBukkit-Patches/0010-Spigot-Timings.patch index b056f2249..4648778e4 100644 --- a/CraftBukkit-Patches/0010-Spigot-Timings.patch +++ b/CraftBukkit-Patches/0010-Spigot-Timings.patch @@ -1,4 +1,4 @@ -From a5e080be0b23f8bfacc9d1405d8161ca731f36c0 Mon Sep 17 00:00:00 2001 +From 200f01125c593135d7f2989feb36dda0ef947d0f Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 10 Jan 2013 00:18:11 -0500 Subject: [PATCH] Spigot Timings @@ -407,7 +407,7 @@ index baf1d73..8bbdc11 100644 private static Map> f = Maps.newHashMap(); private static Map, 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 d8ddc43..7fb34e3 100644 +index 79b0c43..7e8092f 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -18,6 +18,7 @@ import com.google.common.collect.Maps; @@ -427,15 +427,15 @@ index d8ddc43..7fb34e3 100644 public CraftWorld getWorld() { return this.world; } -@@ -134,6 +137,7 @@ public abstract class World implements IBlockAccess { - this.N.world = (WorldServer) this; +@@ -160,6 +163,7 @@ public abstract class World implements IBlockAccess { + }); this.getServer().addWorld(this.world); // CraftBukkit end + timings = new SpigotTimings.WorldTimingsHandler(this); // Spigot - code below can generate new world and access timings } public World b() { -@@ -1306,6 +1310,7 @@ public abstract class World implements IBlockAccess { +@@ -1332,6 +1336,7 @@ public abstract class World implements IBlockAccess { CrashReportSystemDetails crashreportsystemdetails1; CrashReport crashreport1; @@ -443,7 +443,7 @@ index d8ddc43..7fb34e3 100644 // CraftBukkit start - Use field for loop variable for (this.tickPosition = 0; this.tickPosition < this.entityList.size(); ++this.tickPosition) { entity = (Entity) this.entityList.get(this.tickPosition); -@@ -1323,7 +1328,9 @@ public abstract class World implements IBlockAccess { +@@ -1349,7 +1354,9 @@ public abstract class World implements IBlockAccess { this.methodProfiler.a("tick"); if (!entity.dead && !(entity instanceof EntityPlayer)) { try { @@ -453,7 +453,7 @@ index d8ddc43..7fb34e3 100644 } catch (Throwable throwable1) { crashreport1 = CrashReport.a(throwable1, "Ticking entity"); crashreportsystemdetails1 = crashreport1.a("Entity being ticked"); -@@ -1349,6 +1356,7 @@ public abstract class World implements IBlockAccess { +@@ -1375,6 +1382,7 @@ public abstract class World implements IBlockAccess { this.methodProfiler.b(); } @@ -461,7 +461,7 @@ index d8ddc43..7fb34e3 100644 this.methodProfiler.c("blockEntities"); this.M = true; // CraftBukkit start - From below, clean up tile entities before ticking them -@@ -1369,6 +1377,7 @@ public abstract class World implements IBlockAccess { +@@ -1395,6 +1403,7 @@ public abstract class World implements IBlockAccess { if (this.isLoaded(blockposition) && this.N.a(blockposition)) { try { this.methodProfiler.a(tileentity.getClass().getSimpleName()); @@ -469,7 +469,7 @@ index d8ddc43..7fb34e3 100644 ((ITickable) tileentity).c(); this.methodProfiler.b(); } catch (Throwable throwable2) { -@@ -1377,6 +1386,11 @@ public abstract class World implements IBlockAccess { +@@ -1403,6 +1412,11 @@ public abstract class World implements IBlockAccess { tileentity.a(crashreportsystemdetails1); throw new ReportedException(crashreport1); } @@ -481,7 +481,7 @@ index d8ddc43..7fb34e3 100644 } } -@@ -1389,6 +1403,8 @@ public abstract class World implements IBlockAccess { +@@ -1415,6 +1429,8 @@ public abstract class World implements IBlockAccess { } } @@ -490,7 +490,7 @@ index d8ddc43..7fb34e3 100644 this.M = false; /* CraftBukkit start - Moved up if (!this.tileEntityListUnload.isEmpty()) { -@@ -1423,6 +1439,7 @@ public abstract class World implements IBlockAccess { +@@ -1449,6 +1465,7 @@ public abstract class World implements IBlockAccess { this.b.clear(); } @@ -498,7 +498,7 @@ index d8ddc43..7fb34e3 100644 this.methodProfiler.b(); this.methodProfiler.b(); } -@@ -1466,6 +1483,7 @@ public abstract class World implements IBlockAccess { +@@ -1492,6 +1509,7 @@ public abstract class World implements IBlockAccess { // CraftBukkit start - Use neighbor cache instead of looking up Chunk startingChunk = this.getChunkIfLoaded(i >> 4, j >> 4); if (!flag || (startingChunk != null && startingChunk.areNeighborsLoaded(2)) /* this.isAreaLoaded(i - b0, 0, j - b0, i + b0, 0, j + b0) */) { @@ -506,7 +506,7 @@ index d8ddc43..7fb34e3 100644 // CraftBukkit end entity.M = entity.locX; entity.N = entity.locY; -@@ -1533,6 +1551,7 @@ public abstract class World implements IBlockAccess { +@@ -1559,6 +1577,7 @@ public abstract class World implements IBlockAccess { } } @@ -586,7 +586,7 @@ index 91965c0..261b423 100644 public Spigot spigot() diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 9947f9c..83d228a 100644 +index 3f530c8..ea0e108 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -252,7 +252,9 @@ public class CraftWorld implements World { diff --git a/CraftBukkit-Patches/0012-Handle-Null-Tile-Entities.patch b/CraftBukkit-Patches/0012-Handle-Null-Tile-Entities.patch index 942513f5d..6a47b8633 100644 --- a/CraftBukkit-Patches/0012-Handle-Null-Tile-Entities.patch +++ b/CraftBukkit-Patches/0012-Handle-Null-Tile-Entities.patch @@ -1,14 +1,14 @@ -From 9976921598c758d4086bb6e29eaea4070c51e3c8 Mon Sep 17 00:00:00 2001 +From 2a1554b7745d3505ac5bc808320d8a9471ad0b45 Mon Sep 17 00:00:00 2001 From: md_5 Date: Sun, 3 Feb 2013 09:20:19 +1100 Subject: [PATCH] Handle Null Tile Entities diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 11e8de4..718ad04 100644 +index 7e8092f..59a7163 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -1370,6 +1370,13 @@ public abstract class World implements IBlockAccess { +@@ -1396,6 +1396,13 @@ public abstract class World implements IBlockAccess { while (iterator.hasNext()) { TileEntity tileentity = (TileEntity) iterator.next(); diff --git a/CraftBukkit-Patches/0014-Entity-Activation-Range.patch b/CraftBukkit-Patches/0014-Entity-Activation-Range.patch index 07c051164..4c971b725 100644 --- a/CraftBukkit-Patches/0014-Entity-Activation-Range.patch +++ b/CraftBukkit-Patches/0014-Entity-Activation-Range.patch @@ -1,4 +1,4 @@ -From 279f8e96072730a4c8b597d7d763cf54d61b5629 Mon Sep 17 00:00:00 2001 +From daa886a10a5fc3851ca4347802531ab6a5ccea5f Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 3 Feb 2013 05:10:21 -0500 Subject: [PATCH] Entity Activation Range @@ -186,10 +186,10 @@ index dc91f0a..36ef280 100644 public void Q() { this.damageEntity(DamageSource.OUT_OF_WORLD, Float.MAX_VALUE); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 718ad04..a6bd744 100644 +index 59a7163..e09ddf7 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -1310,6 +1310,7 @@ public abstract class World implements IBlockAccess { +@@ -1336,6 +1336,7 @@ public abstract class World implements IBlockAccess { CrashReportSystemDetails crashreportsystemdetails1; CrashReport crashreport1; @@ -197,7 +197,7 @@ index 718ad04..a6bd744 100644 timings.entityTick.startTiming(); // Spigot // CraftBukkit start - Use field for loop variable for (this.tickPosition = 0; this.tickPosition < this.entityList.size(); ++this.tickPosition) { -@@ -1487,9 +1488,11 @@ public abstract class World implements IBlockAccess { +@@ -1513,9 +1514,11 @@ public abstract class World implements IBlockAccess { int j = MathHelper.floor(entity.locZ); byte b0 = 32; diff --git a/CraftBukkit-Patches/0016-PlayerItemDamageEvent.patch b/CraftBukkit-Patches/0016-PlayerItemDamageEvent.patch index ed9ddfac7..1a2e8bcd0 100644 --- a/CraftBukkit-Patches/0016-PlayerItemDamageEvent.patch +++ b/CraftBukkit-Patches/0016-PlayerItemDamageEvent.patch @@ -1,14 +1,14 @@ -From 590274e16886d341216e4968fe93470b6a3ade9d Mon Sep 17 00:00:00 2001 +From 9f79aedb7c74ac76bbc9360b8a63b4fa0122313f Mon Sep 17 00:00:00 2001 From: md_5 Date: Mon, 4 Mar 2013 18:45:52 +1100 Subject: [PATCH] PlayerItemDamageEvent diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java -index c06bb0b..1f41f6d 100644 +index e659ac5..782ca57 100644 --- a/src/main/java/net/minecraft/server/ItemStack.java +++ b/src/main/java/net/minecraft/server/ItemStack.java -@@ -336,6 +336,11 @@ public final class ItemStack { +@@ -338,6 +338,11 @@ public final class ItemStack { } public boolean isDamaged(int i, Random random) { @@ -20,7 +20,7 @@ index c06bb0b..1f41f6d 100644 if (!this.e()) { return false; } else { -@@ -350,7 +355,16 @@ public final class ItemStack { +@@ -352,7 +357,16 @@ public final class ItemStack { } i -= k; @@ -38,7 +38,7 @@ index c06bb0b..1f41f6d 100644 return false; } } -@@ -363,7 +377,7 @@ public final class ItemStack { +@@ -365,7 +379,7 @@ public final class ItemStack { public void damage(int i, EntityLiving entityliving) { if (!(entityliving instanceof EntityHuman) || !((EntityHuman) entityliving).abilities.canInstantlyBuild) { if (this.e()) { diff --git a/CraftBukkit-Patches/0033-Prevent-Ghost-Players-Caused-by-Plugins.patch b/CraftBukkit-Patches/0033-Prevent-Ghost-Players-Caused-by-Plugins.patch index 3708d2546..0ccc18f5b 100644 --- a/CraftBukkit-Patches/0033-Prevent-Ghost-Players-Caused-by-Plugins.patch +++ b/CraftBukkit-Patches/0033-Prevent-Ghost-Players-Caused-by-Plugins.patch @@ -1,4 +1,4 @@ -From c35aebc816912e1af6268b831a0ee61a07a3339f Mon Sep 17 00:00:00 2001 +From 01836118052d7480962601f48cb275e7e512f223 Mon Sep 17 00:00:00 2001 From: Alex Ciuba Date: Tue, 11 Jun 2013 15:23:03 -0400 Subject: [PATCH] Prevent Ghost Players Caused by Plugins @@ -6,10 +6,10 @@ Subject: [PATCH] Prevent Ghost Players Caused by Plugins Check if the player is still connected after firing event. Fixes BUKKIT-4327 diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index b21a5b7..f878dfc 100644 +index e10e80d..0f56aee 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java -@@ -605,6 +605,11 @@ public abstract class PlayerList { +@@ -606,6 +606,11 @@ public abstract class PlayerList { Player respawnPlayer = cserver.getPlayer(entityplayer1); PlayerRespawnEvent respawnEvent = new PlayerRespawnEvent(respawnPlayer, location, isBedSpawn); cserver.getPluginManager().callEvent(respawnEvent); diff --git a/CraftBukkit-Patches/0053-Particle-API.patch b/CraftBukkit-Patches/0053-Particle-API.patch index b0e9112ec..5e95c1c00 100644 --- a/CraftBukkit-Patches/0053-Particle-API.patch +++ b/CraftBukkit-Patches/0053-Particle-API.patch @@ -1,4 +1,4 @@ -From 676559ff1621b188ff50dca42b5ec0a1e8e64e62 Mon Sep 17 00:00:00 2001 +From fea358954f913a997260ba7b3e1e0c65910379ac Mon Sep 17 00:00:00 2001 From: Thinkofdeath Date: Fri, 20 Dec 2013 21:36:06 +0000 Subject: [PATCH] Particle API @@ -19,7 +19,7 @@ index 7de0de5..13f9e9d 100644 datavalue = 0; } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 83d228a..29f6cff 100644 +index ea0e108..d53305e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -828,28 +828,18 @@ public class CraftWorld implements World { @@ -60,7 +60,7 @@ index 83d228a..29f6cff 100644 } public T spawn(Location location, Class clazz) throws IllegalArgumentException { -@@ -1459,6 +1449,70 @@ public class CraftWorld implements World { +@@ -1470,6 +1460,70 @@ public class CraftWorld implements World { // Spigot start private final Spigot spigot = new Spigot() { @@ -132,7 +132,7 @@ index 83d228a..29f6cff 100644 public Spigot spigot() diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 71d4ddc..e3ecd4d 100644 +index a90de6a..9ef1fc4 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -315,9 +315,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/CraftBukkit-Patches/0060-Fix-ItemStack-Unbreakable-Code.patch b/CraftBukkit-Patches/0060-Fix-ItemStack-Unbreakable-Code.patch index 6c1e9b4e3..523b099c2 100644 --- a/CraftBukkit-Patches/0060-Fix-ItemStack-Unbreakable-Code.patch +++ b/CraftBukkit-Patches/0060-Fix-ItemStack-Unbreakable-Code.patch @@ -1,14 +1,14 @@ -From a17c3d5a74dff88474c03a2acac242993d27a5e2 Mon Sep 17 00:00:00 2001 +From 61c54a8a1c06464bdb8bd07b5a0936157ab39813 Mon Sep 17 00:00:00 2001 From: md_5 Date: Fri, 10 Jan 2014 15:15:50 +1100 Subject: [PATCH] Fix ItemStack Unbreakable Code diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java -index 1f41f6d..e11dbef 100644 +index 782ca57..4a43208 100644 --- a/src/main/java/net/minecraft/server/ItemStack.java +++ b/src/main/java/net/minecraft/server/ItemStack.java -@@ -284,7 +284,13 @@ public final class ItemStack { +@@ -286,7 +286,13 @@ public final class ItemStack { } public boolean e() { diff --git a/CraftBukkit-Patches/0077-Implement-Silenceable-Lightning-API.patch b/CraftBukkit-Patches/0077-Implement-Silenceable-Lightning-API.patch index 5e0387688..796ad1f27 100644 --- a/CraftBukkit-Patches/0077-Implement-Silenceable-Lightning-API.patch +++ b/CraftBukkit-Patches/0077-Implement-Silenceable-Lightning-API.patch @@ -1,4 +1,4 @@ -From b723699d1ae2408c45f98353648ebbdec734a360 Mon Sep 17 00:00:00 2001 +From 78e5a8c00ab593f27529ee9be6793ece2c62af38 Mon Sep 17 00:00:00 2001 From: drXor Date: Sun, 23 Feb 2014 16:16:59 -0400 Subject: [PATCH] Implement Silenceable Lightning API @@ -40,10 +40,10 @@ index 35a0bdc..e507302 100644 // this.world.a((EntityHuman) null, this.locX, this.locY, this.locZ, SoundEffects.dc, SoundCategory.d, 10000.0F, 0.8F + this.random.nextFloat() * 0.2F); float pitch = 0.8F + this.random.nextFloat() * 0.2F; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 2063185..2b3569d 100644 +index ee4b543..66073d9 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1518,6 +1518,22 @@ public class CraftWorld implements World { +@@ -1529,6 +1529,22 @@ public class CraftWorld implements World { { CraftWorld.this.playEffect( location, effect, 0 ); } diff --git a/CraftBukkit-Patches/0080-Guard-Entity-List.patch b/CraftBukkit-Patches/0080-Guard-Entity-List.patch index 61164d855..506b9d937 100644 --- a/CraftBukkit-Patches/0080-Guard-Entity-List.patch +++ b/CraftBukkit-Patches/0080-Guard-Entity-List.patch @@ -1,11 +1,11 @@ -From 6c6bd2c67ce8837dcb7b21a2468a0e5e70b9531d Mon Sep 17 00:00:00 2001 +From cc904e78d6ac8ef143d1b4adacc5b7058af19f72 Mon Sep 17 00:00:00 2001 From: md_5 Date: Mon, 10 Mar 2014 09:03:28 +1100 Subject: [PATCH] Guard Entity List diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index a6bd744..2cc87d0 100644 +index e09ddf7..d9da020 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -33,7 +33,32 @@ public abstract class World implements IBlockAccess { @@ -50,7 +50,7 @@ index a6bd744..2cc87d0 100644 public CraftWorld getWorld() { return this.world; -@@ -1312,6 +1338,7 @@ public abstract class World implements IBlockAccess { +@@ -1338,6 +1364,7 @@ public abstract class World implements IBlockAccess { org.spigotmc.ActivationRange.activateEntities(this); // Spigot timings.entityTick.startTiming(); // Spigot @@ -58,7 +58,7 @@ index a6bd744..2cc87d0 100644 // CraftBukkit start - Use field for loop variable for (this.tickPosition = 0; this.tickPosition < this.entityList.size(); ++this.tickPosition) { entity = (Entity) this.entityList.get(this.tickPosition); -@@ -1350,12 +1377,15 @@ public abstract class World implements IBlockAccess { +@@ -1376,12 +1403,15 @@ public abstract class World implements IBlockAccess { this.getChunkAt(j, l).b(entity); } diff --git a/CraftBukkit-Patches/0081-Fix-ConcurrentModificationException-while-being-idle.patch b/CraftBukkit-Patches/0081-Fix-ConcurrentModificationException-while-being-idle.patch index 232b540d0..70d0b0ef3 100644 --- a/CraftBukkit-Patches/0081-Fix-ConcurrentModificationException-while-being-idle.patch +++ b/CraftBukkit-Patches/0081-Fix-ConcurrentModificationException-while-being-idle.patch @@ -1,4 +1,4 @@ -From aad78355beec91b7347c5a3efe52e2cb987ce175 Mon Sep 17 00:00:00 2001 +From 660e6ebd7b74506ecaf13fbbfe38eebf7fafa49c Mon Sep 17 00:00:00 2001 From: Thinkofdeath Date: Tue, 14 Jan 2014 20:11:25 +0000 Subject: [PATCH] Fix ConcurrentModificationException while being idle kicked @@ -6,7 +6,7 @@ Subject: [PATCH] Fix ConcurrentModificationException while being idle kicked diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 2cc87d0..76c5f4c 100644 +index d9da020..7765812 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -1,4 +1,4 @@ @@ -15,7 +15,7 @@ index 2cc87d0..76c5f4c 100644 import com.google.common.base.Function; import com.google.common.base.Objects; -@@ -1016,6 +1016,7 @@ public abstract class World implements IBlockAccess { +@@ -1042,6 +1042,7 @@ public abstract class World implements IBlockAccess { this.everyoneSleeping(); } @@ -23,7 +23,7 @@ index 2cc87d0..76c5f4c 100644 int i = entity.ab; int j = entity.ad; -@@ -1032,6 +1033,7 @@ public abstract class World implements IBlockAccess { +@@ -1058,6 +1059,7 @@ public abstract class World implements IBlockAccess { this.entityList.remove(index); } // CraftBukkit end diff --git a/CraftBukkit-Patches/0101-Prevent-NoClassDefError-crash-and-notify-on-crash.patch b/CraftBukkit-Patches/0101-Prevent-NoClassDefError-crash-and-notify-on-crash.patch index 79970343f..f62972e7e 100644 --- a/CraftBukkit-Patches/0101-Prevent-NoClassDefError-crash-and-notify-on-crash.patch +++ b/CraftBukkit-Patches/0101-Prevent-NoClassDefError-crash-and-notify-on-crash.patch @@ -1,11 +1,11 @@ -From 095e80acaed0801901e5f0e7029786bf111830fe Mon Sep 17 00:00:00 2001 +From bcc01c9b44c796ef04203f34f2bcbe0e4f5c29ce Mon Sep 17 00:00:00 2001 From: David Date: Mon, 21 Apr 2014 12:43:08 +0100 Subject: [PATCH] Prevent NoClassDefError crash and notify on crash diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 76c5f4c..a085719 100644 +index 7765812..2257f0f 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -127,6 +127,8 @@ public abstract class World implements IBlockAccess { @@ -17,7 +17,7 @@ index 76c5f4c..a085719 100644 public CraftWorld getWorld() { return this.world; -@@ -510,6 +512,9 @@ public abstract class World implements IBlockAccess { +@@ -536,6 +538,9 @@ public abstract class World implements IBlockAccess { } // CraftBukkit end iblockdata.getBlock().doPhysics(this, blockposition, iblockdata, block); diff --git a/CraftBukkit-Patches/0123-Fix-Null-Tile-Entity-Worlds.patch b/CraftBukkit-Patches/0123-Fix-Null-Tile-Entity-Worlds.patch index b52f694e2..112c877b4 100644 --- a/CraftBukkit-Patches/0123-Fix-Null-Tile-Entity-Worlds.patch +++ b/CraftBukkit-Patches/0123-Fix-Null-Tile-Entity-Worlds.patch @@ -1,14 +1,14 @@ -From 13b7df85cb3e2d7e9f1b6c819d188c3579097781 Mon Sep 17 00:00:00 2001 +From 81a1e50a433e6c9b913b09792b693fe72bb98eb1 Mon Sep 17 00:00:00 2001 From: "Evan A. Haskell" Date: Thu, 26 Jun 2014 18:37:29 -0400 Subject: [PATCH] Fix Null Tile Entity Worlds diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index a085719..3ffb6da 100644 +index 2257f0f..d7847c5 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -1938,6 +1938,7 @@ public abstract class World implements IBlockAccess { +@@ -1964,6 +1964,7 @@ public abstract class World implements IBlockAccess { } } diff --git a/CraftBukkit-Patches/0129-Plug-WorldMap-Memory-Leak.patch b/CraftBukkit-Patches/0129-Plug-WorldMap-Memory-Leak.patch index 1013a7e48..c77a2ff50 100644 --- a/CraftBukkit-Patches/0129-Plug-WorldMap-Memory-Leak.patch +++ b/CraftBukkit-Patches/0129-Plug-WorldMap-Memory-Leak.patch @@ -1,4 +1,4 @@ -From a93dbd34267517151430f2dbab273a5ae3b49802 Mon Sep 17 00:00:00 2001 +From 1fa81343f01c5002f45dbed000823fc7942d650f Mon Sep 17 00:00:00 2001 From: md_5 Date: Fri, 8 Aug 2014 19:57:03 +1000 Subject: [PATCH] Plug WorldMap Memory Leak @@ -18,10 +18,10 @@ index c29e3f7..6f013eb 100644 public PersistentCollection(IDataManager idatamanager) { diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 3ffb6da..d09942c 100644 +index d7847c5..8ad0aa2 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -1006,6 +1006,23 @@ public abstract class World implements IBlockAccess { +@@ -1032,6 +1032,23 @@ public abstract class World implements IBlockAccess { entity.die(); if (entity instanceof EntityHuman) { this.players.remove(entity); diff --git a/CraftBukkit-Patches/0141-Allow-Capping-Tile-Entity-Tick-Time.patch b/CraftBukkit-Patches/0141-Allow-Capping-Tile-Entity-Tick-Time.patch index 58d908721..7a521ea02 100644 --- a/CraftBukkit-Patches/0141-Allow-Capping-Tile-Entity-Tick-Time.patch +++ b/CraftBukkit-Patches/0141-Allow-Capping-Tile-Entity-Tick-Time.patch @@ -1,4 +1,4 @@ -From 5392536861c32dcda8377df2c3b3c37ce48955bb Mon Sep 17 00:00:00 2001 +From 48d0b867419f0e56e63caa672b460fcffcba4761 Mon Sep 17 00:00:00 2001 From: md_5 Date: Fri, 20 Feb 2015 21:39:31 +1100 Subject: [PATCH] Allow Capping (Tile)Entity Tick Time. @@ -10,7 +10,7 @@ For tiles there is very little tradeoff for this option, as tile ticks are based This feature was commisioned by Chunkr. diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index d09942c..048d17d 100644 +index 8ad0aa2..b5fa1a2 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -129,6 +129,9 @@ public abstract class World implements IBlockAccess { @@ -23,7 +23,7 @@ index d09942c..048d17d 100644 public CraftWorld getWorld() { return this.world; -@@ -166,6 +169,8 @@ public abstract class World implements IBlockAccess { +@@ -192,6 +195,8 @@ public abstract class World implements IBlockAccess { this.getServer().addWorld(this.world); // CraftBukkit end timings = new SpigotTimings.WorldTimingsHandler(this); // Spigot - code below can generate new world and access timings @@ -32,7 +32,7 @@ index d09942c..048d17d 100644 } public World b() { -@@ -1364,7 +1369,12 @@ public abstract class World implements IBlockAccess { +@@ -1390,7 +1395,12 @@ public abstract class World implements IBlockAccess { timings.entityTick.startTiming(); // Spigot guardEntityList = true; // Spigot // CraftBukkit start - Use field for loop variable @@ -46,7 +46,7 @@ index d09942c..048d17d 100644 entity = (Entity) this.entityList.get(this.tickPosition); // CraftBukkit end Entity entity1 = entity.by(); -@@ -1421,14 +1431,20 @@ public abstract class World implements IBlockAccess { +@@ -1447,14 +1457,20 @@ public abstract class World implements IBlockAccess { this.tileEntityListUnload.clear(); } // CraftBukkit end @@ -71,7 +71,7 @@ index d09942c..048d17d 100644 continue; } // Spigot end -@@ -1457,7 +1473,8 @@ public abstract class World implements IBlockAccess { +@@ -1483,7 +1499,8 @@ public abstract class World implements IBlockAccess { } if (tileentity.x()) { diff --git a/CraftBukkit-Patches/0142-Use-FastMatches-for-ItemStack-Dirty-Check.patch b/CraftBukkit-Patches/0142-Use-FastMatches-for-ItemStack-Dirty-Check.patch index 4a0ca0381..019c2186f 100644 --- a/CraftBukkit-Patches/0142-Use-FastMatches-for-ItemStack-Dirty-Check.patch +++ b/CraftBukkit-Patches/0142-Use-FastMatches-for-ItemStack-Dirty-Check.patch @@ -1,4 +1,4 @@ -From 73f97633e63c73fac4b4bb32d4c7bfa3535afa9e Mon Sep 17 00:00:00 2001 +From 26db98024cc859fced8580668b483410732d6dc8 Mon Sep 17 00:00:00 2001 From: md_5 Date: Sun, 22 Feb 2015 12:27:40 +1100 Subject: [PATCH] Use FastMatches for ItemStack Dirty Check @@ -35,10 +35,10 @@ index 1d6ec51..000b4db 100644 } diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java -index e11dbef..4a2e0df 100644 +index 4a43208..d9d61ef 100644 --- a/src/main/java/net/minecraft/server/ItemStack.java +++ b/src/main/java/net/minecraft/server/ItemStack.java -@@ -449,6 +449,18 @@ public final class ItemStack { +@@ -451,6 +451,18 @@ public final class ItemStack { return itemstack == null && itemstack1 == null ? true : (itemstack != null && itemstack1 != null ? (itemstack.tag == null && itemstack1.tag != null ? false : itemstack.tag == null || itemstack.tag.equals(itemstack1.tag)) : false); } diff --git a/CraftBukkit-Patches/0145-Use-Map-for-getPlayer-String-lookup.patch b/CraftBukkit-Patches/0145-Use-Map-for-getPlayer-String-lookup.patch index 9660a1b3d..b8a204082 100644 --- a/CraftBukkit-Patches/0145-Use-Map-for-getPlayer-String-lookup.patch +++ b/CraftBukkit-Patches/0145-Use-Map-for-getPlayer-String-lookup.patch @@ -1,11 +1,11 @@ -From 9b75f018a3dccb9510ac120fda821a1b64e3d0b1 Mon Sep 17 00:00:00 2001 +From bf2727ee6118aedf675620726d68ff933bd0c400 Mon Sep 17 00:00:00 2001 From: md_5 Date: Mon, 13 Jul 2015 19:05:15 +1000 Subject: [PATCH] Use Map for getPlayer(String) lookup. diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 6eb509c..50add77 100644 +index 08c7e50..6fda4b7 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -65,6 +65,7 @@ public abstract class PlayerList { @@ -32,7 +32,7 @@ index 6eb509c..50add77 100644 UUID uuid = entityplayer.getUniqueID(); EntityPlayer entityplayer1 = (EntityPlayer) this.j.get(uuid); -@@ -556,6 +559,7 @@ public abstract class PlayerList { +@@ -557,6 +560,7 @@ public abstract class PlayerList { // entityplayer.x().getTracker().untrackEntity(entityplayer); // CraftBukkit entityplayer.x().getPlayerChunkMap().removePlayer(entityplayer); this.players.remove(entityplayer); @@ -40,15 +40,15 @@ index 6eb509c..50add77 100644 this.server.getWorldServer(entityplayer.dimension).removeEntity(entityplayer); BlockPosition blockposition = entityplayer.getBed(); boolean flag1 = entityplayer.isRespawnForced(); -@@ -660,6 +664,7 @@ public abstract class PlayerList { +@@ -661,6 +665,7 @@ public abstract class PlayerList { worldserver.getPlayerChunkMap().addPlayer(entityplayer1); worldserver.addEntity(entityplayer1); this.players.add(entityplayer1); + this.playersByName.put(entityplayer1.getName(), entityplayer1); // Spigot this.j.put(entityplayer1.getUniqueID(), entityplayer1); } - // Added from changeDimension -@@ -1130,19 +1135,7 @@ public abstract class PlayerList { + entityplayer1.syncInventory(); +@@ -1129,19 +1134,7 @@ public abstract class PlayerList { } public EntityPlayer getPlayer(String s) {