Skip to content

Commit c3270c5

Browse files
committed
no negative damage
1 parent 318e249 commit c3270c5

File tree

4 files changed

+15
-13
lines changed

4 files changed

+15
-13
lines changed

patches/server/0680-Expand-PlayerItemDamageEvent.patch

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] Expand PlayerItemDamageEvent
55

66

77
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
8-
index 18f84d54ec72debec652adb22067e11aa058b238..1623c127c83c6704989f8f06f4de8123cc0c24cf 100644
8+
index 18f84d54ec72debec652adb22067e11aa058b238..9209f5509affbd3cbcf777b75b0868c898ee913f 100644
99
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
1010
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
1111
@@ -698,10 +698,11 @@ public final class ItemStack implements DataComponentHolder {
@@ -21,16 +21,18 @@ index 18f84d54ec72debec652adb22067e11aa058b238..1623c127c83c6704989f8f06f4de8123
2121
event.getPlayer().getServer().getPluginManager().callEvent(event);
2222

2323
if (j != event.getDamage() || event.isCancelled()) {
24-
@@ -761,6 +762,14 @@ public final class ItemStack implements DataComponentHolder {
24+
@@ -761,6 +762,16 @@ public final class ItemStack implements DataComponentHolder {
2525
return;
2626
}
2727

2828
+ // Paper start - Expand PlayerItemDamageEvent
29-
+ PlayerItemDamageEvent event = new PlayerItemDamageEvent(entityplayer.getBukkitEntity(), CraftItemStack.asCraftMirror(this), j, amount);
30-
+ if (!event.callEvent() || event.getDamage() == 0) {
31-
+ return;
29+
+ if (j > 0) {
30+
+ PlayerItemDamageEvent event = new PlayerItemDamageEvent(entityplayer.getBukkitEntity(), CraftItemStack.asCraftMirror(this), j, amount);
31+
+ if (!event.callEvent() || event.getDamage() == 0) {
32+
+ return;
33+
+ }
34+
+ j = event.getDamage();
3235
+ }
33-
+ j = event.getDamage();
3436
+ // Paper end - Expand PlayerItemDamageEvent
3537
+
3638
int k = Math.min(this.getDamageValue() + j, this.getMaxDamage() - 1);

patches/server/0756-ItemStack-damage-API.patch

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ the logic associated with damaging them
1111
public net.minecraft.world.entity.LivingEntity entityEventForEquipmentBreak(Lnet/minecraft/world/entity/EquipmentSlot;)B
1212

1313
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
14-
index 1623c127c83c6704989f8f06f4de8123cc0c24cf..f0c0f2fe612874ceffcef442a537e32d5d8c395d 100644
14+
index 9209f5509affbd3cbcf777b75b0868c898ee913f..5dc286093f0befdb0988427f6134f752e62d0dc5 100644
1515
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
1616
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
1717
@@ -698,8 +698,13 @@ public final class ItemStack implements DataComponentHolder {
@@ -43,7 +43,7 @@ index 1623c127c83c6704989f8f06f4de8123cc0c24cf..f0c0f2fe612874ceffcef442a537e32d
4343
}
4444

4545
private void applyDamage(int damage, @Nullable LivingEntity player, Consumer<Item> breakCallback) { // Paper - Add EntityDamageItemEvent
46-
@@ -779,6 +789,11 @@ public final class ItemStack implements DataComponentHolder {
46+
@@ -781,6 +791,11 @@ public final class ItemStack implements DataComponentHolder {
4747
}
4848

4949
public void hurtAndBreak(int amount, LivingEntity entity, EquipmentSlot slot) {
@@ -55,7 +55,7 @@ index 1623c127c83c6704989f8f06f4de8123cc0c24cf..f0c0f2fe612874ceffcef442a537e32d
5555
Level world = entity.level();
5656

5757
if (world instanceof ServerLevel worldserver) {
58-
@@ -791,8 +806,8 @@ public final class ItemStack implements DataComponentHolder {
58+
@@ -793,8 +808,8 @@ public final class ItemStack implements DataComponentHolder {
5959
}
6060

6161
this.hurtAndBreak(amount, worldserver, entity, (item) -> { // Paper - Add EntityDamageItemEvent

patches/server/0947-General-ItemMeta-fixes.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ public net/minecraft/world/level/block/entity/BlockEntity saveId(Lnet/minecraft/
1212
Co-authored-by: GhastCraftHD <julius.gruenberg@leghast.de>
1313

1414
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
15-
index 1377659d99694c928206b9665bc41d68ab5daf5a..5d39ddfbce3f8845f6798d241fd958f866fa8411 100644
15+
index 6c1b81967fe32802c895e3f9f8e199588c36be7f..4c684b665180f8485131542b161483c77c40b4ec 100644
1616
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
1717
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
18-
@@ -1387,6 +1387,11 @@ public final class ItemStack implements DataComponentHolder {
18+
@@ -1389,6 +1389,11 @@ public final class ItemStack implements DataComponentHolder {
1919
public void setItem(Item item) {
2020
this.bukkitStack = null; // Paper
2121
this.item = item;

patches/server/1044-Optimize-Hoppers.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,10 +62,10 @@ index 682417e20459ffd576e494e1a279c477589103ba..ccbd76a7d1a3c29759aec86c5780cab6
6262
gameprofilerfiller.push(() -> {
6363
String s = String.valueOf(worldserver);
6464
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
65-
index 222d4b71718a6f731981b411850668b986cdcd36..b1017ef7bdb922ed0f29218cc2986a1a439c1fad 100644
65+
index 57a5c7c26c77cb961f7b7a11ff866f65d042934c..1f05ab1aabae0ce4fae49e790833b8b6038263bb 100644
6666
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
6767
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
68-
@@ -894,10 +894,16 @@ public final class ItemStack implements DataComponentHolder {
68+
@@ -896,10 +896,16 @@ public final class ItemStack implements DataComponentHolder {
6969
}
7070

7171
public ItemStack copy() {

0 commit comments

Comments
 (0)