aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/api/0266-add-get-set-drop-chance-to-EntityEquipment.patch
blob: d75f180c948435ceafdcae07494bc9e94f5b6ee4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Thu, 22 Apr 2021 00:28:20 -0700
Subject: [PATCH] add get-set drop chance to EntityEquipment


diff --git a/src/main/java/org/bukkit/inventory/EntityEquipment.java b/src/main/java/org/bukkit/inventory/EntityEquipment.java
index 127302aa7c22f59438de66fffa0b03ae84a2a8ad..1b34286fb6cbedb3841c84c499eb626f61885126 100644
--- a/src/main/java/org/bukkit/inventory/EntityEquipment.java
+++ b/src/main/java/org/bukkit/inventory/EntityEquipment.java
@@ -527,4 +527,34 @@ public interface EntityEquipment {
      */
     @NotNull // Paper
     Entity getHolder();
+    // Paper start
+    /**
+     * Gets the drop chance of specified slot.
+     *
+     * <ul>
+     * <li>A drop chance of 0.0F will never drop
+     * <li>A drop chance of 1.0F will always drop if killed by a player
+     * <li>A drop chance of greater than 1.0F will always drop if killed by anything
+     * </ul>
+     *
+     * @param slot the slot to get the drop chance of
+     * @return the drop chance for the slot
+     */
+    float getDropChance(@NotNull EquipmentSlot slot);
+
+    /**
+     * Sets the drop chance of the specified slot.
+     *
+     * <ul>
+     * <li>A drop chance of 0.0F will never drop
+     * <li>A drop chance of 1.0F will always drop if killed by a player
+     * <li>A drop chance of greater than 1.0F will always drop if killed by anything
+     * </ul>
+     *
+     * @param slot the slot to set the drop chance of
+     * @param chance the drop chance for the slot
+     * @throws UnsupportedOperationException when called on non-{@link Mob} entities
+     */
+    void setDropChance(@NotNull EquipmentSlot slot, float chance);
+    // Paper end
 }