diff --git a/Spigot-Server-Patches/0003-MC-Dev-fixes.patch b/Spigot-Server-Patches/0003-MC-Dev-fixes.patch index 90d612632..9d1f257a9 100644 --- a/Spigot-Server-Patches/0003-MC-Dev-fixes.patch +++ b/Spigot-Server-Patches/0003-MC-Dev-fixes.patch @@ -1,11 +1,11 @@ -From 921ea44be515f7dd627904bfa4d047ba879b981c Mon Sep 17 00:00:00 2001 +From e7ae9977cb612b6047302839a803792f2a8a20b5 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 30 Mar 2016 19:36:20 -0400 Subject: [PATCH] MC Dev fixes diff --git a/src/main/java/net/minecraft/server/BiomeBase.java b/src/main/java/net/minecraft/server/BiomeBase.java -index 26fa6e7b64..9a839d6540 100644 +index 26fa6e7b6..9a839d654 100644 --- a/src/main/java/net/minecraft/server/BiomeBase.java +++ b/src/main/java/net/minecraft/server/BiomeBase.java @@ -42,7 +42,7 @@ public abstract class BiomeBase { @@ -26,8 +26,53 @@ index 26fa6e7b64..9a839d6540 100644 } public List> e() { +diff --git a/src/main/java/net/minecraft/server/BlockDataAbstract.java b/src/main/java/net/minecraft/server/BlockDataAbstract.java +index adc998186..c385c7b0b 100644 +--- a/src/main/java/net/minecraft/server/BlockDataAbstract.java ++++ b/src/main/java/net/minecraft/server/BlockDataAbstract.java +@@ -29,7 +29,7 @@ public abstract class BlockDataAbstract implements IBlockDataHolder { + } + + private > String a(IBlockState iblockstate, Comparable comparable) { +- return iblockstate.a(comparable); ++ return iblockstate.a((T) comparable); // Paper - decompiler fix + } + }; + protected final O a; +@@ -44,11 +44,11 @@ public abstract class BlockDataAbstract implements IBlockDataHolder { + } + + public > S a(IBlockState iblockstate) { +- return this.set(iblockstate, (Comparable) a(iblockstate.d(), this.get(iblockstate))); ++ return this.set(iblockstate, a(iblockstate.d(), this.get(iblockstate))); // Paper - decompiler fix + } + + protected static T a(Collection collection, T t0) { +- Iterator iterator = collection.iterator(); ++ Iterator iterator = collection.iterator(); // Paper - decompiler fix + + do { + if (!iterator.hasNext()) { +@@ -91,7 +91,7 @@ public abstract class BlockDataAbstract implements IBlockDataHolder { + if (comparable == null) { + throw new IllegalArgumentException("Cannot get property " + iblockstate + " as it does not exist in " + this.a); + } else { +- return (Comparable) iblockstate.b().cast(comparable); ++ return iblockstate.b().cast(comparable); // Paper - decompiler fix + } + } + +@@ -102,7 +102,7 @@ public abstract class BlockDataAbstract implements IBlockDataHolder { + if (comparable == null) { + throw new IllegalArgumentException("Cannot set property " + iblockstate + " as it does not exist in " + this.a); + } else if (comparable == v0) { +- return this; ++ return (S) this; // Paper - decompiler fix + } else { + S s0 = this.f.get(iblockstate, v0); + diff --git a/src/main/java/net/minecraft/server/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java -index f0ff70980d..dd47e9cbe4 100644 +index f0ff70980..dd47e9cbe 100644 --- a/src/main/java/net/minecraft/server/BlockPosition.java +++ b/src/main/java/net/minecraft/server/BlockPosition.java @@ -57,12 +57,12 @@ public class BlockPosition extends BaseBlockPosition implements MinecraftSeriali @@ -47,7 +92,7 @@ index f0ff70980d..dd47e9cbe4 100644 }); } diff --git a/src/main/java/net/minecraft/server/BlockStateEnum.java b/src/main/java/net/minecraft/server/BlockStateEnum.java -index b4c8722f04..59d86fc66e 100644 +index b4c8722f0..59d86fc66 100644 --- a/src/main/java/net/minecraft/server/BlockStateEnum.java +++ b/src/main/java/net/minecraft/server/BlockStateEnum.java @@ -20,10 +20,10 @@ public class BlockStateEnum & INamable> extends BlockState @@ -64,7 +109,7 @@ index b4c8722f04..59d86fc66e 100644 if (this.b.containsKey(s1)) { diff --git a/src/main/java/net/minecraft/server/ChunkSection.java b/src/main/java/net/minecraft/server/ChunkSection.java -index c973ab6076..30701fd7f3 100644 +index c973ab607..30701fd7f 100644 --- a/src/main/java/net/minecraft/server/ChunkSection.java +++ b/src/main/java/net/minecraft/server/ChunkSection.java @@ -148,6 +148,6 @@ public class ChunkSection { @@ -76,7 +121,7 @@ index c973ab6076..30701fd7f3 100644 } } diff --git a/src/main/java/net/minecraft/server/EntityFox.java b/src/main/java/net/minecraft/server/EntityFox.java -index 199f674905..c7a744355a 100644 +index 199f67490..c7a744355 100644 --- a/src/main/java/net/minecraft/server/EntityFox.java +++ b/src/main/java/net/minecraft/server/EntityFox.java @@ -97,7 +97,7 @@ public class EntityFox extends EntityAnimal { @@ -89,7 +134,7 @@ index 199f674905..c7a744355a 100644 } diff --git a/src/main/java/net/minecraft/server/EntityVindicator.java b/src/main/java/net/minecraft/server/EntityVindicator.java -index 1692e6b47e..dbd189afe6 100644 +index 1692e6b47..dbd189afe 100644 --- a/src/main/java/net/minecraft/server/EntityVindicator.java +++ b/src/main/java/net/minecraft/server/EntityVindicator.java @@ -25,7 +25,7 @@ public class EntityVindicator extends EntityIllagerAbstract { @@ -102,7 +147,7 @@ index 1692e6b47e..dbd189afe6 100644 this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, true)); this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityIronGolem.class, true)); diff --git a/src/main/java/net/minecraft/server/GameRules.java b/src/main/java/net/minecraft/server/GameRules.java -index d8d2267084..3de9d264db 100644 +index d8d226708..3de9d264d 100644 --- a/src/main/java/net/minecraft/server/GameRules.java +++ b/src/main/java/net/minecraft/server/GameRules.java @@ -17,7 +17,7 @@ import javax.annotation.Nullable; @@ -124,7 +169,7 @@ index d8d2267084..3de9d264db 100644 this.e = bifunction; } diff --git a/src/main/java/net/minecraft/server/IAsyncTaskHandler.java b/src/main/java/net/minecraft/server/IAsyncTaskHandler.java -index 053d408d36..4510018d6f 100644 +index 053d408d3..4510018d6 100644 --- a/src/main/java/net/minecraft/server/IAsyncTaskHandler.java +++ b/src/main/java/net/minecraft/server/IAsyncTaskHandler.java @@ -51,7 +51,7 @@ public abstract class IAsyncTaskHandler implements Mailbox 1.0D && d13 > 1.0D && d14 > 1.0D) { diff --git a/src/main/java/net/minecraft/server/IBlockData.java b/src/main/java/net/minecraft/server/IBlockData.java -index e8ae4b5e44..0f4aa698aa 100644 +index e8ae4b5e4..0f4aa698a 100644 --- a/src/main/java/net/minecraft/server/IBlockData.java +++ b/src/main/java/net/minecraft/server/IBlockData.java @@ -265,12 +265,12 @@ public class IBlockData extends BlockDataAbstract implements @@ -209,7 +254,7 @@ index e8ae4b5e44..0f4aa698aa 100644 } } diff --git a/src/main/java/net/minecraft/server/IEntityAccess.java b/src/main/java/net/minecraft/server/IEntityAccess.java -index bf7e0d17ef..ee22bb0387 100644 +index bf7e0d17e..ee22bb038 100644 --- a/src/main/java/net/minecraft/server/IEntityAccess.java +++ b/src/main/java/net/minecraft/server/IEntityAccess.java @@ -147,17 +147,17 @@ public interface IEntityAccess { @@ -247,7 +292,7 @@ index bf7e0d17ef..ee22bb0387 100644 if (pathfindertargetcondition.a(entityliving, t0)) { list1.add(t0); diff --git a/src/main/java/net/minecraft/server/LootSelectorEntry.java b/src/main/java/net/minecraft/server/LootSelectorEntry.java -index 9290534917..1016325bd7 100644 +index 929053491..1016325bd 100644 --- a/src/main/java/net/minecraft/server/LootSelectorEntry.java +++ b/src/main/java/net/minecraft/server/LootSelectorEntry.java @@ -127,7 +127,7 @@ public abstract class LootSelectorEntry extends LootEntryAbstract { @@ -275,7 +320,7 @@ index 9290534917..1016325bd7 100644 } diff --git a/src/main/java/net/minecraft/server/NBTBase.java b/src/main/java/net/minecraft/server/NBTBase.java -index cb0c08a144..9aabcb630f 100644 +index cb0c08a14..9aabcb630 100644 --- a/src/main/java/net/minecraft/server/NBTBase.java +++ b/src/main/java/net/minecraft/server/NBTBase.java @@ -88,7 +88,7 @@ public interface NBTBase { @@ -288,7 +333,7 @@ index cb0c08a144..9aabcb630f 100644 default String asString() { return this.toString(); diff --git a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java -index 0dda7aaf69..4e20cfba41 100644 +index 0dda7aaf6..4e20cfba4 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java @@ -134,7 +134,7 @@ public class PacketPlayOutMapChunk implements Packet { @@ -301,7 +346,7 @@ index 0dda7aaf69..4e20cfba41 100644 } diff --git a/src/main/java/net/minecraft/server/RegistryBlockID.java b/src/main/java/net/minecraft/server/RegistryBlockID.java -index 7f89562e90..4efcb8b595 100644 +index 7f89562e9..4efcb8b59 100644 --- a/src/main/java/net/minecraft/server/RegistryBlockID.java +++ b/src/main/java/net/minecraft/server/RegistryBlockID.java @@ -27,7 +27,7 @@ public class RegistryBlockID implements Registry { @@ -314,7 +359,7 @@ index 7f89562e90..4efcb8b595 100644 this.c.set(i, t0); diff --git a/src/main/java/net/minecraft/server/RegistryID.java b/src/main/java/net/minecraft/server/RegistryID.java -index 4cb78c6a3f..e15d286710 100644 +index 4cb78c6a3..e15d28671 100644 --- a/src/main/java/net/minecraft/server/RegistryID.java +++ b/src/main/java/net/minecraft/server/RegistryID.java @@ -17,9 +17,9 @@ public class RegistryID implements Registry { @@ -342,7 +387,7 @@ index 4cb78c6a3f..e15d286710 100644 this.f = 0; diff --git a/src/main/java/net/minecraft/server/SystemUtils.java b/src/main/java/net/minecraft/server/SystemUtils.java -index 41a5d1dc29..b3799ab564 100644 +index 41a5d1dc2..b3799ab56 100644 --- a/src/main/java/net/minecraft/server/SystemUtils.java +++ b/src/main/java/net/minecraft/server/SystemUtils.java @@ -45,8 +45,8 @@ public class SystemUtils { @@ -386,7 +431,7 @@ index 41a5d1dc29..b3799ab564 100644 if (throwable != null) { completablefuture.completeExceptionally(throwable); diff --git a/src/main/java/net/minecraft/server/VillagerTrades.java b/src/main/java/net/minecraft/server/VillagerTrades.java -index b0d44e3778..ff3f15eac0 100644 +index b0d44e377..ff3f15eac 100644 --- a/src/main/java/net/minecraft/server/VillagerTrades.java +++ b/src/main/java/net/minecraft/server/VillagerTrades.java @@ -15,12 +15,12 @@ import javax.annotation.Nullable; @@ -406,7 +451,7 @@ index b0d44e3778..ff3f15eac0 100644 hashmap.put(VillagerProfession.CLERIC, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.ROTTEN_FLESH, 32, 8, 2), new VillagerTrades.h(Items.REDSTONE, 1, 2, 1)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.GOLD_INGOT, 3, 6, 10), new VillagerTrades.h(Items.LAPIS_LAZULI, 1, 1, 5)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.RABBIT_FOOT, 2, 6, 20), new VillagerTrades.h(Blocks.GLOWSTONE, 4, 1, 6, 10)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.SCUTE, 4, 6, 30), new VillagerTrades.b(Items.GLASS_BOTTLE, 9, 6, 30), new VillagerTrades.h(Items.ENDER_PEARL, 5, 1, 15)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.NETHER_WART, 22, 6, 30), new VillagerTrades.h(Items.EXPERIENCE_BOTTLE, 3, 1, 30)}))); hashmap.put(VillagerProfession.ARMORER, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.COAL, 15, 8, 2), new VillagerTrades.h(new ItemStack(Items.IRON_LEGGINGS), 7, 1, 6, 1, 0.2F), new VillagerTrades.h(new ItemStack(Items.IRON_BOOTS), 4, 1, 6, 1, 0.2F), new VillagerTrades.h(new ItemStack(Items.IRON_HELMET), 5, 1, 6, 1, 0.2F), new VillagerTrades.h(new ItemStack(Items.IRON_CHESTPLATE), 9, 1, 6, 1, 0.2F)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.IRON_INGOT, 4, 6, 10), new VillagerTrades.h(new ItemStack(Items.pP), 36, 1, 6, 5, 0.2F), new VillagerTrades.h(new ItemStack(Items.CHAINMAIL_BOOTS), 1, 1, 6, 5, 0.2F), new VillagerTrades.h(new ItemStack(Items.CHAINMAIL_LEGGINGS), 3, 1, 6, 5, 0.2F)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.LAVA_BUCKET, 1, 6, 20), new VillagerTrades.b(Items.DIAMOND, 1, 6, 20), new VillagerTrades.h(new ItemStack(Items.CHAINMAIL_HELMET), 1, 1, 6, 10, 0.2F), new VillagerTrades.h(new ItemStack(Items.CHAINMAIL_CHESTPLATE), 4, 1, 6, 10, 0.2F), new VillagerTrades.h(new ItemStack(Items.SHIELD), 5, 1, 6, 10, 0.2F)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.e(Items.DIAMOND_LEGGINGS, 14, 2, 15, 0.2F), new VillagerTrades.e(Items.DIAMOND_BOOTS, 8, 2, 15, 0.2F)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.e(Items.DIAMOND_HELMET, 8, 2, 30, 0.2F), new VillagerTrades.e(Items.DIAMOND_CHESTPLATE, 16, 2, 30, 0.2F)}))); diff --git a/src/main/java/net/minecraft/server/WorldPersistentData.java b/src/main/java/net/minecraft/server/WorldPersistentData.java -index b251a1d7d9..3c5b3fe101 100644 +index b251a1d7d..3c5b3fe10 100644 --- a/src/main/java/net/minecraft/server/WorldPersistentData.java +++ b/src/main/java/net/minecraft/server/WorldPersistentData.java @@ -37,7 +37,7 @@ public class WorldPersistentData { diff --git a/Spigot-Server-Patches/0004-MC-Utils.patch b/Spigot-Server-Patches/0004-MC-Utils.patch index e5a6437e6..f50680275 100644 --- a/Spigot-Server-Patches/0004-MC-Utils.patch +++ b/Spigot-Server-Patches/0004-MC-Utils.patch @@ -1,11 +1,11 @@ -From 9efde2e55404cac29d18d2b973d0d7f86d26c018 Mon Sep 17 00:00:00 2001 +From f54c84e030a4d3956c07c3a3dfa22535b14becde Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 28 Mar 2016 20:55:47 -0400 Subject: [PATCH] MC Utils diff --git a/src/main/java/net/minecraft/server/AttributeInstance.java b/src/main/java/net/minecraft/server/AttributeInstance.java -index 2f2b103641..b1900ba364 100644 +index 2f2b10364..b1900ba36 100644 --- a/src/main/java/net/minecraft/server/AttributeInstance.java +++ b/src/main/java/net/minecraft/server/AttributeInstance.java @@ -21,8 +21,10 @@ public interface AttributeInstance { @@ -19,8 +19,20 @@ index 2f2b103641..b1900ba364 100644 void c(AttributeModifier attributemodifier); void b(UUID uuid); +diff --git a/src/main/java/net/minecraft/server/BlockDataAbstract.java b/src/main/java/net/minecraft/server/BlockDataAbstract.java +index c385c7b0b..984857479 100644 +--- a/src/main/java/net/minecraft/server/BlockDataAbstract.java ++++ b/src/main/java/net/minecraft/server/BlockDataAbstract.java +@@ -80,6 +80,7 @@ public abstract class BlockDataAbstract implements IBlockDataHolder { + return Collections.unmodifiableCollection(this.d.keySet()); + } + ++ public final > boolean hasProperty(IBlockState iblockstate) { return this.b(iblockstate); } // Paper - OBFHELPER + public > boolean b(IBlockState iblockstate) { + return this.d.containsKey(iblockstate); + } diff --git a/src/main/java/net/minecraft/server/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java -index dd47e9cbe4..c927d524a8 100644 +index dd47e9cbe..c927d524a 100644 --- a/src/main/java/net/minecraft/server/BlockPosition.java +++ b/src/main/java/net/minecraft/server/BlockPosition.java @@ -120,6 +120,7 @@ public class BlockPosition extends BaseBlockPosition implements MinecraftSeriali @@ -57,7 +69,7 @@ index dd47e9cbe4..c927d524a8 100644 return this.d(MathHelper.floor(d0), MathHelper.floor(d1), MathHelper.floor(d2)); } diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index ca73bfbd83..26414a07a2 100644 +index ca73bfbd8..26414a07a 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -25,7 +25,7 @@ import org.apache.logging.log4j.Logger; @@ -78,7 +90,7 @@ index ca73bfbd83..26414a07a2 100644 public TileEntity a(BlockPosition blockposition, Chunk.EnumTileEntityState chunk_enumtileentitystate) { // CraftBukkit start diff --git a/src/main/java/net/minecraft/server/ChunkCoordIntPair.java b/src/main/java/net/minecraft/server/ChunkCoordIntPair.java -index 857b2f8868..bbf136614c 100644 +index 857b2f886..bbf136614 100644 --- a/src/main/java/net/minecraft/server/ChunkCoordIntPair.java +++ b/src/main/java/net/minecraft/server/ChunkCoordIntPair.java @@ -31,7 +31,9 @@ public class ChunkCoordIntPair { @@ -93,7 +105,7 @@ index 857b2f8868..bbf136614c 100644 } diff --git a/src/main/java/net/minecraft/server/DataBits.java b/src/main/java/net/minecraft/server/DataBits.java -index 8bda055159..409dc837c6 100644 +index 8bda05515..409dc837c 100644 --- a/src/main/java/net/minecraft/server/DataBits.java +++ b/src/main/java/net/minecraft/server/DataBits.java @@ -82,6 +82,7 @@ public class DataBits { @@ -105,7 +117,7 @@ index 8bda055159..409dc837c6 100644 return this.a; } diff --git a/src/main/java/net/minecraft/server/DataPalette.java b/src/main/java/net/minecraft/server/DataPalette.java -index 75ba698868..45403fbe30 100644 +index 75ba69886..45403fbe3 100644 --- a/src/main/java/net/minecraft/server/DataPalette.java +++ b/src/main/java/net/minecraft/server/DataPalette.java @@ -4,10 +4,12 @@ import javax.annotation.Nullable; @@ -122,7 +134,7 @@ index 75ba698868..45403fbe30 100644 T a(int i); diff --git a/src/main/java/net/minecraft/server/DataPaletteBlock.java b/src/main/java/net/minecraft/server/DataPaletteBlock.java -index 4411d5640a..28a6be7ab0 100644 +index 4411d5640..28a6be7ab 100644 --- a/src/main/java/net/minecraft/server/DataPaletteBlock.java +++ b/src/main/java/net/minecraft/server/DataPaletteBlock.java @@ -8,7 +8,7 @@ import java.util.stream.Collectors; @@ -164,7 +176,7 @@ index 4411d5640a..28a6be7ab0 100644 this.a(); packetdataserializer.writeByte(this.i); diff --git a/src/main/java/net/minecraft/server/EntityCreature.java b/src/main/java/net/minecraft/server/EntityCreature.java -index 4f69e23271..8f5f61f602 100644 +index 4f69e2327..8f5f61f60 100644 --- a/src/main/java/net/minecraft/server/EntityCreature.java +++ b/src/main/java/net/minecraft/server/EntityCreature.java @@ -6,6 +6,8 @@ import org.bukkit.event.entity.EntityUnleashEvent; @@ -177,7 +189,7 @@ index 4f69e23271..8f5f61f602 100644 super(entitytypes, world); } diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java -index 0ca7cd31f4..113532a97b 100644 +index 0ca7cd31f..113532a97 100644 --- a/src/main/java/net/minecraft/server/EntityInsentient.java +++ b/src/main/java/net/minecraft/server/EntityInsentient.java @@ -143,6 +143,7 @@ public abstract class EntityInsentient extends EntityLiving { @@ -189,7 +201,7 @@ index 0ca7cd31f4..113532a97b 100644 // CraftBukkit start - fire event setGoalTarget(entityliving, EntityTargetEvent.TargetReason.UNKNOWN, true); diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index bd515c6264..d5ffa9f0f7 100644 +index bd515c626..d5ffa9f0f 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -126,6 +126,7 @@ public abstract class EntityLiving extends Entity { @@ -201,7 +213,7 @@ index bd515c6264..d5ffa9f0f7 100644 @Override public float getBukkitYaw() { diff --git a/src/main/java/net/minecraft/server/EntityMonster.java b/src/main/java/net/minecraft/server/EntityMonster.java -index 6ab4c78b35..76142d5dc2 100644 +index 6ab4c78b3..76142d5dc 100644 --- a/src/main/java/net/minecraft/server/EntityMonster.java +++ b/src/main/java/net/minecraft/server/EntityMonster.java @@ -4,6 +4,7 @@ import java.util.function.Predicate; @@ -213,7 +225,7 @@ index 6ab4c78b35..76142d5dc2 100644 super(entitytypes, world); this.f = 5; diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java -index 8c918d0d68..56a2d7df5e 100644 +index 8c918d0d6..56a2d7df5 100644 --- a/src/main/java/net/minecraft/server/EntityTypes.java +++ b/src/main/java/net/minecraft/server/EntityTypes.java @@ -5,6 +5,7 @@ import com.mojang.datafixers.types.Type; @@ -236,7 +248,7 @@ index 8c918d0d68..56a2d7df5e 100644 } diff --git a/src/main/java/net/minecraft/server/IAsyncTaskHandler.java b/src/main/java/net/minecraft/server/IAsyncTaskHandler.java -index 4510018d6f..c0d5112444 100644 +index 4510018d6..c0d511244 100644 --- a/src/main/java/net/minecraft/server/IAsyncTaskHandler.java +++ b/src/main/java/net/minecraft/server/IAsyncTaskHandler.java @@ -64,6 +64,15 @@ public abstract class IAsyncTaskHandler implements Mailbox> { @@ -707,7 +719,7 @@ index fe6854d0e4..2db7229e91 100644 public QueuedPacket(Packet packet, @Nullable GenericFutureListener> genericfuturelistener) { this.a = packet; diff --git a/src/main/java/net/minecraft/server/PacketDataSerializer.java b/src/main/java/net/minecraft/server/PacketDataSerializer.java -index db2fe836c2..0d67676f7d 100644 +index db2fe836c..0d67676f7 100644 --- a/src/main/java/net/minecraft/server/PacketDataSerializer.java +++ b/src/main/java/net/minecraft/server/PacketDataSerializer.java @@ -33,6 +33,7 @@ public class PacketDataSerializer extends ByteBuf { @@ -719,7 +731,7 @@ index db2fe836c2..0d67676f7d 100644 for (int j = 1; j < 5; ++j) { if ((i & -1 << j * 7) == 0) { diff --git a/src/main/java/net/minecraft/server/PacketEncoder.java b/src/main/java/net/minecraft/server/PacketEncoder.java -index 90223deae3..63c4dbd327 100644 +index 90223deae..63c4dbd32 100644 --- a/src/main/java/net/minecraft/server/PacketEncoder.java +++ b/src/main/java/net/minecraft/server/PacketEncoder.java @@ -42,6 +42,7 @@ public class PacketEncoder extends MessageToByteEncoder> { @@ -731,7 +743,7 @@ index 90223deae3..63c4dbd327 100644 throw new SkipEncodeException(throwable); } else { diff --git a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java -index 4e20cfba41..363ab5da12 100644 +index 4e20cfba4..363ab5da1 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java @@ -14,7 +14,7 @@ public class PacketPlayOutMapChunk implements Packet { @@ -752,7 +764,7 @@ index 4e20cfba41..363ab5da12 100644 int j = 0; ChunkSection[] achunksection = chunk.getSections(); diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 68926d0de6..5757dd6fb3 100644 +index 68926d0de..5757dd6fb 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -67,9 +67,9 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -769,7 +781,7 @@ index 68926d0de6..5757dd6fb3 100644 private volatile int chatThrottle; private static final AtomicIntegerFieldUpdater chatSpamField = AtomicIntegerFieldUpdater.newUpdater(PlayerConnection.class, "chatThrottle"); diff --git a/src/main/java/net/minecraft/server/PlayerInventory.java b/src/main/java/net/minecraft/server/PlayerInventory.java -index a5dba62caf..a088658ae0 100644 +index a5dba62ca..a088658ae 100644 --- a/src/main/java/net/minecraft/server/PlayerInventory.java +++ b/src/main/java/net/minecraft/server/PlayerInventory.java @@ -17,7 +17,7 @@ public class PlayerInventory implements IInventory, INamableTileEntity { @@ -782,7 +794,7 @@ index a5dba62caf..a088658ae0 100644 public final EntityHuman player; private ItemStack carried; diff --git a/src/main/java/net/minecraft/server/PotionUtil.java b/src/main/java/net/minecraft/server/PotionUtil.java -index b3824898da..bf4172be52 100644 +index b3824898d..bf4172be5 100644 --- a/src/main/java/net/minecraft/server/PotionUtil.java +++ b/src/main/java/net/minecraft/server/PotionUtil.java @@ -110,6 +110,7 @@ public class PotionUtil { @@ -794,7 +806,7 @@ index b3824898da..bf4172be52 100644 MinecraftKey minecraftkey = IRegistry.POTION.getKey(potionregistry); diff --git a/src/main/java/net/minecraft/server/RegistryBlockID.java b/src/main/java/net/minecraft/server/RegistryBlockID.java -index 4efcb8b595..60948afa4e 100644 +index 4efcb8b59..60948afa4 100644 --- a/src/main/java/net/minecraft/server/RegistryBlockID.java +++ b/src/main/java/net/minecraft/server/RegistryBlockID.java @@ -57,6 +57,7 @@ public class RegistryBlockID implements Registry { @@ -806,7 +818,7 @@ index 4efcb8b595..60948afa4e 100644 return this.b.size(); } diff --git a/src/main/java/net/minecraft/server/SystemUtils.java b/src/main/java/net/minecraft/server/SystemUtils.java -index b3799ab564..5fae5a1233 100644 +index b3799ab56..5fae5a123 100644 --- a/src/main/java/net/minecraft/server/SystemUtils.java +++ b/src/main/java/net/minecraft/server/SystemUtils.java @@ -58,7 +58,7 @@ public class SystemUtils { @@ -819,7 +831,7 @@ index b3799ab564..5fae5a1233 100644 public static long getTimeMillis() { diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 923d8e28e7..404d3d8c82 100644 +index 923d8e28e..404d3d8c8 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -371,8 +371,9 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -835,7 +847,7 @@ index 923d8e28e7..404d3d8c82 100644 return this.setTypeAndData(blockposition, fluid.getBlockData(), 3 | (flag ? 64 : 0)); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 42f7bb0f7d..5d71addb0c 100644 +index 42f7bb0f7..5d71addb0 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -85,6 +85,7 @@ public final class CraftItemStack extends ItemStack { diff --git a/Spigot-Server-Patches/0020-Optimize-TileEntity-Ticking.patch b/Spigot-Server-Patches/0020-Optimize-TileEntity-Ticking.patch index 279e309d2..8da216a80 100644 --- a/Spigot-Server-Patches/0020-Optimize-TileEntity-Ticking.patch +++ b/Spigot-Server-Patches/0020-Optimize-TileEntity-Ticking.patch @@ -1,11 +1,11 @@ -From 902b97c38b3a8621321d4d2e0eaf73efb88b4128 Mon Sep 17 00:00:00 2001 +From ca6926b3098bec053cba3fe0eb76e9ab125c53bf Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 8 Mar 2015 22:55:25 -0600 Subject: [PATCH] Optimize TileEntity Ticking diff --git a/src/main/java/net/minecraft/server/TileEntityChest.java b/src/main/java/net/minecraft/server/TileEntityChest.java -index 271406f8bb..d606e2e4fd 100644 +index 271406f8b..85b450c05 100644 --- a/src/main/java/net/minecraft/server/TileEntityChest.java +++ b/src/main/java/net/minecraft/server/TileEntityChest.java @@ -7,7 +7,7 @@ import org.bukkit.craftbukkit.entity.CraftHumanEntity; @@ -65,7 +65,15 @@ index 271406f8bb..d606e2e4fd 100644 if (this.a < 0.0F) { this.a = 0.0F; -@@ -210,6 +222,7 @@ public class TileEntityChest extends TileEntityLootable implements ITickable { +@@ -172,6 +184,7 @@ public class TileEntityChest extends TileEntityLootable implements ITickable { + } + + private void a(SoundEffect soundeffect) { ++ if (!this.getBlock().hasProperty(BlockChest.b)) { return; } // Paper - this can be delayed, double check exists - Fixes GH-2074 + BlockPropertyChestType blockpropertychesttype = (BlockPropertyChestType) this.getBlock().get(BlockChest.b); + + if (blockpropertychesttype != BlockPropertyChestType.LEFT) { +@@ -210,6 +223,7 @@ public class TileEntityChest extends TileEntityLootable implements ITickable { ++this.viewingCount; if (this.world == null) return; // CraftBukkit @@ -73,7 +81,7 @@ index 271406f8bb..d606e2e4fd 100644 // CraftBukkit start - Call redstone event if (this.getBlock().getBlock() == Blocks.TRAPPED_CHEST) { -@@ -232,6 +245,7 @@ public class TileEntityChest extends TileEntityLootable implements ITickable { +@@ -232,6 +246,7 @@ public class TileEntityChest extends TileEntityLootable implements ITickable { --this.viewingCount; // CraftBukkit start - Call redstone event @@ -82,7 +90,7 @@ index 271406f8bb..d606e2e4fd 100644 int newPower = Math.max(0, Math.min(15, this.viewingCount)); diff --git a/src/main/java/net/minecraft/server/TileEntityEnderChest.java b/src/main/java/net/minecraft/server/TileEntityEnderChest.java -index 6908f50031..ed5cdf177f 100644 +index 6908f5003..ed5cdf177 100644 --- a/src/main/java/net/minecraft/server/TileEntityEnderChest.java +++ b/src/main/java/net/minecraft/server/TileEntityEnderChest.java @@ -1,6 +1,6 @@ diff --git a/Spigot-Server-Patches/0304-Allow-chests-to-be-placed-with-NBT-data.patch b/Spigot-Server-Patches/0304-Allow-chests-to-be-placed-with-NBT-data.patch index ce4f97ea9..2f22d60a7 100644 --- a/Spigot-Server-Patches/0304-Allow-chests-to-be-placed-with-NBT-data.patch +++ b/Spigot-Server-Patches/0304-Allow-chests-to-be-placed-with-NBT-data.patch @@ -1,11 +1,11 @@ -From 76e46a384be86466049b90d85aeff048a6b91794 Mon Sep 17 00:00:00 2001 +From 3a94f239a03b331998136ad340f44e43edfeeda0 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sat, 8 Sep 2018 18:43:31 -0500 Subject: [PATCH] Allow chests to be placed with NBT data diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java -index 2d83c9e79c..dec5894637 100644 +index 2d83c9e79..dec589463 100644 --- a/src/main/java/net/minecraft/server/ItemStack.java +++ b/src/main/java/net/minecraft/server/ItemStack.java @@ -235,6 +235,7 @@ public final class ItemStack { @@ -17,10 +17,10 @@ index 2d83c9e79c..dec5894637 100644 for (BlockState blockstate : blocks) { blockstate.update(true, false); diff --git a/src/main/java/net/minecraft/server/TileEntityChest.java b/src/main/java/net/minecraft/server/TileEntityChest.java -index d606e2e4fd..f9f9183daa 100644 +index 85b450c05..efc153de5 100644 --- a/src/main/java/net/minecraft/server/TileEntityChest.java +++ b/src/main/java/net/minecraft/server/TileEntityChest.java -@@ -308,7 +308,7 @@ public class TileEntityChest extends TileEntityLootable { // Paper - Remove ITic +@@ -309,7 +309,7 @@ public class TileEntityChest extends TileEntityLootable { // Paper - Remove ITic // CraftBukkit start @Override public boolean isFilteredNBT() {