summaryrefslogtreecommitdiffstats
path: root/src/main/java/net/minecraft/server/MobEffectList.java
diff options
context:
space:
mode:
authorGJ <gjmcferrin@gmail.com>2014-03-27 08:27:59 -0400
committerTravis Watkins <amaranth@ubuntu.com>2014-04-18 09:01:11 -0500
commitd4fe10394a2105f22e5bd2b519fb596fcaacd801 (patch)
tree5adc7d3298dab7714a3777afc37a82f032ef3aa2 /src/main/java/net/minecraft/server/MobEffectList.java
parent286c71329d25b6646e4da932ca6723a056b152cf (diff)
downloadcraftbukkit-d4fe10394a2105f22e5bd2b519fb596fcaacd801.tar
craftbukkit-d4fe10394a2105f22e5bd2b519fb596fcaacd801.tar.gz
craftbukkit-d4fe10394a2105f22e5bd2b519fb596fcaacd801.tar.lz
craftbukkit-d4fe10394a2105f22e5bd2b519fb596fcaacd801.tar.xz
craftbukkit-d4fe10394a2105f22e5bd2b519fb596fcaacd801.zip
[Bleeding] Add many missing event calls.
Diffstat (limited to 'src/main/java/net/minecraft/server/MobEffectList.java')
-rw-r--r--src/main/java/net/minecraft/server/MobEffectList.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/main/java/net/minecraft/server/MobEffectList.java b/src/main/java/net/minecraft/server/MobEffectList.java
index dbbe63ce..a66e66cb 100644
--- a/src/main/java/net/minecraft/server/MobEffectList.java
+++ b/src/main/java/net/minecraft/server/MobEffectList.java
@@ -95,7 +95,18 @@ public class MobEffectList {
((EntityHuman) entityliving).a(0.025F * (float) (i + 1));
} else if (this.id == SATURATION.id && entityliving instanceof EntityHuman) {
if (!entityliving.world.isStatic) {
- ((EntityHuman) entityliving).getFoodData().eat(i + 1, 1.0F);
+ // CraftBukkit start
+ EntityHuman entityhuman = (EntityHuman) entityliving;
+ int oldFoodLevel = entityhuman.getFoodData().foodLevel;
+
+ org.bukkit.event.entity.FoodLevelChangeEvent event = CraftEventFactory.callFoodLevelChangeEvent(entityhuman, i + 1 + oldFoodLevel);
+
+ if (!event.isCancelled()) {
+ entityhuman.getFoodData().eat(event.getFoodLevel() - oldFoodLevel, 1.0F);
+ }
+
+ ((EntityPlayer) entityhuman).playerConnection.sendPacket(new PacketPlayOutUpdateHealth(((EntityPlayer) entityhuman).getBukkitEntity().getScaledHealth(), entityhuman.getFoodData().foodLevel, entityhuman.getFoodData().saturationLevel));
+ // CraftBukkit end
}
} else if ((this.id != HEAL.id || entityliving.aQ()) && (this.id != HARM.id || !entityliving.aQ())) {
if (this.id == HARM.id && !entityliving.aQ() || this.id == HEAL.id && entityliving.aQ()) {