Mod search

This commit is contained in:
2025-04-05 18:12:52 +02:00
parent 2ca29bc38b
commit 333975c036
3 changed files with 57 additions and 17 deletions
@@ -113,7 +113,7 @@ public class CloaksMenu extends SaturnUi {
int modY = 0;
int col = 0;
String[] searchTokens = search.value.split("\\ ");
String[] searchTokens = search.value.toLowerCase().split("\\ ");
outer: for (String cloak : Cloaks.availableCloaks) {
for (String searchToken : searchTokens) {
@@ -115,10 +115,17 @@ public class ModMenu extends SaturnUi {
int modY = 0;
int col = 0;
SaturnScroll modsScroll = new SaturnScroll();
String[] searchTokens = search.value.toLowerCase().split("\\ ");
for (SaturnMod mod : ModManager.MODS) {
modsScroll.draw(
outer: for (SaturnMod mod : ModManager.MODS) {
String modName = mod.getName().toLowerCase();
for (String searchToken : searchTokens) {
if (!modName.contains(searchToken)) {
continue outer;
}
}
scroll.draw(
new SaturnModComp(mod)
.setX(modX)
.setY(modY)
@@ -99,24 +99,57 @@ public class SaturnInputBox extends SaturnWidget {
focused
? SaturnClient.COLOR.value
: SaturnClient.getWhite(this.alpha));
SaturnUi.drawHighResGuiTexture(
context,
Textures.BUTTON_BORDER,
0,
0,
this.width,
this.height,
focused
? SaturnClient.COLOR.value
: SaturnClient.getWhite(this.alpha));
int scrollOffset = getScrollOffset();
String visibleText = getVisibleText(scrollOffset);
if (hovering || focused) {
SaturnUi.drawHighResGuiTexture(
context,
Textures.BUTTON_BORDER,
0,
0,
this.width,
this.height,
hovering
? SaturnClient.COLOR.value
: SaturnClient.getWhite(this.alpha));
}
MatrixStack matrices = context.getMatrices();
matrices.push();
int textColor = focused ? 0xFFFFFF : 0xAAAAAA;
if (prop.value.isEmpty() && !focused) {
SaturnUi.drawHighResTexture(
context,
Textures.SEARCH,
3,
3,
9,
9,
hovering
? SaturnClient.COLOR.value
: SaturnClient.getWhite(this.alpha));
matrices.scale(0.9f, 0.9f, 1.0f);
context.drawText(
textRenderer,
SaturnUi.text("Search"),
14,
textRenderer.fontHeight / 2 + 1,
hovering
? SaturnClient.COLOR.value
: SaturnClient.getWhite(this.alpha),
false);
}
matrices.pop();
matrices.push();
matrices.scale(0.9f, 0.9f, 1.0f);
int scrollOffset = getScrollOffset();
String visibleText = getVisibleText(scrollOffset);
int textColor = focused ? 0xFFFFFF : 0xAAAAAA;
context.drawText(
textRenderer,
SaturnUi.text(visibleText),