@Override public void drawScreen(int mouseX, int mouseY, float ticks) { super.drawScreen(mouseX, mouseY, ticks); int i = 0; if (prevHover.checkHover(mouseX, mouseY)) { i = -1; } else if (nextHover.checkHover(mouseX, mouseY)) { i = 1; } if (container.isRecipes() && i != 0) { ItemStack stack = container.getNextRecipe(i); drawCreativeTabHoveringText(stack.getDisplayName(), mouseX, mouseY); } if (container.isRecipes() && mouseX >= guiLeft + recipesX - 5 && mouseX <= guiLeft + xSize - 5 && mouseY >= guiTop + recipesY - 4 && mouseY <= guiTop + recipesY + 10) { tooltips.clear(); for (ItemStack stack : container.getRecipes()) { tooltips.add(stack.getDisplayName()); } drawHoveringText(tooltips, mouseX, mouseY); } }
@Override protected void mouseClicked(int mouseX, int mouseY, int code) throws IOException { super.mouseClicked(mouseX, mouseY, code); if (code == 0 && mouseX >= guiLeft && mouseX <= guiLeft + 20 && mouseY >= guiTop && mouseY <= guiTop + 20) { nextButton.playPressSound(mc.getSoundHandler()); ItemStack[] items = new ItemStack[container.craftMatrix.getSizeInventory()]; for (int i = 0; i < items.length; ++i) { items[i] = container.craftMatrix.removeStackFromSlot(i); } CraftingEX.NETWORK.sendToServer(new OpenCraftingMessage(pos, items)); } else if (code == 0 && mouseX <= guiLeft + xSize && mouseX >= guiLeft + xSize - 50 && mouseY >= guiTop && mouseY <= guiTop + 20 && container.isRecipes()) { mc.displayGuiScreen(new GuiCraftingResult(this, container.getRecipes())); } }