diff options
author | Futuremappermydud <54294576+Futuremappermydud@users.noreply.github.com> | 2023-07-05 17:07:44 -0400 |
---|---|---|
committer | Futuremappermydud <54294576+Futuremappermydud@users.noreply.github.com> | 2023-07-05 17:07:44 -0400 |
commit | e393d6f9fa44b0314734ce54927ebf3bf0551d47 (patch) | |
tree | 5cdabd55d62fff6dbd723444da25e611253363ab /src/main | |
parent | 7c5916b985edbee5a428ff0af80e7104b8d3b3e4 (diff) | |
download | Skyblocker-e393d6f9fa44b0314734ce54927ebf3bf0551d47.tar.gz Skyblocker-e393d6f9fa44b0314734ce54927ebf3bf0551d47.tar.bz2 Skyblocker-e393d6f9fa44b0314734ce54927ebf3bf0551d47.zip |
Make Changes + Add scaling
Diffstat (limited to 'src/main')
3 files changed, 22 insertions, 19 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java index ab4149fc..d461dbfe 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java @@ -175,6 +175,11 @@ public class SkyblockerConfig implements ConfigData { @ConfigEntry.Gui.CollapsibleObject() public Hitbox hitbox = new Hitbox(); + @ConfigEntry.Gui.Tooltip() + @ConfigEntry.Category("titleContainer") + @ConfigEntry.Gui.CollapsibleObject() + public TitleContainer titleContainer = new TitleContainer(); + @ConfigEntry.Gui.Excluded public List<Integer> lockedSlots = new ArrayList<>(); } @@ -247,6 +252,11 @@ public class SkyblockerConfig implements ConfigData { public boolean oldLeverHitbox = false; } + public static class TitleContainer { + @ConfigEntry.BoundedDiscrete(min = 30, max = 140) + public float titleContainerScale = 100; + } + public static class RichPresence { public boolean enableRichPresence = false; @ConfigEntry.Gui.EnumHandler(option = ConfigEntry.Gui.EnumHandler.EnumDisplayOption.BUTTON) diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/title/TitleContainer.java b/src/main/java/me/xmrvizzy/skyblocker/utils/title/TitleContainer.java index 8eaf45a3..9728e1eb 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/utils/title/TitleContainer.java +++ b/src/main/java/me/xmrvizzy/skyblocker/utils/title/TitleContainer.java @@ -1,30 +1,22 @@ package me.xmrvizzy.skyblocker.utils.title; -import me.xmrvizzy.skyblocker.SkyblockerMod; -import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback; +import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import net.fabricmc.fabric.api.client.rendering.v1.HudRenderCallback; import net.minecraft.client.MinecraftClient; import net.minecraft.client.font.TextRenderer; import net.minecraft.client.gui.DrawContext; -import net.minecraft.text.Text; -import net.minecraft.util.Formatting; import net.minecraft.util.math.MathHelper; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import java.util.ArrayList; import java.util.List; -import static net.fabricmc.fabric.api.client.command.v2.ClientCommandManager.literal; - public class TitleContainer { public static List<Title> titles = new ArrayList<>(); - private static final Logger LOGGER = LoggerFactory.getLogger("skyblocker"); + public static void init() { HudRenderCallback.EVENT.register(TitleContainer::draw); } - public static void addTitle(Title title) - { + public static void addTitle(Title title) { title.active = true; title.lastX = 0; titles.add(title); @@ -35,26 +27,24 @@ public class TitleContainer { List<Title> toRemove = new ArrayList<>(); + float scale = 3F * (SkyblockerConfig.get().general.titleContainer.titleContainerScale / 100F); + float x; float width = 0; - context.getMatrices().push(); - context.getMatrices().scale(3.0F, 3.0F, 3.0F); for (Title title : titles) { - width += textRenderer.getWidth(title.text) * 3F + 10; + width += textRenderer.getWidth(title.text) * scale + 10; } - context.getMatrices().pop(); x = (client.getWindow().getScaledWidth() / 2) - width / 2; for (Title title : titles) { context.getMatrices().push(); context.getMatrices().translate(title.lastX, client.getWindow().getScaledHeight() * 0.7F, 0); - context.getMatrices().scale(3.0F, 3.0F, 3.0F); + context.getMatrices().scale(scale, scale, scale); title.lastX = MathHelper.lerp(tickDelta * 0.5F, title.lastX, x); - x += textRenderer.getWidth(title.text) * 3F + 10; - context.drawText(textRenderer, title.text, 0, 0, title.color, true - ); + x += textRenderer.getWidth(title.text) * scale + 10; + context.drawText(textRenderer, title.text, 0, 0, title.color, true); context.getMatrices().pop(); if (!title.active) { toRemove.add(title); diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json index 4686c31a..641fd202 100644 --- a/src/main/resources/assets/skyblocker/lang/en_us.json +++ b/src/main/resources/assets/skyblocker/lang/en_us.json @@ -52,6 +52,9 @@ "text.autoconfig.skyblocker.option.general.hitbox": "Hitboxes", "text.autoconfig.skyblocker.option.general.hitbox.oldFarmlandHitbox": "Enable 1.8 farmland hitbox", "text.autoconfig.skyblocker.option.general.hitbox.oldLeverHitbox": "Enable 1.8 lever hitbox", + "text.autoconfig.skyblocker.option.general.titleContainer": "Title Container", + "text.autoconfig.skyblocker.option.general.titleContainer.@Tooltip": "Used to display multiple titles at once, Example use: Vampire Slayer", + "text.autoconfig.skyblocker.option.general.titleContainer.titleContainerScale": "Title Container Scale", "skyblocker.itemTooltip.nullMessage": "§b[§6Skyblocker§b] §cItem price information on tooltip will renew in max 60 seconds. If not, check latest.log", "skyblocker.itemTooltip.noData": "§cNo Data", |