From aa8bcd2e76d0dd728b4911b14d155796799a0470 Mon Sep 17 00:00:00 2001 From: LifeIsAParadox Date: Tue, 7 Jun 2022 22:16:19 +0200 Subject: 1.19.x --- .../skyblocker/chat/filters/AutopetFilter.java | 4 +- .../skyblocker/mixin/ChatHudListenerMixin.java | 5 ++- .../skyblocker/mixin/ClientPlayerEntityMixin.java | 5 ++- .../skyblocker/skyblock/FancyStatusBars.java | 1 + .../skyblocker/skyblock/api/ApiKeyListener.java | 5 +-- .../skyblocker/skyblock/api/StatsCommand.java | 35 +++++++++------- .../skyblocker/skyblock/dungeon/Reparty.java | 22 ++++++---- .../skyblocker/skyblock/dungeon/Trivia.java | 3 +- .../skyblocker/skyblock/dwarven/DwarvenHud.java | 5 ++- .../skyblocker/skyblock/dwarven/Fetchur.java | 23 +++++----- .../skyblocker/skyblock/dwarven/Puzzler.java | 2 +- .../skyblocker/skyblock/item/PriceInfoTooltip.java | 49 +++++++++++----------- .../skyblock/itemlist/ItemListWidget.java | 4 +- .../skyblock/quicknav/QuickNavButton.java | 5 ++- .../skyblocker/utils/RenderUtilsLiving.java | 2 +- .../xmrvizzy/skyblocker/utils/UpdateChecker.java | 12 +++--- src/main/resources/fabric.mod.json | 4 +- 17 files changed, 98 insertions(+), 88 deletions(-) (limited to 'src/main') diff --git a/src/main/java/me/xmrvizzy/skyblocker/chat/filters/AutopetFilter.java b/src/main/java/me/xmrvizzy/skyblocker/chat/filters/AutopetFilter.java index cdaadeda..f8af49ce 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/chat/filters/AutopetFilter.java +++ b/src/main/java/me/xmrvizzy/skyblocker/chat/filters/AutopetFilter.java @@ -4,7 +4,7 @@ import me.xmrvizzy.skyblocker.chat.ChatFilterResult; import me.xmrvizzy.skyblocker.chat.ChatPatternListener; import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import net.minecraft.client.MinecraftClient; -import net.minecraft.text.LiteralText; +import net.minecraft.text.LiteralTextContent; import net.minecraft.text.Text; import java.util.Objects; @@ -19,7 +19,7 @@ public class AutopetFilter extends ChatPatternListener { public boolean onMatch(Text _message, Matcher matcher) { if (SkyblockerConfig.get().messages.hideAutopet == ChatFilterResult.ACTION_BAR) { Objects.requireNonNull(MinecraftClient.getInstance().player).sendMessage( - new LiteralText( + Text.literal( _message.getString().replace("§a§lVIEW RULE", "") ), true); } diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java index 7e5411aa..c4243f02 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java +++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java @@ -6,7 +6,8 @@ import me.xmrvizzy.skyblocker.utils.Utils; import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.hud.ChatHudListener; import net.minecraft.client.network.ClientPlayerEntity; -import net.minecraft.network.MessageType; +import net.minecraft.network.message.MessageSender; +import net.minecraft.network.message.MessageType; import net.minecraft.text.Text; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; @@ -25,7 +26,7 @@ public class ChatHudListenerMixin { private MinecraftClient client; @Inject(method = "onChatMessage", at = @At("HEAD"), cancellable = true) - public void onMessage(MessageType messageType, Text message, UUID senderUuid, CallbackInfo ci) { + public void onMessage(MessageType type, Text message, MessageSender sender, CallbackInfo ci) { if (!Utils.isOnSkyblock) return; String asString = message.getString(); diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerEntityMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerEntityMixin.java index 2d016459..437e10f9 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerEntityMixin.java +++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerEntityMixin.java @@ -6,6 +6,7 @@ import me.xmrvizzy.skyblocker.utils.Utils; import net.minecraft.client.network.AbstractClientPlayerEntity; import net.minecraft.client.network.ClientPlayerEntity; import net.minecraft.client.world.ClientWorld; +import net.minecraft.network.encryption.PlayerPublicKey; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; @@ -14,8 +15,8 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; @Mixin(ClientPlayerEntity.class) public abstract class ClientPlayerEntityMixin extends AbstractClientPlayerEntity { - public ClientPlayerEntityMixin(ClientWorld world, GameProfile profile) { - super(world, profile); + public ClientPlayerEntityMixin(ClientWorld world, GameProfile profile, PlayerPublicKey publicKey) { + super(world, profile, publicKey); } @Inject(method = "dropSelectedItem", at = @At("HEAD"), cancellable = true) diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java index dd7ef478..70385e01 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java @@ -6,6 +6,7 @@ import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import net.minecraft.client.MinecraftClient; import net.minecraft.client.font.TextRenderer; import net.minecraft.client.gui.DrawableHelper; +import net.minecraft.client.network.ClientPlayerEntity; import net.minecraft.client.util.math.MatrixStack; import net.minecraft.util.Identifier; diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/api/ApiKeyListener.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/api/ApiKeyListener.java index 520229f6..679901cd 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/api/ApiKeyListener.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/api/ApiKeyListener.java @@ -6,8 +6,7 @@ import me.xmrvizzy.skyblocker.chat.ChatPatternListener; import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import net.minecraft.client.MinecraftClient; import net.minecraft.text.Text; -import net.minecraft.text.TranslatableText; - +import net.minecraft.text.TranslatableTextContent; import java.util.regex.Matcher; public class ApiKeyListener extends ChatPatternListener { @@ -24,7 +23,7 @@ public class ApiKeyListener extends ChatPatternListener { protected boolean onMatch(Text message, Matcher matcher) { SkyblockerConfig.get().general.apiKey = matcher.group(1); AutoConfig.getConfigHolder(SkyblockerConfig.class).save(); - MinecraftClient.getInstance().player.sendMessage(new TranslatableText("skyblocker.api.got_key"), false); + MinecraftClient.getInstance().player.sendMessage(Text.translatable("skyblocker.api.got_key"), false); return false; } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/api/StatsCommand.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/api/StatsCommand.java index b401905f..4c4cdae1 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/api/StatsCommand.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/api/StatsCommand.java @@ -3,25 +3,30 @@ package me.xmrvizzy.skyblocker.skyblock.api; import com.google.gson.GsonBuilder; import com.mojang.brigadier.arguments.StringArgumentType; import me.xmrvizzy.skyblocker.skyblock.api.records.PlayerProfiles; -import net.fabricmc.fabric.api.client.command.v1.ClientCommandManager; +import net.fabricmc.fabric.api.client.command.v2.ClientCommandManager; +import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback; import net.minecraft.client.MinecraftClient; import net.minecraft.text.ClickEvent; -import net.minecraft.text.LiteralText; +import net.minecraft.text.LiteralTextContent; +import net.minecraft.text.Text; public class StatsCommand { public static void init(){ - ClientCommandManager.DISPATCHER.register(ClientCommandManager.literal("skyblocker") - .then(ClientCommandManager.literal("debug") - .then(ClientCommandManager.literal("stats").then(ClientCommandManager.argument("username", StringArgumentType.string()) - .executes(context -> { - new Thread(() -> { - PlayerProfiles playerProfiles = ProfileUtils.getProfiles(StringArgumentType.getString(context, "username")); - for (String profileId : playerProfiles.profiles().keySet()){ - MinecraftClient.getInstance().player.sendMessage(new LiteralText(playerProfiles.profiles().get(profileId).cuteName()) - .styled(style -> style.withClickEvent(new ClickEvent(ClickEvent.Action.COPY_TO_CLIPBOARD, new GsonBuilder().serializeNulls().setPrettyPrinting().create().toJson(playerProfiles.profiles().get(profileId))))), false); - } - }).start(); - return 1; - }))))); + ClientCommandRegistrationCallback.EVENT.register((dispatcher, registryAccess) -> { + dispatcher.register(ClientCommandManager.literal("skyblocker") + .then(ClientCommandManager.literal("debug") + .then(ClientCommandManager.literal("stats").then(ClientCommandManager.argument("username", StringArgumentType.string()) + .executes(context -> { + new Thread(() -> { + PlayerProfiles playerProfiles = ProfileUtils.getProfiles(StringArgumentType.getString(context, "username")); + for (String profileId : playerProfiles.profiles().keySet()){ + MinecraftClient.getInstance().player.sendMessage(Text.literal(playerProfiles.profiles().get(profileId).cuteName()) + .styled(style -> style.withClickEvent(new ClickEvent(ClickEvent.Action.COPY_TO_CLIPBOARD, new GsonBuilder().serializeNulls().setPrettyPrinting().create().toJson(playerProfiles.profiles().get(profileId))))), false); + } + }).start(); + return 1; + }))))); + }); + } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java index 3af82b6e..3e938fb2 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java @@ -4,7 +4,8 @@ import me.xmrvizzy.skyblocker.SkyblockerMod; import me.xmrvizzy.skyblocker.chat.ChatFilterResult; import me.xmrvizzy.skyblocker.chat.ChatPatternListener; import me.xmrvizzy.skyblocker.utils.Utils; -import net.fabricmc.fabric.api.client.command.v1.ClientCommandManager; +import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback; +import net.fabricmc.fabric.api.client.command.v2.ClientCommandManager; import net.minecraft.client.MinecraftClient; import net.minecraft.client.network.ClientPlayerEntity; import net.minecraft.text.Text; @@ -25,14 +26,17 @@ public class Reparty extends ChatPatternListener { public Reparty() { super("^(?:You are not currently in a party\\.|Party (?:Membe|Moderato)rs(?: \\(([0-9]+)\\)|:( .*)))$"); this.repartying = false; - ClientCommandManager.DISPATCHER.register( - ClientCommandManager.literal("rp").executes(context -> { - if (!Utils.isOnSkyblock || this.repartying || client.player == null) return 0; - this.repartying = true; - client.player.sendChatMessage("/p list"); - return 0; - }) - ); + ClientCommandRegistrationCallback.EVENT.register((dispatcher, registryAccess) -> { + dispatcher.register(ClientCommandManager.literal("rp").executes(context -> { + if (!Utils.isOnSkyblock || this.repartying || client.player == null) return 0; + this.repartying = true; + client.player.sendChatMessage("/p list"); + return 0; + })); + }); + + + } @Override diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java index 7f22f59b..73511c00 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java @@ -5,7 +5,6 @@ import me.xmrvizzy.skyblocker.chat.ChatPatternListener; import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import net.minecraft.client.MinecraftClient; import net.minecraft.client.network.ClientPlayerEntity; -import net.minecraft.text.LiteralText; import net.minecraft.text.Text; import net.minecraft.util.Formatting; @@ -32,7 +31,7 @@ public class Trivia extends ChatPatternListener { if (!solutions.contains(riddle)) { ClientPlayerEntity player = MinecraftClient.getInstance().player; if (player != null) - MinecraftClient.getInstance().player.sendMessage(new LiteralText(" " + Formatting.GOLD + matcher.group(2) + Formatting.RED + " " + riddle), false); + MinecraftClient.getInstance().player.sendMessage(Text.of(" " + Formatting.GOLD + matcher.group(2) + Formatting.RED + " " + riddle), false); return player != null; } } else diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHud.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHud.java index 0c614641..e5e91c38 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHud.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHud.java @@ -4,7 +4,8 @@ import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import net.fabricmc.fabric.api.client.rendering.v1.HudRenderCallback; import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.DrawableHelper; -import net.minecraft.text.LiteralText; +import net.minecraft.text.LiteralTextContent; +import net.minecraft.text.Text; import net.minecraft.util.Formatting; import java.util.ArrayList; @@ -55,7 +56,7 @@ public class DwarvenHud { DrawableHelper.fill(matrixStack, hudX, hudY, hudX + 200, hudY + (20 * commissions.size()), 0x64000000); int y = 0; for (Commission commission : commissions) { - client.textRenderer.drawWithShadow(matrixStack, new LiteralText(commission.commission).styled(style -> style.withColor(Formatting.AQUA)).append(new LiteralText(": " + commission.progression).styled(style -> style.withColor(Formatting.GREEN))), hudX + 5, hudY + y + 5, 0xFFFFFFFF); + client.textRenderer.drawWithShadow(matrixStack, Text.literal(commission.commission).styled(style -> style.withColor(Formatting.AQUA)).append(Text.literal(": " + commission.progression).styled(style -> style.withColor(Formatting.GREEN))), hudX + 5, hudY + y + 5, 0xFFFFFFFF); y += 20; } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Fetchur.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Fetchur.java index ccd47c5a..230f5abe 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Fetchur.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Fetchur.java @@ -5,8 +5,7 @@ import me.xmrvizzy.skyblocker.chat.ChatPatternListener; import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import net.minecraft.client.MinecraftClient; import net.minecraft.text.Text; -import net.minecraft.text.TranslatableText; - +import net.minecraft.text.TranslatableTextContent; import java.util.HashMap; import java.util.Map; import java.util.regex.Matcher; @@ -35,18 +34,18 @@ public class Fetchur extends ChatPatternListener { static { answers = new HashMap<>(); - answers.put("red and soft", new TranslatableText("block.minecraft.red_wool").getString()); - answers.put("yellow and see through", new TranslatableText("block.minecraft.yellow_stained_glass").getString()); - answers.put("circular and sometimes moves", new TranslatableText("item.minecraft.compass").getString()); + answers.put("red and soft", Text.translatable("block.minecraft.red_wool").getString()); + answers.put("yellow and see through", Text.translatable("block.minecraft.yellow_stained_glass").getString()); + answers.put("circular and sometimes moves", Text.translatable("item.minecraft.compass").getString()); answers.put("expensive minerals", "Mithril"); - answers.put("useful during celebrations", new TranslatableText("item.minecraft.firework_rocket").getString()); + answers.put("useful during celebrations", Text.translatable("item.minecraft.firework_rocket").getString()); answers.put("hot and gives energy", "Cheap / Decent Coffee"); - answers.put("tall and can be opened", new TranslatableText("block.minecraft.oak_door").getString()); - answers.put("brown and fluffy", new TranslatableText("item.minecraft.rabbit_foot").getString()); + answers.put("tall and can be opened", Text.translatable("block.minecraft.oak_door").getString()); + answers.put("brown and fluffy", Text.translatable("item.minecraft.rabbit_foot").getString()); answers.put("explosive but more than usual", "Superboom TNT"); - answers.put("wearable and grows", new TranslatableText("block.minecraft.pumpkin").getString()); - answers.put("shiny and makes sparks", new TranslatableText("item.minecraft.flint_and_steel").getString()); - answers.put("red and white and you can mine it", new TranslatableText("block.minecraft.nether_quartz_ore").getString()); - answers.put("round and green, or purple", new TranslatableText("item.minecraft.ender_pearl").getString()); + answers.put("wearable and grows", Text.translatable("block.minecraft.pumpkin").getString()); + answers.put("shiny and makes sparks", Text.translatable("item.minecraft.flint_and_steel").getString()); + answers.put("red and white and you can mine it", Text.translatable("block.minecraft.nether_quartz_ore").getString()); + answers.put("round and green, or purple", Text.translatable("item.minecraft.ender_pearl").getString()); } } \ No newline at end of file diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Puzzler.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Puzzler.java index 06395898..0599b5b2 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Puzzler.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Puzzler.java @@ -33,7 +33,7 @@ public class Puzzler extends ChatPatternListener { } ClientWorld world = MinecraftClient.getInstance().world; if (world != null) - world.setBlockStateWithoutNeighborUpdates(new BlockPos(x, 195, z), Blocks.CRIMSON_PLANKS.getDefaultState()); + world.setBlockState(new BlockPos(x, 195, z), Blocks.CRIMSON_PLANKS.getDefaultState()); return false; } } \ No newline at end of file diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java index fdff7831..01204c5d 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java @@ -9,9 +9,10 @@ import net.minecraft.client.MinecraftClient; import net.minecraft.client.item.TooltipContext; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NbtCompound; -import net.minecraft.text.LiteralText; +import net.minecraft.text.LiteralTextContent; +import net.minecraft.text.MutableText; import net.minecraft.text.Text; -import net.minecraft.text.TranslatableText; +import net.minecraft.text.TranslatableTextContent; import net.minecraft.util.Formatting; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -55,11 +56,11 @@ public class PriceInfoTooltip { if (SkyblockerConfig.get().general.itemTooltip.enableNPCPrice) { if (npcPricesJson == null) { if (!nullMsgSend) { - client.player.sendMessage(new TranslatableText("skyblocker.itemTooltip.nullMessage"), false); + client.player.sendMessage(Text.translatable("skyblocker.itemTooltip.nullMessage"), false); nullMsgSend = true; } } else if (npcPricesJson.has(name)) { - lines.add(new LiteralText(String.format("%-21s", "NPC Price:")) + lines.add(Text.literal(String.format("%-21s", "NPC Price:")) .formatted(Formatting.YELLOW) .append(getCoinsMessage(npcPricesJson.get(name).getAsDouble(), count))); } @@ -69,20 +70,20 @@ public class PriceInfoTooltip { if (SkyblockerConfig.get().general.itemTooltip.enableBazaarPrice && !bazaarOpened) { if (bazaarPricesJson == null) { if (!nullMsgSend) { - client.player.sendMessage(new TranslatableText("skyblocker.itemTooltip.nullMessage"), false); + client.player.sendMessage(Text.translatable("skyblocker.itemTooltip.nullMessage"), false); nullMsgSend = true; } } else if (bazaarPricesJson.has(name)) { JsonObject getItem = bazaarPricesJson.getAsJsonObject(name); - lines.add(new LiteralText(String.format("%-18s", "Bazaar buy Price:")) + lines.add(Text.literal(String.format("%-18s", "Bazaar buy Price:")) .formatted(Formatting.GOLD) .append(getItem.get("buyPrice").isJsonNull() - ? new LiteralText("No data").formatted(Formatting.RED) + ? Text.literal("No data").formatted(Formatting.RED) : getCoinsMessage(getItem.get("buyPrice").getAsDouble(), count))); - lines.add(new LiteralText(String.format("%-19s", "Bazaar sell Price:")) + lines.add(Text.literal(String.format("%-19s", "Bazaar sell Price:")) .formatted(Formatting.GOLD) .append(getItem.get("sellPrice").isJsonNull() - ? new LiteralText("No data").formatted(Formatting.RED) + ? Text.literal("No data").formatted(Formatting.RED) : getCoinsMessage(getItem.get("sellPrice").getAsDouble(), count))); bazaarExist = true; } @@ -92,11 +93,11 @@ public class PriceInfoTooltip { if (SkyblockerConfig.get().general.itemTooltip.enableLowestBIN && !bazaarOpened && !bazaarExist) { if (lowestPricesJson == null) { if (!nullMsgSend) { - client.player.sendMessage(new TranslatableText("skyblocker.itemTooltip.nullMessage"), false); + client.player.sendMessage(Text.literal("skyblocker.itemTooltip.nullMessage"), false); nullMsgSend = true; } } else if (lowestPricesJson.has(name)) { - lines.add(new LiteralText(String.format("%-19s", "Lowest BIN Price:")) + lines.add(Text.literal(String.format("%-19s", "Lowest BIN Price:")) .formatted(Formatting.GOLD) .append(getCoinsMessage(lowestPricesJson.get(name).getAsDouble(), count))); } @@ -105,7 +106,7 @@ public class PriceInfoTooltip { if (SkyblockerConfig.get().general.itemTooltip.enableAvgBIN) { if (threeDayAvgPricesJson == null || oneDayAvgPricesJson == null) { if (!nullMsgSend) { - client.player.sendMessage(new TranslatableText("skyblocker.itemTooltip.nullMessage"), false); + client.player.sendMessage(Text.literal("skyblocker.itemTooltip.nullMessage"), false); nullMsgSend = true; } } else if (threeDayAvgPricesJson.has(name) || oneDayAvgPricesJson.has(name)) { @@ -136,17 +137,17 @@ public class PriceInfoTooltip { // "No data" line because of API not keeping old data, it causes NullPointerException if (!name.isEmpty() && (type == SkyblockerConfig.Average.ONE_DAY || type == SkyblockerConfig.Average.BOTH)) { - lines.add(new LiteralText(String.format("%-19s", "1 Day Avg. Price:")) + lines.add(Text.literal(String.format("%-19s", "1 Day Avg. Price:")) .formatted(Formatting.GOLD) .append(oneDayAvgPricesJson.get(name) == null - ? new LiteralText("No data").formatted(Formatting.RED) + ? Text.literal("No data").formatted(Formatting.RED) : getCoinsMessage(oneDayAvgPricesJson.get(name).getAsDouble(), count))); } if (!name.isEmpty() && (type == SkyblockerConfig.Average.THREE_DAY || type == SkyblockerConfig.Average.BOTH)) { - lines.add(new LiteralText(String.format("%-19s", "3 Day Avg. Price:")) + lines.add(Text.literal(String.format("%-19s", "3 Day Avg. Price:")) .formatted(Formatting.GOLD) .append(threeDayAvgPricesJson.get(name) == null - ? new LiteralText("No data").formatted(Formatting.RED) + ? Text.literal("No data").formatted(Formatting.RED) : getCoinsMessage(threeDayAvgPricesJson.get(name).getAsDouble(), count))); } } @@ -155,7 +156,7 @@ public class PriceInfoTooltip { if (SkyblockerConfig.get().general.itemTooltip.enableMuseumDate && !bazaarOpened) { if (isMuseumJson == null) { if (!nullMsgSend) { - client.player.sendMessage(new TranslatableText("skyblocker.itemTooltip.nullMessage"), false); + client.player.sendMessage(Text.translatable("skyblocker.itemTooltip.nullMessage"), false); nullMsgSend = true; } } else if (isMuseumJson.has(name)) { @@ -165,13 +166,13 @@ public class PriceInfoTooltip { case "Armor" -> "%-19s"; default -> "%-20s"; }; - lines.add(new LiteralText(String.format(format, "Museum: (" + itemCategory + ")")) + lines.add(Text.literal(String.format(format, "Museum: (" + itemCategory + ")")) .formatted(Formatting.LIGHT_PURPLE) - .append(new LiteralText(timestamp != null ? timestamp : "").formatted(Formatting.RED))); + .append(Text.literal(timestamp != null ? timestamp : "").formatted(Formatting.RED))); } else if (timestamp != null) { - lines.add(new LiteralText(String.format("%-21s", "Obtained: ")) + lines.add(Text.literal(String.format("%-21s", "Obtained: ")) .formatted(Formatting.LIGHT_PURPLE) - .append(new LiteralText(timestamp).formatted(Formatting.RED))); + .append(Text.literal(timestamp).formatted(Formatting.RED))); } } } @@ -263,12 +264,12 @@ public class PriceInfoTooltip { private static Text getCoinsMessage(double price, int count) { if (count == 1) { String priceString = String.format(Locale.ENGLISH, "%1$,.1f", price); - return new LiteralText(priceString + " Coins").formatted(Formatting.DARK_AQUA); + return Text.literal(priceString + " Coins").formatted(Formatting.DARK_AQUA); } else { String priceString = String.format(Locale.ENGLISH, "%1$,.1f", price * count); - LiteralText priceText = (LiteralText) new LiteralText(priceString + " Coins ").formatted(Formatting.DARK_AQUA); + MutableText priceText = Text.literal(priceString + " Coins ").formatted(Formatting.DARK_AQUA); priceString = String.format(Locale.ENGLISH, "%1$,.1f", price); - LiteralText priceText2 = (LiteralText) new LiteralText( "(" + priceString + " each)").formatted(Formatting.GRAY); + MutableText priceText2 = Text.literal( "(" + priceString + " each)").formatted(Formatting.GRAY); return priceText.append(priceText2); } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemListWidget.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemListWidget.java index a7adb4f7..a635cea2 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemListWidget.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemListWidget.java @@ -13,7 +13,7 @@ import net.minecraft.client.render.GameRenderer; import net.minecraft.client.util.math.MatrixStack; import net.minecraft.screen.AbstractRecipeScreenHandler; import net.minecraft.text.Text; -import net.minecraft.text.TranslatableText; +import net.minecraft.text.TranslatableTextContent; import net.minecraft.util.Formatting; @Environment(value= EnvType.CLIENT) @@ -57,7 +57,7 @@ public class ItemListWidget extends RecipeBookWidget implements Drawable, Select this.drawTexture(matrices, i, j, 1, 1, 147, 166); this.searchField = ((RecipeBookWidgetAccessor)this).getSearchField(); if (!this.searchField.isFocused() && this.searchField.getText().isEmpty()) { - Text hintText = (new TranslatableText("gui.recipebook.search_hint")).formatted(Formatting.ITALIC).formatted(Formatting.GRAY); + Text hintText = (Text.translatable("gui.recipebook.search_hint")).formatted(Formatting.ITALIC).formatted(Formatting.GRAY); drawTextWithShadow(matrices, this.client.textRenderer, hintText, i + 25, j + 14, -1); } else { this.searchField.render(matrices, mouseX, mouseY, delta); diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java index c31fa653..6e84cd5d 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java @@ -11,7 +11,8 @@ import net.minecraft.client.gui.screen.narration.NarrationMessageBuilder; import net.minecraft.client.gui.widget.ClickableWidget; import net.minecraft.client.util.math.MatrixStack; import net.minecraft.item.ItemStack; -import net.minecraft.text.LiteralText; +import net.minecraft.text.LiteralTextContent; +import net.minecraft.text.Text; import net.minecraft.util.Identifier; @Environment(value=EnvType.CLIENT) @@ -32,7 +33,7 @@ public class QuickNavButton extends ClickableWidget { private final ItemStack icon; public QuickNavButton(int index, boolean toggled, String command, ItemStack icon) { - super(0, 0, 28, 32, LiteralText.EMPTY); + super(0, 0, 28, 32, Text.empty()); this.index = index; this.toggled = toggled; this.command = command; diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java index 962421b7..c1111b36 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java +++ b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java @@ -72,7 +72,7 @@ public class RenderUtilsLiving { } else { matrices.push(); matrices.translate(1, 1, 0); - mc.textRenderer.draw(text.copy(), -halfWidth, 0f, 0x202020, false, matrices.peek().getPositionMatrix(), immediate, true, 0, 0xf000f0); + mc.textRenderer.draw(text.copyContentOnly(), -halfWidth, 0f, 0x202020, false, matrices.peek().getPositionMatrix(), immediate, true, 0, 0xf000f0); immediate.draw(); matrices.pop(); } diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/UpdateChecker.java b/src/main/java/me/xmrvizzy/skyblocker/utils/UpdateChecker.java index 8909b5a9..3a8f85f2 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/utils/UpdateChecker.java +++ b/src/main/java/me/xmrvizzy/skyblocker/utils/UpdateChecker.java @@ -5,9 +5,7 @@ import me.xmrvizzy.skyblocker.SkyblockerMod; import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import net.fabricmc.loader.api.FabricLoader; import net.minecraft.client.MinecraftClient; -import net.minecraft.text.ClickEvent; -import net.minecraft.text.HoverEvent; -import net.minecraft.text.TranslatableText; +import net.minecraft.text.*; import org.spongepowered.asm.util.VersionNumber; import java.io.IOException; @@ -53,10 +51,10 @@ public class UpdateChecker { public static void init(){ SkyblockEvents.JOIN.register(() -> { if (shouldUpdate()) { - TranslatableText linkMessage = new TranslatableText("skyblocker.update.update_message"); - TranslatableText linkMessageEnding = new TranslatableText("skyblocker.update.update_message_end"); - TranslatableText link = new TranslatableText("skyblocker.update.update_link"); - TranslatableText hoverText = new TranslatableText("skyblocker.update.hover_text"); + MutableText linkMessage = Text.translatable("skyblocker.update.update_message"); + MutableText linkMessageEnding = Text.translatable("skyblocker.update.update_message_end"); + MutableText link = Text.translatable("skyblocker.update.update_link"); + MutableText hoverText = Text.translatable("skyblocker.update.hover_text"); linkMessage.append(link.styled(style -> style.withClickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, "https://modrinth.com/mod/skyblocker-liap/versions")).withHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, hoverText)))).append(linkMessageEnding); MinecraftClient.getInstance().player.sendMessage(linkMessage, false); diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 6358a234..74af29cf 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -26,10 +26,10 @@ "skyblocker.mixins.json" ], "depends": { - "fabricloader": ">=0.13.3", + "fabricloader": ">=0.14.6", "fabric": "*", "cloth-config2": "*", - "minecraft": ["1.18.x"] + "minecraft": ["1.19.x"] }, "custom": { "modmenu": { -- cgit From 9b098c7f144edf6a4982bf7d780a2b85764a2dab Mon Sep 17 00:00:00 2001 From: Username404 Date: Thu, 14 Jul 2022 18:54:02 +0200 Subject: 1.19.1-pre4 --- gradle.properties | 6 +++--- .../me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java | 13 +++++-------- .../me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java | 4 ++-- .../skyblocker/skyblock/quicknav/QuickNavButton.java | 2 +- 4 files changed, 11 insertions(+), 14 deletions(-) (limited to 'src/main') diff --git a/gradle.properties b/gradle.properties index e60f4cbd..b2fc1bae 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,12 +1,12 @@ org.gradle.jvmargs=-Xmx1G -Dfile.encoding=UTF-8 -Duser.language=en -Duser.country=US # Fabric Properties (https://fabricmc.net/versions.html) -minecraft_version=1.19 -yarn_mappings=1.19+build.1 +minecraft_version=1.19.1-pre4 +yarn_mappings=1.19.1-pre4+build.4 loader_version=0.14.6 #Fabric api -fabric_version=0.55.1+1.19 +fabric_version=0.57.2+1.19.1 # Dependencies ## Cloth Api (https://www.curseforge.com/minecraft/mc-mods/cloth-config/files) diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java index c4243f02..9f5e128e 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java +++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java @@ -4,10 +4,9 @@ import me.xmrvizzy.skyblocker.chat.ChatFilterResult; import me.xmrvizzy.skyblocker.chat.ChatMessageListener; import me.xmrvizzy.skyblocker.utils.Utils; import net.minecraft.client.MinecraftClient; -import net.minecraft.client.gui.hud.ChatHudListener; +import net.minecraft.client.gui.hud.ChatHud; +import net.minecraft.client.gui.hud.MessageIndicator; import net.minecraft.client.network.ClientPlayerEntity; -import net.minecraft.network.message.MessageSender; -import net.minecraft.network.message.MessageType; import net.minecraft.text.Text; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; @@ -16,17 +15,15 @@ import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import java.util.UUID; - -@Mixin(ChatHudListener.class) +@Mixin(ChatHud.class) public class ChatHudListenerMixin { @Shadow @Final private MinecraftClient client; - @Inject(method = "onChatMessage", at = @At("HEAD"), cancellable = true) - public void onMessage(MessageType type, Text message, MessageSender sender, CallbackInfo ci) { + @Inject(method = "addMessage(Lnet/minecraft/text/Text;Lnet/minecraft/client/gui/hud/MessageIndicator;)V", at = @At("HEAD"), cancellable = true) + public void onMessage(Text message, MessageIndicator indicator, CallbackInfo ci) { if (!Utils.isOnSkyblock) return; String asString = message.getString(); diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java index 3e938fb2..c06822de 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java @@ -30,7 +30,7 @@ public class Reparty extends ChatPatternListener { dispatcher.register(ClientCommandManager.literal("rp").executes(context -> { if (!Utils.isOnSkyblock || this.repartying || client.player == null) return 0; this.repartying = true; - client.player.sendChatMessage("/p list"); + client.player.sendChatMessage("/p list", Text.of("/p list")); return 0; })); }); @@ -77,6 +77,6 @@ public class Reparty extends ChatPatternListener { } private void sendCommand(ClientPlayerEntity player, String command, int delay) { - skyblocker.scheduler.schedule(() -> player.sendChatMessage(command), delay * BASE_DELAY); + skyblocker.scheduler.schedule(() -> player.sendChatMessage(command, Text.of(command)), delay * BASE_DELAY); } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java index 6e84cd5d..ac381240 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java @@ -60,7 +60,7 @@ public class QuickNavButton extends ClickableWidget { public void onClick(double mouseX, double mouseY) { if (!this.toggled) { this.toggled = true; - CLIENT.player.sendChatMessage(command); + CLIENT.player.sendChatMessage(command, Text.of(command)); } } -- cgit From 945f57c035a88f9668664f331b1d04a6194beedb Mon Sep 17 00:00:00 2001 From: Username404 Date: Thu, 14 Jul 2022 19:29:14 +0200 Subject: Require minecraft 1.19.1-pre4 --- src/main/resources/fabric.mod.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main') diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 74af29cf..f5d6758e 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -29,7 +29,7 @@ "fabricloader": ">=0.14.6", "fabric": "*", "cloth-config2": "*", - "minecraft": ["1.19.x"] + "minecraft": ["~1.19.1-beta.4"] }, "custom": { "modmenu": { -- cgit From 73ed8269700745eee058ad270ffad8499a21ff1b Mon Sep 17 00:00:00 2001 From: Username404 Date: Fri, 22 Jul 2022 15:45:44 +0200 Subject: Update to Minecraft 1.19.1-rc2 --- gradle.properties | 8 ++++---- .../java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java | 5 +++-- src/main/resources/fabric.mod.json | 2 +- 3 files changed, 8 insertions(+), 7 deletions(-) (limited to 'src/main') diff --git a/gradle.properties b/gradle.properties index b2fc1bae..92a01abf 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,12 +1,12 @@ org.gradle.jvmargs=-Xmx1G -Dfile.encoding=UTF-8 -Duser.language=en -Duser.country=US # Fabric Properties (https://fabricmc.net/versions.html) -minecraft_version=1.19.1-pre4 -yarn_mappings=1.19.1-pre4+build.4 +minecraft_version=1.19.1-rc2 +yarn_mappings=1.19.1-rc2+build.1 loader_version=0.14.6 #Fabric api -fabric_version=0.57.2+1.19.1 +fabric_version=0.58.0+1.19.1 # Dependencies ## Cloth Api (https://www.curseforge.com/minecraft/mc-mods/cloth-config/files) @@ -19,4 +19,4 @@ mod_version = 1.8.1 maven_group = me.xmrvizzy archives_base_name = skyblocker modrinth_id=y6DuFGwJ -suported_version=1.19.x \ No newline at end of file +suported_version=1.19.1 \ No newline at end of file diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java index 9f5e128e..eabf0b53 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java +++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java @@ -7,6 +7,7 @@ import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.hud.ChatHud; import net.minecraft.client.gui.hud.MessageIndicator; import net.minecraft.client.network.ClientPlayerEntity; +import net.minecraft.network.message.MessageSignatureData; import net.minecraft.text.Text; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; @@ -22,8 +23,8 @@ public class ChatHudListenerMixin { @Final private MinecraftClient client; - @Inject(method = "addMessage(Lnet/minecraft/text/Text;Lnet/minecraft/client/gui/hud/MessageIndicator;)V", at = @At("HEAD"), cancellable = true) - public void onMessage(Text message, MessageIndicator indicator, CallbackInfo ci) { + @Inject(method = "addMessage(Lnet/minecraft/text/Text;Lnet/minecraft/network/message/MessageSignatureData;ILnet/minecraft/client/gui/hud/MessageIndicator;Z)V", at = @At("HEAD"), cancellable = true) + public void onMessage(Text message, MessageSignatureData signature, int ticks, MessageIndicator indicator, boolean refresh, CallbackInfo ci) { if (!Utils.isOnSkyblock) return; String asString = message.getString(); diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index f5d6758e..f7298610 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -29,7 +29,7 @@ "fabricloader": ">=0.14.6", "fabric": "*", "cloth-config2": "*", - "minecraft": ["~1.19.1-beta.4"] + "minecraft": ["~1.19.1-rc.2"] }, "custom": { "modmenu": { -- cgit From e4ea91d02dbdda535bc883e65919c8e90f93daf7 Mon Sep 17 00:00:00 2001 From: Username404 Date: Fri, 29 Jul 2022 18:51:31 +0200 Subject: Update to Minecraft 1.19.1 --- gradle.properties | 8 ++++---- src/main/resources/fabric.mod.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'src/main') diff --git a/gradle.properties b/gradle.properties index 92a01abf..c215a90f 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,18 +1,18 @@ org.gradle.jvmargs=-Xmx1G -Dfile.encoding=UTF-8 -Duser.language=en -Duser.country=US # Fabric Properties (https://fabricmc.net/versions.html) -minecraft_version=1.19.1-rc2 -yarn_mappings=1.19.1-rc2+build.1 +minecraft_version=1.19.1 +yarn_mappings=1.19.1+build.3 loader_version=0.14.6 #Fabric api -fabric_version=0.58.0+1.19.1 +fabric_version=0.58.5+1.19.1 # Dependencies ## Cloth Api (https://www.curseforge.com/minecraft/mc-mods/cloth-config/files) clothconfig_version=7.0.65 ## Mod Menu (https://www.curseforge.com/minecraft/mc-mods/modmenu/files) -mod_menu_version=4.0.0-beta.4 +mod_menu_version=4.0.5 # Mod Properties mod_version = 1.8.1 diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index f7298610..6e9858b1 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -29,7 +29,7 @@ "fabricloader": ">=0.14.6", "fabric": "*", "cloth-config2": "*", - "minecraft": ["~1.19.1-rc.2"] + "minecraft": [">=1.19.1"] }, "custom": { "modmenu": { -- cgit From 08880018a902a1d1d7a9242ef653359d008e0b44 Mon Sep 17 00:00:00 2001 From: Serhan Date: Mon, 5 Sep 2022 17:13:09 +0300 Subject: Update PriceInfoTooltip.java fix translatable messages for 1.19 --- .../java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/main') diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java index 21db3c2e..9c681cb1 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java @@ -93,7 +93,7 @@ public class PriceInfoTooltip { if (SkyblockerConfig.get().general.itemTooltip.enableLowestBIN && !bazaarOpened && !bazaarExist) { if (lowestPricesJson == null) { if (!nullMsgSend) { - client.player.sendMessage(Text.literal("skyblocker.itemTooltip.nullMessage"), false); + client.player.sendMessage(Text.translatable("skyblocker.itemTooltip.nullMessage"), false); nullMsgSend = true; } } else if (lowestPricesJson.has(name)) { @@ -106,7 +106,7 @@ public class PriceInfoTooltip { if (SkyblockerConfig.get().general.itemTooltip.enableAvgBIN) { if (threeDayAvgPricesJson == null || oneDayAvgPricesJson == null) { if (!nullMsgSend) { - client.player.sendMessage(Text.literal("skyblocker.itemTooltip.nullMessage"), false); + client.player.sendMessage(Text.translatable("skyblocker.itemTooltip.nullMessage"), false); nullMsgSend = true; } } else if (threeDayAvgPricesJson.has(name) || oneDayAvgPricesJson.has(name)) { -- cgit From 25b292ae918b96b7da876786013ccf9fdb42db88 Mon Sep 17 00:00:00 2001 From: Trương Hoàng Long Date: Sat, 1 Oct 2022 01:21:32 +0200 Subject: Fix status bar parsing --- src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java | 1 + 1 file changed, 1 insertion(+) (limited to 'src/main') diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java index 0111f75a..c4a073dc 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java @@ -70,6 +70,7 @@ public class StatusBarTracker { } public String update(String actionBar, boolean filterManaUse) { + actionBar = actionBar.replaceAll(",", ""); var sb = new StringBuilder(); Matcher matcher = STATUS_HEALTH.matcher(actionBar); if (!matcher.lookingAt()) -- cgit From f681ad65e73b12ccd01d1fa8184a4b0abc3ee3c2 Mon Sep 17 00:00:00 2001 From: Trương Hoàng Long Date: Sat, 1 Oct 2022 01:26:56 +0200 Subject: Fix backpack preview not updating --- src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main') diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java index 00f32459..de4a25b6 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java @@ -31,7 +31,7 @@ public class BackpackPreview extends DrawableHelper { private static final BackpackPreview instance = new BackpackPreview(); private static final Pattern PROFILE_PATTERN = Pattern.compile("Profile: ([a-zA-Z]+)"); private static final Pattern ECHEST_PATTERN = Pattern.compile("Ender Chest.*\\((\\d+)/\\d+\\)"); - private static final Pattern BACKPACK_PATTERN = Pattern.compile("Backpack.*\\((\\d+)/\\d+\\)"); + private static final Pattern BACKPACK_PATTERN = Pattern.compile("Backpack.*\\(Slot #(\\d+)\\)"); private static final int STORAGE_SIZE = 27; private static final Inventory[] storage = new Inventory[STORAGE_SIZE]; -- cgit From b3a7de41788209dab1d1f453e8b8630169096018 Mon Sep 17 00:00:00 2001 From: Trương Hoàng Long Date: Sat, 1 Oct 2022 02:32:29 +0200 Subject: Fix failing status bar tests --- .../skyblocker/skyblock/StatusBarTracker.java | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) (limited to 'src/main') diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java index c4a073dc..134ec1f9 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java @@ -7,10 +7,10 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; public class StatusBarTracker { - private static final Pattern STATUS_HEALTH = Pattern.compile("§[6c](\\d+)/(\\d+)❤(?:(\\+§c\\d+. *)| *)"); - private static final Pattern DEFENSE_STATUS = Pattern.compile("§a(\\d+)§a❈ Defense *"); - private static final Pattern MANA_USE = Pattern.compile("§b-\\d+ Mana \\(§\\S+(?:\\s\\S+)* *"); - private static final Pattern MANA_STATUS = Pattern.compile("§b(\\d+)/(\\d+)✎ (?:Mana|§3(\\d+)ʬ) *"); + private static final Pattern STATUS_HEALTH = Pattern.compile("§[6c](\\d+(,\\d\\d\\d)*)/(\\d+(,\\d\\d\\d)*)❤(?:(\\+§c(\\d+(,\\d\\d\\d)*). *)| *)"); + private static final Pattern DEFENSE_STATUS = Pattern.compile("§a(\\d+(,\\d\\d\\d)*)§a❈ Defense *"); + private static final Pattern MANA_USE = Pattern.compile("§b-(\\d+(,\\d\\d\\d)*) Mana \\(§\\S+(?:\\s\\S+)* *"); + private static final Pattern MANA_STATUS = Pattern.compile("§b(\\d+(,\\d\\d\\d)*)/(\\d+(,\\d\\d\\d)*)✎ (?:Mana|§3(\\d+(,\\d\\d\\d)*)ʬ) *"); private Resource health = new Resource(100, 100, 0); private Resource mana = new Resource(100, 100, 0); @@ -29,19 +29,19 @@ public class StatusBarTracker { } private int parseInt(Matcher m, int group) { - return Integer.parseInt(m.group(group)); + return Integer.parseInt(m.group(group).replace(",", "")); } private void updateMana(Matcher m) { int value = parseInt(m, 1); - int max = parseInt(m, 2); - int overflow = m.group(3) == null ? 0 : parseInt(m, 3); + int max = parseInt(m, 3); + int overflow = m.group(5) == null ? 0 : parseInt(m, 5); this.mana = new Resource(value, max, overflow); } private void updateHealth(Matcher m) { int value = parseInt(m, 1); - int max = parseInt(m, 2); + int max = parseInt(m, 3); int overflow = 0; ClientPlayerEntity player = null; try { @@ -70,15 +70,14 @@ public class StatusBarTracker { } public String update(String actionBar, boolean filterManaUse) { - actionBar = actionBar.replaceAll(",", ""); var sb = new StringBuilder(); Matcher matcher = STATUS_HEALTH.matcher(actionBar); if (!matcher.lookingAt()) return actionBar; updateHealth(matcher); - if (matcher.group(3) != null) { + if (matcher.group(5) != null) { sb.append("§c❤"); - sb.append(matcher.group(3)); + sb.append(matcher.group(5)); } actionBar = reset(actionBar, matcher); if (matcher.usePattern(MANA_STATUS).lookingAt()) { -- cgit