Files
2020-02-16 17:37:02 +08:00

38 lines
1.6 KiB
Diff

--- ../src-base/minecraft/net/minecraft/block/BlockCake.java
+++ ../src-work/minecraft/net/minecraft/block/BlockCake.java
@@ -8,6 +8,7 @@
import net.minecraft.block.state.BlockStateContainer;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
@@ -71,7 +72,25 @@
else
{
player.addStat(StatList.CAKE_SLICES_EATEN);
- player.getFoodStats().addStats(2, 0.1F);
+ // player.getFoodStats().addStats(2, 0.1F);
+ int oldFoodLevel = player.getFoodStats().foodLevel;
+
+ org.bukkit.event.entity.FoodLevelChangeEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callFoodLevelChangeEvent(player, 2 + oldFoodLevel);
+
+ if (!event.isCancelled()) {
+ // CatServer - AppleCore Comp
+ int newFoodLevel = event.getFoodLevel() - oldFoodLevel;
+ if (newFoodLevel >= 2) {
+ player.getFoodStats().addStats(2, 0.1F);
+ if (newFoodLevel > 2) {
+ player.getFoodStats().addStats(event.getFoodLevel() - oldFoodLevel - 2, 0.1F);
+ }
+ } else {
+ player.getFoodStats().addStats(event.getFoodLevel() - oldFoodLevel, 0.1F);
+ }
+ }
+
+ ((EntityPlayerMP) player).getBukkitEntity().sendHealthUpdate();
int i = ((Integer)state.getValue(BITES)).intValue();
if (i < 6)