From 9b27b4cbd8899ada89fd0a47f33ef4b717db5637 Mon Sep 17 00:00:00 2001 From: Yasin Date: Wed, 8 May 2024 01:57:08 +0200 Subject: reorder configs --- .../config/configs/QuickNavigationConfig.java | 181 +++++++++++++++++++++ 1 file changed, 181 insertions(+) create mode 100644 src/main/java/de/hysky/skyblocker/config/configs/QuickNavigationConfig.java (limited to 'src/main/java/de/hysky/skyblocker/config/configs/QuickNavigationConfig.java') diff --git a/src/main/java/de/hysky/skyblocker/config/configs/QuickNavigationConfig.java b/src/main/java/de/hysky/skyblocker/config/configs/QuickNavigationConfig.java new file mode 100644 index 00000000..dc2c4885 --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/config/configs/QuickNavigationConfig.java @@ -0,0 +1,181 @@ +package de.hysky.skyblocker.config.configs; + +import dev.isxander.yacl3.config.v2.api.SerialEntry; + +public class QuickNavigationConfig { + @SerialEntry + public boolean enableQuickNav = true; + + @SerialEntry + public QuickNavItem button1 = new QuickNavItem(true, new ItemData("diamond_sword"), "Your Skills", "/skills"); + + @SerialEntry + public QuickNavItem button2 = new QuickNavItem(true, new ItemData("painting"), "Collections", "/collection"); + + /* REGEX Explanation + * "Pets" : simple match on letters + * "(?: \\(\\d+\\/\\d+\\))?" : optional match on the non-capturing group for the page in the format " ($number/$number)" + */ + @SerialEntry + public QuickNavItem button3 = new QuickNavItem(true, new ItemData("bone"), "Pets(:? \\(\\d+\\/\\d+\\))?", "/pets"); + + /* REGEX Explanation + * "Wardrobe" : simple match on letters + * " \\([12]\\/2\\)" : match on the page either " (1/2)" or " (2/2)" + */ + @SerialEntry + public QuickNavItem button4 = new QuickNavItem(true, + new ItemData("leather_chestplate", 1, "tag:{display:{color:8991416}}"), "Wardrobe \\([12]/2\\)", + "/wardrobe"); + + @SerialEntry + public QuickNavItem button5 = new QuickNavItem(true, new ItemData("player_head", 1, + "tag:{SkullOwner:{Id:[I;-2081424676,-57521078,-2073572414,158072763],Properties:{textures:[{Value:\"ewogICJ0aW1lc3RhbXAiIDogMTU5MTMxMDU4NTYwOSwKICAicHJvZmlsZUlkIiA6ICI0MWQzYWJjMmQ3NDk0MDBjOTA5MGQ1NDM0ZDAzODMxYiIsCiAgInByb2ZpbGVOYW1lIiA6ICJNZWdha2xvb24iLAogICJzaWduYXR1cmVSZXF1aXJlZCIgOiB0cnVlLAogICJ0ZXh0dXJlcyIgOiB7CiAgICAiU0tJTiIgOiB7CiAgICAgICJ1cmwiIDogImh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvODBhMDc3ZTI0OGQxNDI3NzJlYTgwMDg2NGY4YzU3OGI5ZDM2ODg1YjI5ZGFmODM2YjY0YTcwNjg4MmI2ZWMxMCIKICAgIH0KICB9Cn0=\"}]}}}"), + "Sack of Sacks", "/sacks"); + + /* REGEX Explanation + * "(?:Rift )?" : optional match on the non-capturing group "Rift " + * "Storage" : simple match on letters + * "(?: \\([12]\\/2\\))?" : optional match on the non-capturing group " (1/2)" or " (2/2)" + */ + @SerialEntry + public QuickNavItem button6 = new QuickNavItem(true, new ItemData("ender_chest"), + "(?:Rift )?Storage(?: \\(1/2\\))?", "/storage"); + + @SerialEntry + public QuickNavItem button7 = new QuickNavItem(true, new ItemData("player_head", 1, + "tag:{SkullOwner:{Id:[I;-300151517,-631415889,-1193921967,-1821784279],Properties:{textures:[{Value:\"e3RleHR1cmVzOntTS0lOOnt1cmw6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZDdjYzY2ODc0MjNkMDU3MGQ1NTZhYzUzZTA2NzZjYjU2M2JiZGQ5NzE3Y2Q4MjY5YmRlYmVkNmY2ZDRlN2JmOCJ9fX0=\"}]}}}"), + "none", "/hub"); + + @SerialEntry + public QuickNavItem button8 = new QuickNavItem(true, new ItemData("player_head", 1, + "tag:{SkullOwner:{Id:[I;1605800870,415127827,-1236127084,15358548],Properties:{textures:[{Value:\"e3RleHR1cmVzOntTS0lOOnt1cmw6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNzg5MWQ1YjI3M2ZmMGJjNTBjOTYwYjJjZDg2ZWVmMWM0MGExYjk0MDMyYWU3MWU3NTQ3NWE1NjhhODI1NzQyMSJ9fX0=\"}]}}}"), + "none", "/warp dungeon_hub"); + + @SerialEntry + public QuickNavItem button9 = new QuickNavItem(true, new ItemData("player_head", 1, + "tag:{SkullOwner:{Id:[I;-562285948,532499670,-1705302742,775653035],Properties:{textures:[{Value:\"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYjVkZjU1NTkyNjQzMGQ1ZDc1YWRlZDIxZGQ5NjE5Yjc2YzViN2NhMmM3ZjU0MDE0NDA1MjNkNTNhOGJjZmFhYiJ9fX0=\"}]}}}"), + "Visit prtl", "/visit prtl"); + + @SerialEntry + public QuickNavItem button10 = new QuickNavItem(true, new ItemData("enchanting_table"), "Enchant Item", + "/etable"); + + + @SerialEntry + public QuickNavItem button11 = new QuickNavItem(true, new ItemData("anvil"), "Anvil", "/anvil"); + + @SerialEntry + public QuickNavItem button12 = new QuickNavItem(true, new ItemData("crafting_table"), "Craft Item", "/craft"); + + public static class QuickNav { + @SerialEntry + public boolean enableQuickNav = true; + + @SerialEntry + public QuickNavItem button1 = new QuickNavItem(true, new ItemData("diamond_sword"), "Your Skills", "/skills"); + + @SerialEntry + public QuickNavItem button2 = new QuickNavItem(true, new ItemData("painting"), "Collections", "/collection"); + + /* REGEX Explanation + * "Pets" : simple match on letters + * "(?: \\(\\d+\\/\\d+\\))?" : optional match on the non-capturing group for the page in the format " ($number/$number)" + */ + @SerialEntry + public QuickNavItem button3 = new QuickNavItem(true, new ItemData("bone"), "Pets(:? \\(\\d+\\/\\d+\\))?", "/pets"); + + /* REGEX Explanation + * "Wardrobe" : simple match on letters + * " \\([12]\\/2\\)" : match on the page either " (1/2)" or " (2/2)" + */ + @SerialEntry + public QuickNavItem button4 = new QuickNavItem(true, + new ItemData("leather_chestplate", 1, "tag:{display:{color:8991416}}"), "Wardrobe \\([12]/2\\)", + "/wardrobe"); + + @SerialEntry + public QuickNavItem button5 = new QuickNavItem(true, new ItemData("player_head", 1, + "tag:{SkullOwner:{Id:[I;-2081424676,-57521078,-2073572414,158072763],Properties:{textures:[{Value:\"ewogICJ0aW1lc3RhbXAiIDogMTU5MTMxMDU4NTYwOSwKICAicHJvZmlsZUlkIiA6ICI0MWQzYWJjMmQ3NDk0MDBjOTA5MGQ1NDM0ZDAzODMxYiIsCiAgInByb2ZpbGVOYW1lIiA6ICJNZWdha2xvb24iLAogICJzaWduYXR1cmVSZXF1aXJlZCIgOiB0cnVlLAogICJ0ZXh0dXJlcyIgOiB7CiAgICAiU0tJTiIgOiB7CiAgICAgICJ1cmwiIDogImh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvODBhMDc3ZTI0OGQxNDI3NzJlYTgwMDg2NGY4YzU3OGI5ZDM2ODg1YjI5ZGFmODM2YjY0YTcwNjg4MmI2ZWMxMCIKICAgIH0KICB9Cn0=\"}]}}}"), + "Sack of Sacks", "/sacks"); + + /* REGEX Explanation + * "(?:Rift )?" : optional match on the non-capturing group "Rift " + * "Storage" : simple match on letters + * "(?: \\([12]\\/2\\))?" : optional match on the non-capturing group " (1/2)" or " (2/2)" + */ + @SerialEntry + public QuickNavItem button6 = new QuickNavItem(true, new ItemData("ender_chest"), + "(?:Rift )?Storage(?: \\(1/2\\))?", "/storage"); + + @SerialEntry + public QuickNavItem button7 = new QuickNavItem(true, new ItemData("player_head", 1, + "tag:{SkullOwner:{Id:[I;-300151517,-631415889,-1193921967,-1821784279],Properties:{textures:[{Value:\"e3RleHR1cmVzOntTS0lOOnt1cmw6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZDdjYzY2ODc0MjNkMDU3MGQ1NTZhYzUzZTA2NzZjYjU2M2JiZGQ5NzE3Y2Q4MjY5YmRlYmVkNmY2ZDRlN2JmOCJ9fX0=\"}]}}}"), + "none", "/hub"); + + @SerialEntry + public QuickNavItem button8 = new QuickNavItem(true, new ItemData("player_head", 1, + "tag:{SkullOwner:{Id:[I;1605800870,415127827,-1236127084,15358548],Properties:{textures:[{Value:\"e3RleHR1cmVzOntTS0lOOnt1cmw6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNzg5MWQ1YjI3M2ZmMGJjNTBjOTYwYjJjZDg2ZWVmMWM0MGExYjk0MDMyYWU3MWU3NTQ3NWE1NjhhODI1NzQyMSJ9fX0=\"}]}}}"), + "none", "/warp dungeon_hub"); + + @SerialEntry + public QuickNavItem button9 = new QuickNavItem(true, new ItemData("player_head", 1, + "tag:{SkullOwner:{Id:[I;-562285948,532499670,-1705302742,775653035],Properties:{textures:[{Value:\"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYjVkZjU1NTkyNjQzMGQ1ZDc1YWRlZDIxZGQ5NjE5Yjc2YzViN2NhMmM3ZjU0MDE0NDA1MjNkNTNhOGJjZmFhYiJ9fX0=\"}]}}}"), + "Visit prtl", "/visit prtl"); + + @SerialEntry + public QuickNavItem button10 = new QuickNavItem(true, new ItemData("enchanting_table"), "Enchant Item", + "/etable"); + + + @SerialEntry + public QuickNavItem button11 = new QuickNavItem(true, new ItemData("anvil"), "Anvil", "/anvil"); + + @SerialEntry + public QuickNavItem button12 = new QuickNavItem(true, new ItemData("crafting_table"), "Craft Item", "/craft"); + } + + public static class QuickNavItem { + public QuickNavItem(Boolean render, ItemData itemData, String uiTitle, String clickEvent) { + this.render = render; + this.item = itemData; + this.clickEvent = clickEvent; + this.uiTitle = uiTitle; + } + + @SerialEntry + public Boolean render; + + @SerialEntry + public ItemData item; + + @SerialEntry + public String uiTitle; + + @SerialEntry + public String clickEvent; + } + + public static class ItemData { + public ItemData(String itemName, int count, String nbt) { + this.itemName = itemName; + this.count = count; + this.nbt = nbt; + } + + public ItemData(String itemName) { + this.itemName = itemName; + this.count = 1; + this.nbt = ""; + } + + @SerialEntry + public String itemName; + + @SerialEntry + public int count; + + @SerialEntry + public String nbt; + } +} -- cgit From 5d5d5c76dad68eb2a51a54538fcf17b14d4a9898 Mon Sep 17 00:00:00 2001 From: Yasin Date: Thu, 9 May 2024 16:22:56 +0200 Subject: itemName -> id --- .../config/categories/QuickNavigationCategory.java | 72 +++++++++++----------- .../config/configs/QuickNavigationConfig.java | 10 +-- .../skyblocker/skyblock/quicknav/QuickNav.java | 2 +- 3 files changed, 42 insertions(+), 42 deletions(-) (limited to 'src/main/java/de/hysky/skyblocker/config/configs/QuickNavigationConfig.java') diff --git a/src/main/java/de/hysky/skyblocker/config/categories/QuickNavigationCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/QuickNavigationCategory.java index c09a16af..1200261d 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/QuickNavigationCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/QuickNavigationCategory.java @@ -38,9 +38,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button1.item.itemName, - () -> config.quickNav.button1.item.itemName, - newValue -> config.quickNav.button1.item.itemName = newValue) + .binding(defaults.quickNav.button1.item.id, + () -> config.quickNav.button1.item.id, + newValue -> config.quickNav.button1.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() @@ -87,9 +87,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button2.item.itemName, - () -> config.quickNav.button2.item.itemName, - newValue -> config.quickNav.button2.item.itemName = newValue) + .binding(defaults.quickNav.button2.item.id, + () -> config.quickNav.button2.item.id, + newValue -> config.quickNav.button2.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() @@ -136,9 +136,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button3.item.itemName, - () -> config.quickNav.button3.item.itemName, - newValue -> config.quickNav.button3.item.itemName = newValue) + .binding(defaults.quickNav.button3.item.id, + () -> config.quickNav.button3.item.id, + newValue -> config.quickNav.button3.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() @@ -185,9 +185,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button4.item.itemName, - () -> config.quickNav.button4.item.itemName, - newValue -> config.quickNav.button4.item.itemName = newValue) + .binding(defaults.quickNav.button4.item.id, + () -> config.quickNav.button4.item.id, + newValue -> config.quickNav.button4.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() @@ -234,9 +234,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button5.item.itemName, - () -> config.quickNav.button5.item.itemName, - newValue -> config.quickNav.button5.item.itemName = newValue) + .binding(defaults.quickNav.button5.item.id, + () -> config.quickNav.button5.item.id, + newValue -> config.quickNav.button5.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() @@ -283,9 +283,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button6.item.itemName, - () -> config.quickNav.button6.item.itemName, - newValue -> config.quickNav.button6.item.itemName = newValue) + .binding(defaults.quickNav.button6.item.id, + () -> config.quickNav.button6.item.id, + newValue -> config.quickNav.button6.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() @@ -332,9 +332,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button7.item.itemName, - () -> config.quickNav.button7.item.itemName, - newValue -> config.quickNav.button7.item.itemName = newValue) + .binding(defaults.quickNav.button7.item.id, + () -> config.quickNav.button7.item.id, + newValue -> config.quickNav.button7.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() @@ -381,9 +381,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button8.item.itemName, - () -> config.quickNav.button8.item.itemName, - newValue -> config.quickNav.button8.item.itemName = newValue) + .binding(defaults.quickNav.button8.item.id, + () -> config.quickNav.button8.item.id, + newValue -> config.quickNav.button8.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() @@ -430,9 +430,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button9.item.itemName, - () -> config.quickNav.button9.item.itemName, - newValue -> config.quickNav.button9.item.itemName = newValue) + .binding(defaults.quickNav.button9.item.id, + () -> config.quickNav.button9.item.id, + newValue -> config.quickNav.button9.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() @@ -479,9 +479,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button10.item.itemName, - () -> config.quickNav.button10.item.itemName, - newValue -> config.quickNav.button10.item.itemName = newValue) + .binding(defaults.quickNav.button10.item.id, + () -> config.quickNav.button10.item.id, + newValue -> config.quickNav.button10.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() @@ -528,9 +528,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button11.item.itemName, - () -> config.quickNav.button11.item.itemName, - newValue -> config.quickNav.button11.item.itemName = newValue) + .binding(defaults.quickNav.button11.item.id, + () -> config.quickNav.button11.item.id, + newValue -> config.quickNav.button11.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() @@ -577,9 +577,9 @@ public class QuickNavigationCategory { .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.quickNav.button.item.itemName")) - .binding(defaults.quickNav.button12.item.itemName, - () -> config.quickNav.button12.item.itemName, - newValue -> config.quickNav.button12.item.itemName = newValue) + .binding(defaults.quickNav.button12.item.id, + () -> config.quickNav.button12.item.id, + newValue -> config.quickNav.button12.item.id = newValue) .controller(StringControllerBuilder::create) .build()) .option(Option.createBuilder() diff --git a/src/main/java/de/hysky/skyblocker/config/configs/QuickNavigationConfig.java b/src/main/java/de/hysky/skyblocker/config/configs/QuickNavigationConfig.java index dc2c4885..2c4347b6 100644 --- a/src/main/java/de/hysky/skyblocker/config/configs/QuickNavigationConfig.java +++ b/src/main/java/de/hysky/skyblocker/config/configs/QuickNavigationConfig.java @@ -157,20 +157,20 @@ public class QuickNavigationConfig { } public static class ItemData { - public ItemData(String itemName, int count, String nbt) { - this.itemName = itemName; + public ItemData(String id, int count, String nbt) { + this.id = id; this.count = count; this.nbt = nbt; } - public ItemData(String itemName) { - this.itemName = itemName; + public ItemData(String id) { + this.id = id; this.count = 1; this.nbt = ""; } @SerialEntry - public String itemName; + public String id; @SerialEntry public int count; diff --git a/src/main/java/de/hysky/skyblocker/skyblock/quicknav/QuickNav.java b/src/main/java/de/hysky/skyblocker/skyblock/quicknav/QuickNav.java index 6e7e3906..5529e466 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/quicknav/QuickNav.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/quicknav/QuickNav.java @@ -59,7 +59,7 @@ public class QuickNav { private static QuickNavButton parseButton(QuickNavigationConfig.QuickNavItem buttonInfo, String screenTitle, int id) throws CommandSyntaxException { QuickNavigationConfig.ItemData itemData = buttonInfo.item; - String nbtString = "{id:\"minecraft:" + itemData.itemName.toLowerCase(Locale.ROOT) + "\",Count:1"; + String nbtString = "{id:\"minecraft:" + itemData.id.toLowerCase(Locale.ROOT) + "\",Count:1"; if (itemData.nbt.length() > 2) nbtString += "," + itemData.nbt; nbtString += "}"; boolean uiTitleMatches = false; -- cgit