Class MerchantScreenHandler

java.lang.Object
net.minecraft.screen.ScreenHandler
net.minecraft.screen.MerchantScreenHandler

public class MerchantScreenHandler extends ScreenHandler
Mappings:
Namespace Name
official cam
intermediary net/minecraft/class_1728
named net/minecraft/screen/MerchantScreenHandler
  • Field Details

    • field_30830

      protected static final int field_30830
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official k Lcam;k:I
      intermediary field_30830 Lnet/minecraft/class_1728;field_30830:I
      named field_30830 Lnet/minecraft/screen/MerchantScreenHandler;field_30830:I
    • field_30831

      protected static final int field_30831
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official l Lcam;l:I
      intermediary field_30831 Lnet/minecraft/class_1728;field_30831:I
      named field_30831 Lnet/minecraft/screen/MerchantScreenHandler;field_30831:I
    • field_30832

      protected static final int field_30832
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official m Lcam;m:I
      intermediary field_30832 Lnet/minecraft/class_1728;field_30832:I
      named field_30832 Lnet/minecraft/screen/MerchantScreenHandler;field_30832:I
    • field_30833

      private static final int field_30833
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official n Lcam;n:I
      intermediary field_30833 Lnet/minecraft/class_1728;field_30833:I
      named field_30833 Lnet/minecraft/screen/MerchantScreenHandler;field_30833:I
    • field_30834

      private static final int field_30834
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official o Lcam;o:I
      intermediary field_30834 Lnet/minecraft/class_1728;field_30834:I
      named field_30834 Lnet/minecraft/screen/MerchantScreenHandler;field_30834:I
    • field_30835

      private static final int field_30835
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official p Lcam;p:I
      intermediary field_30835 Lnet/minecraft/class_1728;field_30835:I
      named field_30835 Lnet/minecraft/screen/MerchantScreenHandler;field_30835:I
    • field_30836

      private static final int field_30836
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official q Lcam;q:I
      intermediary field_30836 Lnet/minecraft/class_1728;field_30836:I
      named field_30836 Lnet/minecraft/screen/MerchantScreenHandler;field_30836:I
    • field_30837

      private static final int field_30837
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official r Lcam;r:I
      intermediary field_30837 Lnet/minecraft/class_1728;field_30837:I
      named field_30837 Lnet/minecraft/screen/MerchantScreenHandler;field_30837:I
    • field_30838

      private static final int field_30838
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official s Lcam;s:I
      intermediary field_30838 Lnet/minecraft/class_1728;field_30838:I
      named field_30838 Lnet/minecraft/screen/MerchantScreenHandler;field_30838:I
    • field_30839

      private static final int field_30839
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official t Lcam;t:I
      intermediary field_30839 Lnet/minecraft/class_1728;field_30839:I
      named field_30839 Lnet/minecraft/screen/MerchantScreenHandler;field_30839:I
    • field_30840

      private static final int field_30840
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official u Lcam;u:I
      intermediary field_30840 Lnet/minecraft/class_1728;field_30840:I
      named field_30840 Lnet/minecraft/screen/MerchantScreenHandler;field_30840:I
    • merchant

      private final Merchant merchant
      Mappings:
      Namespace Name Mixin selector
      official v Lcam;v:Lcit;
      intermediary field_7863 Lnet/minecraft/class_1728;field_7863:Lnet/minecraft/class_1915;
      named merchant Lnet/minecraft/screen/MerchantScreenHandler;merchant:Lnet/minecraft/village/Merchant;
    • merchantInventory

      private final MerchantInventory merchantInventory
      Mappings:
      Namespace Name Mixin selector
      official w Lcam;w:Lcal;
      intermediary field_7861 Lnet/minecraft/class_1728;field_7861:Lnet/minecraft/class_1725;
      named merchantInventory Lnet/minecraft/screen/MerchantScreenHandler;merchantInventory:Lnet/minecraft/village/MerchantInventory;
    • levelProgress

      private int levelProgress
      Mappings:
      Namespace Name Mixin selector
      official x Lcam;x:I
      intermediary field_18669 Lnet/minecraft/class_1728;field_18669:I
      named levelProgress Lnet/minecraft/screen/MerchantScreenHandler;levelProgress:I
    • leveled

      private boolean leveled
      Mappings:
      Namespace Name Mixin selector
      official y Lcam;y:Z
      intermediary field_18670 Lnet/minecraft/class_1728;field_18670:Z
      named leveled Lnet/minecraft/screen/MerchantScreenHandler;leveled:Z
    • canRefreshTrades

      private boolean canRefreshTrades
      Mappings:
      Namespace Name Mixin selector
      official z Lcam;z:Z
      intermediary field_19358 Lnet/minecraft/class_1728;field_19358:Z
      named canRefreshTrades Lnet/minecraft/screen/MerchantScreenHandler;canRefreshTrades:Z
  • Constructor Details

    • MerchantScreenHandler

      public MerchantScreenHandler(int syncId, PlayerInventory playerInventory)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lcam;<init>(ILbwo;)V
      intermediary <init> Lnet/minecraft/class_1728;<init>(ILnet/minecraft/class_1661;)V
      named <init> Lnet/minecraft/screen/MerchantScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;)V
    • MerchantScreenHandler

      public MerchantScreenHandler(int syncId, PlayerInventory playerInventory, Merchant merchant)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lcam;<init>(ILbwo;Lcit;)V
      intermediary <init> Lnet/minecraft/class_1728;<init>(ILnet/minecraft/class_1661;Lnet/minecraft/class_1915;)V
      named <init> Lnet/minecraft/screen/MerchantScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;Lnet/minecraft/village/Merchant;)V
  • Method Details

    • setLeveled

      public void setLeveled(boolean leveled)
      Mappings:
      Namespace Name Mixin selector
      official a Lcam;a(Z)V
      intermediary method_19253 Lnet/minecraft/class_1728;method_19253(Z)V
      named setLeveled Lnet/minecraft/screen/MerchantScreenHandler;setLeveled(Z)V
    • onContentChanged

      public void onContentChanged(Inventory inventory)
      Called when a slot's content has changed.

      This is not called by default; subclasses that override this method should also use a custom Inventory whose markDirty method is overridden to call this method as a backing inventory of the slot.

      This can be used to update the output slot when input changes.

      Overrides:
      onContentChanged in class ScreenHandler
      Mappings:
      Namespace Name Mixin selector
      official a Lbzg;a(Lbcf;)V
      intermediary method_7609 Lnet/minecraft/class_1703;method_7609(Lnet/minecraft/class_1263;)V
      named onContentChanged Lnet/minecraft/screen/ScreenHandler;onContentChanged(Lnet/minecraft/inventory/Inventory;)V
    • setRecipeIndex

      public void setRecipeIndex(int index)
      Mappings:
      Namespace Name Mixin selector
      official e Lcam;e(I)V
      intermediary method_7650 Lnet/minecraft/class_1728;method_7650(I)V
      named setRecipeIndex Lnet/minecraft/screen/MerchantScreenHandler;setRecipeIndex(I)V
    • canUse

      public boolean canUse(PlayerEntity player)
      Returns whether the screen handler can be used.

      Subclasses should call #canUse(ScreenHandlerContext, PlayerEntity, Block)} or implement the check itself. The implementation should check that the player is near the screen handler's source position (e.g. block position) and that the source (e.g. block) is not destroyed.

      Specified by:
      canUse in class ScreenHandler
      Returns:
      whether the screen handler can be used
      Mappings:
      Namespace Name Mixin selector
      official a Lbzg;a(Lbwp;)Z
      intermediary method_7597 Lnet/minecraft/class_1703;method_7597(Lnet/minecraft/class_1657;)Z
      named canUse Lnet/minecraft/screen/ScreenHandler;canUse(Lnet/minecraft/entity/player/PlayerEntity;)Z
    • getExperience

      public int getExperience()
      Mappings:
      Namespace Name Mixin selector
      official l Lcam;l()I
      intermediary method_19254 Lnet/minecraft/class_1728;method_19254()I
      named getExperience Lnet/minecraft/screen/MerchantScreenHandler;getExperience()I
    • getMerchantRewardedExperience

      public int getMerchantRewardedExperience()
      Mappings:
      Namespace Name Mixin selector
      official m Lcam;m()I
      intermediary method_19256 Lnet/minecraft/class_1728;method_19256()I
      named getMerchantRewardedExperience Lnet/minecraft/screen/MerchantScreenHandler;getMerchantRewardedExperience()I
    • setExperienceFromServer

      public void setExperienceFromServer(int experience)
      Mappings:
      Namespace Name Mixin selector
      official f Lcam;f(I)V
      intermediary method_19255 Lnet/minecraft/class_1728;method_19255(I)V
      named setExperienceFromServer Lnet/minecraft/screen/MerchantScreenHandler;setExperienceFromServer(I)V
    • getLevelProgress

      public int getLevelProgress()
      Mappings:
      Namespace Name Mixin selector
      official n Lcam;n()I
      intermediary method_19258 Lnet/minecraft/class_1728;method_19258()I
      named getLevelProgress Lnet/minecraft/screen/MerchantScreenHandler;getLevelProgress()I
    • setLevelProgress

      public void setLevelProgress(int levelProgress)
      Mappings:
      Namespace Name Mixin selector
      official g Lcam;g(I)V
      intermediary method_19257 Lnet/minecraft/class_1728;method_19257(I)V
      named setLevelProgress Lnet/minecraft/screen/MerchantScreenHandler;setLevelProgress(I)V
    • setCanRefreshTrades

      public void setCanRefreshTrades(boolean canRefreshTrades)
      Mappings:
      Namespace Name Mixin selector
      official b Lcam;b(Z)V
      intermediary method_20700 Lnet/minecraft/class_1728;method_20700(Z)V
      named setCanRefreshTrades Lnet/minecraft/screen/MerchantScreenHandler;setCanRefreshTrades(Z)V
    • canRefreshTrades

      public boolean canRefreshTrades()
      Mappings:
      Namespace Name Mixin selector
      official o Lcam;o()Z
      intermediary method_20701 Lnet/minecraft/class_1728;method_20701()Z
      named canRefreshTrades Lnet/minecraft/screen/MerchantScreenHandler;canRefreshTrades()Z
    • canInsertIntoSlot

      public boolean canInsertIntoSlot(ItemStack stack, Slot slot)
      Returns whether stack can be inserted to slot.

      Subclasses should override this to return false if the slot is used for output.

      Overrides:
      canInsertIntoSlot in class ScreenHandler
      Returns:
      whether stack can be inserted to slot
      Mappings:
      Namespace Name Mixin selector
      official a Lbzg;a(Lcdt;Lcax;)Z
      intermediary method_7613 Lnet/minecraft/class_1703;method_7613(Lnet/minecraft/class_1799;Lnet/minecraft/class_1735;)Z
      named canInsertIntoSlot Lnet/minecraft/screen/ScreenHandler;canInsertIntoSlot(Lnet/minecraft/item/ItemStack;Lnet/minecraft/screen/slot/Slot;)Z
    • quickMove

      public ItemStack quickMove(PlayerEntity player, int slot)
      Quick-moves the stack at slot to other slots of the screen handler that belong to a different inventory or another section of the same inventory. For example, items can be quick-moved between a chest's slots and the player inventory or between the main player inventory and the hotbar.

      Subclasses should call ScreenHandler.insertItem(net.minecraft.item.ItemStack, int, int, boolean), and if the insertion was successful, clear the slot (if the stack is exhausted) or mark it as dirty. See the vanilla subclasses for basic implementation.

      Quick-moving is also known as "shift-clicking" since it's usually triggered using Shift+left click.

      Specified by:
      quickMove in class ScreenHandler
      Parameters:
      slot - the index of the slot to quick-move from
      Returns:
      ItemStack.EMPTY when no stack can be transferred, otherwise the original stack
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lbzg;a(Lbwp;I)Lcdt;
      intermediary method_7601 Lnet/minecraft/class_1703;method_7601(Lnet/minecraft/class_1657;I)Lnet/minecraft/class_1799;
      named quickMove Lnet/minecraft/screen/ScreenHandler;quickMove(Lnet/minecraft/entity/player/PlayerEntity;I)Lnet/minecraft/item/ItemStack;
    • playYesSound

      private void playYesSound()
      Mappings:
      Namespace Name Mixin selector
      official r Lcam;r()V
      intermediary method_20595 Lnet/minecraft/class_1728;method_20595()V
      named playYesSound Lnet/minecraft/screen/MerchantScreenHandler;playYesSound()V
    • close

      public void close(PlayerEntity player)
      Closes this screen handler.

      To close a screen handler, call PlayerEntity.closeHandledScreen() on the server instead of this method.

      This drops the cursor stack by default. Subclasses that have slots not backed by a persistent inventory should call ScreenHandler.dropInventory(net.minecraft.entity.player.PlayerEntity, net.minecraft.inventory.Inventory) to drop the stacks.

      Overrides:
      close in class ScreenHandler
      Mappings:
      Namespace Name Mixin selector
      official b Lbzg;b(Lbwp;)V
      intermediary method_7595 Lnet/minecraft/class_1703;method_7595(Lnet/minecraft/class_1657;)V
      named close Lnet/minecraft/screen/ScreenHandler;close(Lnet/minecraft/entity/player/PlayerEntity;)V
    • switchTo

      public void switchTo(int recipeIndex)
      Mappings:
      Namespace Name Mixin selector
      official h Lcam;h(I)V
      intermediary method_20215 Lnet/minecraft/class_1728;method_20215(I)V
      named switchTo Lnet/minecraft/screen/MerchantScreenHandler;switchTo(I)V
    • autofill

      private void autofill(int slot, ItemStack stack)
      Mappings:
      Namespace Name Mixin selector
      official c Lcam;c(ILcdt;)V
      intermediary method_20214 Lnet/minecraft/class_1728;method_20214(ILnet/minecraft/class_1799;)V
      named autofill Lnet/minecraft/screen/MerchantScreenHandler;autofill(ILnet/minecraft/item/ItemStack;)V
    • setOffers

      public void setOffers(TradeOfferList offers)
      Mappings:
      Namespace Name Mixin selector
      official a Lcam;a(Lciv;)V
      intermediary method_17437 Lnet/minecraft/class_1728;method_17437(Lnet/minecraft/class_1916;)V
      named setOffers Lnet/minecraft/screen/MerchantScreenHandler;setOffers(Lnet/minecraft/village/TradeOfferList;)V
    • getRecipes

      public TradeOfferList getRecipes()
      Mappings:
      Namespace Name Mixin selector
      official p Lcam;p()Lciv;
      intermediary method_17438 Lnet/minecraft/class_1728;method_17438()Lnet/minecraft/class_1916;
      named getRecipes Lnet/minecraft/screen/MerchantScreenHandler;getRecipes()Lnet/minecraft/village/TradeOfferList;
    • isLeveled

      public boolean isLeveled()
      Mappings:
      Namespace Name Mixin selector
      official q Lcam;q()Z
      intermediary method_19259 Lnet/minecraft/class_1728;method_19259()Z
      named isLeveled Lnet/minecraft/screen/MerchantScreenHandler;isLeveled()Z