Add pre-unbreaking amount to PlayerItemDamageEvent (#7724)
This commit is contained in:
parent
8bfb1d22f8
commit
c66b0f99f2
3 changed files with 82 additions and 0 deletions
|
@ -0,0 +1,52 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: HexedHero <6012891+HexedHero@users.noreply.github.com>
|
||||
Date: Sun, 10 Apr 2022 06:21:19 +0100
|
||||
Subject: [PATCH] Add pre-unbreaking amount to PlayerItemDamageEvent
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/event/player/PlayerItemDamageEvent.java b/src/main/java/org/bukkit/event/player/PlayerItemDamageEvent.java
|
||||
index 2d049633998b3965ce0f4a6a4cea3169da0d5658..a2993c7434c9775483a1b4628f2f66454b0d666d 100644
|
||||
--- a/src/main/java/org/bukkit/event/player/PlayerItemDamageEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/player/PlayerItemDamageEvent.java
|
||||
@@ -15,12 +15,21 @@ public class PlayerItemDamageEvent extends PlayerEvent implements Cancellable {
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
private final ItemStack item;
|
||||
private int damage;
|
||||
+ private int originalDamage; // Paper - Add pre-reduction damage
|
||||
private boolean cancelled = false;
|
||||
|
||||
+ @Deprecated // Paper - Add pre-reduction damage
|
||||
public PlayerItemDamageEvent(@NotNull Player player, @NotNull ItemStack what, int damage) {
|
||||
+ // Paper start - Add pre-reduction damage
|
||||
+ this(player, what, damage, damage);
|
||||
+ }
|
||||
+
|
||||
+ public PlayerItemDamageEvent(@NotNull Player player, @NotNull ItemStack what, int damage, int originalDamage) {
|
||||
super(player);
|
||||
this.item = what;
|
||||
this.damage = damage;
|
||||
+ this.originalDamage = originalDamage;
|
||||
+ // Paper end
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -42,6 +51,19 @@ public class PlayerItemDamageEvent extends PlayerEvent implements Cancellable {
|
||||
return damage;
|
||||
}
|
||||
|
||||
+ // Paper start - Add pre-reduction damage
|
||||
+ /**
|
||||
+ * Gets the amount of durability damage this item would have taken before
|
||||
+ * the Unbreaking reduction. If the item has no Unbreaking level then
|
||||
+ * this value will be the same as the {@link #getDamage()} value.
|
||||
+ *
|
||||
+ * @return pre-reduction damage amount
|
||||
+ */
|
||||
+ public int getOriginalDamage() {
|
||||
+ return originalDamage;
|
||||
+ }
|
||||
+ // Paper end
|
||||
+
|
||||
public void setDamage(int damage) {
|
||||
this.damage = damage;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue