Skip to content

Commit

Permalink
Use ParchmentMC + Chat spans the entire width of the screen now
Browse files Browse the repository at this point in the history
  • Loading branch information
DexrnZacAttack committed Jan 1, 2025
1 parent 35d86b9 commit 1dfffe3
Show file tree
Hide file tree
Showing 7 changed files with 48 additions and 22 deletions.
9 changes: 8 additions & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,10 @@ repositories {
name = 'NeoForged'
url = 'https://maven.neoforged.net/releases'
}
maven {
name = 'ParchmentMC'
url = 'https://maven.parchmentmc.org'
}
}


Expand All @@ -42,7 +46,10 @@ dependencies {
// Fabric API. This is technically optional, but you probably want it anyway.
modImplementation "net.fabricmc.fabric-api:fabric-api:$rootProject.fabric_api_version"
}
mappings loom.officialMojangMappings()
mappings loom.layered() {
officialMojangMappings()
parchment("org.parchmentmc.data:parchment-1.21.1:2024.11.17@zip")
}
}

java {
Expand Down
20 changes: 11 additions & 9 deletions src/main/java/xyz/violaflower/legacy_tweaks/LegacyTweaks.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,17 @@

//? if neoforge
/*import net.neoforged.fml.common.Mod;*/
import net.fabricmc.fabric.api.client.command.v2.ClientCommandManager;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback;
//? if fabric {
import net.fabricmc.fabric.api.client.command.v2.ClientCommandManager;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback;
//?}
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.screens.Screen;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import xyz.violaflower.legacy_tweaks.gui.LTScreen;
import xyz.violaflower.legacy_tweaks.items.ItemManager;
import xyz.violaflower.legacy_tweaks.tweaks.TweakManager;
import xyz.violaflower.legacy_tweaks.tweaks.Tweaks;import xyz.violaflower.legacy_tweaks.tweaks.impl.*;
import xyz.violaflower.legacy_tweaks.tweaks.Tweaks;

//? if neoforge
/*@Mod(LegacyTweaks.MOD_ID)*/
Expand All @@ -35,15 +36,16 @@ public static void init() {
tweakManager.register(Tweaks.MAP_CHANGES);
tweakManager.register(Tweaks.GAMMA);
tweakManager.register(Tweaks.F3INFO);
tweakManager.register(Tweaks.FAT_CHAT);
tweakManager.register(Tweaks.LEGACY_CHAT);
tweakManager.register(Tweaks.CRASH);
tweakManager.register(Tweaks.LEGACY_ATTACK);
tweakManager.register(Tweaks.LEGACY_UI);

// this only works on Fabric!
ClientCommandRegistrationCallback.EVENT.register((dispatcher, dedicated) -> {

dispatcher.register(ClientCommandManager.literal("ltscreen").executes(c -> {Minecraft.getInstance().tell(() -> Minecraft.getInstance().setScreen(new LTScreen(Minecraft.getInstance().screen)));return 0;}));
});
//? if fabric {
ClientCommandRegistrationCallback.EVENT.register((dispatcher, dedicated) -> {
dispatcher.register(ClientCommandManager.literal("ltscreen").executes(c -> {Minecraft.getInstance().tell(() -> Minecraft.getInstance().setScreen(new LTScreen(Minecraft.getInstance().screen)));return 0;}));
});
//?}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,35 @@

import com.llamalad7.mixinextras.injector.wrapoperation.Operation;
import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation;
import net.minecraft.client.Minecraft;
import net.minecraft.client.OptionInstance;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.components.ChatComponent;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import xyz.violaflower.legacy_tweaks.tweaks.TweakManager;
import xyz.violaflower.legacy_tweaks.tweaks.Tweaks;
import xyz.violaflower.legacy_tweaks.tweaks.impl.FatChat;

@Mixin(ChatComponent.class)
public class ChatComponentMixin {
@WrapOperation(
method = "render",
at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/GuiGraphics;fill(IIIII)V", ordinal = 0)
)
void widthSpan(GuiGraphics instance, int minX, int minY, int maxX, int maxY, int color, Operation<Void> original) {
if (!Tweaks.LEGACY_CHAT.isEnabled() || !Tweaks.LEGACY_CHAT.messageWidthSpansScreen.get()) { original.call(instance, minX, minY, maxX, maxY, color); return; }
// Dexrn: This was all done on my own, it may or may not work well.
original.call(instance, minX, minY, Minecraft.getInstance().getWindow().getWidth() - minX, maxY, color);
}

@WrapOperation(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/OptionInstance;get()Ljava/lang/Object;", ordinal = 2))
Object gydsfuiysdivkksyoi(OptionInstance instance, Operation<Object> original) {
if (!Tweaks.FAT_CHAT.isEnabled()) return original.call(instance);
return Tweaks.FAT_CHAT.getLineHeight();
if (!Tweaks.LEGACY_CHAT.isEnabled() || !Tweaks.LEGACY_CHAT.legacyMessageHeight.get()) return original.call(instance);
return Tweaks.LEGACY_CHAT.getLineHeight();
}

@WrapOperation(method = "getLineHeight", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/OptionInstance;get()Ljava/lang/Object;"))
Object gydsfuiysdivkksyo6i(OptionInstance instance, Operation<Object> original) {
if (!Tweaks.FAT_CHAT.isEnabled()) return original.call(instance);
return Tweaks.FAT_CHAT.getLineHeight();
if (!Tweaks.LEGACY_CHAT.isEnabled() || !Tweaks.LEGACY_CHAT.legacyMessageHeight.get()) return original.call(instance);
return Tweaks.LEGACY_CHAT.getLineHeight();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
public class Tweaks {
public static final Crash CRASH = new Crash();
public static final F3Info F3INFO = new F3Info();
public static final FatChat FAT_CHAT = new FatChat();
public static final FatChat LEGACY_CHAT = new FatChat();
public static final Gamma GAMMA = new Gamma();
public static final LegacyAttack LEGACY_ATTACK = new LegacyAttack();
public static final MapChanges MAP_CHANGES = new MapChanges();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package xyz.violaflower.legacy_tweaks.tweaks.impl;

import sun.misc.Unsafe;
import xyz.violaflower.legacy_tweaks.tweaks.Tweak;

import sun.misc.Unsafe;
import java.lang.reflect.Field;

public class Crash extends Tweak {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,17 @@
import xyz.violaflower.legacy_tweaks.tweaks.Tweak;

public class FatChat extends Tweak {
public final BooleanOption messageWidthSpansScreen;
public final BooleanOption legacyMessageHeight;

public FatChat() {
setTweakID("Legacy Chat");
setTweakAuthor("Jab125");
setTweakDescription("Changes the chat size to be the same as it is in LCE. (fat chat :})");
setTweakAuthor("DexrnZacAttack", "Jab125");
setTweakDescription("Various tweaks to make the chat look like it does in LCE.");
messageWidthSpansScreen = addBooleanOption("Legacy Chat Message Width");
messageWidthSpansScreen.set(true);
legacyMessageHeight = addBooleanOption("Legacy Chat Message Height");
legacyMessageHeight.set(true);
}

public double getLineHeight() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,15 @@ public void onToggled() {
}

public WindowTitle() {
setTweakID("windowtitle");
setTweakID("Window Title");
setTweakAuthor("LimeGradient", "Jab125");
ShowTUVersion showTUVersion = new ShowTUVersion();
showTUVersion.setEnabled(false);
this.addSubTweak(showTUVersion);
}

public String getTitle() {
ShowTUVersion showTUVersion = this.getSubTweak("showtuversion");
ShowTUVersion showTUVersion = this.getSubTweak("Show TU Version");
if (showTUVersion != null && showTUVersion.isEnabled()) {
return String.format("Minecraft: Console Edition - %s", showTUVersion.getTUVersion());
} else {
Expand Down

1 comment on commit 1dfffe3

@omo50
Copy link
Member

@omo50 omo50 commented on 1dfffe3 Jan 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

winner

Please sign in to comment.