Class ScreenHandlerType<T extends ScreenHandler>

java.lang.Object
net.minecraft.screen.ScreenHandlerType<T>

public class ScreenHandlerType<T extends ScreenHandler> extends Object
Screen handler type is used to create screen handlers on the client. It is a holder object holding a factory (usually a reference to the constructor). They are registered in the registry under Registries.SCREEN_HANDLER.

Technically speaking, screen handlers do not have to register screen handler types. However, such screen handlers are practically useless as they cannot be opened server-side using conventional methods.

See Also:
API Note:
Screen handler types should not be used to create a new screen handler on the server. See ScreenHandlerFactory for server-side creation.
Mappings:
Namespace Name
official cak
intermediary net/minecraft/class_3917
named net/minecraft/screen/ScreenHandlerType
  • Field Details

    • GENERIC_9X1

      public static final ScreenHandlerType<GenericContainerScreenHandler> GENERIC_9X1
      Mappings:
      Namespace Name Mixin selector
      official a Lcak;a:Lcak;
      intermediary field_18664 Lnet/minecraft/class_3917;field_18664:Lnet/minecraft/class_3917;
      named GENERIC_9X1 Lnet/minecraft/screen/ScreenHandlerType;GENERIC_9X1:Lnet/minecraft/screen/ScreenHandlerType;
    • GENERIC_9X2

      public static final ScreenHandlerType<GenericContainerScreenHandler> GENERIC_9X2
      Mappings:
      Namespace Name Mixin selector
      official b Lcak;b:Lcak;
      intermediary field_18665 Lnet/minecraft/class_3917;field_18665:Lnet/minecraft/class_3917;
      named GENERIC_9X2 Lnet/minecraft/screen/ScreenHandlerType;GENERIC_9X2:Lnet/minecraft/screen/ScreenHandlerType;
    • GENERIC_9X3

      public static final ScreenHandlerType<GenericContainerScreenHandler> GENERIC_9X3
      Mappings:
      Namespace Name Mixin selector
      official c Lcak;c:Lcak;
      intermediary field_17326 Lnet/minecraft/class_3917;field_17326:Lnet/minecraft/class_3917;
      named GENERIC_9X3 Lnet/minecraft/screen/ScreenHandlerType;GENERIC_9X3:Lnet/minecraft/screen/ScreenHandlerType;
    • GENERIC_9X4

      public static final ScreenHandlerType<GenericContainerScreenHandler> GENERIC_9X4
      Mappings:
      Namespace Name Mixin selector
      official d Lcak;d:Lcak;
      intermediary field_18666 Lnet/minecraft/class_3917;field_18666:Lnet/minecraft/class_3917;
      named GENERIC_9X4 Lnet/minecraft/screen/ScreenHandlerType;GENERIC_9X4:Lnet/minecraft/screen/ScreenHandlerType;
    • GENERIC_9X5

      public static final ScreenHandlerType<GenericContainerScreenHandler> GENERIC_9X5
      Mappings:
      Namespace Name Mixin selector
      official e Lcak;e:Lcak;
      intermediary field_18667 Lnet/minecraft/class_3917;field_18667:Lnet/minecraft/class_3917;
      named GENERIC_9X5 Lnet/minecraft/screen/ScreenHandlerType;GENERIC_9X5:Lnet/minecraft/screen/ScreenHandlerType;
    • GENERIC_9X6

      public static final ScreenHandlerType<GenericContainerScreenHandler> GENERIC_9X6
      Mappings:
      Namespace Name Mixin selector
      official f Lcak;f:Lcak;
      intermediary field_17327 Lnet/minecraft/class_3917;field_17327:Lnet/minecraft/class_3917;
      named GENERIC_9X6 Lnet/minecraft/screen/ScreenHandlerType;GENERIC_9X6:Lnet/minecraft/screen/ScreenHandlerType;
    • GENERIC_3X3

      public static final ScreenHandlerType<Generic3x3ContainerScreenHandler> GENERIC_3X3
      Mappings:
      Namespace Name Mixin selector
      official g Lcak;g:Lcak;
      intermediary field_17328 Lnet/minecraft/class_3917;field_17328:Lnet/minecraft/class_3917;
      named GENERIC_3X3 Lnet/minecraft/screen/ScreenHandlerType;GENERIC_3X3:Lnet/minecraft/screen/ScreenHandlerType;
    • ANVIL

      public static final ScreenHandlerType<AnvilScreenHandler> ANVIL
      Mappings:
      Namespace Name Mixin selector
      official h Lcak;h:Lcak;
      intermediary field_17329 Lnet/minecraft/class_3917;field_17329:Lnet/minecraft/class_3917;
      named ANVIL Lnet/minecraft/screen/ScreenHandlerType;ANVIL:Lnet/minecraft/screen/ScreenHandlerType;
    • BEACON

      public static final ScreenHandlerType<BeaconScreenHandler> BEACON
      Mappings:
      Namespace Name Mixin selector
      official i Lcak;i:Lcak;
      intermediary field_17330 Lnet/minecraft/class_3917;field_17330:Lnet/minecraft/class_3917;
      named BEACON Lnet/minecraft/screen/ScreenHandlerType;BEACON:Lnet/minecraft/screen/ScreenHandlerType;
    • BLAST_FURNACE

      public static final ScreenHandlerType<BlastFurnaceScreenHandler> BLAST_FURNACE
      Mappings:
      Namespace Name Mixin selector
      official j Lcak;j:Lcak;
      intermediary field_17331 Lnet/minecraft/class_3917;field_17331:Lnet/minecraft/class_3917;
      named BLAST_FURNACE Lnet/minecraft/screen/ScreenHandlerType;BLAST_FURNACE:Lnet/minecraft/screen/ScreenHandlerType;
    • BREWING_STAND

      public static final ScreenHandlerType<BrewingStandScreenHandler> BREWING_STAND
      Mappings:
      Namespace Name Mixin selector
      official k Lcak;k:Lcak;
      intermediary field_17332 Lnet/minecraft/class_3917;field_17332:Lnet/minecraft/class_3917;
      named BREWING_STAND Lnet/minecraft/screen/ScreenHandlerType;BREWING_STAND:Lnet/minecraft/screen/ScreenHandlerType;
    • CRAFTING

      public static final ScreenHandlerType<CraftingScreenHandler> CRAFTING
      Mappings:
      Namespace Name Mixin selector
      official l Lcak;l:Lcak;
      intermediary field_17333 Lnet/minecraft/class_3917;field_17333:Lnet/minecraft/class_3917;
      named CRAFTING Lnet/minecraft/screen/ScreenHandlerType;CRAFTING:Lnet/minecraft/screen/ScreenHandlerType;
    • ENCHANTMENT

      public static final ScreenHandlerType<EnchantmentScreenHandler> ENCHANTMENT
      Mappings:
      Namespace Name Mixin selector
      official m Lcak;m:Lcak;
      intermediary field_17334 Lnet/minecraft/class_3917;field_17334:Lnet/minecraft/class_3917;
      named ENCHANTMENT Lnet/minecraft/screen/ScreenHandlerType;ENCHANTMENT:Lnet/minecraft/screen/ScreenHandlerType;
    • FURNACE

      public static final ScreenHandlerType<FurnaceScreenHandler> FURNACE
      Mappings:
      Namespace Name Mixin selector
      official n Lcak;n:Lcak;
      intermediary field_17335 Lnet/minecraft/class_3917;field_17335:Lnet/minecraft/class_3917;
      named FURNACE Lnet/minecraft/screen/ScreenHandlerType;FURNACE:Lnet/minecraft/screen/ScreenHandlerType;
    • GRINDSTONE

      public static final ScreenHandlerType<GrindstoneScreenHandler> GRINDSTONE
      Mappings:
      Namespace Name Mixin selector
      official o Lcak;o:Lcak;
      intermediary field_17336 Lnet/minecraft/class_3917;field_17336:Lnet/minecraft/class_3917;
      named GRINDSTONE Lnet/minecraft/screen/ScreenHandlerType;GRINDSTONE:Lnet/minecraft/screen/ScreenHandlerType;
    • HOPPER

      public static final ScreenHandlerType<HopperScreenHandler> HOPPER
      Mappings:
      Namespace Name Mixin selector
      official p Lcak;p:Lcak;
      intermediary field_17337 Lnet/minecraft/class_3917;field_17337:Lnet/minecraft/class_3917;
      named HOPPER Lnet/minecraft/screen/ScreenHandlerType;HOPPER:Lnet/minecraft/screen/ScreenHandlerType;
    • LECTERN

      public static final ScreenHandlerType<LecternScreenHandler> LECTERN
      Mappings:
      Namespace Name Mixin selector
      official q Lcak;q:Lcak;
      intermediary field_17338 Lnet/minecraft/class_3917;field_17338:Lnet/minecraft/class_3917;
      named LECTERN Lnet/minecraft/screen/ScreenHandlerType;LECTERN:Lnet/minecraft/screen/ScreenHandlerType;
    • LOOM

      public static final ScreenHandlerType<LoomScreenHandler> LOOM
      Mappings:
      Namespace Name Mixin selector
      official r Lcak;r:Lcak;
      intermediary field_17339 Lnet/minecraft/class_3917;field_17339:Lnet/minecraft/class_3917;
      named LOOM Lnet/minecraft/screen/ScreenHandlerType;LOOM:Lnet/minecraft/screen/ScreenHandlerType;
    • MERCHANT

      public static final ScreenHandlerType<MerchantScreenHandler> MERCHANT
      Mappings:
      Namespace Name Mixin selector
      official s Lcak;s:Lcak;
      intermediary field_17340 Lnet/minecraft/class_3917;field_17340:Lnet/minecraft/class_3917;
      named MERCHANT Lnet/minecraft/screen/ScreenHandlerType;MERCHANT:Lnet/minecraft/screen/ScreenHandlerType;
    • SHULKER_BOX

      public static final ScreenHandlerType<ShulkerBoxScreenHandler> SHULKER_BOX
      Mappings:
      Namespace Name Mixin selector
      official t Lcak;t:Lcak;
      intermediary field_17341 Lnet/minecraft/class_3917;field_17341:Lnet/minecraft/class_3917;
      named SHULKER_BOX Lnet/minecraft/screen/ScreenHandlerType;SHULKER_BOX:Lnet/minecraft/screen/ScreenHandlerType;
    • SMITHING

      public static final ScreenHandlerType<SmithingScreenHandler> SMITHING
      Mappings:
      Namespace Name Mixin selector
      official u Lcak;u:Lcak;
      intermediary field_22484 Lnet/minecraft/class_3917;field_22484:Lnet/minecraft/class_3917;
      named SMITHING Lnet/minecraft/screen/ScreenHandlerType;SMITHING:Lnet/minecraft/screen/ScreenHandlerType;
    • SMOKER

      public static final ScreenHandlerType<SmokerScreenHandler> SMOKER
      Mappings:
      Namespace Name Mixin selector
      official v Lcak;v:Lcak;
      intermediary field_17342 Lnet/minecraft/class_3917;field_17342:Lnet/minecraft/class_3917;
      named SMOKER Lnet/minecraft/screen/ScreenHandlerType;SMOKER:Lnet/minecraft/screen/ScreenHandlerType;
    • CARTOGRAPHY_TABLE

      public static final ScreenHandlerType<CartographyTableScreenHandler> CARTOGRAPHY_TABLE
      Mappings:
      Namespace Name Mixin selector
      official w Lcak;w:Lcak;
      intermediary field_17343 Lnet/minecraft/class_3917;field_17343:Lnet/minecraft/class_3917;
      named CARTOGRAPHY_TABLE Lnet/minecraft/screen/ScreenHandlerType;CARTOGRAPHY_TABLE:Lnet/minecraft/screen/ScreenHandlerType;
    • STONECUTTER

      public static final ScreenHandlerType<StonecutterScreenHandler> STONECUTTER
      Mappings:
      Namespace Name Mixin selector
      official x Lcak;x:Lcak;
      intermediary field_17625 Lnet/minecraft/class_3917;field_17625:Lnet/minecraft/class_3917;
      named STONECUTTER Lnet/minecraft/screen/ScreenHandlerType;STONECUTTER:Lnet/minecraft/screen/ScreenHandlerType;
    • factory

      private final ScreenHandlerType.Factory<T extends ScreenHandler> factory
      Mappings:
      Namespace Name Mixin selector
      official y Lcak;y:Lcak$a;
      intermediary field_17344 Lnet/minecraft/class_3917;field_17344:Lnet/minecraft/class_3917$class_3918;
      named factory Lnet/minecraft/screen/ScreenHandlerType;factory:Lnet/minecraft/screen/ScreenHandlerType$Factory;
  • Constructor Details

    • ScreenHandlerType

      private ScreenHandlerType(ScreenHandlerType.Factory<T> factory)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lcak;<init>(Lcak$a;)V
      intermediary <init> Lnet/minecraft/class_3917;<init>(Lnet/minecraft/class_3917$class_3918;)V
      named <init> Lnet/minecraft/screen/ScreenHandlerType;<init>(Lnet/minecraft/screen/ScreenHandlerType$Factory;)V
  • Method Details

    • register

      private static <T extends ScreenHandler> ScreenHandlerType<T> register(String id, ScreenHandlerType.Factory<T> factory)
      Mappings:
      Namespace Name Mixin selector
      official a Lcak;a(Ljava/lang/String;Lcak$a;)Lcak;
      intermediary method_17435 Lnet/minecraft/class_3917;method_17435(Ljava/lang/String;Lnet/minecraft/class_3917$class_3918;)Lnet/minecraft/class_3917;
      named register Lnet/minecraft/screen/ScreenHandlerType;register(Ljava/lang/String;Lnet/minecraft/screen/ScreenHandlerType$Factory;)Lnet/minecraft/screen/ScreenHandlerType;
    • create

      public T create(int syncId, PlayerInventory playerInventory)
      Mappings:
      Namespace Name Mixin selector
      official a Lcak;a(ILbwo;)Lbzg;
      intermediary method_17434 Lnet/minecraft/class_3917;method_17434(ILnet/minecraft/class_1661;)Lnet/minecraft/class_1703;
      named create Lnet/minecraft/screen/ScreenHandlerType;create(ILnet/minecraft/entity/player/PlayerInventory;)Lnet/minecraft/screen/ScreenHandler;