54 lines
1.8 KiB
Diff
54 lines
1.8 KiB
Diff
|
From ff71cdc936e5e71adb9c467dbcfaf4cfceb116e8 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 23cc8b5e..a882323d 100644
|
||
|
--- a/src/main/java/org/bukkit/entity/Player.java
|
||
|
+++ b/src/main/java/org/bukkit/entity/Player.java
|
||
|
@@ -918,12 +918,33 @@ public interface Player extends HumanEntity, Conversable, CommandSender, Offline
|
||
|
*/
|
||
|
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
|
||
|
+ * @return
|
||
|
+ */
|
||
|
+ public int applyMending(int amount);
|
||
|
+ // Paper end
|
||
|
|
||
|
/**
|
||
|
* Gives the player the amount of experience levels specified. Levels can
|
||
|
--
|
||
|
2.15.1
|
||
|
|