diff --git a/patches/server/0010-Integrate-ridables.patch b/patches/server/0010-Integrate-ridables.patch index f5f7eee4f..eeb8b0b9c 100644 --- a/patches/server/0010-Integrate-ridables.patch +++ b/patches/server/0010-Integrate-ridables.patch @@ -1,11 +1,11 @@ -From 676acbfb7f8a5a1ca13643a7c5509e34309749b1 Mon Sep 17 00:00:00 2001 +From dffe3b8944d40fb3abe77cbfc920ae0631dbb86a Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Tue, 30 Apr 2019 19:17:21 -0500 Subject: [PATCH] Integrate ridables --- .../server/ControllerLookDolphin.java | 4 +- - .../java/net/minecraft/server/Entity.java | 35 ++++- + .../java/net/minecraft/server/Entity.java | 37 +++++- .../net/minecraft/server/EntityAgeable.java | 2 +- .../java/net/minecraft/server/EntityBat.java | 21 +++ .../net/minecraft/server/EntityBlaze.java | 15 ++- @@ -15,7 +15,7 @@ Subject: [PATCH] Integrate ridables .../java/net/minecraft/server/EntityCod.java | 1 + .../java/net/minecraft/server/EntityCow.java | 2 + .../net/minecraft/server/EntityCreeper.java | 57 ++++++++ - .../net/minecraft/server/EntityDolphin.java | 19 ++- + .../net/minecraft/server/EntityDolphin.java | 21 ++- .../net/minecraft/server/EntityDrowned.java | 7 +- .../minecraft/server/EntityEnderDragon.java | 1 + .../net/minecraft/server/EntityEnderman.java | 2 + @@ -83,7 +83,7 @@ Subject: [PATCH] Integrate ridables .../pathfinder/PathfinderGoalHasRider.java | 20 +++ .../craftbukkit/entity/CraftLivingEntity.java | 10 ++ .../bukkit/craftbukkit/entity/CraftMob.java | 12 ++ - 79 files changed, 1256 insertions(+), 114 deletions(-) + 79 files changed, 1258 insertions(+), 116 deletions(-) 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/ControllerMoveWASDFlying.java @@ -113,7 +113,7 @@ index 454627f65..df3d6cf28 100644 this.d = false; 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 -index dd787b7b6..fe7aa9d81 100644 +index dd787b7b6..27ae09757 100644 --- a/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 @@ -124,16 +124,18 @@ index dd787b7b6..fe7aa9d81 100644 Throwable addedToWorldStack; // Paper - entity debug public CraftEntity getBukkitEntity() { if (bukkitEntity == null) { -@@ -100,7 +101,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -100,8 +101,10 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke private final EntityTypes f; private int id; public boolean i; public final boolean blocksEntitySpawning() { return this.i; } // Paper - OBFHELPER + public boolean isRidable = false;// Purpur public final List passengers; +- protected int j; + private EntityHuman rider; public EntityHuman getRider() { return rider; } // Purpur - protected int j; ++ protected int j; public int getRideCooldown() { return j; } // Purpur - OBFHELPER private Entity vehicle; public boolean attachedToPlayer; + public World world; @@ -134,7 +137,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke public double H; public double I; @@ -431,7 +433,7 @@ index 1e3782122..c0b066d18 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityCow.java b/src/main/java/net/minecraft/server/EntityCow.java -index 0c00a86a8..2e3d6b657 100644 +index 2446e61c2..5c8fef33b 100644 --- a/src/main/java/net/minecraft/server/EntityCow.java +++ b/src/main/java/net/minecraft/server/EntityCow.java @@ -9,11 +9,13 @@ public class EntityCow extends EntityAnimal { @@ -527,7 +529,7 @@ index bcb727630..038ff1d93 100644 + // Purpur end } diff --git a/src/main/java/net/minecraft/server/EntityDolphin.java b/src/main/java/net/minecraft/server/EntityDolphin.java -index 063fb7053..a3972b8e6 100644 +index 063fb7053..2dfcea548 100644 --- a/src/main/java/net/minecraft/server/EntityDolphin.java +++ b/src/main/java/net/minecraft/server/EntityDolphin.java @@ -18,6 +18,7 @@ public class EntityDolphin extends EntityWaterAnimal { @@ -546,6 +548,15 @@ index 063fb7053..a3972b8e6 100644 this.goalSelector.a(1, new EntityDolphin.b(this)); this.goalSelector.a(2, new EntityDolphin.c(this, 4.0D)); this.goalSelector.a(4, new PathfinderGoalRandomSwim(this, 1.0D, 10)); +@@ -163,7 +165,7 @@ public class EntityDolphin extends EntityWaterAnimal { + + @Override + protected boolean n(Entity entity) { +- return true; ++ return getRideCooldown() <= 0; // Purpur - make dolphin honor ride cooldown like all other non-boss mobs + } + + @Override @@ -524,7 +526,7 @@ public class EntityDolphin extends EntityWaterAnimal { } } @@ -560,8 +571,7 @@ index 063fb7053..a3972b8e6 100644 } + // Purpur start - @Override -- public void a() { ++ @Override + public void tick(EntityHuman rider) { + if (this.i.getAirTicks() < 150) { + // if drowning override player WASD controls to find air @@ -572,7 +582,8 @@ index 063fb7053..a3972b8e6 100644 + } + } + -+ @Override + @Override +- public void a() { + public void tick() { + // Purpur end if (this.i.isInWater()) { @@ -1093,7 +1104,7 @@ index 1160929e1..3318e274f 100644 + // Purpur end } diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 5d3e48ba6..2a943f316 100644 +index cd73cde8d..8b5ceec8d 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -362,9 +362,21 @@ public abstract class EntityHuman extends EntityLiving { @@ -2660,7 +2671,7 @@ index d2bd3bb31..e67980b69 100644 } diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java -index 0bfcef2d3..61adf7d63 100644 +index 960361ff7..d3409155e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java @@ -131,6 +131,11 @@ public class PurpurConfig {