Package net.minecraft.screen
Interface ScreenHandlerFactory
- All Known Subinterfaces:
 NamedScreenHandlerFactory,VehicleInventory
- All Known Implementing Classes:
 AbstractFurnaceBlockEntity,BarrelBlockEntity,BeaconBlockEntity,BlastFurnaceBlockEntity,BrewingStandBlockEntity,ChestBlockEntity,ChestBoatEntity,ChestMinecartEntity,CrafterBlockEntity,DispenserBlockEntity,DropperBlockEntity,FurnaceBlockEntity,HopperBlockEntity,HopperMinecartEntity,LecternBlockEntity,LockableContainerBlockEntity,LootableContainerBlockEntity,ShulkerBoxBlockEntity,SimpleNamedScreenHandlerFactory,SmokerBlockEntity,StorageMinecartEntity,TrappedChestBlockEntity
- Functional Interface:
 - This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
 
A functional interface to create a new screen handler (menu) on the server.
 
This interface itself is not used directly. Instead, the subinterface
 NamedScreenHandlerFactory is passed to PlayerEntity.openHandledScreen(net.minecraft.screen.NamedScreenHandlerFactory). In vanilla,
 block entity instances implement that interface, allowing them to be passed.
 SimpleNamedScreenHandlerFactory is a screen handler factory implementation
 for use cases that do not involve a block entity.
 
The factory should create a new instance of a screen handler with the server-side constructor (one that takes inventories, etc). If the screen handler requires a property delegate or a context, create an instance and pass it here.
- See Also:
 - Mappings:
 Namespace Name named net/minecraft/screen/ScreenHandlerFactoryintermediary net/minecraft/class_1270official crb
- 
Method Summary
Modifier and TypeMethodDescriptioncreateMenu(int syncId, PlayerInventory playerInventory, PlayerEntity player)  
- 
Method Details
- 
createMenu
@Nullable @Nullable ScreenHandler createMenu(int syncId, PlayerInventory playerInventory, PlayerEntity player) - Mappings:
 Namespace Name Mixin selector named createMenuLnet/minecraft/screen/ScreenHandlerFactory;createMenu(ILnet/minecraft/entity/player/PlayerInventory;Lnet/minecraft/entity/player/PlayerEntity;)Lnet/minecraft/screen/ScreenHandler;intermediary createMenuLnet/minecraft/class_1270;createMenu(ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703;official createMenuLcrb;createMenu(ILcmw;Lcmx;)Lcpu;
 
 -