aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy/skyblocker/mixin
diff options
context:
space:
mode:
authorAlexey Krainev <xmrvizzy@ya.ru>2021-02-03 13:15:16 +0500
committerAlexey Krainev <xmrvizzy@ya.ru>2021-02-03 13:15:16 +0500
commitac59ecef954ff438c8fa3f0bf51c46b20af3138c (patch)
treec088648c4253a8afc2e06665504bbd9d104a57fb /src/main/java/me/xmrvizzy/skyblocker/mixin
parentc26890daab1b6ccf5ac9b6c5c52f4127fc1fc891 (diff)
downloadSkyblocker-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.java29
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java3
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;
}
}