VisualOverhaul 5.0.1 - Port to 1.20

- Update to 1.20
- Fix #41 & #40
This commit is contained in:
Motschen
2023-06-11 13:15:10 +02:00
parent c6ccdb0d95
commit e9539ba28f
6 changed files with 26 additions and 44 deletions

View File

@@ -5,7 +5,7 @@ import eu.midnightdust.visualoverhaul.config.VOConfig;
import eu.midnightdust.visualoverhaul.mixin.TextureManagerAccessor;
import eu.midnightdust.visualoverhaul.util.ModIconUtil;
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.texture.*;
import net.minecraft.client.util.math.MatrixStack;
@@ -18,7 +18,7 @@ import org.apache.logging.log4j.LogManager;
import java.io.InputStream;
import java.util.Properties;
public class IconicButtons extends DrawableHelper {
public class IconicButtons {
MinecraftClient client = MinecraftClient.getInstance();
private String buttonId;
private Text prevText;
@@ -31,7 +31,7 @@ public class IconicButtons extends DrawableHelper {
buttonId = (widget.getMessage().getContent() instanceof TranslatableTextContent translatableTextContent) ? translatableTextContent.getKey().toLowerCase() : "";
if (VOConfig.buttonIcons && !buttonId.equals("")) {
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"))
{
iconId = new Identifier("modid", buttonId.replace(".midnightconfig.title", "") + "_icon");
@@ -54,7 +54,7 @@ public class IconicButtons extends DrawableHelper {
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 (prevText != widget.getMessage()) init(widget);
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 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);
if (!widget.active) RenderSystem.setShaderColor(0.3F, 0.3F, 0.3F, alpha);
RenderSystem.enableBlend();
@@ -74,10 +73,10 @@ public class IconicButtons extends DrawableHelper {
int size = 20-inset*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))
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);
}

View File

@@ -2,11 +2,6 @@ package eu.midnightdust.visualoverhaul;
import eu.midnightdust.visualoverhaul.config.VOConfig;
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;

View File

@@ -1,9 +1,9 @@
package eu.midnightdust.visualoverhaul.mixin;
import eu.midnightdust.visualoverhaul.IconicButtons;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.gui.widget.ClickableWidget;
import net.minecraft.client.gui.widget.PressableWidget;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.text.Text;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Unique;
@@ -22,8 +22,8 @@ public abstract class MixinPressableWidget extends ClickableWidget {
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")
private void iconic$onRenderButton(MatrixStack matrices, int mouseX, int mouseY, float delta, CallbackInfo ci) {
iconicButtons.renderIcons(matrices, this, this.alpha);
@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(DrawContext context, int mouseX, int mouseY, float delta, CallbackInfo ci) {
iconicButtons.renderIcons(context, this, this.alpha);
}
}

View File

@@ -1,9 +1,9 @@
package eu.midnightdust.visualoverhaul.mixin;
import eu.midnightdust.visualoverhaul.IconicButtons;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.gui.widget.ClickableWidget;
import net.minecraft.client.gui.widget.SliderWidget;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.text.Text;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Unique;
@@ -22,8 +22,8 @@ public abstract class MixinSliderWidget extends ClickableWidget {
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")
private void iconic$onRenderButton(MatrixStack matrices, int mouseX, int mouseY, float delta, CallbackInfo ci) {
iconicButtons.renderIcons(matrices, this, this.alpha);
@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(DrawContext context, int mouseX, int mouseY, float delta, CallbackInfo ci) {
iconicButtons.renderIcons(context, this, this.alpha);
}
}

View File

@@ -1,21 +1,21 @@
org.gradle.jvmargs=-Xmx4096M
minecraft_version=1.19.4
yarn_mappings=1.19.4+build.1
minecraft_version=1.20
yarn_mappings=1.20+build.1
enabled_platforms=quilt,fabric,forge
archives_base_name=visualoverhaul
mod_version=5.0.0
mod_version=5.0.1
maven_group=eu.midnightdust
architectury_version=8.1.75
midnightlib_version=1.3.0
architectury_version=9.0.7
midnightlib_version=1.4.1
phonos_version=0.3.0+1.19.2
fabric_loader_version=0.14.18
fabric_api_version=0.76.0+1.19.4
fabric_loader_version=0.14.21
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_fabric_api_version=6.0.0-beta.2+0.76.0-1.19.4
quilt_loader_version=0.19.0-beta.18
quilt_fabric_api_version=7.0.1+0.83.0-1.20

View File

@@ -4,21 +4,7 @@
"group": "${group}",
"id": "visualoverhaul",
"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",
"environment": "client",
"entrypoints": {
"client_init": [
"eu.midnightdust.visualoverhaul.quilt.VisualOverhaulClientQuilt"
@@ -45,6 +31,8 @@
"Motschen": "Author",
"TeamMidnightDust": "Mascot"
},
"environment": "client",
"license": "MIT",
"contact": {
"email": "mail@midnightdust.eu",
"homepage": "https://modrinth.com/mod/visualoverhaul",