mirror of
https://github.com/PuzzleMC/Puzzle.git
synced 2025-12-16 20:05:09 +01:00
Puzzle 0.3.0 - 1.17
Modulized into: puzzle-base (update checker + config) puzzle-gui (unified config gui) puzzle-models (remove limitations) puzzle-blocks (custom render layers) puzzle-splashscreen (resourcepack-provided spash screen) Updated to 1.17
This commit is contained in:
49
puzzle-gui/src/main/java/net/puzzlemc/gui/screen/PuzzleOptionsScreen.java
Executable file
49
puzzle-gui/src/main/java/net/puzzlemc/gui/screen/PuzzleOptionsScreen.java
Executable file
@@ -0,0 +1,49 @@
|
||||
package net.puzzlemc.gui.screen;
|
||||
|
||||
import net.fabricmc.loader.api.FabricLoader;
|
||||
import net.puzzlemc.gui.screen.page.GraphicsPage;
|
||||
import net.puzzlemc.gui.screen.page.MiscPage;
|
||||
import net.puzzlemc.gui.screen.page.PerformancePage;
|
||||
import net.puzzlemc.gui.screen.page.ResourcesPage;
|
||||
import net.minecraft.client.gui.screen.Screen;
|
||||
import net.minecraft.client.gui.screen.ScreenTexts;
|
||||
import net.minecraft.client.gui.widget.ButtonWidget;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.text.TranslatableText;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
public class PuzzleOptionsScreen extends Screen {
|
||||
|
||||
public PuzzleOptionsScreen(Screen parent) {
|
||||
super(new TranslatableText("puzzle.screen.title"));
|
||||
this.parent = parent;
|
||||
}
|
||||
private final Screen parent;
|
||||
|
||||
@Override
|
||||
protected void init() {
|
||||
super.init();
|
||||
GraphicsPage graphicsPage = new GraphicsPage(this);
|
||||
MiscPage miscPage = new MiscPage(this);
|
||||
PerformancePage performancePage = new PerformancePage(this);
|
||||
ResourcesPage resourcesPage = new ResourcesPage(this);
|
||||
|
||||
this.addDrawableChild(new ButtonWidget(this.width / 2 - 155, this.height / 6 + 48 - 6, 150, 20, graphicsPage.getTitle().copy().append("..."), (button) -> Objects.requireNonNull(client).openScreen(graphicsPage)));
|
||||
this.addDrawableChild(new ButtonWidget(this.width / 2 + 5, this.height / 6 + 48 - 6, 150, 20, resourcesPage.getTitle().copy().append("..."), (button) -> Objects.requireNonNull(client).openScreen(resourcesPage)));
|
||||
this.addDrawableChild(new ButtonWidget(this.width / 2 - 155, this.height / 6 + 72 - 6, 150, 20, performancePage.getTitle().copy().append("..."), (button) -> Objects.requireNonNull(client).openScreen(performancePage)));
|
||||
this.addDrawableChild(new ButtonWidget(this.width / 2 + 5, this.height / 6 + 72 - 6, 150, 20, miscPage.getTitle().copy().append("..."), (button) -> Objects.requireNonNull(client).openScreen(miscPage)));
|
||||
if (FabricLoader.getInstance().isModLoaded("iris")) {
|
||||
this.addDrawableChild(IrisButton.getButton(this.width / 2 - 155, this.height / 6 + 96 - 6, 150, 20, this, client));
|
||||
}
|
||||
this.addDrawableChild(new ButtonWidget(this.width / 2 - 100, this.height / 6 + 168, 200, 20, ScreenTexts.DONE, (button) -> Objects.requireNonNull(client).openScreen(parent)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(MatrixStack matrices, int mouseX, int mouseY, float delta) {
|
||||
this.renderBackground(matrices);
|
||||
|
||||
super.render(matrices, mouseX, mouseY, delta);
|
||||
drawCenteredText(matrices, textRenderer, title, width/2, 15, 0xFFFFFF);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user