SPIGOT-1505: PlayerItemMendEvent

By: Senmori <thesenmori@gmail.com>
This commit is contained in:
CraftBukkit/Spigot
2017-11-21 10:17:31 +11:00
parent 587b05b37b
commit 1256b90fd8
2 changed files with 26 additions and 3 deletions

View File

@@ -46,8 +46,22 @@
}
this.move(EnumMoveType.SELF, this.motX, this.motY, this.motZ);
@@ -153,7 +172,7 @@
}
@@ -148,12 +167,18 @@
if (!itemstack.isEmpty() && itemstack.h()) {
int i = Math.min(this.d(this.value), itemstack.i());
- this.value -= this.c(i);
- itemstack.setData(itemstack.i() - i);
- }
+ // CraftBukkit start
+ org.bukkit.event.player.PlayerItemMendEvent event = CraftEventFactory.callPlayerItemMendEvent(entityhuman, this, itemstack, i);
+ i = event.getRepairAmount();
+ if (!event.isCancelled()) {
+ this.value -= this.c(i);
+ itemstack.setData(itemstack.i() - i);
+ }
+ // CraftBukkit end
+ }
if (this.value > 0) {
- entityhuman.giveExp(this.value);
@@ -55,7 +69,7 @@
}
this.die();
@@ -175,6 +194,24 @@
@@ -175,6 +200,24 @@
}
public static int getOrbValue(int i) {