mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 08:27:43 +01:00
Really fix non-ridables AI with passenger this time
This commit is contained in:
@@ -1,11 +1,11 @@
|
|||||||
From fb9dfc65c23a81909d5b38da1387b7700e69cd1a Mon Sep 17 00:00:00 2001
|
From c7360b84c003a6df68bf1f545bf99e3df39d0e9a Mon Sep 17 00:00:00 2001
|
||||||
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
||||||
Date: Tue, 30 Apr 2019 19:17:21 -0500
|
Date: Tue, 30 Apr 2019 19:17:21 -0500
|
||||||
Subject: [PATCH] Integrate ridables
|
Subject: [PATCH] Integrate ridables
|
||||||
|
|
||||||
---
|
---
|
||||||
.../server/ControllerLookDolphin.java | 4 +-
|
.../server/ControllerLookDolphin.java | 4 +-
|
||||||
.../java/net/minecraft/server/Entity.java | 31 ++++-
|
.../java/net/minecraft/server/Entity.java | 35 +++++-
|
||||||
.../net/minecraft/server/EntityAgeable.java | 2 +-
|
.../net/minecraft/server/EntityAgeable.java | 2 +-
|
||||||
.../java/net/minecraft/server/EntityBat.java | 22 ++++
|
.../java/net/minecraft/server/EntityBat.java | 22 ++++
|
||||||
.../net/minecraft/server/EntityBlaze.java | 15 ++-
|
.../net/minecraft/server/EntityBlaze.java | 15 ++-
|
||||||
@@ -134,7 +134,7 @@ Subject: [PATCH] Integrate ridables
|
|||||||
.../controller/ControllerMoveWASDWater.java | 42 +++++++
|
.../controller/ControllerMoveWASDWater.java | 42 +++++++
|
||||||
.../craftbukkit/entity/CraftLivingEntity.java | 10 ++
|
.../craftbukkit/entity/CraftLivingEntity.java | 10 ++
|
||||||
.../bukkit/craftbukkit/entity/CraftMob.java | 12 ++
|
.../bukkit/craftbukkit/entity/CraftMob.java | 12 ++
|
||||||
130 files changed, 1236 insertions(+), 107 deletions(-)
|
130 files changed, 1240 insertions(+), 107 deletions(-)
|
||||||
create mode 100644 src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java
|
create mode 100644 src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java
|
||||||
create mode 100644 src/main/java/net/pl3x/purpur/controller/ControllerMoveWASD.java
|
create mode 100644 src/main/java/net/pl3x/purpur/controller/ControllerMoveWASD.java
|
||||||
create mode 100644 src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlying.java
|
create mode 100644 src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlying.java
|
||||||
@@ -163,7 +163,7 @@ index 454627f65e..df3d6cf281 100644
|
|||||||
this.d = false;
|
this.d = false;
|
||||||
this.a.aM = this.a(this.a.aM, this.h() + 20.0F, this.b);
|
this.a.aM = this.a(this.a.aM, this.h() + 20.0F, this.b);
|
||||||
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 352b6dfb3e..f78d721941 100644
|
index 352b6dfb3e..87245d3e12 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
|
||||||
@@ -78,6 +78,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
@@ -78,6 +78,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
||||||
@@ -193,32 +193,35 @@ index 352b6dfb3e..f78d721941 100644
|
|||||||
public boolean noclip;
|
public boolean noclip;
|
||||||
public float M;
|
public float M;
|
||||||
protected final Random random;
|
protected final Random random;
|
||||||
@@ -2070,8 +2073,10 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
@@ -2075,7 +2078,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
||||||
return false;
|
|
||||||
}
|
|
||||||
// Spigot end
|
|
||||||
- if (!this.world.isClientSide && entity instanceof EntityHuman && !(this.getRidingPassenger() instanceof EntityHuman)) {
|
|
||||||
+ if (!this.world.isClientSide && isRidable && entity instanceof EntityHuman && !(this.getRidingPassenger() instanceof EntityHuman)) { // Purpur
|
|
||||||
this.passengers.add(0, entity);
|
|
||||||
+ this.rider = (EntityHuman) entity; // Purpur
|
|
||||||
+ onMount(rider); // Purpur
|
|
||||||
} else {
|
} else {
|
||||||
this.passengers.add(entity);
|
this.passengers.add(entity);
|
||||||
}
|
}
|
||||||
@@ -2110,6 +2115,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
-
|
||||||
|
+ // Purpur start
|
||||||
|
+ if (isRidable && passengers.get(0) == entity) {
|
||||||
|
+ EntityHuman entityhuman = (EntityHuman) entity;
|
||||||
|
+ onMount(entityhuman);
|
||||||
|
+ this.rider = entityhuman;
|
||||||
|
+ }
|
||||||
|
+ // Purpur end
|
||||||
|
}
|
||||||
|
return true; // CraftBukkit
|
||||||
|
}
|
||||||
|
@@ -2110,6 +2119,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
// Spigot end
|
// Spigot end
|
||||||
+ // Purpur start
|
+ // Purpur start
|
||||||
+ if (passengers.get(0) == rider) {
|
+ if (rider != null && passengers.get(0) == rider) {
|
||||||
+ onDismount(rider);
|
+ onDismount(rider);
|
||||||
+ rider = null;
|
+ this.rider = null;
|
||||||
+ }
|
+ }
|
||||||
+ // Purpur end
|
+ // Purpur end
|
||||||
this.passengers.remove(entity);
|
this.passengers.remove(entity);
|
||||||
entity.j = 60;
|
entity.j = 60;
|
||||||
}
|
}
|
||||||
@@ -3221,4 +3232,20 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
@@ -3221,4 +3236,20 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
||||||
public void setMot(double d0, double d1, double d2) {
|
public void setMot(double d0, double d1, double d2) {
|
||||||
this.setMot(new Vec3D(d0, d1, d2));
|
this.setMot(new Vec3D(d0, d1, d2));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user