43 lines
2.5 KiB
Diff
43 lines
2.5 KiB
Diff
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||
|
From: Zach Brown <zach.brown@destroystokyo.com>
|
||
|
Date: Fri, 22 Apr 2016 01:43:11 -0500
|
||
|
Subject: [PATCH] EntityRegainHealthEvent isFastRegen API
|
||
|
|
||
|
Don't even get me started
|
||
|
|
||
|
diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java
|
||
|
index 375284b7e321cb03a7a30aedea165ca7a2fd1091..db5c0d2da9ed9993ee83adccfa74e77f4e364f2a 100644
|
||
|
--- a/src/main/java/net/minecraft/world/entity/EntityLiving.java
|
||
|
+++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java
|
||
|
@@ -1130,10 +1130,16 @@ public abstract class EntityLiving extends Entity {
|
||
|
}
|
||
|
|
||
|
public void heal(float f, EntityRegainHealthEvent.RegainReason regainReason) {
|
||
|
+ // Paper start - Forward
|
||
|
+ heal(f, regainReason, false);
|
||
|
+ }
|
||
|
+
|
||
|
+ public void heal(float f, EntityRegainHealthEvent.RegainReason regainReason, boolean isFastRegen) {
|
||
|
+ // Paper end
|
||
|
float f1 = this.getHealth();
|
||
|
|
||
|
if (f1 > 0.0F) {
|
||
|
- EntityRegainHealthEvent event = new EntityRegainHealthEvent(this.getBukkitEntity(), f, regainReason);
|
||
|
+ EntityRegainHealthEvent event = new EntityRegainHealthEvent(this.getBukkitEntity(), f, regainReason, isFastRegen); // Paper
|
||
|
// Suppress during worldgen
|
||
|
if (this.valid) {
|
||
|
this.world.getServer().getPluginManager().callEvent(event);
|
||
|
diff --git a/src/main/java/net/minecraft/world/food/FoodMetaData.java b/src/main/java/net/minecraft/world/food/FoodMetaData.java
|
||
|
index 7ed321acba6d46159f7d67b8d10a0a3e06ac88a9..e455b25b0809af15f6fde957121d0110da7eb08f 100644
|
||
|
--- a/src/main/java/net/minecraft/world/food/FoodMetaData.java
|
||
|
+++ b/src/main/java/net/minecraft/world/food/FoodMetaData.java
|
||
|
@@ -87,7 +87,7 @@ public class FoodMetaData {
|
||
|
if (this.foodTickTimer >= this.saturatedRegenRate) { // CraftBukkit
|
||
|
float f = Math.min(this.saturationLevel, 6.0F);
|
||
|
|
||
|
- entityhuman.heal(f / 6.0F, org.bukkit.event.entity.EntityRegainHealthEvent.RegainReason.SATIATED); // CraftBukkit - added RegainReason
|
||
|
+ entityhuman.heal(f / 6.0F, org.bukkit.event.entity.EntityRegainHealthEvent.RegainReason.SATIATED, true); // CraftBukkit - added RegainReason // Paper - This is fast regen
|
||
|
// this.a(f); CraftBukkit - EntityExhaustionEvent
|
||
|
entityhuman.applyExhaustion(f, org.bukkit.event.entity.EntityExhaustionEvent.ExhaustionReason.REGEN); // CraftBukkit - EntityExhaustionEvent
|
||
|
this.foodTickTimer = 0;
|