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;
-