aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorKevinthegreat <92656833+kevinthegreat1@users.noreply.github.com>2024-01-20 10:15:05 -0500
committerKevinthegreat <92656833+kevinthegreat1@users.noreply.github.com>2024-01-20 10:15:05 -0500
commitc5101497e33e424b01425e9df17c602948b2402e (patch)
tree0a56d32626755ab58f7a5782dc753c6649b70567 /src/main/java
parent83a31424f89a02c93e7054a3c0b041dca81f8d68 (diff)
downloadSkyblocker-c5101497e33e424b01425e9df17c602948b2402e.tar.gz
Skyblocker-c5101497e33e424b01425e9df17c602948b2402e.tar.bz2
Skyblocker-c5101497e33e424b01425e9df17c602948b2402e.zip
Refactor Party Finder
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/FinderSettingsContainer.java7
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/OptionDropdownWidget.java3
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntry.java3
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntryListWidget.java35
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyFinderScreen.java16
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/RangedValueWidget.java13
6 files changed, 35 insertions, 42 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/FinderSettingsContainer.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/FinderSettingsContainer.java
index 5c7edf99..0a048775 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/FinderSettingsContainer.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/FinderSettingsContainer.java
@@ -64,13 +64,13 @@ public class FinderSettingsContainer extends ContainerWidget {
//System.out.println(stack.toString());
String name = stack.getName().getString().toLowerCase();
if (name.contains("floor")) {
-
+
//System.out.println("Floor selector created");
this.floorSelector = new OptionDropdownWidget(screen, stack.getName(), null, getX() + getWidth() / 4 - 70, getY() + 20, 140, 170, slot.id);
if (!setSelectedElementFromTooltip(slot, stack, floorSelector)) return false;
initializedWidgets.add(floorSelector);
-
+
} else if (name.contains("dungeon type")) {
this.dungeonTypeSelector = new OptionDropdownWidget(screen, stack.getName(), null, getX() + (3 * getWidth()) / 4 - 70, getY() + 20, 140, 100, slot.id);
@@ -121,7 +121,7 @@ public class FinderSettingsContainer extends ContainerWidget {
return true;
} else {
screen.partyFinderButton.active = false;
-
+
if (nameLowerCase.contains("floor")) {
updateDropdownOptionWidget(handler, floorSelector);
currentlyOpenedOption = floorSelector;
@@ -181,6 +181,7 @@ public class FinderSettingsContainer extends ContainerWidget {
}
return false;
}
+
/**
* @return true if all goes well
*/
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/OptionDropdownWidget.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/OptionDropdownWidget.java
index 0ce86d9a..64e45283 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/OptionDropdownWidget.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/OptionDropdownWidget.java
@@ -103,7 +103,8 @@ public class OptionDropdownWidget extends ElementListWidget<OptionDropdownWidget
matrices.push();
matrices.translate(0, 0, 100);
}
- if (animationProgress < 1) animationProgress += delta * 0.5f;else if (animationProgress != 1) animationProgress = 1;
+ if (animationProgress < 1) animationProgress += delta * 0.5f;
+ else if (animationProgress != 1) animationProgress = 1;
if (PartyFinderScreen.DEBUG) {
context.drawText(MinecraftClient.getInstance().textRenderer, String.valueOf(slotId), getX(), getY() - 10, 0xFFFF0000, true);
context.drawText(MinecraftClient.getInstance().textRenderer, String.valueOf(backButtonId), getX() + 50, getY() - 10, 0xFFFF0000, true);
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntry.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntry.java
index b7fd8d9d..1c7ab160 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntry.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntry.java
@@ -23,6 +23,7 @@ import net.minecraft.text.Text;
import net.minecraft.text.TextColor;
import net.minecraft.util.Formatting;
import net.minecraft.util.Identifier;
+import org.joml.Matrix4f;
import java.util.Arrays;
import java.util.List;
@@ -30,8 +31,6 @@ import java.util.Objects;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import org.joml.Matrix4f;
-
public class PartyEntry extends ElementListWidget.Entry<PartyEntry> {
private static final Identifier PARTY_CARD_TEXTURE = new Identifier(SkyblockerMod.NAMESPACE, "textures/gui/party_card.png");
private static final Identifier PARTY_CARD_TEXTURE_HOVER = new Identifier(SkyblockerMod.NAMESPACE, "textures/gui/party_card_hover.png");
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntryListWidget.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntryListWidget.java
index 263f5ab3..27ee1605 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntryListWidget.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyEntryListWidget.java
@@ -18,24 +18,25 @@ public class PartyEntryListWidget extends ElementListWidget<PartyEntry> {
private String search = "";
public static String BASE_SKULL_NBT = """
- {
- "SkullOwner": {
- "Id": [
- 1215241996,
- -1849412511,
- -1161255720,
- -889217537
- ],
- "Properties": {
- "textures": [
- {
- "Value": "%TEXTURE%"
- }
- ]
- }
- }
+ {
+ "SkullOwner": {
+ "Id": [
+ 1215241996,
+ -1849412511,
+ -1161255720,
+ -889217537
+ ],
+ "Properties": {
+ "textures": [
+ {
+ "Value": "%TEXTURE%"
}
- """;
+ ]
+ }
+ }
+ }
+ """;
+
public PartyEntryListWidget(MinecraftClient minecraftClient, int width, int height, int y, int itemHeight) {
super(minecraftClient, width, height, y, itemHeight);
}
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyFinderScreen.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyFinderScreen.java
index ba62515c..16be2b67 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyFinderScreen.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/PartyFinderScreen.java
@@ -6,9 +6,6 @@ import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
import net.minecraft.block.entity.SignBlockEntity;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.gui.DrawContext;
-import net.minecraft.client.gui.Drawable;
-import net.minecraft.client.gui.Element;
-import net.minecraft.client.gui.Selectable;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.ingame.GenericContainerScreen;
import net.minecraft.client.gui.widget.ButtonWidget;
@@ -211,7 +208,6 @@ public class PartyFinderScreen extends Screen {
createPartyButton.active = false;
-
addDrawableChild(partyEntryListWidget);
addDrawableChild(searchField);
addDrawableChild(refreshButton);
@@ -238,11 +234,6 @@ public class PartyFinderScreen extends Screen {
}
@Override
- protected <T extends Element & Drawable & Selectable> T addDrawableChild(T drawableElement) {
- return super.addDrawableChild(drawableElement);
- }
-
- @Override
public void render(DrawContext context, int mouseX, int mouseY, float delta) {
super.render(context, mouseX, mouseY, delta);
if (searchField.visible) {
@@ -260,7 +251,7 @@ public class PartyFinderScreen extends Screen {
}
if (isWaitingForServer()) {
String s = "Waiting for server...";
- context.drawText(textRenderer, s, this.width - textRenderer.getWidth(s) - 5, this.height-textRenderer.fontHeight - 2, 0xFFFFFFFF, true);
+ context.drawText(textRenderer, s, this.width - textRenderer.getWidth(s) - 5, this.height - textRenderer.fontHeight - 2, 0xFFFFFFFF, true);
}
if (!settingsContainer.canInteract(null)) {
context.fill(0, 0, width, height, 50, 0x40000000);
@@ -342,6 +333,7 @@ public class PartyFinderScreen extends Screen {
private boolean signFront = true;
private @Nullable SignBlockEntity sign = null;
+
public void updateSign(SignBlockEntity sign, boolean front) {
setCurrentPage(Page.SIGN);
signFront = front;
@@ -375,7 +367,7 @@ public class PartyFinderScreen extends Screen {
parties.add(new PartyEntry.NoParties());
} else {
for (Slot slot : handler.slots) {
- if (slot.id > (handler.getRows()-1) * 9 - 1 || !slot.hasStack()) continue;
+ if (slot.id > (handler.getRows() - 1) * 9 - 1 || !slot.hasStack()) continue;
if (slot.getStack().isOf(Items.PLAYER_HEAD)) {
assert this.client != null;
parties.add(new PartyEntry(slot.getStack().getTooltip(this.client.player, TooltipContext.BASIC), this, slot.id));
@@ -435,7 +427,7 @@ public class PartyFinderScreen extends Screen {
if (currentPage == Page.SIGN) {
assert this.client.player != null;
this.client.player.openEditSignScreen(sign, signFront);
- }else this.client.setScreen(new GenericContainerScreen(handler, inventory, title));
+ } else this.client.setScreen(new GenericContainerScreen(handler, inventory, title));
this.client.getToastManager().add(new SystemToast(SystemToast.Type.PERIODIC_NOTIFICATION, Text.translatable("skyblocker.partyFinder.error.name"), Text.translatable("skyblocker.partyFinder.error.message")));
aborted = true;
}
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/RangedValueWidget.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/RangedValueWidget.java
index 5cded2e2..0fcd9d1b 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/RangedValueWidget.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/partyfinder/RangedValueWidget.java
@@ -60,12 +60,10 @@ public class RangedValueWidget extends ContainerWidget {
if (i < 0 || i > 999) { // Too beeg or too smol
this.okButton.active = false;
this.input.setGood(false);
- }
- else if (state == State.MODIFYING_MIN && i > max) { // If editing min and bigger than max
+ } else if (state == State.MODIFYING_MIN && i > max) { // If editing min and bigger than max
this.okButton.active = false;
this.input.setGood(false);
- }
- else { // If editing max and smaller than min
+ } else { // If editing max and smaller than min
boolean active1 = state != State.MODIFYING_MAX || i >= min;
this.okButton.active = active1;
this.input.setGood(active1);
@@ -112,7 +110,7 @@ public class RangedValueWidget extends ContainerWidget {
// Minimum
int minStartX = getX() + 1;
int minEndX = getX() + (width >> 1) - 6;
- context.fill(minStartX, getY() + 1 + textOffset, minEndX, getY() + 14 + textOffset, state == State.MODIFYING_MIN ? selectedColor: (mouseOverMin ? 0xFFFFFFFF: unselectedColor));
+ context.fill(minStartX, getY() + 1 + textOffset, minEndX, getY() + 14 + textOffset, state == State.MODIFYING_MIN ? selectedColor : (mouseOverMin ? 0xFFFFFFFF : unselectedColor));
context.fill(minStartX + 1, getY() + 2 + textOffset, minEndX - 1, getY() + 13 + textOffset, 0xFF000000);
context.drawCenteredTextWithShadow(textRenderer, String.valueOf(min), (minStartX + minEndX) >> 1, getY() + 3 + textOffset, 0xFFFFFFFF);
@@ -120,7 +118,7 @@ public class RangedValueWidget extends ContainerWidget {
// Maximum
int maxStartX = getX() + (width >> 1) + 5;
int maxEndX = getX() + width - 1;
- context.fill(maxStartX, getY() + 1 + textOffset, maxEndX, getY() + 14 + textOffset, state == State.MODIFYING_MAX ? selectedColor: (mouseOverMax ? 0xFFFFFFFF: unselectedColor));
+ context.fill(maxStartX, getY() + 1 + textOffset, maxEndX, getY() + 14 + textOffset, state == State.MODIFYING_MAX ? selectedColor : (mouseOverMax ? 0xFFFFFFFF : unselectedColor));
context.fill(maxStartX + 1, getY() + 2 + textOffset, maxEndX - 1, getY() + 13 + textOffset, 0xFF000000);
context.drawCenteredTextWithShadow(textRenderer, String.valueOf(max), (maxStartX + maxEndX) >> 1, getY() + 3 + textOffset, 0xFFFFFFFF);
@@ -184,7 +182,7 @@ public class RangedValueWidget extends ContainerWidget {
messages[1].getString(),
messages[2].getString(),
messages[3].getString()
- ));
+ ));
}
screen.justOpenedSign = false;
}
@@ -242,6 +240,7 @@ public class RangedValueWidget extends ContainerWidget {
MODIFYING_MIN,
MODIFYING_MAX;
}
+
protected class ModifiedTextFieldWidget extends TextFieldWidget {
private boolean isGood = false;