diff --git a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentCustomItem.java b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentCustomItem.java index 17980e8..87ed67f 100644 --- a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentCustomItem.java +++ b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentCustomItem.java @@ -46,7 +46,7 @@ public class ContentCustomItem extends Content private int startPage; - private String selectedPage = "start"; + private Page page = Page.START; private String item; private final List attributes = Stream.concat(EnumAttributes.getAttributesFor(Applyable.BOTH).stream(), EnumAttributes.getAttributesFor(Applyable.PLAYER).stream()).collect(Collectors.toList()); @@ -112,14 +112,14 @@ public class ContentCustomItem extends Content container.initButtons(); }); - if(this.selectedPage.equals("start")) + if(Page.START.equals(this.page)) { if(this.startPage == 1) { container.add(new ElementColorMenu(x, y, "gui.worldhandler.items.custom_item.start.custom_name", this.builderCutomItem.getName())); } } - else if(this.selectedPage.equals("enchant")) + else if(Page.ENCHANT.equals(this.page)) { ElementPageList enchantments = new ElementPageList(x + 118, y, new ArrayList(ForgeRegistries.ENCHANTMENTS.getValues()), 114, 20, 3, container, new ILogicPageList() { @@ -164,7 +164,7 @@ public class ContentCustomItem extends Content }); container.add(enchantments); } - else if(this.selectedPage.equals("attributes")) + else if(Page.ATTRIBUTES.equals(this.page)) { ElementPageList attributes = new ElementPageList(x + 118, y, this.attributes, 114, 20, 3, container, new ILogicPageList() { @@ -227,21 +227,21 @@ public class ContentCustomItem extends Content container.add(button1 = new GuiButtonBase(x, y, 114, 20, I18n.format("gui.worldhandler.items.custom_item.start"), () -> { - this.selectedPage = "start"; + this.page = Page.START; container.init(); })); container.add(button2 = new GuiButtonBase(x, y + 24, 114, 20, I18n.format("gui.worldhandler.items.custom_item.enchantment"), () -> { - this.selectedPage = "enchant"; + this.page = Page.ENCHANT; container.init(); })); container.add(button3 = new GuiButtonBase(x, y + 48, 114, 20, I18n.format("gui.worldhandler.items.custom_item.attributes"), () -> { - this.selectedPage = "attributes"; + this.page = Page.ATTRIBUTES; container.init(); })); - if(this.selectedPage.equals("start")) + if(Page.START.equals(this.page)) { button1.active = false; @@ -268,11 +268,11 @@ public class ContentCustomItem extends Content button6.active = false; } } - else if(this.selectedPage.equals("enchant")) + else if(Page.ENCHANT.equals(this.page)) { button2.active = false; } - else if(this.selectedPage.equals("attributes")) + else if(Page.ATTRIBUTES.equals(this.page)) { button3.active = false; } @@ -297,7 +297,7 @@ public class ContentCustomItem extends Content @Override public void tick(Container container) { - if(this.selectedPage.equals("start") && this.startPage == 0) + if(Page.START.equals(this.page) && this.startPage == 0) { this.itemField.tick(); this.itemLore1Field.tick(); @@ -308,7 +308,7 @@ public class ContentCustomItem extends Content @Override public void drawScreen(Container container, int x, int y, int mouseX, int mouseY, float partialTicks) { - if(this.selectedPage.equals("start") && this.startPage == 0) + if(Page.START.equals(this.page) && this.startPage == 0) { this.itemField.renderButton(mouseX, mouseY, partialTicks); this.itemLore1Field.renderButton(mouseX, mouseY, partialTicks); @@ -345,4 +345,12 @@ public class ContentCustomItem extends Content { this.builderCutomItem.setPlayer(username); } + + @OnlyIn(Dist.CLIENT) + public static enum Page + { + START, + ENCHANT, + ATTRIBUTES; + } } diff --git a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentEditBlocks.java b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentEditBlocks.java index 8700f0c..3ec50de 100644 --- a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentEditBlocks.java +++ b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentEditBlocks.java @@ -54,20 +54,20 @@ public class ContentEditBlocks extends Content private String block2; private String filter; - private String selectedPage = "coordinates"; + private Page page = Page.COORDINATES; @Override public ICommandBuilder getCommandBuilder() { - if(this.selectedPage.equals("coordinates")) + if(Page.COORDINATES.equals(this.page)) { return this.builderWH; } - else if(this.selectedPage.equals("fill") || this.selectedPage.equals("replace")) + else if(Page.FILL.equals(this.page) || Page.REPLACE.equals(this.page)) { return this.builderFill; } - else if(this.selectedPage.equals("clone")) + else if(Page.CLONE.equals(this.page)) { return this.builderClone; } @@ -126,7 +126,7 @@ public class ContentEditBlocks extends Content BlockHelper.setPos2(BlockHelper.setZ(BlockHelper.getPos2(), this.parseCoordinate(text))); }); - this.block1Field = new GuiTextFieldTooltip(x + 118, y, 114, 20, this.selectedPage.equals("fill") ? I18n.format("gui.worldhandler.edit_blocks.fill.block_id_to_fill") : I18n.format("gui.worldhandler.edit_blocks.replace.block_id_replace")); + this.block1Field = new GuiTextFieldTooltip(x + 118, y, 114, 20, Page.FILL.equals(this.page) ? I18n.format("gui.worldhandler.edit_blocks.fill.block_id_to_fill") : I18n.format("gui.worldhandler.edit_blocks.replace.block_id_replace")); this.block1Field.setValidator(Predicates.notNull()); this.block1Field.setText(this.block1); this.block1Field.setResponder(text -> @@ -170,22 +170,22 @@ public class ContentEditBlocks extends Content container.add(button1 = new GuiButtonBase(x, y, 114, 20, I18n.format("gui.worldhandler.edit_blocks.coordinates"), () -> { - this.selectedPage = "coordinates"; + this.page = Page.COORDINATES; container.init(); })); container.add(button2 = new GuiButtonBase(x, y + 24, 114, 20, I18n.format("gui.worldhandler.edit_blocks.fill"), () -> { - this.selectedPage = "fill"; + this.page = Page.FILL; container.init(); })); container.add(button3 = new GuiButtonBase(x, y + 48, 114, 20, I18n.format("gui.worldhandler.edit_blocks.replace"), () -> { - this.selectedPage = "replace"; + this.page = Page.REPLACE; container.init(); })); container.add(button4 = new GuiButtonBase(x, y + 72, 114, 20, I18n.format("gui.worldhandler.edit_blocks.clone"), () -> { - this.selectedPage = "clone"; + this.page = Page.CLONE; container.init(); })); @@ -195,7 +195,7 @@ public class ContentEditBlocks extends Content int width1 = 0; int width2 = 0; - if(this.selectedPage.equals("coordinates")) + if(Page.COORDINATES.equals(this.page)) { button1.active = false; @@ -212,7 +212,7 @@ public class ContentEditBlocks extends Content container.add(this.y2Field); container.add(this.z2Field); } - else if(this.selectedPage.equals("fill")) + else if(Page.FILL.equals(this.page)) { button2.active = false; @@ -229,7 +229,7 @@ public class ContentEditBlocks extends Content })); button1.active = ResourceHelper.isRegistered(this.builderFill.getBlock1(), ForgeRegistries.BLOCKS); } - else if(this.selectedPage.equals("replace")) + else if(Page.REPLACE.equals(this.page)) { button3.active = false; @@ -247,7 +247,7 @@ public class ContentEditBlocks extends Content })); button1.active = ResourceHelper.isRegistered(this.builderFill.getBlock1(), ForgeRegistries.BLOCKS) && ResourceHelper.isRegistered(this.builderFill.getBlock2(), ForgeRegistries.BLOCKS); } - else if(this.selectedPage.equals("clone")) + else if(Page.CLONE.equals(this.page)) { button4.active = false; @@ -330,7 +330,7 @@ public class ContentEditBlocks extends Content @Override public void tick(Container container) { - if(this.selectedPage.equals("coordinates")) + if(Page.COORDINATES.equals(this.page)) { this.x1Field.tick(); this.y1Field.tick(); @@ -340,16 +340,16 @@ public class ContentEditBlocks extends Content this.y2Field.tick(); this.z2Field.tick(); } - else if(this.selectedPage.equals("fill")) + else if(Page.FILL.equals(this.page)) { this.block1Field.tick(); } - else if(this.selectedPage.equals("replace")) + else if(Page.REPLACE.equals(this.page)) { this.block1Field.tick(); this.block2Field.tick(); } - else if(this.selectedPage.equals("clone")) + else if(Page.CLONE.equals(this.page)) { if(EnumMask.FILTERED.equals(this.builderClone.getMask())) { @@ -361,7 +361,7 @@ public class ContentEditBlocks extends Content @Override public void drawScreen(Container container, int x, int y, int mouseX, int mouseY, float partialTicks) { - if(this.selectedPage.equals("coordinates")) + if(Page.COORDINATES.equals(this.page)) { this.x1Field.renderButton(mouseX, mouseY, partialTicks); this.y1Field.renderButton(mouseX, mouseY, partialTicks); @@ -371,16 +371,16 @@ public class ContentEditBlocks extends Content this.y2Field.renderButton(mouseX, mouseY, partialTicks); this.z2Field.renderButton(mouseX, mouseY, partialTicks); } - else if(this.selectedPage.equals("fill")) + else if(Page.FILL.equals(this.page)) { this.block1Field.renderButton(mouseX, mouseY, partialTicks); } - else if(this.selectedPage.equals("replace")) + else if(Page.REPLACE.equals(this.page)) { this.block1Field.renderButton(mouseX, mouseY, partialTicks); this.block2Field.renderButton(mouseX, mouseY, partialTicks); } - else if(this.selectedPage.equals("clone")) + else if(Page.CLONE.equals(this.page)) { if(EnumMask.FILTERED.equals(this.builderClone.getMask())) { @@ -432,4 +432,13 @@ public class ContentEditBlocks extends Content { return Contents.EDIT_BLOCKS; } + + @OnlyIn(Dist.CLIENT) + public static enum Page + { + COORDINATES, + FILL, + REPLACE, + CLONE; + } } diff --git a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentMultiplayer.java b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentMultiplayer.java index 4c38164..13c8382 100644 --- a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentMultiplayer.java +++ b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentMultiplayer.java @@ -34,9 +34,7 @@ public class ContentMultiplayer extends Content private GuiTextFieldTooltip playerField; private GuiTextFieldTooltip reasonField; - private int shiftDown = 0; - - private String selected = "kickBan"; + private Page page = Page.KICK_AND_BAN; private final BuilderPlayerReason builderKick = new BuilderPlayerReason("kick"); private final BuilderPlayerReason builderBan = new BuilderPlayerReason("ban"); @@ -56,23 +54,23 @@ public class ContentMultiplayer extends Content @Override public ICommandBuilder getCommandBuilder() { - if(this.selected.equals("kickBan")) + if(Page.KICK_AND_BAN.equals(this.page)) { return this.builderKickBan; } - else if(this.selected.equals("pardon")) + else if(Page.PARDON.equals(this.page)) { return this.builderPardon; } - else if(this.selected.equals("permissions")) + else if(Page.PERMISSIONS.equals(this.page)) { return this.builderPermissions; } - else if(this.selected.equals("runtime")) + else if(Page.RUNTIME.equals(this.page)) { return this.builderRuntime; } - else if(this.selected.equals("whitelist")) + else if(Page.WHITELIST.equals(this.page)) { return this.builderWhitelist; } @@ -83,7 +81,7 @@ public class ContentMultiplayer extends Content @Override public void initGui(Container container, int x, int y) { - this.playerField = new GuiTextFieldTooltip(x + 118, y + this.shiftDown, 114, 20, I18n.format("gui.worldhandler.multiplayer.username")); + this.playerField = new GuiTextFieldTooltip(x + 118, y + this.page.getShift(), 114, 20, I18n.format("gui.worldhandler.multiplayer.username")); this.playerField.setValidator(Predicates.notNull()); this.playerField.setFocused2(false); this.playerField.setText(this.builderKick.getPlayer()); @@ -94,7 +92,7 @@ public class ContentMultiplayer extends Content container.initButtons(); }); - this.reasonField = new GuiTextFieldTooltip(x + 118, y + 24 + this.shiftDown, 114, 20, I18n.format("gui.worldhandler.multiplayer.kick_ban.reason")); + this.reasonField = new GuiTextFieldTooltip(x + 118, y + 24 + this.page.getShift(), 114, 20, I18n.format("gui.worldhandler.multiplayer.kick_ban.reason")); this.reasonField.setValidator(Predicates.notNull()); this.reasonField.setFocused2(false); this.reasonField.setText(this.builderKick.getReason()); @@ -120,36 +118,31 @@ public class ContentMultiplayer extends Content container.add(button1 = new GuiButtonBase(x, y, 114, 20, I18n.format("gui.worldhandler.multiplayer.kick") + " / " + I18n.format("gui.worldhandler.multiplayer.ban"), () -> { - this.selected = "kickBan"; - this.shiftDown = 0; + this.page = Page.KICK_AND_BAN; container.init(); })); container.add(button2 = new GuiButtonBase(x, y + 24, 114, 20, I18n.format("gui.worldhandler.multiplayer.pardon"), () -> { - this.selected = "pardon"; - this.shiftDown = 24; + this.page = Page.PARDON; container.init(); })); container.add(button3 = new GuiButtonBase(x, y + 48, 114, 20, I18n.format("gui.worldhandler.multiplayer.permissions"), () -> { - this.selected = "permissions"; - this.shiftDown = 12; + this.page = Page.PERMISSIONS; container.init(); })); container.add(button4 = new GuiButtonBase(x, y + 72, 114, 20, I18n.format("gui.worldhandler.multiplayer.runtime"), () -> { - this.selected = "runtime"; - this.shiftDown = 0; + this.page = Page.RUNTIME; container.init(); })); container.add(button5 = new GuiButtonBase(x, y + 96, 114, 20, I18n.format("gui.worldhandler.multiplayer.whitelist"), () -> { - this.selected = "whitelist"; - this.shiftDown = 0; + this.page = Page.WHITELIST; container.init(); })); - if(this.selected.equals("kickBan")) + if(Page.KICK_AND_BAN.equals(this.page)) { container.add(this.playerField); container.add(this.reasonField); @@ -170,7 +163,7 @@ public class ContentMultiplayer extends Content button1.active = false; } - else if(this.selected.equals("pardon")) + else if(Page.PARDON.equals(this.page)) { container.add(this.playerField); container.add(button6 = new GuiButtonTooltip(x + 118, y + 48, 114, 20, I18n.format("gui.worldhandler.multiplayer.pardon"), this.builderPardon.toActualCommand(), () -> @@ -185,7 +178,7 @@ public class ContentMultiplayer extends Content button2.active = false; } - else if(this.selected.equals("permissions")) + else if(Page.PERMISSIONS.equals(this.page)) { container.add(this.playerField); container.add(button6 = new GuiButtonTooltip(x + 118, y + 24 + 12, 114, 20, I18n.format("gui.worldhandler.multiplayer.permissions.give"), this.builderOp.toActualCommand(), () -> @@ -205,7 +198,7 @@ public class ContentMultiplayer extends Content button3.active = false; } - else if(this.selected.equals("runtime")) + else if(Page.RUNTIME.equals(this.page)) { container.add(new GuiButtonTooltip(x + 118, y, 114, 20, I18n.format("gui.worldhandler.multiplayer.runtime.save_world"), this.builderSaveAll.toActualCommand(), () -> { @@ -226,7 +219,7 @@ public class ContentMultiplayer extends Content button4.active = false; } - else if(this.selected.equals("whitelist")) + else if(Page.WHITELIST.equals(this.page)) { container.add(this.playerField); container.add(button6 = new GuiButtonBase(x + 118, y + 24, 44, 20, I18n.format("gui.worldhandler.multiplayer.whitelist.add"), () -> @@ -265,12 +258,12 @@ public class ContentMultiplayer extends Content @Override public void tick(Container container) { - if(this.selected.equals("kickBan")) + if(Page.KICK_AND_BAN.equals(this.page)) { this.reasonField.tick(); } - if(!this.selected.equals("runtime")) + if(!Page.RUNTIME.equals(this.page)) { this.playerField.tick(); } @@ -279,12 +272,12 @@ public class ContentMultiplayer extends Content @Override public void drawScreen(Container container, int x, int y, int mouseX, int mouseY, float partialTicks) { - if(this.selected.equals("kickBan")) + if(Page.KICK_AND_BAN.equals(this.page)) { this.reasonField.renderButton(mouseX, mouseY, partialTicks); } - if(!this.selected.equals("runtime")) + if(!Page.RUNTIME.equals(this.page)) { this.playerField.renderButton(mouseX, mouseY, partialTicks); } @@ -337,4 +330,26 @@ public class ContentMultiplayer extends Content { return null; } + + @OnlyIn(Dist.CLIENT) + public static enum Page + { + KICK_AND_BAN(0), + PARDON(24), + PERMISSIONS(14), + RUNTIME(0), + WHITELIST(0); + + private final int shift; + + private Page(int shift) + { + this.shift = shift; + } + + public int getShift() + { + return this.shift; + } + } } diff --git a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentPlayer.java b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentPlayer.java index 1b13462..d03fbcc 100644 --- a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentPlayer.java +++ b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentPlayer.java @@ -28,7 +28,7 @@ import net.minecraftforge.api.distmarker.OnlyIn; @OnlyIn(Dist.CLIENT) public class ContentPlayer extends Content { - private String selectedMain = "start"; + private Page page = Page.START; private GuiTextFieldTooltip posXField; private GuiTextFieldTooltip posYField; @@ -48,7 +48,7 @@ public class ContentPlayer extends Content @Override public ICommandBuilder getCommandBuilder() { - if(this.selectedMain.equals("miscellaneous")) + if(Page.MISC.equals(this.page)) { return this.builderMiscellaneous; } @@ -82,34 +82,34 @@ public class ContentPlayer extends Content container.add(button1 = new GuiButtonBase(x, y, 114, 20, I18n.format("gui.worldhandler.entities.player.start"), () -> { - this.selectedMain = "start"; + this.page = Page.START; container.init(); })); container.add(button2 = new GuiButtonBase(x, y + 24, 114, 20, I18n.format("gui.worldhandler.entities.player.score"), () -> { - this.selectedMain = "score"; + this.page = Page.SCORE; container.init(); })); container.add(button3 = new GuiButtonBase(x, y + 48, 114, 20, I18n.format("gui.worldhandler.entities.player.position"), () -> { - this.selectedMain = "position"; + this.page = Page.POSITION; container.init(); })); container.add(button4 = new GuiButtonBase(x, y + 72, 114, 20, I18n.format("gui.worldhandler.entities.player.miscellaneous"), () -> { - this.selectedMain = "miscellaneous"; + this.page = Page.MISC; container.init(); })); - if(this.selectedMain.equals("start")) + if(Page.START.equals(this.page)) { button1.active = false; } - else if(this.selectedMain.equals("score")) + else if(Page.SCORE.equals(this.page)) { button2.active = false; } - else if(this.selectedMain.equals("position")) + else if(Page.POSITION.equals(this.page)) { button3.active = false; @@ -122,7 +122,7 @@ public class ContentPlayer extends Content Minecraft.getInstance().keyboardListener.setClipboardString(posX + " " + posY + " " + posZ); })); } - else if(this.selectedMain.equals("miscellaneous")) + else if(Page.MISC.equals(this.page)) { button4.active = false; @@ -159,7 +159,7 @@ public class ContentPlayer extends Content @Override public void drawScreen(Container container, int x, int y, int mouseX, int mouseY, float partialTicks) { - if(this.selectedMain.equals("start")) + if(Page.START.equals(this.page)) { int xPos = x + 175; int yPos = y + 82; @@ -172,13 +172,13 @@ public class ContentPlayer extends Content InventoryScreen.drawEntityOnScreen(xPos, yPos, 30, xPos - mouseX, yPos - mouseY - 44, Minecraft.getInstance().player); GlStateManager.blendFuncSeparate(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO); } - else if(this.selectedMain.equals("score")) + else if(Page.SCORE.equals(this.page)) { this.scoreField.renderButton(mouseX, mouseY, partialTicks); this.xpField.renderButton(mouseX, mouseY, partialTicks); this.coinsField.renderButton(mouseX, mouseY, partialTicks); } - else if(this.selectedMain.equals("position")) + else if(Page.POSITION.equals(this.page)) { this.posXField.renderButton(mouseX, mouseY, partialTicks); this.posYField.renderButton(mouseX, mouseY, partialTicks); @@ -216,4 +216,13 @@ public class ContentPlayer extends Content { return Contents.PLAYER; } + + @OnlyIn(Dist.CLIENT) + public static enum Page + { + START, + SCORE, + POSITION, + MISC; + } } diff --git a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardObjectives.java b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardObjectives.java index cb87217..f196e03 100644 --- a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardObjectives.java +++ b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardObjectives.java @@ -34,7 +34,7 @@ import net.minecraftforge.registries.IForgeRegistry; public class ContentScoreboardObjectives extends ContentScoreboard { private GuiTextFieldTooltip objectField; - private String selectedObjective = "create"; + private Page page = Page.CREATE; private final BuilderScoreboardObjectives builderObjectives = new BuilderScoreboardObjectives(); @@ -47,7 +47,7 @@ public class ContentScoreboardObjectives extends ContentScoreboard @Override public void initGui(Container container, int x, int y) { - this.objectField = new GuiTextFieldTooltip(x + 118, y + (this.selectedObjective.equals("remove") ? 24 : 0), 114, 20, I18n.format("gui.worldhandler.scoreboard.objectives.objective")); + this.objectField = new GuiTextFieldTooltip(x + 118, y + this.page.getShift(), 114, 20, I18n.format("gui.worldhandler.scoreboard.objectives.objective")); this.objectField.setValidator(Predicates.notNull()); this.objectField.setText(ContentScoreboard.getObjective()); this.objectField.setResponder(text -> @@ -57,7 +57,7 @@ public class ContentScoreboardObjectives extends ContentScoreboard container.initButtons(); }); - if(this.selectedObjective.equals("create")) + if(Page.CREATE.equals(this.page)) { ElementMultiButtonList objectives = new ElementMultiButtonList(x + 118, y + 24, HELPER.getObjectives(), 2, new ILogicClickList() { @@ -158,9 +158,9 @@ public class ContentScoreboardObjectives extends ContentScoreboard container.add(objectives); } - else if(this.selectedObjective.equals("display") || this.selectedObjective.equals("undisplay")) + else if(Page.DISPLAY.equals(this.page) || Page.UNDISPLAY.equals(this.page)) { - ElementMultiButtonList slots = new ElementMultiButtonList(x + 118, y + 24 + (this.selectedObjective.equals("undisplay") ? -12 : 0), HELPER.getSlots(), 2, new ILogicClickList() + ElementMultiButtonList slots = new ElementMultiButtonList(x + 118, y + 24 - this.page.getShift(), HELPER.getSlots(), 2, new ILogicClickList() { @Override public String translate(String key, int depth) @@ -207,59 +207,57 @@ public class ContentScoreboardObjectives extends ContentScoreboard container.add(button1 = new GuiButtonBase(x, y, 114, 20, I18n.format("gui.worldhandler.scoreboard.objectives.create"), () -> { - this.selectedObjective = "create"; + this.page = Page.CREATE; container.init(); })); container.add(button2 = new GuiButtonBase(x, y + 24, 114, 20, I18n.format("gui.worldhandler.scoreboard.objectives.display"), () -> { - this.selectedObjective = "display"; + this.page = Page.DISPLAY; container.init(); })); container.add(button3 = new GuiButtonBase(x, y + 48, 114, 20, I18n.format("gui.worldhandler.scoreboard.objectives.undisplay"), () -> { - this.selectedObjective = "undisplay"; + this.page = Page.UNDISPLAY; container.init(); })); container.add(button4 = new GuiButtonBase(x, y + 72, 114, 20, I18n.format("gui.worldhandler.scoreboard.objectives.remove"), () -> { - this.selectedObjective = "remove"; + this.page = Page.REMOVE; container.init(); })); - button1.active = !this.selectedObjective.equals("create"); - button2.active = !this.selectedObjective.equals("display"); - button3.active = !this.selectedObjective.equals("undisplay"); - button4.active = !this.selectedObjective.equals("remove"); + button1.active = !Page.CREATE.equals(this.page); + button2.active = !Page.DISPLAY.equals(this.page); + button3.active = !Page.UNDISPLAY.equals(this.page); + button4.active = !Page.REMOVE.equals(this.page); - int yOffset = this.selectedObjective.equals("undisplay") ? -12 : (this.selectedObjective.equals("remove") ? -24 : 0); - - if(this.selectedObjective.equals("undisplay")) + if(Page.UNDISPLAY.equals(this.page)) { this.builderObjectives.setObjective(null); } - else if(this.selectedObjective.equals("remove")) + else if(Page.REMOVE.equals(this.page)) { this.builderObjectives.setMode(EnumMode.REMOVE); } - if(!this.selectedObjective.equals("undisplay")) + if(!Page.UNDISPLAY.equals(this.page)) { container.add(this.objectField); this.builderObjectives.setObjective(ContentScoreboard.getObjective()); } - container.add(button1 = new GuiButtonBase(x + 118, y + 72 + yOffset, 114, 20, I18n.format("gui.worldhandler.actions.perform"), () -> + container.add(button1 = new GuiButtonBase(x + 118, y + 72 - this.page.getShift(), 114, 20, I18n.format("gui.worldhandler.actions.perform"), () -> { CommandHelper.sendCommand(this.builderObjectives); container.init(); })); - button1.active = this.selectedObjective.equals("undisplay") || ContentScoreboard.isObjectiveValid(); + button1.active = Page.UNDISPLAY.equals(this.page) || ContentScoreboard.isObjectiveValid(); } @Override public void tick(Container container) { - if(!this.selectedObjective.equals("undisplay")) + if(!Page.UNDISPLAY.equals(this.page)) { this.objectField.tick(); } @@ -268,7 +266,7 @@ public class ContentScoreboardObjectives extends ContentScoreboard @Override public void drawScreen(Container container, int x, int y, int mouseX, int mouseY, float partialTicks) { - if(!this.selectedObjective.equals("undisplay")) + if(!Page.UNDISPLAY.equals(this.page)) { this.objectField.renderButton(mouseX, mouseY, partialTicks); } @@ -285,4 +283,25 @@ public class ContentScoreboardObjectives extends ContentScoreboard { return Contents.SCOREBOARD_OBJECTIVES; } + + @OnlyIn(Dist.CLIENT) + public static enum Page + { + CREATE(0), + DISPLAY(0), + UNDISPLAY(12), + REMOVE(24); + + private final int shift; + + private Page(int shift) + { + this.shift = shift; + } + + public int getShift() + { + return this.shift; + } + } } \ No newline at end of file diff --git a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardPlayers.java b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardPlayers.java index e745ccc..03bfa65 100644 --- a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardPlayers.java +++ b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardPlayers.java @@ -34,7 +34,8 @@ public class ContentScoreboardPlayers extends ContentScoreboard private final BuilderTrigger builderTrigger = new BuilderTrigger(); private final BuilderMultiCommand builderTriggerMulti = new BuilderMultiCommand(this.builderTrigger, this.builderPlayers); - private String selectedPlayer = "add|set|remove"; + private Page page = Page.ADD_SET_REMOVE; + private String tag; private GuiButtonBase addButton; @@ -43,15 +44,15 @@ public class ContentScoreboardPlayers extends ContentScoreboard @Override public ICommandBuilder getCommandBuilder() { - if(this.selectedPlayer.equals("add|set|remove")) + if(Page.ADD_SET_REMOVE.equals(this.page)) { return this.builderPlayers; } - else if(this.selectedPlayer.equals("tag")) + else if(Page.TAG.equals(this.page)) { return this.builderTag; } - else if(this.selectedPlayer.equals("enable")) + else if(Page.ENABLE.equals(this.page)) { return this.builderTriggerMulti; } @@ -110,28 +111,28 @@ public class ContentScoreboardPlayers extends ContentScoreboard container.add(button1 = new GuiButtonBase(x, y + 12, 114, 20, I18n.format("gui.worldhandler.scoreboard.players.points"), () -> { - this.selectedPlayer = "add|set|remove"; + this.page = Page.ADD_SET_REMOVE; container.init(); })); container.add(button2 = new GuiButtonBase(x, y + 36, 114, 20, I18n.format("gui.worldhandler.scoreboard.players.tag"), () -> { - this.selectedPlayer = "tag"; + this.page = Page.TAG; container.init(); })); container.add(button3 = new GuiButtonBase(x, y + 60, 114, 20, I18n.format("gui.worldhandler.scoreboard.players.trigger"), () -> { - this.selectedPlayer = "enable"; + this.page = Page.ENABLE; container.init(); })); - button1.active = !this.selectedPlayer.equals("add|set|remove"); - button2.active = !this.selectedPlayer.equals("tag"); - button3.active = !this.selectedPlayer.equals("enable"); + button1.active = !Page.ADD_SET_REMOVE.equals(this.page); + button2.active = !Page.TAG.equals(this.page); + button3.active = !Page.ENABLE.equals(this.page); boolean enabled = ContentScoreboard.isObjectiveValid(); - this.builderPlayers.setMode(this.selectedPlayer); + this.builderPlayers.setMode(this.page.getMode()); - if(this.selectedPlayer.equals("add|set|remove")) + if(Page.ADD_SET_REMOVE.equals(this.page)) { container.add(new GuiSlider(x + 118, y + 24, 114, 20, 0, Config.getSliders().getMaxPlayerPoints(), 0, container, new LogicSliderSimple("points", I18n.format("gui.worldhandler.scoreboard.players.points"), value -> { @@ -159,7 +160,7 @@ public class ContentScoreboardPlayers extends ContentScoreboard this.removeButton.active = points; button1.active = enabled; } - else if(this.selectedPlayer.equals("tag")) + else if(Page.TAG.equals(this.page)) { container.add(button1 = new GuiButtonBase(x + 118, y + 36, 114, 20, I18n.format("gui.worldhandler.actions.add"), () -> { @@ -177,7 +178,7 @@ public class ContentScoreboardPlayers extends ContentScoreboard button1.active = tag; button2.active = tag; } - else if(this.selectedPlayer.equals("enable")) + else if(Page.ENABLE.equals(this.page)) { container.add(new GuiSlider(x + 118, y + 24, 114, 20, 0, Config.getSliders().getMaxTriggerValue(), 0, container, new LogicSliderSimple("enable", I18n.format("gui.worldhandler.generic.value"), value -> { @@ -204,7 +205,7 @@ public class ContentScoreboardPlayers extends ContentScoreboard button1.active = enabled; } - if(this.selectedPlayer.equals("tag")) + if(Page.TAG.equals(this.page)) { container.add(this.tagField); } @@ -219,7 +220,7 @@ public class ContentScoreboardPlayers extends ContentScoreboard @Override public void tick(Container container) { - if(this.selectedPlayer.equals("tag")) + if(Page.TAG.equals(this.page)) { this.tagField.tick(); } @@ -227,19 +228,19 @@ public class ContentScoreboardPlayers extends ContentScoreboard { boolean enabled = ContentScoreboard.isObjectiveValid(); - if(this.selectedPlayer.equals("add|set|remove")) + if(Page.ADD_SET_REMOVE.equals(this.page)) { boolean points = enabled && this.builderPlayers.getPoints() > 0; this.addButton.active = points; this.removeButton.active = points; } - else if(this.selectedPlayer.equals("enable")) + else if(Page.ENABLE.equals(this.page)) { this.addButton.active = enabled && this.builderTrigger.getValue() > 0; this.removeButton.active = enabled; } - + this.objectField.tick(); } } @@ -247,7 +248,7 @@ public class ContentScoreboardPlayers extends ContentScoreboard @Override public void drawScreen(Container container, int x, int y, int mouseX, int mouseY, float partialTicks) { - if(this.selectedPlayer.equals("tag")) + if(Page.TAG.equals(this.page)) { this.tagField.renderButton(mouseX, mouseY, partialTicks); } @@ -275,4 +276,24 @@ public class ContentScoreboardPlayers extends ContentScoreboard this.builderPlayers.setPlayer(username); this.builderTag.setPlayer(username); } + + @OnlyIn(Dist.CLIENT) + public static enum Page + { + ADD_SET_REMOVE("add|set|remove"), + TAG("tag"), + ENABLE("enable"); + + private final String mode; + + private Page(String mode) + { + this.mode = mode; + } + + public String getMode() + { + return this.mode; + } + } } diff --git a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardTeams.java b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardTeams.java index 069cfa8..008cfbb 100644 --- a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardTeams.java +++ b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentScoreboardTeams.java @@ -28,7 +28,7 @@ public class ContentScoreboardTeams extends ContentScoreboard private GuiTextFieldTooltip teamField; private String team; - private String selectedTeam = "add"; + private Page page = Page.ADD; private final BuilderTeams builderTeams = new BuilderTeams(); @@ -41,7 +41,7 @@ public class ContentScoreboardTeams extends ContentScoreboard @Override public void initGui(Container container, int x, int y) { - this.teamField = new GuiTextFieldTooltip(x + 118, y + (this.selectedTeam.equals("option") ? 0 : (this.selectedTeam.equals("add") ? 24 : 12)), 114, 20, I18n.format("gui.worldhandler.scoreboard.team.team")); + this.teamField = new GuiTextFieldTooltip(x + 118, y + this.page.getShift(), 114, 20, I18n.format("gui.worldhandler.scoreboard.team.team")); this.teamField.setValidator(Predicates.notNull()); this.teamField.setText(this.team); this.teamField.setResponder(text -> @@ -51,7 +51,7 @@ public class ContentScoreboardTeams extends ContentScoreboard container.initButtons(); }); - if(this.selectedTeam.equals("option")) + if(Page.OPTION.equals(this.page)) { ElementMultiButtonList options = new ElementMultiButtonList(x + 118, y + 24, HELPER.getOptions(), 2, new ILogicClickList() { @@ -118,39 +118,39 @@ public class ContentScoreboardTeams extends ContentScoreboard container.add(button1 = new GuiButtonBase(x, y, 114, 20, I18n.format("gui.worldhandler.scoreboard.team.create"), () -> { - this.selectedTeam = "add"; + this.page = Page.ADD; container.init(); })); container.add(button2 = new GuiButtonBase(x, y + 24, 114, 20, I18n.format("gui.worldhandler.scoreboard.team.join") + " / " + I18n.format("gui.worldhandler.scoreboard.team.leave"), () -> { - this.selectedTeam = "join|leave"; + this.page = Page.JOIN_OR_LEAVE; container.init(); })); container.add(button3 = new GuiButtonBase(x, y + 48, 114, 20, I18n.format("gui.worldhandler.scoreboard.team.remove") + " / " + I18n.format("gui.worldhandler.scoreboard.team.empty"), () -> { - this.selectedTeam = "remove|empty"; + this.page = Page.REMOVE_OR_EMPTY; container.init(); })); container.add(button4 = new GuiButtonBase(x, y + 72, 114, 20, I18n.format("gui.worldhandler.scoreboard.team.options"), () -> { - this.selectedTeam = "option"; + this.page = Page.OPTION; container.init(); })); - button1.active = !this.selectedTeam.equals("add"); - button2.active = !this.selectedTeam.equals("join|leave"); - button3.active = !this.selectedTeam.equals("remove|empty"); - button4.active = !this.selectedTeam.equals("option"); + button1.active = !Page.ADD.equals(this.page); + button2.active = !Page.JOIN_OR_LEAVE.equals(this.page); + button3.active = !Page.REMOVE_OR_EMPTY.equals(this.page); + button4.active = !Page.OPTION.equals(this.page); - this.builderTeams.setMode(this.selectedTeam); + this.builderTeams.setMode(this.page.getMode()); boolean enabled = this.team != null && this.team.length() > 0; - if(this.selectedTeam.equals("add")) + if(Page.ADD.equals(this.page)) { this.builderTeams.setTeam(this.team); } - else if(this.selectedTeam.equals("join|leave")) + else if(Page.JOIN_OR_LEAVE.equals(this.page)) { this.builderTeams.setPlayer(container.getPlayer()); @@ -167,7 +167,7 @@ public class ContentScoreboardTeams extends ContentScoreboard button1.active = enabled; } - else if(this.selectedTeam.equals("remove|empty")) + else if(Page.REMOVE_OR_EMPTY.equals(this.page)) { container.add(button1 = new GuiButtonBase(x + 118, y + 36, 114, 20, I18n.format("gui.worldhandler.scoreboard.team.remove"), () -> { @@ -184,11 +184,9 @@ public class ContentScoreboardTeams extends ContentScoreboard button2.active = enabled; } - if(!this.selectedTeam.equals("join|leave") && !this.selectedTeam.equals("remove|empty")) + if(Page.ADD.equals(this.page) || Page.OPTION.equals(this.page)) { - int yOffset = this.selectedTeam.equals("option") ? 24 : 0; - - container.add(button1 = new GuiButtonBase(x + 118, y + 48 + yOffset, 114, 20, I18n.format("gui.worldhandler.actions.perform"), () -> + container.add(button1 = new GuiButtonBase(x + 118, y + 72 - this.page.getShift(), 114, 20, I18n.format("gui.worldhandler.actions.perform"), () -> { CommandHelper.sendCommand(this.builderTeams); container.initButtons(); @@ -226,9 +224,37 @@ public class ContentScoreboardTeams extends ContentScoreboard @Override public void onPlayerNameChanged(String username) { - if(this.selectedTeam.equals("join|leave")) + if(Page.JOIN_OR_LEAVE.equals(this.page)) { this.builderTeams.setPlayer(username); } } + + @OnlyIn(Dist.CLIENT) + public static enum Page + { + ADD("add", 24), + JOIN_OR_LEAVE("join|leave", 12), + REMOVE_OR_EMPTY("remove|empty", 12), + OPTION("option", 0); + + private final String mode; + private final int shift; + + private Page(String mode, int shift) + { + this.shift = shift; + this.mode = mode; + } + + public String getMode() + { + return this.mode; + } + + public int getShift() + { + return this.shift; + } + } } diff --git a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentSettings.java b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentSettings.java index d823f52..c20319f 100644 --- a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentSettings.java +++ b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentSettings.java @@ -186,6 +186,7 @@ public class ContentSettings extends ContentChild return I18n.format("gui.worldhandler.shortcuts.tooltip.settings"); } + @OnlyIn(Dist.CLIENT) public abstract static class Setting { private final String key; @@ -214,6 +215,7 @@ public class ContentSettings extends ContentChild this.setter.accept(value); } + @OnlyIn(Dist.CLIENT) public static class BooleanSetting extends Setting { public BooleanSetting(String key, Supplier getter, Consumer setter) @@ -222,6 +224,7 @@ public class ContentSettings extends ContentChild } } + @OnlyIn(Dist.CLIENT) public static class IntegerSetting extends Setting { public IntegerSetting(String key, Supplier getter, Consumer setter) diff --git a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentSummon.java b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentSummon.java index 99800c9..cad7ff0 100644 --- a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentSummon.java +++ b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentSummon.java @@ -50,7 +50,8 @@ public class ContentSummon extends Content private int potionPage = 0; private int equipmentPage = 0; - private String page = "main"; + private Page page = Page.START; + private String mob; private String name; private String passenger; @@ -129,7 +130,7 @@ public class ContentSummon extends Content container.initButtons(); }); - if(this.page.equals("attributes")) + if(Page.ATTRIBUTES.equals(this.page)) { ElementPageList attributes = new ElementPageList(x + 118, y, this.attributes, 114, 20, 3, container, new ILogicPageList() { @@ -211,26 +212,26 @@ public class ContentSummon extends Content container.add(button4 = new GuiButtonBase(x, y, 114, 20, I18n.format("gui.worldhandler.entities.summon.start"), () -> { - this.page = "main"; + this.page = Page.START; container.init(); })); container.add(button5 = new GuiButtonBase(x, y + 24, 114, 20, I18n.format("gui.worldhandler.entities.summon.potion_effects"), () -> { - this.page = "potionEffects"; + this.page = Page.POTIONS; container.init(); })); container.add(button6 = new GuiButtonBase(x, y + 48, 114, 20, I18n.format("gui.worldhandler.entities.summon.attributes"), () -> { - this.page = "attributes"; + this.page = Page.ATTRIBUTES; container.init(); })); container.add(button7 = new GuiButtonBase(x, y + 72, 114, 20, I18n.format("gui.worldhandler.entities.summon.equipment"), () -> { - this.page = "equipment"; + this.page = Page.EQUIPMENT; container.init(); })); - if(this.page.equals("main")) + if(Page.START.equals(this.page)) { button4.active = false; @@ -249,7 +250,7 @@ public class ContentSummon extends Content button3.active = ForgeRegistries.ENTITIES.containsKey(this.builderSummon.getEntity()); } - else if(this.page.equals("potionEffects")) + else if(Page.POTIONS.equals(this.page)) { button5.active = false; @@ -304,11 +305,11 @@ public class ContentSummon extends Content } } } - else if(this.page.equals("attributes")) + else if(Page.ATTRIBUTES.equals(this.page)) { button6.active = false; } - else if(this.page.equals("equipment")) + else if(Page.EQUIPMENT.equals(this.page)) { container.add(button1 = new GuiButtonBase(x + 118, y + 72, 56, 20, "<", () -> { @@ -570,7 +571,7 @@ public class ContentSummon extends Content @Override public void tick(Container container) { - if(this.page.equals("main")) + if(Page.START.equals(this.page)) { this.mobField.tick(); this.customNameField.tick(); @@ -581,17 +582,17 @@ public class ContentSummon extends Content @Override public void drawScreen(Container container, int x, int y, int mouseX, int mouseY, float partialTicks) { - if(this.page.equals("main")) + if(Page.START.equals(this.page)) { this.mobField.renderButton(mouseX, mouseY, partialTicks); this.customNameField.renderButton(mouseX, mouseY, partialTicks); this.passengerField.renderButton(mouseX, mouseY, partialTicks); } - else if(this.page.equals("potionEffects")) + else if(Page.POTIONS.equals(this.page)) { Minecraft.getInstance().fontRenderer.drawString((this.potionPage + 1) + "/" + (ForgeRegistries.POTIONS.getKeys().size() - 2), x + 118, y - 11, Config.getSkin().getHeadlineColor()); } - else if(this.page.equals("equipment")) + else if(Page.EQUIPMENT.equals(this.page)) { GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); Minecraft.getInstance().getTextureManager().bindTexture(new ResourceLocation("textures/gui/container/beacon.png")); @@ -635,4 +636,13 @@ public class ContentSummon extends Content { return Contents.SUMMON; } + + @OnlyIn(Dist.CLIENT) + public static enum Page + { + START, + POTIONS, + ATTRIBUTES, + EQUIPMENT; + } } diff --git a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentWorldInfo.java b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentWorldInfo.java index 813cafb..8a8dea5 100644 --- a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentWorldInfo.java +++ b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentWorldInfo.java @@ -22,7 +22,7 @@ import net.minecraftforge.api.distmarker.OnlyIn; @OnlyIn(Dist.CLIENT) public class ContentWorldInfo extends Content { - private String selectedMain = "start"; + private Page page = Page.START; private GuiTextFieldTooltip posXField; private GuiTextFieldTooltip posYField; @@ -79,25 +79,25 @@ public class ContentWorldInfo extends Content container.add(start = new GuiButtonBase(x, y + 12, 114, 20, I18n.format("gui.worldhandler.world_info.start"), () -> { - this.selectedMain = "start"; + this.page = Page.START; container.init(); })); container.add(world = new GuiButtonBase(x, y + 36, 114, 20, I18n.format("gui.worldhandler.world_info.world"), () -> { - this.selectedMain = "world"; + this.page = Page.WORLD; container.init(); })); container.add(stats = new GuiButtonBase(x, y + 60, 114, 20, I18n.format("gui.worldhandler.world_info.statistics"), () -> { - this.selectedMain = "stats"; + this.page = Page.STATS; container.init(); })); - if(this.selectedMain.equals("start")) + if(Page.START.equals(this.page)) { start.active = false; } - else if(this.selectedMain.equals("world")) + else if(Page.WORLD.equals(this.page)) { GuiButtonBase seed; @@ -109,7 +109,7 @@ public class ContentWorldInfo extends Content seed.active = Minecraft.getInstance().getIntegratedServer() != null; } - else if(this.selectedMain.equals("stats")) + else if(Page.STATS.equals(this.page)) { stats.active = false; } @@ -126,19 +126,19 @@ public class ContentWorldInfo extends Content @Override public void drawScreen(Container container, int x, int y, int mouseX, int mouseY, float partialTicks) { - if(this.selectedMain.equals("start")) + if(Page.START.equals(this.page)) { this.posXField.renderButton(mouseX, mouseY, partialTicks); this.posYField.renderButton(mouseX, mouseY, partialTicks); this.posZField.renderButton(mouseX, mouseY, partialTicks); } - else if(this.selectedMain.equals("world")) + else if(Page.WORLD.equals(this.page)) { this.worldField.renderButton(mouseX, mouseY, partialTicks); this.terrainField.renderButton(mouseX, mouseY, partialTicks); this.seedField.renderButton(mouseX, mouseY, partialTicks); } - else if(this.selectedMain.equals("stats")) + else if(Page.STATS.equals(this.page)) { this.totalTimeField.renderButton(mouseX, mouseY, partialTicks); this.currentTimeField.renderButton(mouseX, mouseY, partialTicks); @@ -203,4 +203,12 @@ public class ContentWorldInfo extends Content { return Contents.WORLD_INFO; } + + @OnlyIn(Dist.CLIENT) + public static enum Page + { + START, + WORLD, + STATS; + } }