mirror of
https://github.com/TeamMidnightDust/VisualOverhaul.git
synced 2025-12-15 13:45:09 +01:00
@@ -5,7 +5,7 @@ import eu.midnightdust.visualoverhaul.config.VOConfig;
|
|||||||
import eu.midnightdust.visualoverhaul.mixin.TextureManagerAccessor;
|
import eu.midnightdust.visualoverhaul.mixin.TextureManagerAccessor;
|
||||||
import eu.midnightdust.visualoverhaul.util.ModIconUtil;
|
import eu.midnightdust.visualoverhaul.util.ModIconUtil;
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
import net.minecraft.client.gui.DrawableHelper;
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.gui.widget.ClickableWidget;
|
import net.minecraft.client.gui.widget.ClickableWidget;
|
||||||
import net.minecraft.client.texture.*;
|
import net.minecraft.client.texture.*;
|
||||||
import net.minecraft.client.util.math.MatrixStack;
|
import net.minecraft.client.util.math.MatrixStack;
|
||||||
@@ -18,7 +18,7 @@ import org.apache.logging.log4j.LogManager;
|
|||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.util.Properties;
|
import java.util.Properties;
|
||||||
|
|
||||||
public class IconicButtons extends DrawableHelper {
|
public class IconicButtons {
|
||||||
MinecraftClient client = MinecraftClient.getInstance();
|
MinecraftClient client = MinecraftClient.getInstance();
|
||||||
private String buttonId;
|
private String buttonId;
|
||||||
private Text prevText;
|
private Text prevText;
|
||||||
@@ -31,7 +31,7 @@ public class IconicButtons extends DrawableHelper {
|
|||||||
buttonId = (widget.getMessage().getContent() instanceof TranslatableTextContent translatableTextContent) ? translatableTextContent.getKey().toLowerCase() : "";
|
buttonId = (widget.getMessage().getContent() instanceof TranslatableTextContent translatableTextContent) ? translatableTextContent.getKey().toLowerCase() : "";
|
||||||
if (VOConfig.buttonIcons && !buttonId.equals("")) {
|
if (VOConfig.buttonIcons && !buttonId.equals("")) {
|
||||||
if (VOConfig.debug) System.out.println(buttonId);
|
if (VOConfig.debug) System.out.println(buttonId);
|
||||||
iconId = new Identifier("iconic", "textures/gui/icons/" + buttonId.toLowerCase()+".png");
|
iconId = Identifier.tryParse("iconic:textures/gui/icons/" + buttonId.toLowerCase()+".png");
|
||||||
if (buttonId.endsWith(".midnightconfig.title"))
|
if (buttonId.endsWith(".midnightconfig.title"))
|
||||||
{
|
{
|
||||||
iconId = new Identifier("modid", buttonId.replace(".midnightconfig.title", "") + "_icon");
|
iconId = new Identifier("modid", buttonId.replace(".midnightconfig.title", "") + "_icon");
|
||||||
@@ -54,7 +54,7 @@ public class IconicButtons extends DrawableHelper {
|
|||||||
if (abstractTexture == MissingSprite.getMissingSpriteTexture()) iconId = null;
|
if (abstractTexture == MissingSprite.getMissingSpriteTexture()) iconId = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public void renderIcons(MatrixStack matrices, ClickableWidget widget, float alpha) {
|
public void renderIcons(DrawContext context, ClickableWidget widget, float alpha) {
|
||||||
if (widget.getMessage() == null) return;
|
if (widget.getMessage() == null) return;
|
||||||
if (prevText != widget.getMessage()) init(widget);
|
if (prevText != widget.getMessage()) init(widget);
|
||||||
if (VOConfig.buttonIcons && !buttonId.equals("") && iconId != null) {
|
if (VOConfig.buttonIcons && !buttonId.equals("") && iconId != null) {
|
||||||
@@ -64,7 +64,6 @@ public class IconicButtons extends DrawableHelper {
|
|||||||
boolean showLeftWhenBoth = (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.BOTH) && !limitedSpace) || (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.BOTH) && widget.getX() < scaledWidth/2);
|
boolean showLeftWhenBoth = (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.BOTH) && !limitedSpace) || (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.BOTH) && widget.getX() < scaledWidth/2);
|
||||||
boolean showRightWhenBoth = (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.BOTH) && !limitedSpace) || (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.BOTH) && widget.getX() > scaledWidth/2);
|
boolean showRightWhenBoth = (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.BOTH) && !limitedSpace) || (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.BOTH) && widget.getX() > scaledWidth/2);
|
||||||
|
|
||||||
RenderSystem.setShaderTexture(0, iconId);
|
|
||||||
RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, alpha);
|
RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, alpha);
|
||||||
if (!widget.active) RenderSystem.setShaderColor(0.3F, 0.3F, 0.3F, alpha);
|
if (!widget.active) RenderSystem.setShaderColor(0.3F, 0.3F, 0.3F, alpha);
|
||||||
RenderSystem.enableBlend();
|
RenderSystem.enableBlend();
|
||||||
@@ -74,10 +73,10 @@ public class IconicButtons extends DrawableHelper {
|
|||||||
int size = 20-inset*2;
|
int size = 20-inset*2;
|
||||||
|
|
||||||
if (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.LEFT) || showLeftWhenBoth || (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.LOCATION) && widget.getX() < scaledWidth/2))
|
if (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.LEFT) || showLeftWhenBoth || (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.LOCATION) && widget.getX() < scaledWidth/2))
|
||||||
drawTexture(matrices, widget.getX()+inset, widget.getY()+inset, 0, 0, size, size, size, size);
|
context.drawTexture(iconId, widget.getX()+inset, widget.getY()+inset, 0, 0, size, size, size, size);
|
||||||
|
|
||||||
if (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.RIGHT) || showRightWhenBoth || (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.LOCATION) && widget.getX()+widget.getWidth() > scaledWidth/2))
|
if (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.RIGHT) || showRightWhenBoth || (VOConfig.buttonIconPosition.equals(VOConfig.IconPosition.LOCATION) && widget.getX()+widget.getWidth() > scaledWidth/2))
|
||||||
drawTexture(matrices, widget.getX()+widget.getWidth()-20+inset, widget.getY()+inset, 0, 0, size, size, size, size);
|
context.drawTexture(iconId, widget.getX()+widget.getWidth()-20+inset, widget.getY()+inset, 0, 0, size, size, size, size);
|
||||||
|
|
||||||
RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F);
|
RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,11 +2,6 @@ package eu.midnightdust.visualoverhaul;
|
|||||||
|
|
||||||
import eu.midnightdust.visualoverhaul.config.VOConfig;
|
import eu.midnightdust.visualoverhaul.config.VOConfig;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.client.MinecraftClient;
|
|
||||||
import net.minecraft.client.color.world.BiomeColors;
|
|
||||||
import net.minecraft.client.item.ModelPredicateProviderRegistry;
|
|
||||||
import net.minecraft.item.MusicDiscItem;
|
|
||||||
import net.minecraft.util.Identifier;
|
|
||||||
|
|
||||||
import static eu.midnightdust.visualoverhaul.VisualOverhaul.MOD_ID;
|
import static eu.midnightdust.visualoverhaul.VisualOverhaul.MOD_ID;
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package eu.midnightdust.visualoverhaul.mixin;
|
package eu.midnightdust.visualoverhaul.mixin;
|
||||||
|
|
||||||
import eu.midnightdust.visualoverhaul.IconicButtons;
|
import eu.midnightdust.visualoverhaul.IconicButtons;
|
||||||
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.gui.widget.ClickableWidget;
|
import net.minecraft.client.gui.widget.ClickableWidget;
|
||||||
import net.minecraft.client.gui.widget.PressableWidget;
|
import net.minecraft.client.gui.widget.PressableWidget;
|
||||||
import net.minecraft.client.util.math.MatrixStack;
|
|
||||||
import net.minecraft.text.Text;
|
import net.minecraft.text.Text;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
import org.spongepowered.asm.mixin.Unique;
|
import org.spongepowered.asm.mixin.Unique;
|
||||||
@@ -22,8 +22,8 @@ public abstract class MixinPressableWidget extends ClickableWidget {
|
|||||||
iconicButtons = new IconicButtons(this);
|
iconicButtons = new IconicButtons(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Inject(at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/widget/PressableWidget;drawMessage(Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/client/font/TextRenderer;I)V", shift = At.Shift.BEFORE), method = "renderButton")
|
@Inject(at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/widget/PressableWidget;drawMessage(Lnet/minecraft/client/gui/DrawContext;Lnet/minecraft/client/font/TextRenderer;I)V", shift = At.Shift.BEFORE), method = "renderButton")
|
||||||
private void iconic$onRenderButton(MatrixStack matrices, int mouseX, int mouseY, float delta, CallbackInfo ci) {
|
private void iconic$onRenderButton(DrawContext context, int mouseX, int mouseY, float delta, CallbackInfo ci) {
|
||||||
iconicButtons.renderIcons(matrices, this, this.alpha);
|
iconicButtons.renderIcons(context, this, this.alpha);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package eu.midnightdust.visualoverhaul.mixin;
|
package eu.midnightdust.visualoverhaul.mixin;
|
||||||
|
|
||||||
import eu.midnightdust.visualoverhaul.IconicButtons;
|
import eu.midnightdust.visualoverhaul.IconicButtons;
|
||||||
|
import net.minecraft.client.gui.DrawContext;
|
||||||
import net.minecraft.client.gui.widget.ClickableWidget;
|
import net.minecraft.client.gui.widget.ClickableWidget;
|
||||||
import net.minecraft.client.gui.widget.SliderWidget;
|
import net.minecraft.client.gui.widget.SliderWidget;
|
||||||
import net.minecraft.client.util.math.MatrixStack;
|
|
||||||
import net.minecraft.text.Text;
|
import net.minecraft.text.Text;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
import org.spongepowered.asm.mixin.Unique;
|
import org.spongepowered.asm.mixin.Unique;
|
||||||
@@ -22,8 +22,8 @@ public abstract class MixinSliderWidget extends ClickableWidget {
|
|||||||
iconicButtons = new IconicButtons(this);
|
iconicButtons = new IconicButtons(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Inject(at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/widget/SliderWidget;drawScrollableText(Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/client/font/TextRenderer;II)V", shift = At.Shift.BEFORE), method = "renderButton")
|
@Inject(at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/widget/SliderWidget;drawScrollableText(Lnet/minecraft/client/gui/DrawContext;Lnet/minecraft/client/font/TextRenderer;II)V", shift = At.Shift.BEFORE), method = "renderButton")
|
||||||
private void iconic$onRenderButton(MatrixStack matrices, int mouseX, int mouseY, float delta, CallbackInfo ci) {
|
private void iconic$onRenderButton(DrawContext context, int mouseX, int mouseY, float delta, CallbackInfo ci) {
|
||||||
iconicButtons.renderIcons(matrices, this, this.alpha);
|
iconicButtons.renderIcons(context, this, this.alpha);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,21 +1,21 @@
|
|||||||
org.gradle.jvmargs=-Xmx4096M
|
org.gradle.jvmargs=-Xmx4096M
|
||||||
|
|
||||||
minecraft_version=1.19.4
|
minecraft_version=1.20
|
||||||
yarn_mappings=1.19.4+build.1
|
yarn_mappings=1.20+build.1
|
||||||
enabled_platforms=quilt,fabric,forge
|
enabled_platforms=quilt,fabric,forge
|
||||||
|
|
||||||
archives_base_name=visualoverhaul
|
archives_base_name=visualoverhaul
|
||||||
mod_version=5.0.0
|
mod_version=5.0.1
|
||||||
maven_group=eu.midnightdust
|
maven_group=eu.midnightdust
|
||||||
|
|
||||||
architectury_version=8.1.75
|
architectury_version=9.0.7
|
||||||
midnightlib_version=1.3.0
|
midnightlib_version=1.4.1
|
||||||
phonos_version=0.3.0+1.19.2
|
phonos_version=0.3.0+1.19.2
|
||||||
|
|
||||||
fabric_loader_version=0.14.18
|
fabric_loader_version=0.14.21
|
||||||
fabric_api_version=0.76.0+1.19.4
|
fabric_api_version=0.83.0+1.20
|
||||||
|
|
||||||
forge_version=1.19.4-45.0.24
|
forge_version=1.20-46.0.13
|
||||||
|
|
||||||
quilt_loader_version=0.18.6
|
quilt_loader_version=0.19.0-beta.18
|
||||||
quilt_fabric_api_version=6.0.0-beta.2+0.76.0-1.19.4
|
quilt_fabric_api_version=7.0.1+0.83.0-1.20
|
||||||
|
|||||||
@@ -4,21 +4,7 @@
|
|||||||
"group": "${group}",
|
"group": "${group}",
|
||||||
"id": "visualoverhaul",
|
"id": "visualoverhaul",
|
||||||
"version": "${version}",
|
"version": "${version}",
|
||||||
"name": "VisualOverhaul",
|
|
||||||
"description": "Adds better visuals for certain Minecraft Vanilla Blocks.",
|
|
||||||
"authors": [
|
|
||||||
"Motschen",
|
|
||||||
"TeamMidnightDust"
|
|
||||||
],
|
|
||||||
"contact": {
|
|
||||||
"homepage": "https://www.midnightdust.eu/",
|
|
||||||
"sources": "https://github.com/TeamMidnightDust/VisualOverhaul",
|
|
||||||
"issues": "https://github.com/TeamMidnightDust/VisualOverhaul/issues"
|
|
||||||
},
|
|
||||||
"license": "MIT",
|
|
||||||
"icon": "assets/visualoverhaul/icon.png",
|
|
||||||
"intermediate_mappings": "net.fabricmc:intermediary",
|
"intermediate_mappings": "net.fabricmc:intermediary",
|
||||||
"environment": "client",
|
|
||||||
"entrypoints": {
|
"entrypoints": {
|
||||||
"client_init": [
|
"client_init": [
|
||||||
"eu.midnightdust.visualoverhaul.quilt.VisualOverhaulClientQuilt"
|
"eu.midnightdust.visualoverhaul.quilt.VisualOverhaulClientQuilt"
|
||||||
@@ -45,6 +31,8 @@
|
|||||||
"Motschen": "Author",
|
"Motschen": "Author",
|
||||||
"TeamMidnightDust": "Mascot"
|
"TeamMidnightDust": "Mascot"
|
||||||
},
|
},
|
||||||
|
"environment": "client",
|
||||||
|
"license": "MIT",
|
||||||
"contact": {
|
"contact": {
|
||||||
"email": "mail@midnightdust.eu",
|
"email": "mail@midnightdust.eu",
|
||||||
"homepage": "https://modrinth.com/mod/visualoverhaul",
|
"homepage": "https://modrinth.com/mod/visualoverhaul",
|
||||||
|
|||||||
Reference in New Issue
Block a user