This commit is contained in:
AxolotlMaid 2023-06-09 15:42:28 +01:00
parent cd071560fa
commit 6c476c3ead
9 changed files with 38 additions and 46 deletions

View file

@ -1,6 +1,7 @@
package dev.axolotlmaid.optionsprofiles.gui;
import dev.axolotlmaid.optionsprofiles.Profiles;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.gui.screen.GameModeSelectionScreen;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.widget.ButtonWidget;
@ -45,10 +46,11 @@ public class EditProfileScreen extends Screen {
}).position(5, this.height - 25).size(100, 20).build());
}
public void render(MatrixStack matrices, int mouseX, int mouseY, float delta) {
this.renderBackground(matrices);
drawCenteredTextWithShadow(matrices, this.textRenderer, Text.of(this.title.getString() + profileName.getString()).asOrderedText(), this.width / 2 , 8, 16777215);
drawCenteredTextWithShadow(matrices, this.textRenderer, Text.translatable("gui.options-profiles.profile-name-text").asOrderedText(), this.width / 2 - 70, this.height / 4 + 10, 16777215);
super.render(matrices, mouseX, mouseY, delta);
@Override
public void render(DrawContext context, int mouseX, int mouseY, float delta) {
this.renderBackground(context);
context.drawCenteredTextWithShadow(textRenderer, Text.of(this.title.getString() + profileName.getString()).asOrderedText(), this.width / 2 , 8, 16777215);
context.drawCenteredTextWithShadow(textRenderer, Text.translatable("gui.options-profiles.profile-name-text").asOrderedText(), this.width / 2 - 70, this.height / 4 + 10, 16777215);
super.render(context, mouseX, mouseY, delta);
}
}

View file

@ -6,11 +6,11 @@ import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.font.TextRenderer;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.gui.Element;
import net.minecraft.client.gui.Selectable;
import net.minecraft.client.gui.widget.ButtonWidget;
import net.minecraft.client.gui.widget.ElementListWidget;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.text.Text;
import org.apache.commons.io.FilenameUtils;
@ -29,12 +29,6 @@ public class ProfilesListWidget extends ElementListWidget<ProfilesListWidget.Ent
for (File profile : Objects.requireNonNull(profilesDirectory.listFiles())) {
String profileName = FilenameUtils.removeExtension(profile.getName());
this.addEntry(new ProfilesListWidget.ProfileEntry(Text.of(profileName)));
// Sodium
// This code doesn't work yet
// if (!(profileName.contains("-sodium-options"))) {
// this.addEntry(new ProfilesListWidget.ProfileEntry(Text.of(profileName)));
// }
}
}
@ -61,9 +55,7 @@ public class ProfilesListWidget extends ElementListWidget<ProfilesListWidget.Ent
ProfileEntry(final Text profileName) {
this.profileName = profileName;
this.editButton = new ButtonWidget.Builder(Text.translatable("gui.options-profiles.edit-profile-text"), (button) -> {
ProfilesListWidget.this.client.setScreen(new EditProfileScreen(parent, profileName));
}).position(0, 0).size(75, 20).build();
this.editButton = new ButtonWidget.Builder(Text.translatable("gui.options-profiles.edit-profile-text"), (button) -> ProfilesListWidget.this.client.setScreen(new EditProfileScreen(parent, profileName))).position(0, 0).size(75, 20).build();
this.loadButton = new ButtonWidget.Builder(Text.translatable("gui.options-profiles.load-profile-text"), (button) -> {
new Profiles().overwriteOptionsFile(profileName.getString());
@ -74,21 +66,19 @@ public class ProfilesListWidget extends ElementListWidget<ProfilesListWidget.Ent
}).position(0, 0).size(75, 20).build();
}
public void render(MatrixStack matrices, int index, int y, int x, int entryWidth, int entryHeight, int mouseX, int mouseY, boolean hovered, float tickDelta) {
TextRenderer var10000 = ProfilesListWidget.this.client.textRenderer;
int var10004 = y + entryHeight / 2;
Objects.requireNonNull(ProfilesListWidget.this.client.textRenderer);
var10000.draw(matrices, profileName, x, (float)(var10004 - 9 / 2), 16777215);
@Override
public void render(DrawContext context, int index, int y, int x, int entryWidth, int entryHeight, int mouseX, int mouseY, boolean hovered, float tickDelta) {
TextRenderer textRenderer = ProfilesListWidget.this.client.textRenderer;
int textY = y + entryHeight / 2;
context.drawText(textRenderer, profileName, x, textY - 9 / 2, 16777215, true);
this.editButton.setX(x + 115);
this.editButton.setY(y);
this.editButton.render(matrices, mouseX, mouseY, tickDelta);
this.editButton.render(context, mouseX, mouseY, tickDelta);
this.loadButton.setX(x + 190);
this.loadButton.setY(y);
this.loadButton.render(matrices, mouseX, mouseY, tickDelta);
this.loadButton.render(context, mouseX, mouseY, tickDelta);
}
public List<? extends Element> children() {

View file

@ -1,6 +1,7 @@
package dev.axolotlmaid.optionsprofiles.gui;
import dev.axolotlmaid.optionsprofiles.Profiles;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.widget.ButtonWidget;
import net.minecraft.client.util.math.MatrixStack;
@ -34,10 +35,11 @@ public class ProfilesScreen extends Screen {
}).position(this.width / 2 - 155 + 160, this.height - 29).size(150, 20).build());
}
public void render(MatrixStack matrices, int mouseX, int mouseY, float delta) {
this.renderBackground(matrices);
this.profilesList.render(matrices, mouseX, mouseY, delta);
drawCenteredTextWithShadow(matrices, this.textRenderer, this.title.asOrderedText(), this.width / 2, 8, 16777215);
super.render(matrices, mouseX, mouseY, delta);
@Override
public void render(DrawContext context, int mouseX, int mouseY, float delta) {
this.renderBackground(context);
this.profilesList.render(context, mouseX, mouseY, delta);
context.drawCenteredTextWithShadow(textRenderer, this.title.asOrderedText(), this.width / 2, 8, 16777215);
super.render(context, mouseX, mouseY, delta);
}
}

View file

@ -23,8 +23,8 @@
"options-profiles.mixins.json"
],
"depends": {
"fabricloader": ">=0.14.19",
"minecraft": "~1.19.3",
"fabricloader": ">=0.14.21",
"minecraft": "~1.20",
"java": ">=17",
"fabric-api": "*"
},