summaryrefslogtreecommitdiffstats
path: root/nms-patches
diff options
context:
space:
mode:
authorSenmori <thesenmori@gmail.com>2017-11-21 10:17:31 +1100
committermd_5 <git@md-5.net>2017-11-21 10:21:20 +1100
commitbdb88226252f029f6b752c0a83740eb74f7a4ba8 (patch)
treedc6aa5ebc379815bcfc76b3c7188aab72bc95b05 /nms-patches
parent19ed80cef7d8ff85a368bd8459c1d91ef0149f61 (diff)
downloadcraftbukkit-bdb88226252f029f6b752c0a83740eb74f7a4ba8.tar
craftbukkit-bdb88226252f029f6b752c0a83740eb74f7a4ba8.tar.gz
craftbukkit-bdb88226252f029f6b752c0a83740eb74f7a4ba8.tar.lz
craftbukkit-bdb88226252f029f6b752c0a83740eb74f7a4ba8.tar.xz
craftbukkit-bdb88226252f029f6b752c0a83740eb74f7a4ba8.zip
SPIGOT-1505: PlayerItemMendEvent
Diffstat (limited to 'nms-patches')
-rw-r--r--nms-patches/EntityExperienceOrb.patch20
1 files changed, 17 insertions, 3 deletions
diff --git a/nms-patches/EntityExperienceOrb.patch b/nms-patches/EntityExperienceOrb.patch
index 24aa1aba..bd249662 100644
--- a/nms-patches/EntityExperienceOrb.patch
+++ b/nms-patches/EntityExperienceOrb.patch
@@ -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) {