No description
Find a file
2026-05-18 16:38:58 +02:00
gradle/wrapper initial commit 2026-05-12 09:39:31 +02:00
src/main pinned things 2026-05-18 16:38:30 +02:00
versions initial commit 2026-05-12 09:39:31 +02:00
.gitignore initial commit 2026-05-12 09:39:31 +02:00
build.obf.gradle add version 2026-05-12 09:58:24 +02:00
build.unobf.gradle add version 2026-05-12 09:58:24 +02:00
gradle.properties version 2026-05-18 16:38:58 +02:00
LICENSE initial commit 2026-05-12 09:39:31 +02:00
README.md read me!! 2026-05-12 10:42:37 +02:00
settings.gradle initial commit 2026-05-12 09:39:31 +02:00
stonecutter.gradle initial commit 2026-05-12 09:39:31 +02:00

ScreenAPI

Time

i got so upset trying to make the math mathing in scroll

build.gradle

repositories {
    maven { url "https://maven.jgj52.hu/repository/maven-releases/" }
}

dependencies {
    implementation "hu.jgj52:screenapi:1.0.0+1.21.11"
}

API usage

package me.you.yourprojectwhichusesscreens.screens;

import hu.jgj52.screenapi.screen.BetterScreen;
import net.minecraft.client.gui.Font;
import net.minecraft.client.gui.GuiGraphicsExtractor;
import net.minecraft.client.gui.components.StringWidget;
import net.minecraft.network.chat.Component;

public class YourScreen extends BetterScreen {
    @Override
    protected int getScrollSpeed() {
        return 10;
    }

    @Override
    public void render(GuiGraphicsExtractor guiGraphics, int mouseX, int mouseY, float partialTick) {
        // just like render method in yarn
        StringWidget stringWidget = getWidget("widget id", StringWidget.class); // will return null if its not StringWidget
    }

    @Override
    protected void createWidgets(Font font) {
        widget(new StringWidget(
                10,
                20,
                font.width("cat"),
                font.lineHeight,
                Component.literal("cat"),
                font
        ), "widget id"); // with widget id you can later get that widget using getWidget(), just like in render
    }
}