diff options
author | Alexey Krainev <xmrvizzy@ya.ru> | 2021-02-03 13:15:16 +0500 |
---|---|---|
committer | Alexey Krainev <xmrvizzy@ya.ru> | 2021-02-03 13:15:16 +0500 |
commit | ac59ecef954ff438c8fa3f0bf51c46b20af3138c (patch) | |
tree | c088648c4253a8afc2e06665504bbd9d104a57fb /src/main/java/me/xmrvizzy/skyblocker/mixin | |
parent | c26890daab1b6ccf5ac9b6c5c52f4127fc1fc891 (diff) | |
download | Skyblocker-ac59ecef954ff438c8fa3f0bf51c46b20af3138c.tar.gz Skyblocker-ac59ecef954ff438c8fa3f0bf51c46b20af3138c.tar.bz2 Skyblocker-ac59ecef954ff438c8fa3f0bf51c46b20af3138c.zip |
v1.0.5
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/mixin')
-rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java | 29 | ||||
-rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java | 3 |
2 files changed, 28 insertions, 4 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java index 159fbcee..0e8e807f 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java +++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ChatHudListenerMixin.java @@ -2,21 +2,28 @@ package me.xmrvizzy.skyblocker.mixin; import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import me.xmrvizzy.skyblocker.skyblock.dungeon.DungeonPuzzles; +import me.xmrvizzy.skyblocker.skyblock.dwarven.Fetchur; import me.xmrvizzy.skyblocker.skyblock.dwarven.Puzzler; import me.xmrvizzy.skyblocker.utils.Utils; +import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.hud.ChatHudListener; import net.minecraft.network.MessageType; import net.minecraft.text.Text; +import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; 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.List; import java.util.UUID; @Mixin(ChatHudListener.class) public class ChatHudListenerMixin { + @Shadow @Final private MinecraftClient client; + @Inject(method = "onChatMessage", at = @At("HEAD"), cancellable = true) public void onMessage(MessageType messageType, Text message, UUID senderUuid, CallbackInfo ci) { String msg = message.getString(); @@ -27,9 +34,25 @@ public class ChatHudListenerMixin { } if (Utils.isSkyblock) { - if (SkyblockerConfig.get().locations.dwarvenMines.solvePuzzler && - msg.contains("[NPC]") && msg.contains("Puzzler")) - Puzzler.puzzler(msg); + if (msg.contains("[OPEN MENU]")) { + List<Text> siblings = message.getSiblings(); + for (Text sibling : siblings) { + if (sibling.getString().contains("[OPEN MENU]")) { + this.client.player.sendChatMessage(sibling.getStyle().getClickEvent().getValue()); + } + } + } + + if (msg.contains("[NPC]")) { + if (SkyblockerConfig.get().locations.dwarvenMines.solveFetchur && + msg.contains("Fetchur")) { + Fetchur.solve(msg, ci); + } + + if (SkyblockerConfig.get().locations.dwarvenMines.solvePuzzler && + msg.contains("Puzzler")) + Puzzler.solve(msg); + } if (SkyblockerConfig.get().messages.hideAbility && msg.contains("This ability is currently on cooldown for ") || diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java index 41a8fd8a..1992db89 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java +++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java @@ -35,12 +35,13 @@ public abstract class ItemRendererMixin { float current = 3000.0F; float max = 3000.0F; - for (String line : ItemUtils.getLore(stack)) { + for (String line : ItemUtils.getTooltipStrings(stack)) { if (line.contains("Fuel: ")) { String clear = Pattern.compile("[^0-9 /]").matcher(line).replaceAll("").trim(); String[] split = clear.split("/"); current = Integer.parseInt(split[0]); max = Integer.parseInt(split[1]) * 1000; + break; } } |