From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Mariell Hoversholm <proximyst@proximyst.com>
Date: Mon, 9 Nov 2020 20:33:38 +0100
Subject: [PATCH] Add ignore discounts API


diff --git a/src/main/java/org/bukkit/inventory/MerchantRecipe.java b/src/main/java/org/bukkit/inventory/MerchantRecipe.java
index 1fb4a1c53791776f9c5a952a592f15fc35cb2703..2be2f3fe655c417bfc8f8e840f9e9415d168f37e 100644
--- a/src/main/java/org/bukkit/inventory/MerchantRecipe.java
+++ b/src/main/java/org/bukkit/inventory/MerchantRecipe.java
@@ -28,6 +28,7 @@ public class MerchantRecipe implements Recipe {
     private boolean experienceReward;
     private int villagerExperience;
     private float priceMultiplier;
+    private boolean ignoreDiscounts; // Paper
 
     public MerchantRecipe(@NotNull ItemStack result, int maxUses) {
         this(result, 0, maxUses, false);
@@ -38,6 +39,12 @@ public class MerchantRecipe implements Recipe {
     }
 
     public MerchantRecipe(@NotNull ItemStack result, int uses, int maxUses, boolean experienceReward, int villagerExperience, float priceMultiplier) {
+        // Paper start - add ignoreDiscounts param
+        this(result, uses, maxUses, experienceReward, villagerExperience, priceMultiplier, false);
+    }
+    public MerchantRecipe(@NotNull ItemStack result, int uses, int maxUses, boolean experienceReward, int villagerExperience, float priceMultiplier, boolean ignoreDiscounts) {
+        this.ignoreDiscounts = ignoreDiscounts;
+        // Paper end
         this.result = result;
         this.uses = uses;
         this.maxUses = maxUses;
@@ -172,4 +179,20 @@ public class MerchantRecipe implements Recipe {
     public void setPriceMultiplier(float priceMultiplier) {
         this.priceMultiplier = priceMultiplier;
     }
+
+    // Paper start
+    /**
+     * @return Whether all discounts on this trade should be ignored.
+     */
+    public boolean shouldIgnoreDiscounts() {
+        return ignoreDiscounts;
+    }
+
+    /**
+     * @param ignoreDiscounts Whether all discounts on this trade should be ignored.
+     */
+    public void setIgnoreDiscounts(boolean ignoreDiscounts) {
+        this.ignoreDiscounts = ignoreDiscounts;
+    }
+    // Paper end
 }