aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de
diff options
context:
space:
mode:
authorAlex <8379108+Alex33856@users.noreply.github.com>2025-06-17 14:13:49 -0400
committerGitHub <noreply@github.com>2025-06-17 14:13:49 -0400
commitd6f1b53dfc628126f9964bbaa9717e4e0709f69a (patch)
tree1df4c37e8e3d7b650515e9072fccae66e36d90b0 /src/main/java/de
parent7d0b1a3156903e614ab353e0744eff6089527092 (diff)
downloadSkyblocker-d6f1b53dfc628126f9964bbaa9717e4e0709f69a.tar.gz
Skyblocker-d6f1b53dfc628126f9964bbaa9717e4e0709f69a.tar.bz2
Skyblocker-d6f1b53dfc628126f9964bbaa9717e4e0709f69a.zip
Add optional item name parameter to search overlay commands (#1323)
* Add optional item name parameter to search overlay commands * Close Overlay Screen without searching if the escape key is pressed * Fix Escape key close
Diffstat (limited to 'src/main/java/de')
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/OverlayScreen.java5
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/SearchOverManager.java19
2 files changed, 21 insertions, 3 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/OverlayScreen.java b/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/OverlayScreen.java
index 533f10ae..8ef19596 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/OverlayScreen.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/OverlayScreen.java
@@ -266,6 +266,11 @@ public class OverlayScreen extends Screen {
close();
return true;
}
+ if (keyCode == GLFW.GLFW_KEY_ESCAPE) {
+ SearchOverManager.search = "";
+ close();
+ return true;
+ }
return super.keyPressed(keyCode, scanCode, modifiers);
}
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/SearchOverManager.java b/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/SearchOverManager.java
index d663ca7a..ad62c58a 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/SearchOverManager.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/SearchOverManager.java
@@ -2,6 +2,7 @@ package de.hysky.skyblocker.skyblock.searchoverlay;
import com.mojang.brigadier.Command;
import com.mojang.brigadier.CommandDispatcher;
+import com.mojang.brigadier.arguments.StringArgumentType;
import de.hysky.skyblocker.annotations.Init;
import de.hysky.skyblocker.config.SkyblockerConfigManager;
import de.hysky.skyblocker.config.configs.UIAndVisualsConfig;
@@ -32,6 +33,7 @@ import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
+import static net.fabricmc.fabric.api.client.command.v2.ClientCommandManager.argument;
import static net.fabricmc.fabric.api.client.command.v2.ClientCommandManager.literal;
public class SearchOverManager {
@@ -71,16 +73,27 @@ public class SearchOverManager {
private static void registerSearchCommands(CommandDispatcher<FabricClientCommandSource> dispatcher, CommandRegistryAccess registryAccess) {
if (SkyblockerConfigManager.get().uiAndVisuals.searchOverlay.enableCommands) {
- dispatcher.register(literal("ahs").executes(context -> startCommand(true)));
- dispatcher.register(literal("bzs").executes(context -> startCommand(false)));
+ dispatcher.register(literal("ahs").executes(context -> startCommand(true, "")));
+ dispatcher.register(literal("bzs").executes(context -> startCommand(false, "")));
+
+ dispatcher.register(literal("ahs").then(argument("item", StringArgumentType.greedyString())
+ .executes(context -> startCommand(true, StringArgumentType.getString(context, "item"))
+ )));
+ dispatcher.register(literal("bzs").then(argument("item", StringArgumentType.greedyString())
+ .executes(context -> startCommand(false, StringArgumentType.getString(context, "item"))
+ )));
}
}
- private static int startCommand(boolean isAuction) {
+ private static int startCommand(boolean isAuction, String itemName) {
isCommand = true;
SearchOverManager.isAuction = isAuction;
search = "";
suggestionsArray = new String[]{};
+ if (!itemName.isEmpty()) {
+ updateSearch(itemName);
+ }
+
CLIENT.send(() -> CLIENT.setScreen(new OverlayScreen(Text.of(""))));
return Command.SINGLE_SUCCESS;
}