diff options
| author | Yasin <a.piri@hotmail.de> | 2023-10-09 12:58:02 +0200 |
|---|---|---|
| committer | Yasin <a.piri@hotmail.de> | 2023-10-09 12:58:02 +0200 |
| commit | bd3f0329d0e391bd84b5f9e3ff207d9dd9815853 (patch) | |
| tree | 2fd1d1ef625f57acc2e4916c967d8d2393844798 /src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget | |
| parent | 2315b90da8117f28f66348927afdb621ee4fc815 (diff) | |
| download | Skyblocker-bd3f0329d0e391bd84b5f9e3ff207d9dd9815853.tar.gz Skyblocker-bd3f0329d0e391bd84b5f9e3ff207d9dd9815853.tar.bz2 Skyblocker-bd3f0329d0e391bd84b5f9e3ff207d9dd9815853.zip | |
new pr because fixing merge conflict would take too long
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget')
55 files changed, 0 insertions, 3046 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CameraPositionWidget.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CameraPositionWidget.java deleted file mode 100644 index 7e44bc44..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CameraPositionWidget.java +++ /dev/null @@ -1,37 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock.tabhud.widget; - -import me.xmrvizzy.skyblocker.skyblock.tabhud.widget.component.PlainTextComponent; -import net.minecraft.client.MinecraftClient; -import net.minecraft.text.MutableText; -import net.minecraft.text.Text; -import net.minecraft.util.Formatting; -import net.minecraft.util.math.MathHelper; - -public class CameraPositionWidget extends Widget { - private static final MutableText TITLE = Text.literal("Camera Pos").formatted(Formatting.DARK_PURPLE, - Formatting.BOLD); - private static final MinecraftClient CLIENT = MinecraftClient.getInstance(); - - public CameraPositionWidget() { - super(TITLE, Formatting.DARK_PURPLE.getColorValue()); - } - - @Override - public void updateContent() { - double yaw = CLIENT.getCameraEntity().getYaw(); - double pitch = CLIENT.getCameraEntity().getPitch(); - - this.addComponent( - new PlainTextComponent(Text.literal("Yaw: " + roundToDecimalPlaces(MathHelper.wrapDegrees(yaw), 3)))); - this.addComponent(new PlainTextComponent( - Text.literal("Pitch: " + roundToDecimalPlaces(MathHelper.wrapDegrees(pitch), 3)))); - - } - - // https://stackoverflow.com/a/33889423 - private static double roundToDecimalPlaces(double value, int decimalPlaces) { - double shift = Math.pow(10, decimalPlaces); - - return Math.round(value * shift) / shift; - } -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CommsWidget.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CommsWidget.java deleted file mode 100644 index 8bbdb25f..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CommsWidget.java +++ /dev/null @@ -1,63 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock.tabhud.widget; - -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.Ico; -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.PlayerListMgr; -import me.xmrvizzy.skyblocker.skyblock.tabhud.widget.component.IcoTextComponent; -import me.xmrvizzy.skyblocker.skyblock.tabhud.widget.component.ProgressComponent; -import net.minecraft.text.MutableText; -import net.minecraft.text.Text; -import net.minecraft.util.Formatting; -import net.minecraft.util.math.MathHelper; - -// this widget shows the status of the king's commissions. -// (dwarven mines and crystal hollows) - -public class CommsWidget extends Widget { - - private static final MutableText TITLE = Text.literal("Commissions").formatted(Formatting.DARK_AQUA, - Formatting.BOLD); - - // match a comm - // group 1: comm name - // group 2: comm progress (without "%" for comms that show a percentage) - private static final Pattern COMM_PATTERN = Pattern.compile("(?<name>.*): (?<progress>.*)%?"); - - public CommsWidget() { - super(TITLE, Formatting.DARK_AQUA.getColorValue()); - } - - @Override - public void updateContent() { - for (int i = 50; i <= 53; i++) { - Matcher m = PlayerListMgr.regexAt(i, COMM_PATTERN); - // end of comms found? - if (m == null) { - if (i == 50) { - this.addComponent(new IcoTextComponent()); - } - break; - } - - ProgressComponent pc; - - String name = m.group("name"); - String progress = m.group("progress"); - - if (progress.equals("DONE")) { - pc = new ProgressComponent(Ico.BOOK, Text.of(name), Text.of(progress), 100f, pcntToCol(100)); - } else { - float pcnt = Float.parseFloat(progress.substring(0, progress.length() - 1)); - pc = new ProgressComponent(Ico.BOOK, Text.of(name), pcnt, pcntToCol(pcnt)); - } - this.addComponent(pc); - } - } - - private int pcntToCol(float pcnt) { - return MathHelper.hsvToRgb(pcnt / 300f, 0.9f, 0.9f); - } - -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/ComposterWidget.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/ComposterWidget.java deleted file mode 100644 index 1307b407..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/ComposterWidget.java +++ /dev/null @@ -1,30 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock.tabhud.widget; - - -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.Ico; - -import net.minecraft.text.MutableText; -import net.minecraft.text.Text; -import net.minecraft.util.Formatting; - -// this widget shows info about the garden's composter - -public class ComposterWidget extends Widget { - - private static final MutableText TITLE = Text.literal("Composter").formatted(Formatting.GREEN, - Formatting.BOLD); - - public ComposterWidget() { - super(TITLE, Formatting.GREEN.getColorValue()); - } - - @Override - public void updateContent() { - this.addSimpleIcoText(Ico.SAPLING, "Organic Matter:", Formatting.YELLOW, 48); - this.addSimpleIcoText(Ico.FURNACE, "Fuel:", Formatting.BLUE, 49); - this.addSimpleIcoText(Ico.CLOCK, "Time Left:", Formatting.RED, 50); - this.addSimpleIcoText(Ico.COMPOSTER, "Stored Compost:", Formatting.DARK_GREEN, 51); - - } - -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CookieWidget.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CookieWidget.java deleted file mode 100644 index bf1d086f..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CookieWidget.java +++ /dev/null @@ -1,50 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock.tabhud.widget; - -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.Ico; -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.PlayerListMgr; -import me.xmrvizzy.skyblocker.skyblock.tabhud.widget.component.IcoTextComponent; -import net.minecraft.text.MutableText; -import net.minecraft.text.Text; -import net.minecraft.util.Formatting; - -// this widget shows info about active super cookies -// or not, if you're unwilling to buy one - -public class CookieWidget extends Widget { - - private static final MutableText TITLE = Text.literal("Cookie Info").formatted(Formatting.DARK_PURPLE, - Formatting.BOLD); - - private static final Pattern COOKIE_PATTERN = Pattern.compile(".*\\nCookie Buff\\n(?<buff>.*)\\n"); - - public CookieWidget() { - super(TITLE, Formatting.DARK_PURPLE.getColorValue()); - } - - @Override - public void updateContent() { - String footertext = PlayerListMgr.getFooter(); - if (footertext == null || !footertext.contains("Cookie Buff")) { - this.addComponent(new IcoTextComponent()); - return; - } - - Matcher m = COOKIE_PATTERN.matcher(footertext); - if (!m.find() || m.group("buff") == null) { - this.addComponent(new IcoTextComponent()); - return; - } - - String buff = m.group("buff"); - if (buff.startsWith("Not")) { - this.addComponent(new IcoTextComponent(Ico.COOKIE, Text.of("Not active"))); - } else { - Text cookie = Text.literal("Time Left: ").append(buff); - this.addComponent(new IcoTextComponent(Ico.COOKIE, cookie)); - } - } - -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonBuffWidget.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonBuffWidget.java deleted file mode 100644 index 1d056e0c..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonBuffWidget.java +++ /dev/null @@ -1,68 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock.tabhud.widget; - -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.PlayerListMgr; -import me.xmrvizzy.skyblocker.skyblock.tabhud.widget.component.PlainTextComponent; -import net.minecraft.text.MutableText; -import net.minecraft.text.Text; -import net.minecraft.util.Formatting; - -import java.util.Arrays; -import java.util.Comparator; - -// this widget shows a list of obtained dungeon buffs - -public class DungeonBuffWidget extends Widget { - - private static final MutableText TITLE = Text.literal("Dungeon Buffs").formatted(Formatting.DARK_PURPLE, - Formatting.BOLD); - - public DungeonBuffWidget() { - super(TITLE, Formatting.DARK_PURPLE.getColorValue()); - } - - @Override - public void updateContent() { - - String footertext = PlayerListMgr.getFooter(); - - if (footertext == null || !footertext.contains("Dungeon Buffs")) { - this.addComponent(new PlainTextComponent(Text.literal("No data").formatted(Formatting.GRAY))); - return; - } - - String interesting = footertext.split("Dungeon Buffs")[1]; - String[] lines = interesting.split("\n"); - - if (!lines[1].startsWith("Blessing")) { - this.addComponent(new PlainTextComponent(Text.literal("No buffs found!").formatted(Formatting.GRAY))); - return; - } - - //Filter out text unrelated to blessings - lines = Arrays.stream(lines).filter(s -> s.contains("Blessing")).toArray(String[]::new); - - //Alphabetically sort the blessings - Arrays.sort(lines, Comparator.comparing(String::toLowerCase)); - - for (String line : lines) { - if (line.length() < 3) { // empty line is §s - break; - } - int color = getBlessingColor(line); - this.addComponent(new PlainTextComponent(Text.literal(line).styled(style -> style.withColor(color)))); - } - - } - - @SuppressWarnings("DataFlowIssue") - public int getBlessingColor(String blessing) { - if (blessing.contains("Life")) return Formatting.LIGHT_PURPLE.getColorValue(); - if (blessing.contains("Power")) return Formatting.RED.getColorValue(); - if (blessing.contains("Stone")) return Formatting.GREEN.getColorValue(); - if (blessing.contains("Time")) return 0xafb8c1; - if (blessing.contains("Wisdom")) return Formatting.AQUA.getColorValue(); - - return 0xffffff; - } - -}
\ No newline at end of file diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonDeathWidget.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonDeathWidget.java deleted file mode 100644 index 80134b66..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonDeathWidget.java +++ /dev/null @@ -1,47 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock.tabhud.widget; - -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.Ico; -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.PlayerListMgr; -import me.xmrvizzy.skyblocker.skyblock.tabhud.widget.component.IcoTextComponent; -import net.minecraft.text.MutableText; -import net.minecraft.text.Text; -import net.minecraft.util.Formatting; - -// this widget shows various dungeon info -// deaths, healing, dmg taken, milestones - -public class DungeonDeathWidget extends Widget { - - private static final MutableText TITLE = Text.literal("Death").formatted(Formatting.DARK_PURPLE, - Formatting.BOLD); - - // match the deaths entry - // group 1: amount of deaths - private static final Pattern DEATH_PATTERN = Pattern.compile("Team Deaths: (?<deathnum>\\d+).*"); - - public DungeonDeathWidget() { - super(TITLE, Formatting.DARK_PURPLE.getColorValue()); - } - - @Override - public void updateContent() { - Matcher m = PlayerListMgr.regexAt(25, DEATH_PATTERN); - if (m == null) { - this.addComponent(new IcoTextComponent()); - } else { - Formatting f = (m.group("deathnum").equals("0")) ? Formatting.GREEN : Formatting.RED; - Text d = Widget.simpleEntryText(m.group("deathnum"), "Deaths: ", f); - IcoTextComponent deaths = new IcoTextComponent(Ico.SKULL, d); - this.addComponent(deaths); - } - - this.addSimpleIcoText(Ico.SWORD, "Damage Dealt:", Formatting.RED, 26); - this.addSimpleIcoText(Ico.POTION, "Healing Done:", Formatting.RED, 27); - this.addSimpleIcoText(Ico.NTAG, "Milestone:", Formatting.YELLOW, 28); - - } - -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonDownedWidget.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonDownedWidget.java deleted file mode 100644 index 2ca617ee..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonDownedWidget.java +++ /dev/null @@ -1,44 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock.tabhud.widget; - -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.Ico; -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.PlayerListMgr; -import me.xmrvizzy.skyblocker.skyblock.tabhud.widget.component.IcoTextComponent; -import net.minecraft.text.MutableText; -import net.minecraft.text.Text; -import net.minecraft.util.Formatting; - -// this widget shows info about... something? -// related to downed people in dungeons, not sure what this is supposed to show - -public class DungeonDownedWidget extends Widget { - - private static final MutableText TITLE = Text.literal("Downed").formatted(Formatting.DARK_PURPLE, - Formatting.BOLD); - - public DungeonDownedWidget() { - super(TITLE, Formatting.DARK_PURPLE.getColorValue()); - } - - @Override - public void updateContent() { - String down = PlayerListMgr.strAt(21); - if (down == null) { - this.addComponent(new IcoTextComponent()); - } else { - - Formatting format = Formatting.RED; - if (down.endsWith("NONE")) { - format = Formatting.GRAY; - } - int idx = down.indexOf(": "); - Text downed = (idx == -1) ? null - : Widget.simpleEntryText(down.substring(idx + 2), "Downed: ", format); - IcoTextComponent d = new IcoTextComponent(Ico.SKULL, downed); - this.addComponent(d); - } - - this.addSimpleIcoText(Ico.CLOCK, "Time:", Formatting.GRAY, 22); - this.addSimpleIcoText(Ico.POTION, "Revive:", Formatting.GRAY, 23); - } - -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonPlayerWidget.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonPlayerWidget.java deleted file mode 100644 index 2ba0c0cc..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonPlayerWidget.java +++ /dev/null @@ -1,103 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock.tabhud.widget; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.Ico; -import me.xmrvizzy.skyblocker.skyblock.tabhud.util.PlayerListMgr; -import me.xmrvizzy.skyblocker.skyblock.tabhud.widget.component.IcoTextComponent; -import me.xmrvizzy.skyblocker.skyblock.tabhud.widget.component.PlainTextComponent; -import net.minecraft.item.ItemStack; -import net.minecraft.text.MutableText; -import net.minecraft.text.Text; -import net.minecraft.util.Formatting; - -// this widget shows info about a player in the current dungeon group - -public class DungeonPlayerWidget extends Widget { - - private static final MutableText TITLE = Text.literal("Player").formatted(Formatting.DARK_PURPLE, - Formatting.BOLD); - - // match a player entry - // group 1: name - // group 2: class (or literal "EMPTY" pre dungeon start) - // group 3: level (or nothing, if pre dungeon start) - // this regex filters out the ironman icon as well as rank prefixes and emblems - // \[\d*\] (?:\[[A-Za-z]+\] )?(?<name>[A-Za-z0-9_]*) (?:.* )?\((?<class>\S*) ?(?<level>[LXVI]*)\) - private static final Pattern PLAYER_PATTERN = Pattern - .compile("\\[\\d*\\] (?:\\[[A-Za-z]+\\] )?(?<name>[A-Za-z0-9_]*) (?:.* )?\\((?<class>\\S*) ?(?<level>[LXVI]*)\\)"); - - private static final HashMap<String, ItemStack> ICOS = new HashMap<>(); - private static final ArrayList<String> MSGS = new ArrayList<>(); - static { - ICOS.put("Tank", Ico.CHESTPLATE); - ICOS.put("Mage", Ico.B_ROD); - ICOS.put("Berserk", Ico.DIASWORD); - ICOS.put("Archer", Ico.BOW); - ICOS.put("Healer", Ico.POTION); - - MSGS.add("PRESS A TO JOIN"); - MSGS.add("Invite a friend!"); - MSGS.add("But nobody came."); - MSGS.add("More is better!"); - } - - private final int player; - |
