29a01de126
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 9a793cce Remove no longer applicable caveats to setPlayerListName 7137829e SPIGOT-4496: Undeprecate MapView.getId and make int de33ade0 Remove some draft API designations a35fa838 SPIGOT-4472: Add Consumer scheduler methods CraftBukkit Changes: 8cd538e6 SPIGOT-4498: Crash on startup b4ee04ba SPIGOT-4496: Undeprecate MapView.getId and make int ec937d0e SPIGOT-4472: Add Consumer scheduler methods Spigot Changes: a1f2566f Use monotonic time for watchdog bc4adcbf SPIGOT-4498: Crash on startup bb387e6c Rebuild patches
53 lines
1.9 KiB
Diff
53 lines
1.9 KiB
Diff
From 1537081482d80ea6cf1266b73f1c6c75d7f557a4 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Wed, 20 Dec 2017 17:38:07 -0500
|
|
Subject: [PATCH] Ability to apply mending to XP API
|
|
|
|
This allows plugins that give players the ability to apply the experience
|
|
points to the Item Mending formula, which will repair an item instead
|
|
of giving the player experience points.
|
|
|
|
Both an API To standalone mend, and apply mending logic to .giveExp has been added.
|
|
|
|
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
|
index 79c0e598a..5f3e085e3 100644
|
|
--- a/src/main/java/org/bukkit/entity/Player.java
|
|
+++ b/src/main/java/org/bukkit/entity/Player.java
|
|
@@ -938,12 +938,33 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
|
*/
|
|
public void resetPlayerWeather();
|
|
|
|
+ // Paper start
|
|
+ /**
|
|
+ * Gives the player the amount of experience specified.
|
|
+ *
|
|
+ * @param amount Exp amount to give
|
|
+ */
|
|
+ public default void giveExp(int amount) {
|
|
+ giveExp(amount, false);
|
|
+ }
|
|
/**
|
|
* Gives the player the amount of experience specified.
|
|
*
|
|
* @param amount Exp amount to give
|
|
+ * @param applyMending Mend players items with mending, with same behavior as picking up orbs. calls {@link #applyMending(int)}
|
|
*/
|
|
- public void giveExp(int amount);
|
|
+ public void giveExp(int amount, boolean applyMending);
|
|
+
|
|
+ /**
|
|
+ * Applies the mending effect to any items just as picking up an orb would.
|
|
+ *
|
|
+ * Can also be called with {@link #giveExp(int, boolean)} by passing true to applyMending
|
|
+ *
|
|
+ * @param amount Exp to apply
|
|
+ * @return the remaining experience
|
|
+ */
|
|
+ public int applyMending(int amount);
|
|
+ // Paper end
|
|
|
|
/**
|
|
* Gives the player the amount of experience levels specified. Levels can
|
|
--
|
|
2.19.1
|
|
|