Class MerchantOffer

java.lang.Object
net.minecraft.world.item.trading.MerchantOffer

public class MerchantOffer extends Object
  • Field Details

    • CODEC

      public static final com.mojang.serialization.Codec<MerchantOffer> CODEC
    • STREAM_CODEC

      public static final StreamCodec<RegistryFriendlyByteBuf,MerchantOffer> STREAM_CODEC
    • baseCostA

      private final ItemCost baseCostA
      The first input for this offer.
    • costB

      private final Optional<ItemCost> costB
      The second input for this offer.
    • result

      private final ItemStack result
      The output of this offer.
    • uses

      private int uses
    • maxUses

      private final int maxUses
    • rewardExp

      private final boolean rewardExp
    • specialPriceDiff

      private int specialPriceDiff
    • demand

      private int demand
    • priceMultiplier

      private final float priceMultiplier
    • xp

      private final int xp
  • Constructor Details

    • MerchantOffer

      private MerchantOffer(ItemCost baseCostA, Optional<ItemCost> costB, ItemStack result, int uses, int maxUses, boolean rewardExp, int specialPriceDiff, int demand, float priceMultiplier, int xp)
    • MerchantOffer

      public MerchantOffer(ItemCost baseCostA, ItemStack result, int maxUses, int xp, float priceMultiplier)
    • MerchantOffer

      public MerchantOffer(ItemCost baseCostA, Optional<ItemCost> costB, ItemStack result, int maxUses, int xp, float priceMultiplier)
    • MerchantOffer

      public MerchantOffer(ItemCost baseCostA, Optional<ItemCost> costB, ItemStack result, int uses, int maxUses, int xp, float priceMultiplier)
    • MerchantOffer

      public MerchantOffer(ItemCost baseCostA, Optional<ItemCost> costB, ItemStack result, int uses, int maxUses, int xp, float priceMultiplier, int demand)
    • MerchantOffer

      private MerchantOffer(MerchantOffer other)
  • Method Details

    • getBaseCostA

      public ItemStack getBaseCostA()
    • getCostA

      public ItemStack getCostA()
    • getModifiedCostCount

      private int getModifiedCostCount(ItemCost itemCost)
    • getCostB

      public ItemStack getCostB()
    • getItemCostA

      public ItemCost getItemCostA()
    • getItemCostB

      public Optional<ItemCost> getItemCostB()
    • getResult

      public ItemStack getResult()
    • updateDemand

      public void updateDemand()
    • assemble

      public ItemStack assemble()
    • getUses

      public int getUses()
    • resetUses

      public void resetUses()
    • getMaxUses

      public int getMaxUses()
    • increaseUses

      public void increaseUses()
    • getDemand

      public int getDemand()
    • addToSpecialPriceDiff

      public void addToSpecialPriceDiff(int add)
    • resetSpecialPriceDiff

      public void resetSpecialPriceDiff()
    • getSpecialPriceDiff

      public int getSpecialPriceDiff()
    • setSpecialPriceDiff

      public void setSpecialPriceDiff(int price)
    • getPriceMultiplier

      public float getPriceMultiplier()
    • getXp

      public int getXp()
    • isOutOfStock

      public boolean isOutOfStock()
    • setToOutOfStock

      public void setToOutOfStock()
    • needsRestock

      public boolean needsRestock()
    • shouldRewardExp

      public boolean shouldRewardExp()
    • satisfiedBy

      public boolean satisfiedBy(ItemStack playerOfferA, ItemStack playerOfferB)
    • take

      public boolean take(ItemStack playerOfferA, ItemStack playerOfferB)
    • copy

      public MerchantOffer copy()
    • writeToStream

      private static void writeToStream(RegistryFriendlyByteBuf buffer, MerchantOffer offer)
    • createFromStream

      public static MerchantOffer createFromStream(RegistryFriendlyByteBuf buffer)