mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-19 17:37:42 +01:00
Fix more issues with looting shears patch
This commit is contained in:
@@ -5,7 +5,7 @@ Subject: [PATCH] Shears can have looting enchantment
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/enchantments/EnchantmentTarget.java b/src/main/java/org/bukkit/enchantments/EnchantmentTarget.java
|
diff --git a/src/main/java/org/bukkit/enchantments/EnchantmentTarget.java b/src/main/java/org/bukkit/enchantments/EnchantmentTarget.java
|
||||||
index 93d5fad641c5afa679b59dc712f0d0faaddcfe2e..a576b6c009e058cb85bac56dc701bfd2289a1eef 100644
|
index 93d5fad641c5afa679b59dc712f0d0faaddcfe2e..1f478844707352072cbcefe34318637c74ff3e15 100644
|
||||||
--- a/src/main/java/org/bukkit/enchantments/EnchantmentTarget.java
|
--- a/src/main/java/org/bukkit/enchantments/EnchantmentTarget.java
|
||||||
+++ b/src/main/java/org/bukkit/enchantments/EnchantmentTarget.java
|
+++ b/src/main/java/org/bukkit/enchantments/EnchantmentTarget.java
|
||||||
@@ -237,6 +237,16 @@ public enum EnchantmentTarget {
|
@@ -237,6 +237,16 @@ public enum EnchantmentTarget {
|
||||||
@@ -17,10 +17,10 @@ index 93d5fad641c5afa679b59dc712f0d0faaddcfe2e..a576b6c009e058cb85bac56dc701bfd2
|
|||||||
+ /**
|
+ /**
|
||||||
+ * Allow the Enchantment to be placed on shears.
|
+ * Allow the Enchantment to be placed on shears.
|
||||||
+ */
|
+ */
|
||||||
+ SHEARS {
|
+ WEAPON_AND_SHEARS {
|
||||||
+ @Override
|
+ @Override
|
||||||
+ public boolean includes(@NotNull Material item) {
|
+ public boolean includes(@NotNull Material item) {
|
||||||
+ return item.equals(Material.SHEARS);
|
+ return WEAPON.includes(item) || item.equals(Material.SHEARS);
|
||||||
+ }
|
+ }
|
||||||
// Purpur end
|
// Purpur end
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -122,7 +122,7 @@ index d60cb629586e6eccfcd79b1b2e4da119550497f3..465bd5c7401ec29d0c43d9add3b07254
|
|||||||
this.forceDrops = false; // CraftBukkit
|
this.forceDrops = false; // CraftBukkit
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/world/item/enchantment/EnchantmentCategory.java b/src/main/java/net/minecraft/world/item/enchantment/EnchantmentCategory.java
|
diff --git a/src/main/java/net/minecraft/world/item/enchantment/EnchantmentCategory.java b/src/main/java/net/minecraft/world/item/enchantment/EnchantmentCategory.java
|
||||||
index d6417c1e77ac8823e18a179dc9f61757a1f339ad..90f3db3401d5b5ea5b9456f21d7f9bff0e48d364 100644
|
index d6417c1e77ac8823e18a179dc9f61757a1f339ad..a19dd0946f853193ff32b2b560db27534b8b4abf 100644
|
||||||
--- a/src/main/java/net/minecraft/world/item/enchantment/EnchantmentCategory.java
|
--- a/src/main/java/net/minecraft/world/item/enchantment/EnchantmentCategory.java
|
||||||
+++ b/src/main/java/net/minecraft/world/item/enchantment/EnchantmentCategory.java
|
+++ b/src/main/java/net/minecraft/world/item/enchantment/EnchantmentCategory.java
|
||||||
@@ -104,6 +104,12 @@ public enum EnchantmentCategory {
|
@@ -104,6 +104,12 @@ public enum EnchantmentCategory {
|
||||||
@@ -130,16 +130,16 @@ index d6417c1e77ac8823e18a179dc9f61757a1f339ad..90f3db3401d5b5ea5b9456f21d7f9bff
|
|||||||
return item instanceof BowItem || item instanceof CrossbowItem;
|
return item instanceof BowItem || item instanceof CrossbowItem;
|
||||||
}
|
}
|
||||||
+ },
|
+ },
|
||||||
+ SHEARS {
|
+ WEAPON_AND_SHEARS {
|
||||||
+ @Override
|
+ @Override
|
||||||
+ public boolean canEnchant(Item item) {
|
+ public boolean canEnchant(Item item) {
|
||||||
+ return item instanceof net.minecraft.world.item.ShearsItem;
|
+ return WEAPON.canEnchant(item) || item instanceof net.minecraft.world.item.ShearsItem;
|
||||||
+ }
|
+ }
|
||||||
// Purpur end
|
// Purpur end
|
||||||
};
|
};
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/item/enchantment/LootBonusEnchantment.java b/src/main/java/net/minecraft/world/item/enchantment/LootBonusEnchantment.java
|
diff --git a/src/main/java/net/minecraft/world/item/enchantment/LootBonusEnchantment.java b/src/main/java/net/minecraft/world/item/enchantment/LootBonusEnchantment.java
|
||||||
index 6b8a1535086aae7e4e3229d05615fb903188f507..20adfaab6af8cce48fbd489876bf18b43d1ae21c 100644
|
index 6b8a1535086aae7e4e3229d05615fb903188f507..60af917083de1b790b1d93d61835a669143068fb 100644
|
||||||
--- a/src/main/java/net/minecraft/world/item/enchantment/LootBonusEnchantment.java
|
--- a/src/main/java/net/minecraft/world/item/enchantment/LootBonusEnchantment.java
|
||||||
+++ b/src/main/java/net/minecraft/world/item/enchantment/LootBonusEnchantment.java
|
+++ b/src/main/java/net/minecraft/world/item/enchantment/LootBonusEnchantment.java
|
||||||
@@ -7,6 +7,14 @@ public class LootBonusEnchantment extends Enchantment {
|
@@ -7,6 +7,14 @@ public class LootBonusEnchantment extends Enchantment {
|
||||||
@@ -150,7 +150,7 @@ index 6b8a1535086aae7e4e3229d05615fb903188f507..20adfaab6af8cce48fbd489876bf18b4
|
|||||||
+ @Override
|
+ @Override
|
||||||
+ public boolean canEnchant(net.minecraft.world.item.ItemStack stack) {
|
+ public boolean canEnchant(net.minecraft.world.item.ItemStack stack) {
|
||||||
+ // we have to cheat the system because this class is loaded before purpur's config is loaded
|
+ // we have to cheat the system because this class is loaded before purpur's config is loaded
|
||||||
+ return (org.purpurmc.purpur.PurpurConfig.allowShearsLooting && this.category == EnchantmentCategory.WEAPON ? EnchantmentCategory.SHEARS : this.category).canEnchant(stack.getItem());
|
+ return (org.purpurmc.purpur.PurpurConfig.allowShearsLooting && this.category == EnchantmentCategory.WEAPON ? EnchantmentCategory.WEAPON_AND_SHEARS : this.category).canEnchant(stack.getItem());
|
||||||
+ }
|
+ }
|
||||||
+ // Purpur end
|
+ // Purpur end
|
||||||
+
|
+
|
||||||
|
|||||||
Reference in New Issue
Block a user