List of usage examples for net.minecraftforge.client.event GuiScreenEvent.KeyboardInputEvent.Post getGui
public Screen getGui()
From source file:vazkii.quark.management.feature.FToSwitchItems.java
License:Creative Commons License
@SubscribeEvent public void keyboardEvent(GuiScreenEvent.KeyboardInputEvent.Post event) { if (GameSettings.isKeyDown(Minecraft.getMinecraft().gameSettings.keyBindSwapHands) && event.getGui() instanceof GuiContainer) { GuiContainer gui = (GuiContainer) event.getGui(); Slot slot = gui.getSlotUnderMouse(); if (slot != null) { IInventory inv = slot.inventory; if (inv instanceof InventoryPlayer) { int index = slot.getSlotIndex(); if (Minecraft.getMinecraft().player.capabilities.isCreativeMode && index >= 36) index -= 36; // Creative mode messes with the indexes for some reason if (index < ((InventoryPlayer) inv).mainInventory.size()) NetworkHandler.INSTANCE.sendToServer(new MessageSwapItems(index)); }//ww w . j a va 2 s . co m } } }
From source file:vazkii.quark.management.feature.LinkItems.java
License:Creative Commons License
@SubscribeEvent public void keyboardEvent(GuiScreenEvent.KeyboardInputEvent.Post event) { if (GameSettings.isKeyDown(Minecraft.getMinecraft().gameSettings.keyBindChat) && event.getGui() instanceof GuiContainer && GuiScreen.isShiftKeyDown()) { GuiContainer gui = (GuiContainer) event.getGui(); Slot slot = gui.getSlotUnderMouse(); if (slot != null && slot.inventory != null && !"tmp".equals(slot.inventory.getName())) { // "tmp" checks for a creative inventory ItemStack stack = slot.getStack(); if (!stack.isEmpty()) NetworkHandler.INSTANCE.sendToServer(new MessageLinkItem(stack)); }/*from w ww .jav a 2 s . com*/ } }