ui update
This commit is contained in:
@@ -4,12 +4,11 @@ import net.fabricmc.api.ModInitializer;
|
|||||||
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
|
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
|
||||||
import net.minecraft.client.font.TextRenderer;
|
import net.minecraft.client.font.TextRenderer;
|
||||||
import net.minecraft.util.math.ColorHelper;
|
import net.minecraft.util.math.ColorHelper;
|
||||||
|
import org.saturnclient.saturnclient.auth.SaturnSocket;
|
||||||
import org.saturnclient.saturnclient.cloaks.Cloaks;
|
import org.saturnclient.saturnclient.cloaks.Cloaks;
|
||||||
import org.saturnclient.saturnclient.config.ConfigManager;
|
import org.saturnclient.saturnclient.config.ConfigManager;
|
||||||
import org.saturnclient.saturnclient.event.KeyInputHandler;
|
import org.saturnclient.saturnclient.event.KeyInputHandler;
|
||||||
import org.saturnclient.saturnmods.ModManager;
|
import org.saturnclient.saturnmods.ModManager;
|
||||||
import org.saturnclient.saturnclient.auth.SaturnSocket;
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
@@ -18,19 +17,26 @@ import org.slf4j.LoggerFactory;
|
|||||||
* Originally created by IIpho3nix and modified for Saturn Client by leo.
|
* Originally created by IIpho3nix and modified for Saturn Client by leo.
|
||||||
*/
|
*/
|
||||||
public class SaturnClient implements ModInitializer {
|
public class SaturnClient implements ModInitializer {
|
||||||
|
|
||||||
public static final String MOD_ID = "saturnclient";
|
public static final String MOD_ID = "saturnclient";
|
||||||
public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID);
|
public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID);
|
||||||
public static int COLOR = ColorHelper.getArgb(255, 251, 60, 79);
|
public static int COLOR = ColorHelper.getArgb(255, 251, 60, 79);
|
||||||
public static int WHITE = ColorHelper.getArgb(255, 255, 255, 255);
|
public static int WHITE = ColorHelper.getArgb(255, 255, 255, 255);
|
||||||
|
public static int NORMAL = ColorHelper.getArgb(255, 182, 182, 182);
|
||||||
public static TextRenderer textRenderer = null;
|
public static TextRenderer textRenderer = null;
|
||||||
|
|
||||||
|
public static int getWhite(float alpha) {
|
||||||
|
return ((int) (alpha * 255) << 24) | (NORMAL & 0x00FFFFFF);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onInitialize() {
|
public void onInitialize() {
|
||||||
LOGGER.info("Initializing " + MOD_ID);
|
LOGGER.info("Initializing " + MOD_ID);
|
||||||
ModManager.init();
|
ModManager.init();
|
||||||
ConfigManager.load();
|
ConfigManager.load();
|
||||||
|
|
||||||
ClientLifecycleEvents.CLIENT_STOPPING.register(c -> ConfigManager.save());
|
ClientLifecycleEvents.CLIENT_STOPPING.register(c -> ConfigManager.save()
|
||||||
|
);
|
||||||
|
|
||||||
KeyInputHandler.register();
|
KeyInputHandler.register();
|
||||||
if (SaturnSocket.authenticate()) {
|
if (SaturnSocket.authenticate()) {
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
package org.saturnclient.ui;
|
package org.saturnclient.ui;
|
||||||
|
|
||||||
public class SaturnAnimation {
|
public class SaturnAnimation {
|
||||||
|
|
||||||
public int delay = 0;
|
public int delay = 0;
|
||||||
public int lastTick = 0;
|
public int lastTick = 0;
|
||||||
|
|
||||||
public void init(SaturnWidget widget) {
|
public void init(SaturnWidget widget) {}
|
||||||
}
|
|
||||||
|
|
||||||
public boolean run(SaturnWidget widget, int tick) {
|
public boolean run(SaturnWidget widget, int tick) {
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package org.saturnclient.ui;
|
|||||||
import net.minecraft.client.gui.DrawContext;
|
import net.minecraft.client.gui.DrawContext;
|
||||||
|
|
||||||
public class SaturnWidget {
|
public class SaturnWidget {
|
||||||
|
|
||||||
public int x = 0;
|
public int x = 0;
|
||||||
public int y = 0;
|
public int y = 0;
|
||||||
public int width = 0;
|
public int width = 0;
|
||||||
@@ -11,24 +12,27 @@ public class SaturnWidget {
|
|||||||
public SaturnAnimation[] animations = null;
|
public SaturnAnimation[] animations = null;
|
||||||
public boolean visible = true;
|
public boolean visible = true;
|
||||||
|
|
||||||
public void init() {
|
public void init() {}
|
||||||
}
|
|
||||||
|
|
||||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
public void render(
|
||||||
}
|
DrawContext context,
|
||||||
|
boolean hovering,
|
||||||
|
int mouseX,
|
||||||
|
int mouseY
|
||||||
|
) {}
|
||||||
|
|
||||||
public void click(int mouseX, int mouseY) {
|
public void click(int mouseX, int mouseY) {}
|
||||||
}
|
|
||||||
|
|
||||||
public void keyPressed(int keyCode, int scanCode, int modifiers) {
|
public void keyPressed(int keyCode, int scanCode, int modifiers) {}
|
||||||
}
|
|
||||||
|
|
||||||
public void charTyped(char typedChar) {
|
public void charTyped(char typedChar) {}
|
||||||
}
|
|
||||||
|
|
||||||
public void mouseScrolled(int mouseX, int mouseY, double horizontalAmount,
|
public void mouseScrolled(
|
||||||
double verticalAmount) {
|
int mouseX,
|
||||||
}
|
int mouseY,
|
||||||
|
double horizontalAmount,
|
||||||
|
double verticalAmount
|
||||||
|
) {}
|
||||||
|
|
||||||
public SaturnWidget setX(int x) {
|
public SaturnWidget setX(int x) {
|
||||||
this.x = x;
|
this.x = x;
|
||||||
|
|||||||
@@ -1,5 +1,9 @@
|
|||||||
package org.saturnclient.ui.components;
|
package org.saturnclient.ui.components;
|
||||||
|
|
||||||
|
import net.minecraft.client.MinecraftClient;
|
||||||
|
import net.minecraft.client.gui.DrawContext;
|
||||||
|
import net.minecraft.client.render.RenderLayer;
|
||||||
|
import net.minecraft.util.math.ColorHelper;
|
||||||
import org.saturnclient.saturnclient.SaturnClient;
|
import org.saturnclient.saturnclient.SaturnClient;
|
||||||
import org.saturnclient.saturnclient.menus.ConfigEditor;
|
import org.saturnclient.saturnclient.menus.ConfigEditor;
|
||||||
import org.saturnclient.saturnmods.SaturnMod;
|
import org.saturnclient.saturnmods.SaturnMod;
|
||||||
@@ -7,12 +11,8 @@ import org.saturnclient.ui.SaturnUi;
|
|||||||
import org.saturnclient.ui.SaturnWidget;
|
import org.saturnclient.ui.SaturnWidget;
|
||||||
import org.saturnclient.ui.Textures;
|
import org.saturnclient.ui.Textures;
|
||||||
|
|
||||||
import net.minecraft.client.MinecraftClient;
|
|
||||||
import net.minecraft.client.gui.DrawContext;
|
|
||||||
import net.minecraft.client.render.RenderLayer;
|
|
||||||
import net.minecraft.util.math.ColorHelper;
|
|
||||||
|
|
||||||
public class SaturnModComp extends SaturnWidget {
|
public class SaturnModComp extends SaturnWidget {
|
||||||
|
|
||||||
SaturnMod mod;
|
SaturnMod mod;
|
||||||
|
|
||||||
public SaturnModComp(SaturnMod mod) {
|
public SaturnModComp(SaturnMod mod) {
|
||||||
@@ -20,39 +20,97 @@ public class SaturnModComp extends SaturnWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
public void render(
|
||||||
|
DrawContext context,
|
||||||
|
boolean hovering,
|
||||||
|
int mouseX,
|
||||||
|
int mouseY
|
||||||
|
) {
|
||||||
boolean enabled = mod.isEnabled();
|
boolean enabled = mod.isEnabled();
|
||||||
|
|
||||||
boolean hovering_settings = settingsHovering(mouseX, mouseY);
|
boolean hovering_settings = settingsHovering(mouseX, mouseY);
|
||||||
|
|
||||||
int color = !hovering_settings && (enabled || hovering) ? SaturnClient.COLOR : ColorHelper.getWhite(alpha);
|
int color = !hovering_settings && (enabled || hovering)
|
||||||
|
? SaturnClient.COLOR
|
||||||
|
: SaturnClient.getWhite(alpha);
|
||||||
|
|
||||||
int size = 12;
|
int size = 12;
|
||||||
|
|
||||||
if (enabled) {
|
if (enabled) {
|
||||||
context.drawTexture(RenderLayer::getGuiTextured, Textures.MOD_BG, x, y, 0, 0, 86, 20, 86,
|
context.drawTexture(
|
||||||
20, SaturnClient.COLOR);
|
RenderLayer::getGuiTextured,
|
||||||
|
Textures.MOD_BG,
|
||||||
|
x,
|
||||||
|
y,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
86,
|
||||||
|
20,
|
||||||
|
86,
|
||||||
|
20,
|
||||||
|
SaturnClient.COLOR
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
context.drawTexture(RenderLayer::getGuiTextured, Textures.MOD, x, y, 0, 0, 86, 20, 86,
|
context.drawTexture(
|
||||||
20, color);
|
RenderLayer::getGuiTextured,
|
||||||
|
Textures.MOD,
|
||||||
|
x,
|
||||||
|
y,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
86,
|
||||||
|
20,
|
||||||
|
86,
|
||||||
|
20,
|
||||||
|
color
|
||||||
|
);
|
||||||
|
|
||||||
context.drawTexture(RenderLayer::getGuiTextured, mod.getIconTexture(), x + 4, y + 4, 0, 0, size, size,
|
context.drawTexture(
|
||||||
size,
|
RenderLayer::getGuiTextured,
|
||||||
size, color);
|
mod.getIconTexture(),
|
||||||
|
x + 4,
|
||||||
|
y + 4,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
size,
|
||||||
|
size,
|
||||||
|
size,
|
||||||
|
size,
|
||||||
|
color
|
||||||
|
);
|
||||||
|
|
||||||
context.drawText(SaturnClient.textRenderer, SaturnUi.text(mod.getName()), x + 20,
|
context.drawText(
|
||||||
y + (21 - SaturnClient.textRenderer.fontHeight) / 2,
|
SaturnClient.textRenderer,
|
||||||
color, false);
|
SaturnUi.text(mod.getName()),
|
||||||
|
x + 20,
|
||||||
|
y + (21 - SaturnClient.textRenderer.fontHeight) / 2,
|
||||||
|
color,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
|
||||||
context.drawTexture(RenderLayer::getGuiTextured, Textures.SETTINGS, x + 77,
|
context.drawTexture(
|
||||||
y + 11, 0, 0, 7, 7, 7, 7, hovering_settings ? SaturnClient.COLOR : ColorHelper.getWhite(alpha));
|
RenderLayer::getGuiTextured,
|
||||||
|
Textures.SETTINGS,
|
||||||
|
x + 77,
|
||||||
|
y + 11,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
7,
|
||||||
|
7,
|
||||||
|
7,
|
||||||
|
7,
|
||||||
|
hovering_settings
|
||||||
|
? SaturnClient.COLOR
|
||||||
|
: SaturnClient.getWhite(alpha)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void click(int mouseX, int mouseY) {
|
public void click(int mouseX, int mouseY) {
|
||||||
if (settingsHovering(mouseX, mouseY)) {
|
if (settingsHovering(mouseX, mouseY)) {
|
||||||
MinecraftClient.getInstance().setScreen(new ConfigEditor(mod.getConfig()));
|
MinecraftClient.getInstance()
|
||||||
|
.setScreen(new ConfigEditor(mod.getConfig()));
|
||||||
} else {
|
} else {
|
||||||
mod.setEnabled(!mod.isEnabled());
|
mod.setEnabled(!mod.isEnabled());
|
||||||
}
|
}
|
||||||
@@ -63,7 +121,11 @@ public class SaturnModComp extends SaturnWidget {
|
|||||||
int sY = y + 11;
|
int sY = y + 11;
|
||||||
int size = 7;
|
int size = 7;
|
||||||
|
|
||||||
return sX < mouseX && sX + size > mouseX
|
return (
|
||||||
&& sY < mouseY && sY + size > mouseY;
|
sX < mouseX &&
|
||||||
|
sX + size > mouseX &&
|
||||||
|
sY < mouseY &&
|
||||||
|
sY + size > mouseY
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
package org.saturnclient.ui.components;
|
package org.saturnclient.ui.components;
|
||||||
|
|
||||||
|
import net.minecraft.client.gui.DrawContext;
|
||||||
|
import net.minecraft.client.render.RenderLayer;
|
||||||
|
import net.minecraft.util.math.ColorHelper;
|
||||||
import org.saturnclient.saturnclient.SaturnClient;
|
import org.saturnclient.saturnclient.SaturnClient;
|
||||||
import org.saturnclient.saturnclient.config.Property;
|
import org.saturnclient.saturnclient.config.Property;
|
||||||
import org.saturnclient.ui.SaturnWidget;
|
import org.saturnclient.ui.SaturnWidget;
|
||||||
import org.saturnclient.ui.Textures;
|
import org.saturnclient.ui.Textures;
|
||||||
|
|
||||||
import net.minecraft.client.gui.DrawContext;
|
|
||||||
import net.minecraft.client.render.RenderLayer;
|
|
||||||
import net.minecraft.util.math.ColorHelper;
|
|
||||||
|
|
||||||
public class SaturnToggle extends SaturnWidget {
|
public class SaturnToggle extends SaturnWidget {
|
||||||
|
|
||||||
Property<Boolean> prop;
|
Property<Boolean> prop;
|
||||||
|
|
||||||
public SaturnToggle(Property<Boolean> prop) {
|
public SaturnToggle(Property<Boolean> prop) {
|
||||||
@@ -19,17 +19,46 @@ public class SaturnToggle extends SaturnWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
public void render(
|
||||||
int color = prop.value ? SaturnClient.COLOR : ColorHelper.getWhite(alpha);
|
DrawContext context,
|
||||||
|
boolean hovering,
|
||||||
|
int mouseX,
|
||||||
|
int mouseY
|
||||||
|
) {
|
||||||
|
int color = prop.value
|
||||||
|
? SaturnClient.COLOR
|
||||||
|
: SaturnClient.getWhite(alpha);
|
||||||
int w = 16;
|
int w = 16;
|
||||||
int h = 6;
|
int h = 6;
|
||||||
int s = 8;
|
int s = 8;
|
||||||
|
|
||||||
context.drawTexture(RenderLayer::getGuiTextured, Textures.TOGGLE_BG, x,
|
context.drawTexture(
|
||||||
y + 1, 0, 0, w, h, w, h, color);
|
RenderLayer::getGuiTextured,
|
||||||
|
Textures.TOGGLE_BG,
|
||||||
|
x,
|
||||||
|
y + 1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
w,
|
||||||
|
h,
|
||||||
|
w,
|
||||||
|
h,
|
||||||
|
color
|
||||||
|
);
|
||||||
|
|
||||||
context.drawTexture(RenderLayer::getGuiTextured, Textures.TOGGLE_INDICATOR, prop.value ? x + 8 : x,
|
context.drawTexture(
|
||||||
y, 0, 0, s, s, s, s, color);
|
RenderLayer::getGuiTextured,
|
||||||
|
Textures.TOGGLE_INDICATOR,
|
||||||
|
prop.value ? x + 8 : x,
|
||||||
|
y,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
s,
|
||||||
|
s,
|
||||||
|
s,
|
||||||
|
s,
|
||||||
|
color
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -1,19 +1,20 @@
|
|||||||
package org.saturnclient.ui.widgets;
|
package org.saturnclient.ui.widgets;
|
||||||
|
|
||||||
import java.util.function.Consumer;
|
|
||||||
import org.lwjgl.opengl.GL11;
|
|
||||||
import org.saturnclient.saturnclient.SaturnClient;
|
|
||||||
import org.saturnclient.ui.SaturnUi;
|
|
||||||
import org.saturnclient.ui.SaturnWidget;
|
|
||||||
import org.saturnclient.ui.Textures;
|
|
||||||
import com.mojang.blaze3d.systems.RenderSystem;
|
import com.mojang.blaze3d.systems.RenderSystem;
|
||||||
|
import java.util.function.Consumer;
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
import net.minecraft.client.gui.DrawContext;
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.render.RenderLayer;
|
import net.minecraft.client.render.RenderLayer;
|
||||||
import net.minecraft.util.math.ColorHelper;
|
import net.minecraft.util.math.ColorHelper;
|
||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
|
import org.lwjgl.opengl.GL11;
|
||||||
|
import org.saturnclient.saturnclient.SaturnClient;
|
||||||
|
import org.saturnclient.ui.SaturnUi;
|
||||||
|
import org.saturnclient.ui.SaturnWidget;
|
||||||
|
import org.saturnclient.ui.Textures;
|
||||||
|
|
||||||
public class SaturnButton extends SaturnWidget {
|
public class SaturnButton extends SaturnWidget {
|
||||||
|
|
||||||
public boolean active = true;
|
public boolean active = true;
|
||||||
public String text;
|
public String text;
|
||||||
public Consumer<SaturnButton> onPress;
|
public Consumer<SaturnButton> onPress;
|
||||||
@@ -25,37 +26,73 @@ public class SaturnButton extends SaturnWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public SaturnButton(String text, Runnable onPress) {
|
public SaturnButton(String text, Runnable onPress) {
|
||||||
this(text, (b) -> {
|
this(text, b -> {
|
||||||
onPress.run();
|
onPress.run();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
public void render(
|
||||||
|
DrawContext context,
|
||||||
|
boolean hovering,
|
||||||
|
int mouseX,
|
||||||
|
int mouseY
|
||||||
|
) {
|
||||||
MinecraftClient minecraftClient = MinecraftClient.getInstance();
|
MinecraftClient minecraftClient = MinecraftClient.getInstance();
|
||||||
|
|
||||||
int hoverColor = ((int) (alpha * 255) << 24) | (SaturnClient.COLOR & 0x00FFFFFF);
|
int hoverColor =
|
||||||
|
((int) (alpha * 255) << 24) | (SaturnClient.COLOR & 0x00FFFFFF);
|
||||||
|
|
||||||
if (background) {
|
if (background) {
|
||||||
RenderSystem.setShaderTexture(0, Textures.BUTTON);
|
RenderSystem.setShaderTexture(0, Textures.BUTTON);
|
||||||
RenderSystem.texParameter(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MIN_FILTER, GL11.GL_LINEAR_MIPMAP_LINEAR);
|
RenderSystem.texParameter(
|
||||||
|
GL11.GL_TEXTURE_2D,
|
||||||
|
GL11.GL_TEXTURE_MIN_FILTER,
|
||||||
|
GL11.GL_LINEAR_MIPMAP_LINEAR
|
||||||
|
);
|
||||||
|
|
||||||
context.drawGuiTexture(RenderLayer::getGuiTextured, Textures.BUTTON, this.x,
|
context.drawGuiTexture(
|
||||||
this.y, this.width, this.height, ColorHelper.getWhite(this.alpha));
|
RenderLayer::getGuiTextured,
|
||||||
|
Textures.BUTTON,
|
||||||
|
this.x,
|
||||||
|
this.y,
|
||||||
|
this.width,
|
||||||
|
this.height,
|
||||||
|
SaturnClient.getWhite(this.alpha)
|
||||||
|
);
|
||||||
|
|
||||||
if (hovering) {
|
if (hovering) {
|
||||||
context.drawGuiTexture(RenderLayer::getGuiTextured, Textures.BUTTON_BORDER, this.x,
|
context.drawGuiTexture(
|
||||||
this.y, this.width, this.height, hoverColor);
|
RenderLayer::getGuiTextured,
|
||||||
|
Textures.BUTTON_BORDER,
|
||||||
|
this.x,
|
||||||
|
this.y,
|
||||||
|
this.width,
|
||||||
|
this.height,
|
||||||
|
hoverColor
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (alpha != 0.0f) {
|
if (alpha != 0.0f) {
|
||||||
int i = this.active ? 16777215 : 10526880;
|
int i = this.active ? 16777215 : 10526880;
|
||||||
context.drawText(minecraftClient.textRenderer,
|
context.drawText(
|
||||||
SaturnUi.text(text),
|
minecraftClient.textRenderer,
|
||||||
this.x + ((this.width - minecraftClient.textRenderer.getWidth(SaturnUi.text(text))) / 2),
|
SaturnUi.text(text),
|
||||||
this.y + ((this.height - minecraftClient.textRenderer.fontHeight + 1) / 2),
|
this.x +
|
||||||
hovering ? hoverColor : i | MathHelper.ceil(this.alpha * 255.0F) << 24, false);
|
((this.width -
|
||||||
|
minecraftClient.textRenderer.getWidth(
|
||||||
|
SaturnUi.text(text)
|
||||||
|
)) /
|
||||||
|
2),
|
||||||
|
this.y +
|
||||||
|
((this.height - minecraftClient.textRenderer.fontHeight + 1) /
|
||||||
|
2),
|
||||||
|
hovering
|
||||||
|
? hoverColor
|
||||||
|
: i | (MathHelper.ceil(this.alpha * 255.0F) << 24),
|
||||||
|
false
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,38 +1,57 @@
|
|||||||
package org.saturnclient.ui.widgets;
|
package org.saturnclient.ui.widgets;
|
||||||
|
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
import org.saturnclient.saturnclient.SaturnClient;
|
|
||||||
import org.saturnclient.ui.SaturnWidget;
|
|
||||||
|
|
||||||
import net.minecraft.client.gui.DrawContext;
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.render.RenderLayer;
|
import net.minecraft.client.render.RenderLayer;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import net.minecraft.util.math.ColorHelper;
|
import net.minecraft.util.math.ColorHelper;
|
||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
|
import org.saturnclient.saturnclient.SaturnClient;
|
||||||
|
import org.saturnclient.ui.SaturnWidget;
|
||||||
|
|
||||||
public class SaturnClickableImage extends SaturnWidget {
|
public class SaturnClickableImage extends SaturnWidget {
|
||||||
|
|
||||||
public Identifier texture;
|
public Identifier texture;
|
||||||
public boolean selected = false;
|
public boolean selected = false;
|
||||||
public Consumer<SaturnClickableImage> onPress;
|
public Consumer<SaturnClickableImage> onPress;
|
||||||
public int color = ColorHelper.getWhite(1.0f);
|
public int color = SaturnClient.getWhite(1.0f);
|
||||||
public int hoverColor = SaturnClient.COLOR;
|
public int hoverColor = SaturnClient.COLOR;
|
||||||
|
|
||||||
public SaturnClickableImage(Identifier texture, Consumer<SaturnClickableImage> onPress) {
|
public SaturnClickableImage(
|
||||||
|
Identifier texture,
|
||||||
|
Consumer<SaturnClickableImage> onPress
|
||||||
|
) {
|
||||||
this.texture = texture;
|
this.texture = texture;
|
||||||
this.onPress = onPress;
|
this.onPress = onPress;
|
||||||
}
|
}
|
||||||
|
|
||||||
public SaturnClickableImage(Identifier texture, Runnable onPress) {
|
public SaturnClickableImage(Identifier texture, Runnable onPress) {
|
||||||
this(texture, (m) -> {
|
this(texture, m -> {
|
||||||
onPress.run();
|
onPress.run();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
public void render(
|
||||||
context.drawTexture(RenderLayer::getGuiTextured, texture, x, y, 0, 0, width, height, width,
|
DrawContext context,
|
||||||
height, (hovering || selected ? hoverColor : color) | MathHelper.ceil(this.alpha * 255.0F) << 24);
|
boolean hovering,
|
||||||
|
int mouseX,
|
||||||
|
int mouseY
|
||||||
|
) {
|
||||||
|
context.drawTexture(
|
||||||
|
RenderLayer::getGuiTextured,
|
||||||
|
texture,
|
||||||
|
x,
|
||||||
|
y,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
width,
|
||||||
|
height,
|
||||||
|
width,
|
||||||
|
height,
|
||||||
|
(hovering || selected ? hoverColor : color) |
|
||||||
|
(MathHelper.ceil(this.alpha * 255.0F) << 24)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -44,5 +63,4 @@ public class SaturnClickableImage extends SaturnWidget {
|
|||||||
this.selected = selected;
|
this.selected = selected;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,39 +1,53 @@
|
|||||||
package org.saturnclient.ui.widgets;
|
package org.saturnclient.ui.widgets;
|
||||||
|
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
import org.saturnclient.saturnclient.SaturnClient;
|
|
||||||
import org.saturnclient.ui.SaturnWidget;
|
|
||||||
|
|
||||||
import net.minecraft.client.gui.DrawContext;
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.render.RenderLayer;
|
import net.minecraft.client.render.RenderLayer;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import net.minecraft.util.math.ColorHelper;
|
import net.minecraft.util.math.ColorHelper;
|
||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
|
import org.saturnclient.saturnclient.SaturnClient;
|
||||||
|
import org.saturnclient.ui.SaturnWidget;
|
||||||
|
|
||||||
public class SaturnClickableSprite extends SaturnWidget {
|
public class SaturnClickableSprite extends SaturnWidget {
|
||||||
|
|
||||||
public Identifier sprite;
|
public Identifier sprite;
|
||||||
public boolean selected = false;
|
public boolean selected = false;
|
||||||
public Consumer<SaturnClickableSprite> onPress;
|
public Consumer<SaturnClickableSprite> onPress;
|
||||||
public int color = ColorHelper.getWhite(1.0f);
|
public int color = SaturnClient.getWhite(1.0f);
|
||||||
public int hoverColor = SaturnClient.COLOR;
|
public int hoverColor = SaturnClient.COLOR;
|
||||||
|
|
||||||
public SaturnClickableSprite(Identifier sprite, Consumer<SaturnClickableSprite> onPress) {
|
public SaturnClickableSprite(
|
||||||
|
Identifier sprite,
|
||||||
|
Consumer<SaturnClickableSprite> onPress
|
||||||
|
) {
|
||||||
this.sprite = sprite;
|
this.sprite = sprite;
|
||||||
this.onPress = onPress;
|
this.onPress = onPress;
|
||||||
}
|
}
|
||||||
|
|
||||||
public SaturnClickableSprite(Identifier sprite, Runnable onPress) {
|
public SaturnClickableSprite(Identifier sprite, Runnable onPress) {
|
||||||
this(sprite, (m) -> {
|
this(sprite, m -> {
|
||||||
onPress.run();
|
onPress.run();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
public void render(
|
||||||
context.drawGuiTexture(RenderLayer::getGuiTextured, sprite, this.x,
|
DrawContext context,
|
||||||
this.y, this.width, this.height,
|
boolean hovering,
|
||||||
(hovering || selected ? hoverColor : color) | MathHelper.ceil(this.alpha * 255.0F) << 24);
|
int mouseX,
|
||||||
|
int mouseY
|
||||||
|
) {
|
||||||
|
context.drawGuiTexture(
|
||||||
|
RenderLayer::getGuiTextured,
|
||||||
|
sprite,
|
||||||
|
this.x,
|
||||||
|
this.y,
|
||||||
|
this.width,
|
||||||
|
this.height,
|
||||||
|
(hovering || selected ? hoverColor : color) |
|
||||||
|
(MathHelper.ceil(this.alpha * 255.0F) << 24)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -1,13 +1,14 @@
|
|||||||
package org.saturnclient.ui.widgets;
|
package org.saturnclient.ui.widgets;
|
||||||
|
|
||||||
import org.saturnclient.ui.SaturnWidget;
|
|
||||||
|
|
||||||
import net.minecraft.client.gui.DrawContext;
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.render.RenderLayer;
|
import net.minecraft.client.render.RenderLayer;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import net.minecraft.util.math.ColorHelper;
|
import net.minecraft.util.math.ColorHelper;
|
||||||
|
import org.saturnclient.saturnclient.SaturnClient;
|
||||||
|
import org.saturnclient.ui.SaturnWidget;
|
||||||
|
|
||||||
public class SaturnImage extends SaturnWidget {
|
public class SaturnImage extends SaturnWidget {
|
||||||
|
|
||||||
private final Identifier sprite;
|
private final Identifier sprite;
|
||||||
|
|
||||||
public SaturnImage(Identifier sprite) {
|
public SaturnImage(Identifier sprite) {
|
||||||
@@ -15,8 +16,24 @@ public class SaturnImage extends SaturnWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
public void render(
|
||||||
context.drawTexture(RenderLayer::getGuiTextured, sprite, x, y, 0, 0, width, height, width,
|
DrawContext context,
|
||||||
height, ColorHelper.getWhite(alpha));
|
boolean hovering,
|
||||||
|
int mouseX,
|
||||||
|
int mouseY
|
||||||
|
) {
|
||||||
|
context.drawTexture(
|
||||||
|
RenderLayer::getGuiTextured,
|
||||||
|
sprite,
|
||||||
|
x,
|
||||||
|
y,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
width,
|
||||||
|
height,
|
||||||
|
width,
|
||||||
|
height,
|
||||||
|
ColorHelper.getWhite(alpha)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,42 +1,68 @@
|
|||||||
package org.saturnclient.ui.widgets;
|
package org.saturnclient.ui.widgets;
|
||||||
|
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
import org.saturnclient.saturnclient.SaturnClient;
|
|
||||||
import net.minecraft.client.gui.DrawContext;
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.render.RenderLayer;
|
import net.minecraft.client.render.RenderLayer;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import net.minecraft.util.math.ColorHelper;
|
import net.minecraft.util.math.ColorHelper;
|
||||||
|
import org.saturnclient.saturnclient.SaturnClient;
|
||||||
|
|
||||||
public class SaturnImageButton extends SaturnButton {
|
public class SaturnImageButton extends SaturnButton {
|
||||||
|
|
||||||
public Identifier sprite;
|
public Identifier sprite;
|
||||||
public int imageWidth;
|
public int imageWidth;
|
||||||
public int imageHeight;
|
public int imageHeight;
|
||||||
public Consumer<SaturnImageButton> onPress;
|
public Consumer<SaturnImageButton> onPress;
|
||||||
|
|
||||||
public SaturnImageButton(Identifier sprite, int imageWidth, int imageHeight, Consumer<SaturnImageButton> onPress) {
|
public SaturnImageButton(
|
||||||
super("", (b) -> {
|
Identifier sprite,
|
||||||
});
|
int imageWidth,
|
||||||
|
int imageHeight,
|
||||||
|
Consumer<SaturnImageButton> onPress
|
||||||
|
) {
|
||||||
|
super("", b -> {});
|
||||||
this.sprite = sprite;
|
this.sprite = sprite;
|
||||||
this.imageWidth = imageWidth;
|
this.imageWidth = imageWidth;
|
||||||
this.imageHeight = imageHeight;
|
this.imageHeight = imageHeight;
|
||||||
this.onPress = onPress;
|
this.onPress = onPress;
|
||||||
}
|
}
|
||||||
|
|
||||||
public SaturnImageButton(Identifier sprite, int imageWidth, int imageHeight, Runnable onPress) {
|
public SaturnImageButton(
|
||||||
this(sprite, imageWidth, imageHeight, (b) -> {
|
Identifier sprite,
|
||||||
|
int imageWidth,
|
||||||
|
int imageHeight,
|
||||||
|
Runnable onPress
|
||||||
|
) {
|
||||||
|
this(sprite, imageWidth, imageHeight, b -> {
|
||||||
onPress.run();
|
onPress.run();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
public void render(
|
||||||
|
DrawContext context,
|
||||||
|
boolean hovering,
|
||||||
|
int mouseX,
|
||||||
|
int mouseY
|
||||||
|
) {
|
||||||
super.render(context, hovering, mouseX, mouseY);
|
super.render(context, hovering, mouseX, mouseY);
|
||||||
|
|
||||||
int hoverColor = ((int) (alpha * 255) << 24) | (SaturnClient.COLOR & 0x00FFFFFF);
|
int hoverColor =
|
||||||
|
((int) (alpha * 255) << 24) | (SaturnClient.COLOR & 0x00FFFFFF);
|
||||||
|
|
||||||
context.drawTexture(RenderLayer::getGuiTextured, sprite, (x + (width - imageWidth) / 2),
|
context.drawTexture(
|
||||||
(y + (height - imageHeight) / 2), 0, 0, imageWidth, imageHeight, imageWidth,
|
RenderLayer::getGuiTextured,
|
||||||
imageHeight, hovering ? hoverColor : ColorHelper.getWhite(alpha));
|
sprite,
|
||||||
|
(x + (width - imageWidth) / 2),
|
||||||
|
(y + (height - imageHeight) / 2),
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
imageWidth,
|
||||||
|
imageHeight,
|
||||||
|
imageWidth,
|
||||||
|
imageHeight,
|
||||||
|
hovering ? hoverColor : SaturnClient.getWhite(alpha)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -1,24 +1,32 @@
|
|||||||
package org.saturnclient.ui.widgets;
|
package org.saturnclient.ui.widgets;
|
||||||
|
|
||||||
import org.lwjgl.glfw.GLFW;
|
|
||||||
import org.saturnclient.ui.SaturnUi;
|
|
||||||
import org.saturnclient.ui.SaturnWidget;
|
|
||||||
import org.saturnclient.ui.Textures;
|
|
||||||
|
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
import net.minecraft.client.font.TextRenderer;
|
import net.minecraft.client.font.TextRenderer;
|
||||||
import net.minecraft.client.gui.DrawContext;
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.render.RenderLayer;
|
import net.minecraft.client.render.RenderLayer;
|
||||||
import net.minecraft.util.math.ColorHelper;
|
import net.minecraft.util.math.ColorHelper;
|
||||||
|
import org.lwjgl.glfw.GLFW;
|
||||||
|
import org.saturnclient.saturnclient.SaturnClient;
|
||||||
|
import org.saturnclient.ui.SaturnUi;
|
||||||
|
import org.saturnclient.ui.SaturnWidget;
|
||||||
|
import org.saturnclient.ui.Textures;
|
||||||
|
|
||||||
public class SaturnInputBox extends SaturnWidget {
|
public class SaturnInputBox extends SaturnWidget {
|
||||||
|
|
||||||
public String text = "";
|
public String text = "";
|
||||||
public String placeholder = "";
|
public String placeholder = "";
|
||||||
public int cursorPosition = 0;
|
public int cursorPosition = 0;
|
||||||
public boolean focused = false;
|
public boolean focused = false;
|
||||||
private TextRenderer textRenderer = MinecraftClient.getInstance().textRenderer;
|
private TextRenderer textRenderer = MinecraftClient.getInstance()
|
||||||
|
.textRenderer;
|
||||||
|
|
||||||
public SaturnInputBox(String placeholder, int x, int y, int width, int height) {
|
public SaturnInputBox(
|
||||||
|
String placeholder,
|
||||||
|
int x,
|
||||||
|
int y,
|
||||||
|
int width,
|
||||||
|
int height
|
||||||
|
) {
|
||||||
this.x = x;
|
this.x = x;
|
||||||
this.y = y;
|
this.y = y;
|
||||||
this.width = width;
|
this.width = width;
|
||||||
@@ -34,8 +42,10 @@ public class SaturnInputBox extends SaturnWidget {
|
|||||||
@Override
|
@Override
|
||||||
public void charTyped(char chr) {
|
public void charTyped(char chr) {
|
||||||
if (focused) {
|
if (focused) {
|
||||||
text = text.substring(0, cursorPosition) + chr
|
text =
|
||||||
+ text.substring(cursorPosition);
|
text.substring(0, cursorPosition) +
|
||||||
|
chr +
|
||||||
|
text.substring(cursorPosition);
|
||||||
|
|
||||||
cursorPosition++;
|
cursorPosition++;
|
||||||
}
|
}
|
||||||
@@ -46,7 +56,9 @@ public class SaturnInputBox extends SaturnWidget {
|
|||||||
if (focused) {
|
if (focused) {
|
||||||
if (keyCode == GLFW.GLFW_KEY_BACKSPACE) {
|
if (keyCode == GLFW.GLFW_KEY_BACKSPACE) {
|
||||||
if (cursorPosition > 0) {
|
if (cursorPosition > 0) {
|
||||||
text = text.substring(0, cursorPosition - 1) + text.substring(cursorPosition);
|
text =
|
||||||
|
text.substring(0, cursorPosition - 1) +
|
||||||
|
text.substring(cursorPosition);
|
||||||
cursorPosition--;
|
cursorPosition--;
|
||||||
}
|
}
|
||||||
} else if (keyCode == GLFW.GLFW_KEY_LEFT) {
|
} else if (keyCode == GLFW.GLFW_KEY_LEFT) {
|
||||||
@@ -62,22 +74,51 @@ public class SaturnInputBox extends SaturnWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
public void render(
|
||||||
context.drawGuiTexture(RenderLayer::getGuiTextured, Textures.BUTTON, this.x,
|
DrawContext context,
|
||||||
this.y, this.width, this.height, ColorHelper.getWhite(this.alpha));
|
boolean hovering,
|
||||||
|
int mouseX,
|
||||||
|
int mouseY
|
||||||
|
) {
|
||||||
|
context.drawGuiTexture(
|
||||||
|
RenderLayer::getGuiTextured,
|
||||||
|
Textures.BUTTON,
|
||||||
|
this.x,
|
||||||
|
this.y,
|
||||||
|
this.width,
|
||||||
|
this.height,
|
||||||
|
SaturnClient.getWhite(this.alpha)
|
||||||
|
);
|
||||||
|
|
||||||
int scrollOffset = getScrollOffset();
|
int scrollOffset = getScrollOffset();
|
||||||
String visibleText = text.substring(scrollOffset);
|
String visibleText = text.substring(scrollOffset);
|
||||||
|
|
||||||
int textColor = focused ? 0xFFFFFF : 0xAAAAAA;
|
int textColor = focused ? 0xFFFFFF : 0xAAAAAA;
|
||||||
context.drawText(textRenderer,
|
context.drawText(
|
||||||
SaturnUi.text(visibleText), x + 5,
|
textRenderer,
|
||||||
y + 5, textColor, false);
|
SaturnUi.text(visibleText),
|
||||||
|
x + 5,
|
||||||
|
y + 5,
|
||||||
|
textColor,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
|
||||||
if (focused) {
|
if (focused) {
|
||||||
int cursorX = x + 5
|
int cursorX =
|
||||||
+ textRenderer.getWidth(SaturnUi.text(visibleText.substring(0, cursorPosition - scrollOffset)));
|
x +
|
||||||
context.fill(cursorX, y + 3, cursorX + 1, y + height - 3, 0xFFFFFFFF);
|
5 +
|
||||||
|
textRenderer.getWidth(
|
||||||
|
SaturnUi.text(
|
||||||
|
visibleText.substring(0, cursorPosition - scrollOffset)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
context.fill(
|
||||||
|
cursorX,
|
||||||
|
y + 3,
|
||||||
|
cursorX + 1,
|
||||||
|
y + height - 3,
|
||||||
|
0xFFFFFFFF
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -94,11 +135,19 @@ public class SaturnInputBox extends SaturnWidget {
|
|||||||
int offset = 0;
|
int offset = 0;
|
||||||
|
|
||||||
if (cursorPosition == text.length()) {
|
if (cursorPosition == text.length()) {
|
||||||
while (textRenderer.getWidth(SaturnUi.text(text.substring(offset))) > width) {
|
while (
|
||||||
|
textRenderer.getWidth(SaturnUi.text(text.substring(offset))) >
|
||||||
|
width
|
||||||
|
) {
|
||||||
offset++;
|
offset++;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
while (textRenderer.getWidth(SaturnUi.text(text.substring(offset, cursorPosition))) > width) {
|
while (
|
||||||
|
textRenderer.getWidth(
|
||||||
|
SaturnUi.text(text.substring(offset, cursorPosition))
|
||||||
|
) >
|
||||||
|
width
|
||||||
|
) {
|
||||||
offset++;
|
offset++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,13 +1,14 @@
|
|||||||
package org.saturnclient.ui.widgets;
|
package org.saturnclient.ui.widgets;
|
||||||
|
|
||||||
import org.saturnclient.ui.SaturnWidget;
|
|
||||||
|
|
||||||
import net.minecraft.client.gui.DrawContext;
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.render.RenderLayer;
|
import net.minecraft.client.render.RenderLayer;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import net.minecraft.util.math.ColorHelper;
|
import net.minecraft.util.math.ColorHelper;
|
||||||
|
import org.saturnclient.saturnclient.SaturnClient;
|
||||||
|
import org.saturnclient.ui.SaturnWidget;
|
||||||
|
|
||||||
public class SaturnSprite extends SaturnWidget {
|
public class SaturnSprite extends SaturnWidget {
|
||||||
|
|
||||||
private final Identifier sprite;
|
private final Identifier sprite;
|
||||||
|
|
||||||
public SaturnSprite(Identifier sprite) {
|
public SaturnSprite(Identifier sprite) {
|
||||||
@@ -15,8 +16,20 @@ public class SaturnSprite extends SaturnWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
public void render(
|
||||||
context.drawGuiTexture(RenderLayer::getGuiTextured, sprite, this.x,
|
DrawContext context,
|
||||||
this.y, this.width, this.height, ColorHelper.getWhite(this.alpha));
|
boolean hovering,
|
||||||
|
int mouseX,
|
||||||
|
int mouseY
|
||||||
|
) {
|
||||||
|
context.drawGuiTexture(
|
||||||
|
RenderLayer::getGuiTextured,
|
||||||
|
sprite,
|
||||||
|
this.x,
|
||||||
|
this.y,
|
||||||
|
this.width,
|
||||||
|
this.height,
|
||||||
|
ColorHelper.getWhite(this.alpha)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,12 +1,13 @@
|
|||||||
package org.saturnclient.ui.widgets;
|
package org.saturnclient.ui.widgets;
|
||||||
|
|
||||||
|
import net.minecraft.client.gui.DrawContext;
|
||||||
|
import net.minecraft.util.math.ColorHelper;
|
||||||
import org.saturnclient.saturnclient.SaturnClient;
|
import org.saturnclient.saturnclient.SaturnClient;
|
||||||
import org.saturnclient.ui.SaturnUi;
|
import org.saturnclient.ui.SaturnUi;
|
||||||
import org.saturnclient.ui.SaturnWidget;
|
import org.saturnclient.ui.SaturnWidget;
|
||||||
import net.minecraft.client.gui.DrawContext;
|
|
||||||
import net.minecraft.util.math.ColorHelper;
|
|
||||||
|
|
||||||
public class SaturnText extends SaturnWidget {
|
public class SaturnText extends SaturnWidget {
|
||||||
|
|
||||||
private String text;
|
private String text;
|
||||||
|
|
||||||
public SaturnText(String text) {
|
public SaturnText(String text) {
|
||||||
@@ -20,9 +21,19 @@ public class SaturnText extends SaturnWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
public void render(
|
||||||
context.drawText(SaturnClient.textRenderer,
|
DrawContext context,
|
||||||
SaturnUi.text(text), x, y,
|
boolean hovering,
|
||||||
ColorHelper.getWhite(alpha), false);
|
int mouseX,
|
||||||
|
int mouseY
|
||||||
|
) {
|
||||||
|
context.drawText(
|
||||||
|
SaturnClient.textRenderer,
|
||||||
|
SaturnUi.text(text),
|
||||||
|
x,
|
||||||
|
y,
|
||||||
|
SaturnClient.getWhite(alpha),
|
||||||
|
false
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user