package net.minecraft.client.gui.screens.inventory; import net.minecraft.client.gui.GuiGraphicsExtractor; import net.minecraft.client.gui.navigation.ScreenPosition; import net.minecraft.client.gui.screens.recipebook.CraftingRecipeBookComponent; import net.minecraft.client.renderer.RenderPipelines; import net.minecraft.network.chat.Component; import net.minecraft.resources.Identifier; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.inventory.CraftingMenu; public class CraftingScreen extends AbstractRecipeBookScreen { private static final Identifier CRAFTING_TABLE_LOCATION = Identifier.withDefaultNamespace("textures/gui/container/crafting_table.png"); public CraftingScreen(final CraftingMenu menu, final Inventory inventory, final Component title) { super(menu, new CraftingRecipeBookComponent(menu), inventory, title); } @Override protected void init() { super.init(); this.titleLabelX = 29; } @Override protected ScreenPosition getRecipeBookButtonPosition() { return new ScreenPosition(this.leftPos + 5, this.height / 2 - 49); } @Override public void extractBackground(final GuiGraphicsExtractor graphics, final int mouseX, final int mouseY, final float a) { super.extractBackground(graphics, mouseX, mouseY, a); int xo = this.leftPos; int yo = (this.height - this.imageHeight) / 2; graphics.blit(RenderPipelines.GUI_TEXTURED, CRAFTING_TABLE_LOCATION, xo, yo, 0.0F, 0.0F, this.imageWidth, this.imageHeight, 256, 256); } }