Added autoswitching gui
This commit is contained in:
@@ -2,9 +2,12 @@ package de.skate702.craftingkeys.config;
|
|||||||
|
|
||||||
import de.skate702.craftingkeys.util.LanguageLocalizer;
|
import de.skate702.craftingkeys.util.LanguageLocalizer;
|
||||||
import de.skate702.craftingkeys.util.Logger;
|
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.GuiButton;
|
||||||
import net.minecraft.client.gui.GuiScreen;
|
import net.minecraft.client.gui.GuiScreen;
|
||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
|
import net.minecraft.util.Timer;
|
||||||
import org.lwjgl.opengl.GL11;
|
import org.lwjgl.opengl.GL11;
|
||||||
|
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
@@ -22,6 +25,10 @@ public class GuiConfig extends GuiScreen {
|
|||||||
private int guiShowBaseHeight;
|
private int guiShowBaseHeight;
|
||||||
private GuiType guiShowType;
|
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
|
//TODO:Give all buttons the name you think are good for the eventhandling
|
||||||
private int buttonSaveID = 901;
|
private int buttonSaveID = 901;
|
||||||
private int buttonAbortID = 902;
|
private int buttonAbortID = 902;
|
||||||
@@ -47,9 +54,11 @@ public class GuiConfig extends GuiScreen {
|
|||||||
guiShowBaseHeight = height / 2 + 35;
|
guiShowBaseHeight = height / 2 + 35;
|
||||||
|
|
||||||
guiShowType = GuiType.FURNACE;
|
guiShowType = GuiType.FURNACE;
|
||||||
|
guiShowState = 0;
|
||||||
//Button Init
|
//Button Init
|
||||||
addStandardButtons();
|
addStandardButtons();
|
||||||
|
lastTime = Util.client.getSystemTime();
|
||||||
|
currentTime = Util.client.getSystemTime();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -72,6 +81,12 @@ public class GuiConfig extends GuiScreen {
|
|||||||
|
|
||||||
drawCraftingTable();
|
drawCraftingTable();
|
||||||
// Insert Gui by selected Type
|
// Insert Gui by selected Type
|
||||||
|
currentTime = Util.client.getSystemTime();
|
||||||
|
if(currentTime - lastTime > 2000){
|
||||||
|
nextShowGui();
|
||||||
|
lastTime = Util.client.getSystemTime();
|
||||||
|
currentTime = Util.client.getSystemTime();
|
||||||
|
}
|
||||||
|
|
||||||
switch (guiShowType) {
|
switch (guiShowType) {
|
||||||
|
|
||||||
@@ -100,7 +115,6 @@ public class GuiConfig extends GuiScreen {
|
|||||||
|
|
||||||
//Draw line to let it look better
|
//Draw line to let it look better
|
||||||
drawHorizontalLine(guiShowBasePosition - 86, guiShowBasePosition + 85, guiShowBaseHeight + 80, lightGray.getRGB());
|
drawHorizontalLine(guiShowBasePosition - 86, guiShowBasePosition + 85, guiShowBaseHeight + 80, lightGray.getRGB());
|
||||||
|
|
||||||
super.drawScreen(mouseX, mouseY, partialTicks);
|
super.drawScreen(mouseX, mouseY, partialTicks);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -204,7 +218,6 @@ public class GuiConfig extends GuiScreen {
|
|||||||
// Add control buttons
|
// Add control buttons
|
||||||
buttonList.add((new GuiButton(buttonAbortID, width - 53, 3, 50, 20, LanguageLocalizer.localize("craftingkeys.config.button.abort"))));
|
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"))));
|
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(buttonStackID, guiBasePosition + 105, height / 2 - 84, 50, 20, "Shift")));
|
||||||
buttonList.add((new GuiButton(buttonDropID, guiBasePosition + 105, height / 2 - 46, 50, 20, "Space")));
|
buttonList.add((new GuiButton(buttonDropID, guiBasePosition + 105, height / 2 - 46, 50, 20, "Space")));
|
||||||
//Add Switch Buttons
|
//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(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(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")));
|
buttonList.add((new GuiButton(buttonAnvilID, guiShowBasePosition - 86 - 70 - 5, guiShowBaseHeight + 3 * 20 + 3, 70, 20, "Anvil")));
|
||||||
|
|
||||||
//Adding Crafting Buttons
|
//Adding Crafting Buttons
|
||||||
addCraftingButtons();
|
addCraftingButtons();
|
||||||
}
|
}
|
||||||
@@ -233,6 +245,39 @@ public class GuiConfig extends GuiScreen {
|
|||||||
buttonList.add((new GuiButton(9, guiBasePosition + 34, height / 2 - 67, 22, 20, "Ctrl")));
|
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 {
|
public enum GuiType {
|
||||||
ANVIL,
|
ANVIL,
|
||||||
FURNACE,
|
FURNACE,
|
||||||
|
|||||||
Reference in New Issue
Block a user