mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-18 17:07:43 +01:00
53 lines
2.2 KiB
Diff
53 lines
2.2 KiB
Diff
From 228403a7282633e9189efbb99bda4207eb192c26 Mon Sep 17 00:00:00 2001
|
|
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
|
Date: Fri, 18 Oct 2019 23:34:48 -0500
|
|
Subject: [PATCH] Add entity jump API
|
|
|
|
---
|
|
.../java/net/minecraft/server/EntityLiving.java | 2 ++
|
|
.../craftbukkit/entity/CraftLivingEntity.java | 14 ++++++++++++++
|
|
2 files changed, 16 insertions(+)
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
|
index 7d424040cc..764021c17d 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityLiving.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
|
|
@@ -2617,8 +2617,10 @@ public abstract class EntityLiving extends Entity {
|
|
} else if (this.aH()) {
|
|
this.c(TagsFluid.LAVA);
|
|
} else if ((this.onGround || this.N > 0.0D && this.N <= 0.4D) && this.jumpTicks == 0) {
|
|
+ if (new net.pl3x.purpur.event.entity.EntityJumpEvent(getBukkitLivingEntity()).callEvent()) { // Purpur
|
|
this.jump();
|
|
this.jumpTicks = 10;
|
|
+ } // Purpur
|
|
}
|
|
} else {
|
|
this.jumpTicks = 0;
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
|
index ffd1372284..e408c89220 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
|
@@ -733,5 +733,19 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
|
public void setCanBeRiddenInWater(boolean canBeRiddenInWater) {
|
|
getHandle().setCanBeRiddenInWater(canBeRiddenInWater);
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public boolean isJumping() {
|
|
+ return getHandle().isJumping();
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public void setJumping(boolean jumping) {
|
|
+ getHandle().setJumping(jumping);
|
|
+ if (jumping && getHandle() instanceof EntityInsentient) {
|
|
+ // this is needed to actually make a mob jump
|
|
+ ((EntityInsentient) getHandle()).getControllerJump().jump();
|
|
+ }
|
|
+ }
|
|
// Purpur end
|
|
}
|
|
--
|
|
2.24.0.rc1
|
|
|