mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-20 18:07:43 +01:00
Fix issues with minecarts not being collidable
This commit is contained in:
@@ -1,36 +1,37 @@
|
|||||||
From be40fc6982105526eee626d0349da7168d6c20a6 Mon Sep 17 00:00:00 2001
|
From 205bdc6ed4cdfc2e6e2a55eb9f841fc7da58c697 Mon Sep 17 00:00:00 2001
|
||||||
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
||||||
Date: Sun, 21 Jul 2019 18:06:20 -0500
|
Date: Sun, 21 Jul 2019 18:06:20 -0500
|
||||||
Subject: [PATCH] Ladders should not bypass cramming gamerule
|
Subject: [PATCH] Ladders should not bypass cramming gamerule
|
||||||
|
|
||||||
---
|
---
|
||||||
src/main/java/net/minecraft/server/Entity.java | 6 ++++++
|
src/main/java/net/minecraft/server/Entity.java | 4 ++++
|
||||||
.../java/net/minecraft/server/EntityArmorStand.java | 2 +-
|
src/main/java/net/minecraft/server/EntityArmorStand.java | 2 +-
|
||||||
src/main/java/net/minecraft/server/EntityBoat.java | 2 +-
|
src/main/java/net/minecraft/server/EntityBat.java | 2 +-
|
||||||
.../net/minecraft/server/EntityHorseAbstract.java | 2 +-
|
src/main/java/net/minecraft/server/EntityBoat.java | 2 +-
|
||||||
src/main/java/net/minecraft/server/EntityLiving.java | 11 +++++++++--
|
.../java/net/minecraft/server/EntityHorseAbstract.java | 2 +-
|
||||||
.../java/net/minecraft/server/IEntitySelector.java | 7 ++++++-
|
src/main/java/net/minecraft/server/EntityLiving.java | 8 +++++---
|
||||||
6 files changed, 24 insertions(+), 6 deletions(-)
|
.../java/net/minecraft/server/EntityMinecartAbstract.java | 2 +-
|
||||||
|
src/main/java/net/minecraft/server/EntityParrot.java | 2 +-
|
||||||
|
src/main/java/net/minecraft/server/IEntitySelector.java | 7 ++++++-
|
||||||
|
9 files changed, 21 insertions(+), 10 deletions(-)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||||
index 26a30e1c0..00caabf3d 100644
|
index 26a30e1c..770d2146 100644
|
||||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||||
@@ -1522,6 +1522,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
@@ -1522,6 +1522,10 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isCollidable() {
|
public boolean isCollidable() {
|
||||||
+ // Purpur start
|
|
||||||
+ return isCollidable(false);
|
+ return isCollidable(false);
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ public boolean isCollidable(boolean ignoreClimbing) {
|
+ public boolean isCollidable(boolean ignoreClimbing) {
|
||||||
+ // Purpur end
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
|
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
|
||||||
index e516db270..2fb10f6c2 100644
|
index e516db27..2fb10f6c 100644
|
||||||
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java
|
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java
|
||||||
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
|
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
|
||||||
@@ -316,7 +316,7 @@ public class EntityArmorStand extends EntityLiving {
|
@@ -316,7 +316,7 @@ public class EntityArmorStand extends EntityLiving {
|
||||||
@@ -42,8 +43,21 @@ index e516db270..2fb10f6c2 100644
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
diff --git a/src/main/java/net/minecraft/server/EntityBat.java b/src/main/java/net/minecraft/server/EntityBat.java
|
||||||
|
index 8a8acf14..88b94505 100644
|
||||||
|
--- a/src/main/java/net/minecraft/server/EntityBat.java
|
||||||
|
+++ b/src/main/java/net/minecraft/server/EntityBat.java
|
||||||
|
@@ -54,7 +54,7 @@ public class EntityBat extends EntityAmbient {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
- public boolean isCollidable() {
|
||||||
|
+ public boolean isCollidable(boolean ignoreClimbing) { // Purpur
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/EntityBoat.java b/src/main/java/net/minecraft/server/EntityBoat.java
|
diff --git a/src/main/java/net/minecraft/server/EntityBoat.java b/src/main/java/net/minecraft/server/EntityBoat.java
|
||||||
index 32b7f7805..b5bcd1f80 100644
|
index 32b7f780..b5bcd1f8 100644
|
||||||
--- a/src/main/java/net/minecraft/server/EntityBoat.java
|
--- a/src/main/java/net/minecraft/server/EntityBoat.java
|
||||||
+++ b/src/main/java/net/minecraft/server/EntityBoat.java
|
+++ b/src/main/java/net/minecraft/server/EntityBoat.java
|
||||||
@@ -98,7 +98,7 @@ public class EntityBoat extends Entity {
|
@@ -98,7 +98,7 @@ public class EntityBoat extends Entity {
|
||||||
@@ -56,7 +70,7 @@ index 32b7f7805..b5bcd1f80 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/EntityHorseAbstract.java b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
|
diff --git a/src/main/java/net/minecraft/server/EntityHorseAbstract.java b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
|
||||||
index 2177a4370..05a5169c1 100644
|
index 2177a437..05a5169c 100644
|
||||||
--- a/src/main/java/net/minecraft/server/EntityHorseAbstract.java
|
--- a/src/main/java/net/minecraft/server/EntityHorseAbstract.java
|
||||||
+++ b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
|
+++ b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
|
||||||
@@ -165,7 +165,7 @@ public abstract class EntityHorseAbstract extends EntityAnimal implements IInven
|
@@ -165,7 +165,7 @@ public abstract class EntityHorseAbstract extends EntityAnimal implements IInven
|
||||||
@@ -69,7 +83,7 @@ index 2177a4370..05a5169c1 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||||
index aa60c0084..4e6598cf5 100644
|
index aa60c008..84aebb91 100644
|
||||||
--- a/src/main/java/net/minecraft/server/EntityLiving.java
|
--- a/src/main/java/net/minecraft/server/EntityLiving.java
|
||||||
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
|
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||||
@@ -2609,7 +2609,7 @@ public abstract class EntityLiving extends Entity {
|
@@ -2609,7 +2609,7 @@ public abstract class EntityLiving extends Entity {
|
||||||
@@ -81,24 +95,47 @@ index aa60c0084..4e6598cf5 100644
|
|||||||
|
|
||||||
if (!list.isEmpty()) {
|
if (!list.isEmpty()) {
|
||||||
int i = this.world.getGameRules().getInt(GameRules.MAX_ENTITY_CRAMMING);
|
int i = this.world.getGameRules().getInt(GameRules.MAX_ENTITY_CRAMMING);
|
||||||
@@ -2748,7 +2748,14 @@ public abstract class EntityLiving extends Entity {
|
@@ -2747,8 +2747,10 @@ public abstract class EntityLiving extends Entity {
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isCollidable() {
|
- public boolean isCollidable() {
|
||||||
- return this.isAlive() && !this.isClimbing() && this.collides; // CraftBukkit
|
- return this.isAlive() && !this.isClimbing() && this.collides; // CraftBukkit
|
||||||
+ // Purpur start
|
+ // Purpur start
|
||||||
+ return isCollidable(false);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ @Override
|
|
||||||
+ public boolean isCollidable(boolean ignoreClimbing) {
|
+ public boolean isCollidable(boolean ignoreClimbing) {
|
||||||
+ return this.isAlive() && (ignoreClimbing || !isClimbing()) && this.collides; // CraftBukkit
|
+ return this.isAlive() && (ignoreClimbing || !isClimbing()) && this.collides; // CraftBukkit
|
||||||
+ // Purpur end
|
+ // Purpur end
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
diff --git a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
|
||||||
|
index c5b4057c..d5a28392 100644
|
||||||
|
--- a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
|
||||||
|
+++ b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
|
||||||
|
@@ -82,7 +82,7 @@ public abstract class EntityMinecartAbstract extends Entity {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
- public boolean isCollidable() {
|
||||||
|
+ public boolean isCollidable(boolean ignoreClimbing) { // Purpur
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/src/main/java/net/minecraft/server/EntityParrot.java b/src/main/java/net/minecraft/server/EntityParrot.java
|
||||||
|
index 0eeb1105..7c2c3119 100644
|
||||||
|
--- a/src/main/java/net/minecraft/server/EntityParrot.java
|
||||||
|
+++ b/src/main/java/net/minecraft/server/EntityParrot.java
|
||||||
|
@@ -351,7 +351,7 @@ public class EntityParrot extends EntityPerchable implements EntityBird {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
- public boolean isCollidable() {
|
||||||
|
+ public boolean isCollidable(boolean ignoreClimbing) { // Purpur
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/IEntitySelector.java b/src/main/java/net/minecraft/server/IEntitySelector.java
|
diff --git a/src/main/java/net/minecraft/server/IEntitySelector.java b/src/main/java/net/minecraft/server/IEntitySelector.java
|
||||||
index 56488b78d..7ef7fe228 100644
|
index 56488b78..7ef7fe22 100644
|
||||||
--- a/src/main/java/net/minecraft/server/IEntitySelector.java
|
--- a/src/main/java/net/minecraft/server/IEntitySelector.java
|
||||||
+++ b/src/main/java/net/minecraft/server/IEntitySelector.java
|
+++ b/src/main/java/net/minecraft/server/IEntitySelector.java
|
||||||
@@ -32,11 +32,16 @@ public final class IEntitySelector {
|
@@ -32,11 +32,16 @@ public final class IEntitySelector {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
From a4d91783ad3be818efecbd73661bc4d89df2ab17 Mon Sep 17 00:00:00 2001
|
From e6a9f0d798945c4028a397440f68dadd2c62a28d Mon Sep 17 00:00:00 2001
|
||||||
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
||||||
Date: Thu, 25 Jul 2019 18:07:37 -0500
|
Date: Thu, 25 Jul 2019 18:07:37 -0500
|
||||||
Subject: [PATCH] Implement elytra settings
|
Subject: [PATCH] Implement elytra settings
|
||||||
@@ -13,7 +13,7 @@ Subject: [PATCH] Implement elytra settings
|
|||||||
6 files changed, 50 insertions(+), 4 deletions(-)
|
6 files changed, 50 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||||
index 4e6598cf5..cbd7ab3a8 100644
|
index 84aebb91..1ad2176e 100644
|
||||||
--- a/src/main/java/net/minecraft/server/EntityLiving.java
|
--- a/src/main/java/net/minecraft/server/EntityLiving.java
|
||||||
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
|
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||||
@@ -2588,9 +2588,16 @@ public abstract class EntityLiving extends Entity {
|
@@ -2588,9 +2588,16 @@ public abstract class EntityLiving extends Entity {
|
||||||
@@ -36,7 +36,7 @@ index 4e6598cf5..cbd7ab3a8 100644
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
flag = false;
|
flag = false;
|
||||||
@@ -3237,6 +3244,7 @@ public abstract class EntityLiving extends Entity {
|
@@ -3232,6 +3239,7 @@ public abstract class EntityLiving extends Entity {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -45,7 +45,7 @@ index 4e6598cf5..cbd7ab3a8 100644
|
|||||||
this.world.broadcastEntityEffect(this, d(enumitemslot));
|
this.world.broadcastEntityEffect(this, d(enumitemslot));
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/server/ItemFireworks.java b/src/main/java/net/minecraft/server/ItemFireworks.java
|
diff --git a/src/main/java/net/minecraft/server/ItemFireworks.java b/src/main/java/net/minecraft/server/ItemFireworks.java
|
||||||
index 9e86ef4ce..832cea636 100644
|
index 9e86ef4c..832cea63 100644
|
||||||
--- a/src/main/java/net/minecraft/server/ItemFireworks.java
|
--- a/src/main/java/net/minecraft/server/ItemFireworks.java
|
||||||
+++ b/src/main/java/net/minecraft/server/ItemFireworks.java
|
+++ b/src/main/java/net/minecraft/server/ItemFireworks.java
|
||||||
@@ -38,6 +38,14 @@ public class ItemFireworks extends Item {
|
@@ -38,6 +38,14 @@ public class ItemFireworks extends Item {
|
||||||
@@ -64,7 +64,7 @@ index 9e86ef4ce..832cea636 100644
|
|||||||
itemstack.subtract(1);
|
itemstack.subtract(1);
|
||||||
} else ((EntityPlayer) entityhuman).getBukkitEntity().updateInventory();
|
} else ((EntityPlayer) entityhuman).getBukkitEntity().updateInventory();
|
||||||
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
|
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
|
||||||
index 0e164840f..d9b63547d 100644
|
index 0e164840..d9b63547 100644
|
||||||
--- a/src/main/java/net/minecraft/server/ItemStack.java
|
--- a/src/main/java/net/minecraft/server/ItemStack.java
|
||||||
+++ b/src/main/java/net/minecraft/server/ItemStack.java
|
+++ b/src/main/java/net/minecraft/server/ItemStack.java
|
||||||
@@ -393,7 +393,7 @@ public final class ItemStack {
|
@@ -393,7 +393,7 @@ public final class ItemStack {
|
||||||
@@ -90,7 +90,7 @@ index 0e164840f..d9b63547d 100644
|
|||||||
if (this.count == 1 && t0 instanceof EntityHuman) {
|
if (this.count == 1 && t0 instanceof EntityHuman) {
|
||||||
org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerItemBreakEvent((EntityHuman) t0, this);
|
org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerItemBreakEvent((EntityHuman) t0, this);
|
||||||
diff --git a/src/main/java/net/minecraft/server/ItemTrident.java b/src/main/java/net/minecraft/server/ItemTrident.java
|
diff --git a/src/main/java/net/minecraft/server/ItemTrident.java b/src/main/java/net/minecraft/server/ItemTrident.java
|
||||||
index c40815736..28f9f6e40 100644
|
index c4081573..28f9f6e4 100644
|
||||||
--- a/src/main/java/net/minecraft/server/ItemTrident.java
|
--- a/src/main/java/net/minecraft/server/ItemTrident.java
|
||||||
+++ b/src/main/java/net/minecraft/server/ItemTrident.java
|
+++ b/src/main/java/net/minecraft/server/ItemTrident.java
|
||||||
@@ -93,6 +93,16 @@ public class ItemTrident extends Item {
|
@@ -93,6 +93,16 @@ public class ItemTrident extends Item {
|
||||||
@@ -111,7 +111,7 @@ index c40815736..28f9f6e40 100644
|
|||||||
entityhuman.q(20);
|
entityhuman.q(20);
|
||||||
if (entityhuman.onGround) {
|
if (entityhuman.onGround) {
|
||||||
diff --git a/src/main/java/net/minecraft/server/Vec3D.java b/src/main/java/net/minecraft/server/Vec3D.java
|
diff --git a/src/main/java/net/minecraft/server/Vec3D.java b/src/main/java/net/minecraft/server/Vec3D.java
|
||||||
index d2eb861af..b89f9fe7b 100644
|
index d2eb861a..b89f9fe7 100644
|
||||||
--- a/src/main/java/net/minecraft/server/Vec3D.java
|
--- a/src/main/java/net/minecraft/server/Vec3D.java
|
||||||
+++ b/src/main/java/net/minecraft/server/Vec3D.java
|
+++ b/src/main/java/net/minecraft/server/Vec3D.java
|
||||||
@@ -93,6 +93,7 @@ public class Vec3D implements IPosition {
|
@@ -93,6 +93,7 @@ public class Vec3D implements IPosition {
|
||||||
@@ -123,7 +123,7 @@ index d2eb861af..b89f9fe7b 100644
|
|||||||
return this.x * this.x + this.y * this.y + this.z * this.z;
|
return this.x * this.x + this.y * this.y + this.z * this.z;
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||||
index 489083928..b235c8769 100644
|
index 48908392..b235c876 100644
|
||||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||||
@@ -128,4 +128,17 @@ public class PurpurWorldConfig {
|
@@ -128,4 +128,17 @@ public class PurpurWorldConfig {
|
||||||
|
|||||||
Reference in New Issue
Block a user