diff --git a/Spigot-Server-Patches/Optional-old-TNT-cannon-behaviors.patch b/Spigot-Server-Patches/Optional-old-TNT-cannon-behaviors.patch index 79279fe9e0..4c78dd3df3 100644 --- a/Spigot-Server-Patches/Optional-old-TNT-cannon-behaviors.patch +++ b/Spigot-Server-Patches/Optional-old-TNT-cannon-behaviors.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Optional old TNT cannon behaviors diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 4d6a30966..2a4d1dae7 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -0,0 +0,0 @@ public class PaperWorldConfig { @@ -22,7 +22,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + } } diff --git a/src/main/java/net/minecraft/server/BlockDiodeAbstract.java b/src/main/java/net/minecraft/server/BlockDiodeAbstract.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 59ee13de8..40c9f18bf 100644 --- a/src/main/java/net/minecraft/server/BlockDiodeAbstract.java +++ b/src/main/java/net/minecraft/server/BlockDiodeAbstract.java @@ -0,0 +0,0 @@ public abstract class BlockDiodeAbstract extends BlockFacingHorizontal { @@ -62,7 +62,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 int i = aenumdirection.length; diff --git a/src/main/java/net/minecraft/server/BlockRedstoneTorch.java b/src/main/java/net/minecraft/server/BlockRedstoneTorch.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index c7e095a11..741236289 100644 --- a/src/main/java/net/minecraft/server/BlockRedstoneTorch.java +++ b/src/main/java/net/minecraft/server/BlockRedstoneTorch.java @@ -0,0 +0,0 @@ public class BlockRedstoneTorch extends BlockTorch { @@ -110,7 +110,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 return this.isOn && iblockdata.get(BlockRedstoneTorch.FACING) != enumdirection ? 15 : 0; } diff --git a/src/main/java/net/minecraft/server/BlockRedstoneWire.java b/src/main/java/net/minecraft/server/BlockRedstoneWire.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 5a0f026b1..20b9465e7 100644 --- a/src/main/java/net/minecraft/server/BlockRedstoneWire.java +++ b/src/main/java/net/minecraft/server/BlockRedstoneWire.java @@ -0,0 +0,0 @@ public class BlockRedstoneWire extends Block { @@ -160,7 +160,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 int i = aenumdirection.length; diff --git a/src/main/java/net/minecraft/server/BlockTNT.java b/src/main/java/net/minecraft/server/BlockTNT.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 6b6aa892a..5cec4160c 100644 --- a/src/main/java/net/minecraft/server/BlockTNT.java +++ b/src/main/java/net/minecraft/server/BlockTNT.java @@ -0,0 +0,0 @@ public class BlockTNT extends Block { @@ -190,7 +190,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 world.addEntity(entitytntprimed); world.a((EntityHuman) null, entitytntprimed.locX, entitytntprimed.locY, entitytntprimed.locZ, SoundEffects.gV, SoundCategory.BLOCKS, 1.0F, 1.0F); diff --git a/src/main/java/net/minecraft/server/DispenserRegistry.java b/src/main/java/net/minecraft/server/DispenserRegistry.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index dbfb8ab3e..537408a15 100644 --- a/src/main/java/net/minecraft/server/DispenserRegistry.java +++ b/src/main/java/net/minecraft/server/DispenserRegistry.java @@ -0,0 +0,0 @@ public class DispenserRegistry { @@ -207,7 +207,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 world.getServer().getPluginManager().callEvent(event); } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 44c5a253f..fc43007c6 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -0,0 +0,0 @@ public abstract class Entity implements ICommandListener { @@ -262,7 +262,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 } diff --git a/src/main/java/net/minecraft/server/EntityFallingBlock.java b/src/main/java/net/minecraft/server/EntityFallingBlock.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 307a44c85..bb01929e8 100644 --- a/src/main/java/net/minecraft/server/EntityFallingBlock.java +++ b/src/main/java/net/minecraft/server/EntityFallingBlock.java @@ -0,0 +0,0 @@ public class EntityFallingBlock extends Entity { @@ -286,7 +286,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + // Paper end } diff --git a/src/main/java/net/minecraft/server/EntityTNTPrimed.java b/src/main/java/net/minecraft/server/EntityTNTPrimed.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 25e471d37..e796ade87 100644 --- a/src/main/java/net/minecraft/server/EntityTNTPrimed.java +++ b/src/main/java/net/minecraft/server/EntityTNTPrimed.java @@ -0,0 +0,0 @@ public class EntityTNTPrimed extends Entity { @@ -366,7 +366,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + // Paper end } diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index d7bc6a0ed..f2785d86c 100644 --- a/src/main/java/net/minecraft/server/Explosion.java +++ b/src/main/java/net/minecraft/server/Explosion.java @@ -0,0 +0,0 @@ public class Explosion { diff --git a/Spigot-Server-Patches/Vanished-players-don-t-have-rights.patch b/Spigot-Server-Patches/Vanished-players-don-t-have-rights.patch index 43117864eb..4ec3c6fb69 100644 --- a/Spigot-Server-Patches/Vanished-players-don-t-have-rights.patch +++ b/Spigot-Server-Patches/Vanished-players-don-t-have-rights.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Vanished players don't have rights diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 5e3f697e6..ea36c53bc 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -0,0 +0,0 @@ public abstract class Entity implements ICommandListener { @@ -16,9 +16,9 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + public boolean i; public boolean blocksEntitySpawning() { return i; } // Paper - OBFHELPER public final List passengers; protected int j; - private Entity au; + private Entity au;public void setVehicle(Entity entity) { this.au = entity; } // Paper // OBFHELPER diff --git a/src/main/java/net/minecraft/server/ItemBlock.java b/src/main/java/net/minecraft/server/ItemBlock.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index eb32871bd..a380e615b 100644 --- a/src/main/java/net/minecraft/server/ItemBlock.java +++ b/src/main/java/net/minecraft/server/ItemBlock.java @@ -0,0 +0,0 @@ public class ItemBlock extends Item { @@ -31,7 +31,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 IBlockData iblockdata1 = this.a.getPlacedState(world, blockposition, enumdirection, f, f1, f2, i, entityhuman); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index fb346c0e7..d8c857918 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -0,0 +0,0 @@ public abstract class World implements IBlockAccess { @@ -78,7 +78,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 this.getServer().getPluginManager().callEvent(event); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index a7f827b67..21a8cc7f0 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -0,0 +0,0 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/Vehicle-Event-Cancellation-Changes.patch b/Spigot-Server-Patches/Vehicle-Event-Cancellation-Changes.patch index 8476d8c91d..1b186bb91f 100644 --- a/Spigot-Server-Patches/Vehicle-Event-Cancellation-Changes.patch +++ b/Spigot-Server-Patches/Vehicle-Event-Cancellation-Changes.patch @@ -5,88 +5,39 @@ Subject: [PATCH] Vehicle Event Cancellation Changes diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index ae6638d39..0818ff854 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -0,0 +0,0 @@ public abstract class Entity implements ICommandListener { - } - } - -+ return this.mountEntity(entity, flag, false); // Paper - OBFHELPER -+ } -+ -+ public boolean mountEntity(Entity entity, boolean flag, boolean suppressEvents) { // Paper - if (!flag && (!this.n(entity) || !entity.q(this))) { - return false; - } else { + public boolean i; + public final List passengers; + protected int j; +- private Entity au; ++ private Entity au;public void setVehicle(Entity entity) { this.au = entity; } // Paper // OBFHELPER + public boolean attachedToPlayer; + public World world; + public double lastX; @@ -0,0 +0,0 @@ public abstract class Entity implements ICommandListener { - } - - this.au = entity; -- this.au.o(this); -+ this.au.addRider(this, suppressEvents); // Paper - return true; - } - } -@@ -0,0 +0,0 @@ public abstract class Entity implements ICommandListener { - } - - protected void o(Entity entity) { -+ // Paper start - OBFHELPER -+ this.addRider(entity, false); -+ } -+ -+ private void addRider(Entity entity, boolean suppressEvents) { -+ // Paper end - if (entity.bB() != this) { - throw new IllegalStateException("Use x.startRiding(y), not y.addPassenger(x)"); + throw new IllegalStateException("Use x.stopRiding(y), not y.removePassenger(x)"); } else { // CraftBukkit start - com.google.common.base.Preconditions.checkState(!entity.passengers.contains(this), "Circular entity riding! %s %s", this, entity); - -+ if (!suppressEvents) { // Paper - Make event calls suppressible -+ // ============================================================= ++ entity.setVehicle(this); // Paper - Set the vehicle back for the event CraftEntity craft = (CraftEntity) entity.getBukkitEntity().getVehicle(); Entity orig = craft == null ? null : craft.getHandle(); - if (getBukkitEntity() instanceof Vehicle && entity.getBukkitEntity() instanceof LivingEntity && entity.world.isChunkLoaded((int) entity.locX >> 4, (int) entity.locZ >> 4, false)) { // Boolean not used + if (getBukkitEntity() instanceof Vehicle && entity.getBukkitEntity() instanceof LivingEntity) { @@ -0,0 +0,0 @@ public abstract class Entity implements ICommandListener { - return; - } - // Spigot end -+ // ============================================================= -+ } // Paper - end suppressible block - if (!this.world.isClientSide && entity instanceof EntityHuman && !(this.bw() instanceof EntityHuman)) { - this.passengers.add(0, entity); - } else { -@@ -0,0 +0,0 @@ public abstract class Entity implements ICommandListener { - CraftEntity craftn = (CraftEntity) entity.getBukkitEntity().getVehicle(); - Entity n = craftn == null ? null : craftn.getHandle(); - if (event.isCancelled() || n != orig) { -+ this.cancelDismount(entity); // Paper - return; } } // CraftBukkit end - Bukkit.getPluginManager().callEvent( new org.spigotmc.event.entity.EntityDismountEvent(entity.getBukkitEntity(), this.getBukkitEntity())); // Spigot + // Paper start - make EntityDismountEvent cancellable + if (!new org.spigotmc.event.entity.EntityDismountEvent(entity.getBukkitEntity(), this.getBukkitEntity()).callEvent()) { -+ this.cancelDismount(entity); + return; + } ++ entity.setVehicle(null); + // Paper end ++ this.passengers.remove(entity); entity.j = 60; } - } - -+ // Paper start -+ private void cancelDismount(Entity dismounter) { -+ this.passengers.remove(dismounter); -+ dismounter.mountEntity(this, false, true); -+ } -+ // Paper end -+ - protected boolean q(Entity entity) { - return this.bx().size() < 1; - } -- \ No newline at end of file