From ea265e50a853a9d94ee809fdf595294223e76e43 Mon Sep 17 00:00:00 2001 From: tosta3000 Date: Thu, 5 Nov 2015 17:05:16 +0100 Subject: [PATCH 1/4] Added autoswitching gui --- .../craftingkeys/config/GuiConfig.java | 53 +++++++++++++++++-- 1 file changed, 49 insertions(+), 4 deletions(-) diff --git a/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java b/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java index 02050f1..0b45e30 100644 --- a/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java +++ b/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java @@ -2,9 +2,12 @@ package de.skate702.craftingkeys.config; import de.skate702.craftingkeys.util.LanguageLocalizer; import de.skate702.craftingkeys.util.Logger; +import de.skate702.craftingkeys.util.Util; +import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiScreen; import net.minecraft.util.ResourceLocation; +import net.minecraft.util.Timer; import org.lwjgl.opengl.GL11; import java.awt.*; @@ -22,6 +25,10 @@ public class GuiConfig extends GuiScreen { private int guiShowBaseHeight; private GuiType guiShowType; + private int guiShowState; + private long lastTime = 0; + private long currentTime; + //TODO:Give all buttons the name you think are good for the eventhandling private int buttonSaveID = 901; private int buttonAbortID = 902; @@ -47,9 +54,11 @@ public class GuiConfig extends GuiScreen { guiShowBaseHeight = height / 2 + 35; guiShowType = GuiType.FURNACE; - + guiShowState = 0; //Button Init addStandardButtons(); + lastTime = Util.client.getSystemTime(); + currentTime = Util.client.getSystemTime(); } @Override @@ -72,6 +81,12 @@ public class GuiConfig extends GuiScreen { drawCraftingTable(); // Insert Gui by selected Type + currentTime = Util.client.getSystemTime(); + if(currentTime - lastTime > 2000){ + nextShowGui(); + lastTime = Util.client.getSystemTime(); + currentTime = Util.client.getSystemTime(); + } switch (guiShowType) { @@ -100,7 +115,6 @@ public class GuiConfig extends GuiScreen { //Draw line to let it look better drawHorizontalLine(guiShowBasePosition - 86, guiShowBasePosition + 85, guiShowBaseHeight + 80, lightGray.getRGB()); - super.drawScreen(mouseX, mouseY, partialTicks); } @@ -204,7 +218,6 @@ public class GuiConfig extends GuiScreen { // Add control buttons buttonList.add((new GuiButton(buttonAbortID, width - 53, 3, 50, 20, LanguageLocalizer.localize("craftingkeys.config.button.abort")))); buttonList.add((new GuiButton(buttonSaveID, width - 53, 26, 50, 20, LanguageLocalizer.localize("craftingkeys.config.button.save")))); - //I don't know if you want to change those for every gui buttonList.add((new GuiButton(buttonStackID, guiBasePosition + 105, height / 2 - 84, 50, 20, "Shift"))); buttonList.add((new GuiButton(buttonDropID, guiBasePosition + 105, height / 2 - 46, 50, 20, "Space"))); //Add Switch Buttons @@ -215,7 +228,6 @@ public class GuiConfig extends GuiScreen { buttonList.add((new GuiButton(buttonVillagerID, guiShowBasePosition + 86 + 5, guiShowBaseHeight + 20 + 1, 70, 20, "Villager"))); buttonList.add((new GuiButton(buttonEnchantmentID, guiShowBasePosition + 86 + 5, guiShowBaseHeight + 2 * 20 + 2, 70, 20, "Enchanting"))); buttonList.add((new GuiButton(buttonAnvilID, guiShowBasePosition - 86 - 70 - 5, guiShowBaseHeight + 3 * 20 + 3, 70, 20, "Anvil"))); - //Adding Crafting Buttons addCraftingButtons(); } @@ -233,6 +245,39 @@ public class GuiConfig extends GuiScreen { buttonList.add((new GuiButton(9, guiBasePosition + 34, height / 2 - 67, 22, 20, "Ctrl"))); } + public void nextShowGui(){ + switch(guiShowState){ + case 0: + guiShowType = GuiType.FURNACE; + break; + case 1: + guiShowType = GuiType.BREWINGSTAND; + break; + case 2: + guiShowType = GuiType.INVENTORY; + break; + case 3: + guiShowType = GuiType.ENCHANTMENT; + break; + case 4: + guiShowType = GuiType.DISPENSER; + break; + case 5: + guiShowType = GuiType.VILAGER; + break; + case 6: + guiShowType = GuiType.ANVIL; + break; + } + if(guiShowState >= 6){ + guiShowState = 0; + }else{ + guiShowState++; + } + + + } + public enum GuiType { ANVIL, FURNACE, From c82f3a1c466f1ed0e655f3f41deea6f0ec116904 Mon Sep 17 00:00:00 2001 From: tosta3000 Date: Thu, 5 Nov 2015 17:13:57 +0100 Subject: [PATCH 2/4] Added var for easier changing idle time. --- src/main/java/de/skate702/craftingkeys/config/GuiConfig.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java b/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java index 0b45e30..bfc7523 100644 --- a/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java +++ b/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java @@ -25,6 +25,7 @@ public class GuiConfig extends GuiScreen { private int guiShowBaseHeight; private GuiType guiShowType; + private int waitingTimeMS = 2000; private int guiShowState; private long lastTime = 0; private long currentTime; @@ -82,7 +83,7 @@ public class GuiConfig extends GuiScreen { drawCraftingTable(); // Insert Gui by selected Type currentTime = Util.client.getSystemTime(); - if(currentTime - lastTime > 2000){ + if(currentTime - lastTime > waitingTimeMS){ nextShowGui(); lastTime = Util.client.getSystemTime(); currentTime = Util.client.getSystemTime(); From f84008293f85090e2a8621c5ed43dc30986f1487 Mon Sep 17 00:00:00 2001 From: tosta3000 Date: Thu, 5 Nov 2015 17:21:34 +0100 Subject: [PATCH 3/4] Fixed a really small Bug... --- .../java/de/skate702/craftingkeys/config/GuiConfig.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java b/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java index bfc7523..040911a 100644 --- a/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java +++ b/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java @@ -3,11 +3,11 @@ package de.skate702.craftingkeys.config; import de.skate702.craftingkeys.util.LanguageLocalizer; import de.skate702.craftingkeys.util.Logger; import de.skate702.craftingkeys.util.Util; -import net.minecraft.client.Minecraft; + import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiScreen; import net.minecraft.util.ResourceLocation; -import net.minecraft.util.Timer; + import org.lwjgl.opengl.GL11; import java.awt.*; @@ -54,7 +54,7 @@ public class GuiConfig extends GuiScreen { guiShowBasePosition = width / 2 - 35; guiShowBaseHeight = height / 2 + 35; - guiShowType = GuiType.FURNACE; + guiShowType = GuiType.ANVIL; guiShowState = 0; //Button Init addStandardButtons(); @@ -222,6 +222,7 @@ public class GuiConfig extends GuiScreen { buttonList.add((new GuiButton(buttonStackID, guiBasePosition + 105, height / 2 - 84, 50, 20, "Shift"))); buttonList.add((new GuiButton(buttonDropID, guiBasePosition + 105, height / 2 - 46, 50, 20, "Space"))); //Add Switch Buttons + /* buttonList.add((new GuiButton(buttonInventoryID, guiShowBasePosition - 86 - 70 - 5, guiShowBaseHeight, 70, 20, "Inventory"))); buttonList.add((new GuiButton(buttonFurnaceID, guiShowBasePosition - 86 - 70 - 5, guiShowBaseHeight + 20 + 1, 70, 20, "Furnace"))); buttonList.add((new GuiButton(buttonBrewingstandID, guiShowBasePosition + 86 + 5, guiShowBaseHeight, 90, 20, "Brewing Stand"))); @@ -229,6 +230,7 @@ public class GuiConfig extends GuiScreen { buttonList.add((new GuiButton(buttonVillagerID, guiShowBasePosition + 86 + 5, guiShowBaseHeight + 20 + 1, 70, 20, "Villager"))); buttonList.add((new GuiButton(buttonEnchantmentID, guiShowBasePosition + 86 + 5, guiShowBaseHeight + 2 * 20 + 2, 70, 20, "Enchanting"))); buttonList.add((new GuiButton(buttonAnvilID, guiShowBasePosition - 86 - 70 - 5, guiShowBaseHeight + 3 * 20 + 3, 70, 20, "Anvil"))); + */ //Adding Crafting Buttons addCraftingButtons(); } From e9c0b875d24ec6d9d2c9c5c6e4b54f1028c1c3db Mon Sep 17 00:00:00 2001 From: tosta3000 Date: Thu, 5 Nov 2015 17:29:24 +0100 Subject: [PATCH 4/4] Added another bit of localization.. --- src/main/java/de/skate702/craftingkeys/config/GuiConfig.java | 2 +- src/main/resources/assets/craftingkeys/lang/de_DE.lang | 2 +- src/main/resources/assets/craftingkeys/lang/en_US.lang | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java b/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java index 040911a..271ac99 100644 --- a/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java +++ b/src/main/java/de/skate702/craftingkeys/config/GuiConfig.java @@ -73,7 +73,7 @@ public class GuiConfig extends GuiScreen { // Info-text and fake line drawCenteredString(fontRendererObj, LanguageLocalizer.localize("craftingkeys.config.description"), width / 2, height / 2 - 10, pureWhite.getRGB()); drawCenteredString(fontRendererObj, "- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -", width / 2, height / 2 + 8, lightGray.getRGB()); - drawCenteredString(fontRendererObj, LanguageLocalizer.localize("craftingkeys.config.usage"), width / 2, height / 2 + 23, pureWhite.getRGB()); + drawCenteredString(fontRendererObj, LanguageLocalizer.localize("craftingkeys.config.info"), width / 2, height / 2 + 20, pureWhite.getRGB()); // Key Info drawCenteredString(fontRendererObj, "Stack Key", guiBasePosition + 130, height / 2 - 96, pureWhite.getRGB()); drawCenteredString(fontRendererObj, "Drop Key", guiBasePosition + 130, height / 2 - 58, pureWhite.getRGB()); diff --git a/src/main/resources/assets/craftingkeys/lang/de_DE.lang b/src/main/resources/assets/craftingkeys/lang/de_DE.lang index c1d5c92..4d37c08 100644 --- a/src/main/resources/assets/craftingkeys/lang/de_DE.lang +++ b/src/main/resources/assets/craftingkeys/lang/de_DE.lang @@ -32,5 +32,5 @@ craftingkeys.config.title=Crafting Keys Konfiguration craftingkeys.config.description=Konfiguriere hier deine Tastenbelegung und klicke dann auf "Speichern". craftingkeys.config.button.save=Speichern craftingkeys.config.button.abort=Abbruch -craftingkeys.config.usage=Waehle die Oberflaeche fuer die du die Tastenbelegung sehen moechtest. +craftingkeys.config.info=Hier werden die Keybindings fuer die anderen GUIs angezeigt! diff --git a/src/main/resources/assets/craftingkeys/lang/en_US.lang b/src/main/resources/assets/craftingkeys/lang/en_US.lang index 0c10cb4..5ff6305 100644 --- a/src/main/resources/assets/craftingkeys/lang/en_US.lang +++ b/src/main/resources/assets/craftingkeys/lang/en_US.lang @@ -32,6 +32,6 @@ craftingkeys.config.title=Crafting Keys Config craftingkeys.config.description=Configure your keys here. Click "Save" when finished! craftingkeys.config.button.save=Save craftingkeys.config.button.abort=Abort -craftingkeys.config.usage=Use the buttons to select the GUI which you want to see the Keybindings for! +craftingkeys.config.info=Here are the Keybindings for the other GUIs shown! # TODO: Same style for the keys \ No newline at end of file