Add support for binding a key to toggle the Travellers Belt toolbar in inventories

This adds support for swapping the toolbar in inventories. For now, no key is assigned by default, so one must be added from the NEI options for this to take effect.
This commit is contained in:
David Lindström committed 2020-09-04 00:53:40 +02:00
1 parent a6066582a2
commit 996d9adb48
4 files changed
+83 -5

No files matched your search

@@ -0,0 +1,67 @@
package tconstruct.plugins.nei;
import codechicken.nei.NEIClientConfig;
import codechicken.nei.api.API;
import codechicken.nei.guihook.GuiContainerManager;
import codechicken.nei.guihook.IContainerInputHandler;
import net.minecraft.client.gui.inventory.GuiContainer;
import tconstruct.client.ArmorControls;
public class BeltToggleFromGuiInputHandler implements IContainerInputHandler {
static final String KEY_IDENTIFIER = "gui.tinkers_belt";
public static void init() {
API.addKeyBind(KEY_IDENTIFIER, 0);
GuiContainerManager.addInputHandler((IContainerInputHandler)new BeltToggleFromGuiInputHandler());
}
@Override
public boolean keyTyped(GuiContainer guiContainer, char c, int i) {
final int keyBinding = NEIClientConfig.getKeyBinding(KEY_IDENTIFIER);
if (i != keyBinding) {
return false;
}
return ArmorControls.doBeltSwapIfPossible();
}
@Override
public void onKeyTyped(GuiContainer guiContainer, char c, int i) {
}
@Override
public boolean lastKeyTyped(GuiContainer guiContainer, char c, int i) {
return false;
}
@Override
public boolean mouseClicked(GuiContainer guiContainer, int i, int i1, int i2) {
return false;
}
@Override
public void onMouseClicked(GuiContainer guiContainer, int i, int i1, int i2) {
}
@Override
public void onMouseUp(GuiContainer guiContainer, int i, int i1, int i2) {
}
@Override
public boolean mouseScrolled(GuiContainer guiContainer, int i, int i1, int i2) {
return false;
}
@Override
public void onMouseScrolled(GuiContainer guiContainer, int i, int i1, int i2) {
}
@Override
public void onMouseDragged(GuiContainer guiContainer, int i, int i1, int i2, long l) {
}
}
@@ -19,6 +19,8 @@ public class NEITConstructConfig implements IConfigureNEI
registerHandler(new RecipeHandlerAlloying());
registerHandler(new RecipeHandlerCastingTable());
registerHandler(new RecipeHandlerCastingBasin());
BeltToggleFromGuiInputHandler.init();
}
@Override