mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 08:27: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>
|
||||
Date: Sun, 21 Jul 2019 18:06:20 -0500
|
||||
Subject: [PATCH] Ladders should not bypass cramming gamerule
|
||||
|
||||
---
|
||||
src/main/java/net/minecraft/server/Entity.java | 6 ++++++
|
||||
.../java/net/minecraft/server/EntityArmorStand.java | 2 +-
|
||||
src/main/java/net/minecraft/server/EntityBoat.java | 2 +-
|
||||
.../net/minecraft/server/EntityHorseAbstract.java | 2 +-
|
||||
src/main/java/net/minecraft/server/EntityLiving.java | 11 +++++++++--
|
||||
.../java/net/minecraft/server/IEntitySelector.java | 7 ++++++-
|
||||
6 files changed, 24 insertions(+), 6 deletions(-)
|
||||
src/main/java/net/minecraft/server/Entity.java | 4 ++++
|
||||
src/main/java/net/minecraft/server/EntityArmorStand.java | 2 +-
|
||||
src/main/java/net/minecraft/server/EntityBat.java | 2 +-
|
||||
src/main/java/net/minecraft/server/EntityBoat.java | 2 +-
|
||||
.../java/net/minecraft/server/EntityHorseAbstract.java | 2 +-
|
||||
src/main/java/net/minecraft/server/EntityLiving.java | 8 +++++---
|
||||
.../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
|
||||
index 26a30e1c0..00caabf3d 100644
|
||||
index 26a30e1c..770d2146 100644
|
||||
--- a/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() {
|
||||
+ // Purpur start
|
||||
+ return isCollidable(false);
|
||||
+ }
|
||||
+
|
||||
+ public boolean isCollidable(boolean ignoreClimbing) {
|
||||
+ // Purpur end
|
||||
return false;
|
||||
}
|
||||
|
||||
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
|
||||
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
|
||||
@@ -316,7 +316,7 @@ public class EntityArmorStand extends EntityLiving {
|
||||
@@ -42,8 +43,21 @@ index e516db270..2fb10f6c2 100644
|
||||
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
|
||||
index 32b7f7805..b5bcd1f80 100644
|
||||
index 32b7f780..b5bcd1f8 100644
|
||||
--- a/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 {
|
||||
@@ -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
|
||||
index 2177a4370..05a5169c1 100644
|
||||
index 2177a437..05a5169c 100644
|
||||
--- a/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
|
||||
@@ -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
|
||||
index aa60c0084..4e6598cf5 100644
|
||||
index aa60c008..84aebb91 100644
|
||||
--- a/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 {
|
||||
@@ -81,24 +95,47 @@ index aa60c0084..4e6598cf5 100644
|
||||
|
||||
if (!list.isEmpty()) {
|
||||
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
|
||||
public boolean isCollidable() {
|
||||
- public boolean isCollidable() {
|
||||
- return this.isAlive() && !this.isClimbing() && this.collides; // CraftBukkit
|
||||
+ // Purpur start
|
||||
+ return isCollidable(false);
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ // Purpur start
|
||||
+ public boolean isCollidable(boolean ignoreClimbing) {
|
||||
+ return this.isAlive() && (ignoreClimbing || !isClimbing()) && this.collides; // CraftBukkit
|
||||
+ // Purpur end
|
||||
}
|
||||
|
||||
@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
|
||||
index 56488b78d..7ef7fe228 100644
|
||||
index 56488b78..7ef7fe22 100644
|
||||
--- a/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 {
|
||||
|
||||
@@ -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>
|
||||
Date: Thu, 25 Jul 2019 18:07:37 -0500
|
||||
Subject: [PATCH] Implement elytra settings
|
||||
@@ -13,7 +13,7 @@ Subject: [PATCH] Implement elytra settings
|
||||
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
|
||||
index 4e6598cf5..cbd7ab3a8 100644
|
||||
index 84aebb91..1ad2176e 100644
|
||||
--- a/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 {
|
||||
@@ -36,7 +36,7 @@ index 4e6598cf5..cbd7ab3a8 100644
|
||||
}
|
||||
} else {
|
||||
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));
|
||||
}
|
||||
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
|
||||
+++ b/src/main/java/net/minecraft/server/ItemFireworks.java
|
||||
@@ -38,6 +38,14 @@ public class ItemFireworks extends Item {
|
||||
@@ -64,7 +64,7 @@ index 9e86ef4ce..832cea636 100644
|
||||
itemstack.subtract(1);
|
||||
} 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
|
||||
index 0e164840f..d9b63547d 100644
|
||||
index 0e164840..d9b63547 100644
|
||||
--- a/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 {
|
||||
@@ -90,7 +90,7 @@ index 0e164840f..d9b63547d 100644
|
||||
if (this.count == 1 && t0 instanceof EntityHuman) {
|
||||
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
|
||||
index c40815736..28f9f6e40 100644
|
||||
index c4081573..28f9f6e4 100644
|
||||
--- a/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 {
|
||||
@@ -111,7 +111,7 @@ index c40815736..28f9f6e40 100644
|
||||
entityhuman.q(20);
|
||||
if (entityhuman.onGround) {
|
||||
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
|
||||
+++ b/src/main/java/net/minecraft/server/Vec3D.java
|
||||
@@ -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;
|
||||
}
|
||||
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
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -128,4 +128,17 @@ public class PurpurWorldConfig {
|
||||
|
||||
Reference in New Issue
Block a user