diff --git a/CraftBukkit-Patches/0161-Fix-movement-inconsistencies.patch b/CraftBukkit-Patches/0161-Fix-movement-inconsistencies.patch deleted file mode 100644 index f3d6f1e342..0000000000 --- a/CraftBukkit-Patches/0161-Fix-movement-inconsistencies.patch +++ /dev/null @@ -1,125 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Iceee -Date: Thu, 12 Jun 2014 03:18:13 -0500 -Subject: [PATCH] Fix movement inconsistencies - - -diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 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 { - - List list = this.world.getCubes(this, this.boundingBox.a(d0, d1, d2)); - -- for (int i = 0; i < list.size(); ++i) { -- d1 = ((AxisAlignedBB) list.get(i)).b(this.boundingBox, d1); -- } -+ // PaperSpigot start - Fix movement inconsistencies -+ boolean flag1; - -- this.boundingBox.d(0.0D, d1, 0.0D); -- if (!this.J && d7 != d1) { -- d2 = 0.0D; -- d1 = 0.0D; -- d0 = 0.0D; -- } -+ if(this.motZ > this.motX) { - -- boolean flag1 = this.onGround || d7 != d1 && d7 < 0.0D; -+ for (int i = 0; i < list.size(); ++i) { -+ d1 = ((AxisAlignedBB) list.get(i)).b(this.boundingBox, d1); -+ } - -- int j; -+ this.boundingBox.d(0.0D, d1, 0.0D); -+ if (!this.J && d7 != d1) { -+ d2 = 0.0D; -+ d1 = 0.0D; -+ d0 = 0.0D; -+ } - -- for (j = 0; j < list.size(); ++j) { -- d0 = ((AxisAlignedBB) list.get(j)).a(this.boundingBox, d0); -- } -+ flag1 = this.onGround || d7 != d1 && d7 < 0.0D; - -- this.boundingBox.d(d0, 0.0D, 0.0D); -- if (!this.J && d6 != d0) { -- d2 = 0.0D; -- d1 = 0.0D; -- d0 = 0.0D; -- } -+ int j; - -- for (j = 0; j < list.size(); ++j) { -- d2 = ((AxisAlignedBB) list.get(j)).c(this.boundingBox, d2); -- } -+ for (j = 0; j < list.size(); ++j) { -+ d0 = ((AxisAlignedBB) list.get(j)).a(this.boundingBox, d0); -+ } -+ -+ this.boundingBox.d(d0, 0.0D, 0.0D); -+ if (!this.J && d6 != d0) { -+ d2 = 0.0D; -+ d1 = 0.0D; -+ d0 = 0.0D; -+ } -+ -+ for (j = 0; j < list.size(); ++j) { -+ d2 = ((AxisAlignedBB) list.get(j)).c(this.boundingBox, d2); -+ } -+ -+ this.boundingBox.d(0.0D, 0.0D, d2); -+ if (!this.J && d8 != d2) { -+ d2 = 0.0D; -+ d1 = 0.0D; -+ d0 = 0.0D; -+ } -+ } else { -+ for (int i = 0; i < list.size(); ++i) { -+ d1 = ((AxisAlignedBB) list.get(i)).b(this.boundingBox, d1); -+ } - -- this.boundingBox.d(0.0D, 0.0D, d2); -- if (!this.J && d8 != d2) { -- d2 = 0.0D; -- d1 = 0.0D; -- d0 = 0.0D; -+ this.boundingBox.d(0.0D, d1, 0.0D); -+ if (!this.J && d7 != d1) { -+ d2 = 0.0D; -+ d1 = 0.0D; -+ d0 = 0.0D; -+ } -+ -+ flag1 = this.onGround || d7 != d1 && d7 < 0.0D; -+ -+ int j; -+ -+ for (j = 0; j < list.size(); ++j) { -+ d2 = ((AxisAlignedBB) list.get(j)).c(this.boundingBox, d2); -+ } -+ -+ this.boundingBox.d(0.0D, 0.0D, d2); -+ if (!this.J && d8 != d2) { -+ d2 = 0.0D; -+ d1 = 0.0D; -+ d0 = 0.0D; -+ } -+ -+ for (j = 0; j < list.size(); ++j) { -+ d0 = ((AxisAlignedBB) list.get(j)).a(this.boundingBox, d0); -+ } -+ -+ this.boundingBox.d(d0, 0.0D, 0.0D); -+ if (!this.J && d6 != d0) { -+ d2 = 0.0D; -+ d1 = 0.0D; -+ d0 = 0.0D; -+ } -+ // PaperSpigot end - } - - double d10; --- \ No newline at end of file diff --git a/CraftBukkit-Patches/0162-Fix-redstone-lag-issues.patch b/CraftBukkit-Patches/0161-Fix-redstone-lag-issues.patch similarity index 100% rename from CraftBukkit-Patches/0162-Fix-redstone-lag-issues.patch rename to CraftBukkit-Patches/0161-Fix-redstone-lag-issues.patch diff --git a/CraftBukkit-Patches/0163-Ability-to-disable-asynccatcher.patch b/CraftBukkit-Patches/0162-Ability-to-disable-asynccatcher.patch similarity index 100% rename from CraftBukkit-Patches/0163-Ability-to-disable-asynccatcher.patch rename to CraftBukkit-Patches/0162-Ability-to-disable-asynccatcher.patch diff --git a/CraftBukkit-Patches/0164-Do-not-remove-player-in-world-change.patch b/CraftBukkit-Patches/0163-Do-not-remove-player-in-world-change.patch similarity index 100% rename from CraftBukkit-Patches/0164-Do-not-remove-player-in-world-change.patch rename to CraftBukkit-Patches/0163-Do-not-remove-player-in-world-change.patch diff --git a/CraftBukkit-Patches/0164-Actually-fix-TNT-movement.patch b/CraftBukkit-Patches/0164-Actually-fix-TNT-movement.patch new file mode 100644 index 0000000000..dd3e8c49b2 --- /dev/null +++ b/CraftBukkit-Patches/0164-Actually-fix-TNT-movement.patch @@ -0,0 +1,26 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Iceee +Date: Tue, 24 Jun 2014 00:03:34 -0500 +Subject: [PATCH] Actually fix TNT movement + + +diff --git a/src/main/java/net/minecraft/server/EntityTNTPrimed.java b/src/main/java/net/minecraft/server/EntityTNTPrimed.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 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 { + public EntityTNTPrimed(World world, double d0, double d1, double d2, EntityLiving entityliving) { + this(world); + this.setPosition(d0, d1, d2); +- float f = (float) (Math.random() * 3.1415927410125732D * 2.0D); ++ // float f = (float) (Math.random() * 3.1415927410125732D * 2.0D); // PaperSpigot + +- this.motX = (double) (-((float) Math.sin((double) f)) * 0.02F); ++ this.motX = 0; // PaperSpigot - Fix TNT movement // (double) (-((float) Math.sin((double) f)) * 0.02F); + this.motY = 0.20000000298023224D; +- this.motZ = (double) (-((float) Math.cos((double) f)) * 0.02F); ++ this.motZ = 0; // PaperSpigot - Fix TNT movement // (double) (-((float) Math.cos((double) f)) * 0.02F); + this.fuseTicks = 80; + this.lastX = d0; + this.lastY = d1; +-- \ No newline at end of file