From 656a548074a2bad850e9cfec1b9c8c8610c115ab Mon Sep 17 00:00:00 2001 From: Markil3 <75867393+Markil3@users.noreply.github.com> Date: Tue, 2 Mar 2021 17:49:11 -0700 Subject: [PATCH] Prepares the mod for 1.15 --- build.gradle | 2 +- gradle.properties | 7 +- .../java/markil3/immersive_hud/EventBus.java | 79 +++--- src/main/java/markil3/immersive_hud/Main.java | 5 +- .../java/markil3/immersive_hud/ModMenu.java | 176 ------------ .../markil3/immersive_hud/RenderUtils.java | 255 ++++++++---------- .../markil3/immersive_hud/TimerUtils.java | 58 ++-- src/main/resources/META-INF/mods.toml | 6 +- src/main/resources/pack.mcmeta | 4 +- 9 files changed, 181 insertions(+), 411 deletions(-) delete mode 100644 src/main/java/markil3/immersive_hud/ModMenu.java diff --git a/build.gradle b/build.gradle index 2f1dfd7..f1130e8 100644 --- a/build.gradle +++ b/build.gradle @@ -100,7 +100,7 @@ dependencies { // The userdev artifact is a special name and will get all sorts of transformations applied to it. minecraft "net.minecraftforge:forge:${project.minecraft_version}-${project.forge_version}" - compile(fg.deobf("me.shedaniel.cloth:cloth-config-forge:${project.cloth_version}")) +// compile(fg.deobf("me.shedaniel.cloth:cloth-config-forge:${project.cloth_version}")) // You may put jars on which you depend on in ./libs or you may define them like so.. // compile "some.group:artifact:version:classifier" // compile "some.group:artifact:version" diff --git a/gradle.properties b/gradle.properties index 4821c1d..b81d3fb 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,11 +4,10 @@ org.gradle.jvmargs=-Xmx3G org.gradle.daemon=false # Forge Properties -minecraft_version=1.16.4 -mappings=20201028-1.16.3 -forge_version=35.1.37 +minecraft_version=1.15 +mappings=20190719-1.14.3 +forge_version=29.0.4 -cloth_version=4.11.14 # Mod Properties mod_version = 1.0 diff --git a/src/main/java/markil3/immersive_hud/EventBus.java b/src/main/java/markil3/immersive_hud/EventBus.java index 3ddcf23..b012482 100644 --- a/src/main/java/markil3/immersive_hud/EventBus.java +++ b/src/main/java/markil3/immersive_hud/EventBus.java @@ -16,12 +16,15 @@ */ package markil3.immersive_hud; +import com.mojang.blaze3d.systems.RenderSystem; + import net.minecraft.client.Minecraft; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.client.event.RenderGameOverlayEvent; import net.minecraftforge.client.event.RenderHandEvent; +import net.minecraftforge.client.event.RenderSpecificHandEvent; import net.minecraftforge.event.entity.EntityMountEvent; import net.minecraftforge.event.entity.player.PlayerInteractEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; @@ -59,19 +62,14 @@ public class EventBus @SubscribeEvent public static void onClick(final PlayerInteractEvent event) { - DistExecutor.safeRunWhenOn(Dist.CLIENT, - (DistExecutor.SafeSupplier) () -> new DistExecutor.SafeRunnable() - { - @Override - public void run() - { - Item item = - Optional.ofNullable(event.getItemStack()) - .map(ItemStack::getItem) - .orElse(null); - TimerUtils.onClick(event.getHand(), item); - } - }); + DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> + { + Item item = + Optional.ofNullable(event.getItemStack()) + .map(ItemStack::getItem) + .orElse(null); + TimerUtils.onClick(event.getHand(), item); + }); } /** @@ -86,15 +84,10 @@ public class EventBus @SubscribeEvent public static void onMount(final EntityMountEvent event) { - DistExecutor.safeRunWhenOn(Dist.CLIENT, - (DistExecutor.SafeSupplier) () -> new DistExecutor.SafeRunnable() - { - @Override - public void run() - { - TimerUtils.resetMountHealth(); - } - }); + DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> + { + TimerUtils.resetMountHealth(); + }); } /** @@ -104,9 +97,11 @@ public class EventBus * @param event - event data */ @SubscribeEvent - public static void onRenderHand(final RenderHandEvent event) + public static void onRenderHand(final RenderSpecificHandEvent event) { - if (TimerUtils.onRenderHand(event.getHand(), event.getMatrixStack(), event.getPartialTicks())) + if (TimerUtils.onRenderHand(event.getHand(), + event.getMatrixStack(), + event.getPartialTicks())) { event.setCanceled(true); } @@ -148,8 +143,7 @@ public class EventBus TimerUtils.updatePotions(mc.player); event.setCanceled(true); RenderUtils.renderPotionIcons(mc, - mc.ingameGUI, - event.getMatrixStack(), event.getPartialTicks()); + mc.ingameGUI, event.getPartialTicks()); resetAlpha(); } break; @@ -160,7 +154,6 @@ public class EventBus if (!TimerUtils.drawHotbar(event.getPartialTicks())) { RenderUtils.renderHotbar(mc, mc.ingameGUI, - event.getMatrixStack(), event.getPartialTicks(), TimerUtils.hotbarTime); } } @@ -168,21 +161,21 @@ public class EventBus case HEALTH: if (event instanceof RenderGameOverlayEvent.Pre) { - if (TimerUtils.drawHealth(event.getMatrixStack(), event.getPartialTicks())) + if (TimerUtils.drawHealth(event.getPartialTicks())) { event.setCanceled(true); } } else if (event instanceof RenderGameOverlayEvent.Post) { - event.getMatrixStack().pop(); + RenderSystem.popMatrix(); resetAlpha(); } break; case FOOD: if (event instanceof RenderGameOverlayEvent.Pre) { - if (TimerUtils.drawHunger(event.getMatrixStack(), event.getPartialTicks())) + if (TimerUtils.drawHunger(event.getPartialTicks())) { event.setCanceled(true); } @@ -192,14 +185,14 @@ public class EventBus */ else if (event instanceof RenderGameOverlayEvent.Post) { - event.getMatrixStack().pop(); + RenderSystem.popMatrix(); resetAlpha(); } break; case ARMOR: if (event instanceof RenderGameOverlayEvent.Pre) { - if (TimerUtils.drawArmor(event.getMatrixStack(), event.getPartialTicks())) + if (TimerUtils.drawArmor(event.getPartialTicks())) { event.setCanceled(true); } @@ -209,14 +202,14 @@ public class EventBus */ else if (event instanceof RenderGameOverlayEvent.Post) { - event.getMatrixStack().pop(); + RenderSystem.popMatrix(); resetAlpha(); } break; case AIR: if (event instanceof RenderGameOverlayEvent.Pre) { - if (TimerUtils.drawAir(event.getMatrixStack(), event.getPartialTicks())) + if (TimerUtils.drawAir(event.getPartialTicks())) { event.setCanceled(true); } @@ -226,21 +219,21 @@ public class EventBus */ else if (event instanceof RenderGameOverlayEvent.Post) { - event.getMatrixStack().pop(); + RenderSystem.popMatrix(); resetAlpha(); } break; case HEALTHMOUNT: if (event instanceof RenderGameOverlayEvent.Pre) { - if (TimerUtils.drawMountHealth(event.getMatrixStack(), event.getPartialTicks())) + if (TimerUtils.drawMountHealth(event.getPartialTicks())) { event.setCanceled(true); } } else if (event instanceof RenderGameOverlayEvent.Post) { - event.getMatrixStack().pop(); + RenderSystem.popMatrix(); resetAlpha(); } break; @@ -250,8 +243,10 @@ public class EventBus event.setCanceled(true); if (!TimerUtils.drawJumpbar(event.getPartialTicks())) { - RenderUtils.renderHorseJumpBar(mc, mc.ingameGUI, - event.getMatrixStack(), event.getPartialTicks(), TimerUtils.jumpTime); + RenderUtils.renderHorseJumpBar(mc, + mc.ingameGUI, + event.getPartialTicks(), + TimerUtils.jumpTime); } } break; @@ -261,8 +256,10 @@ public class EventBus event.setCanceled(true); if (!TimerUtils.drawExperience(event.getPartialTicks())) { - RenderUtils.renderExperience(mc, mc.ingameGUI, - event.getMatrixStack(), event.getPartialTicks(), TimerUtils.experienceTime); + RenderUtils.renderExperience(mc, + mc.ingameGUI, + event.getPartialTicks(), + TimerUtils.experienceTime); } } break; diff --git a/src/main/java/markil3/immersive_hud/Main.java b/src/main/java/markil3/immersive_hud/Main.java index b6ed0bd..42c33f0 100644 --- a/src/main/java/markil3/immersive_hud/Main.java +++ b/src/main/java/markil3/immersive_hud/Main.java @@ -17,11 +17,8 @@ */ package markil3.immersive_hud; -import net.minecraft.util.text.TranslationTextComponent; import net.minecraftforge.fml.ExtensionPoint; -import net.minecraftforge.fml.ModList; import net.minecraftforge.fml.ModLoadingContext; -import net.minecraftforge.fml.VersionChecker; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; @@ -56,7 +53,7 @@ public class Main { if (Class.forName("me.shedaniel.clothconfig2.api.ConfigBuilder") != null) { - ModMenu.setupScreen(); +// ModMenu.setupScreen(); } } catch (ClassNotFoundException e) diff --git a/src/main/java/markil3/immersive_hud/ModMenu.java b/src/main/java/markil3/immersive_hud/ModMenu.java deleted file mode 100644 index a5090e7..0000000 --- a/src/main/java/markil3/immersive_hud/ModMenu.java +++ /dev/null @@ -1,176 +0,0 @@ -package markil3.immersive_hud; - -import net.minecraft.util.text.TranslationTextComponent; -import net.minecraftforge.fml.ExtensionPoint; -import net.minecraftforge.fml.ModLoadingContext; - -import me.shedaniel.clothconfig2.api.ConfigBuilder; -import me.shedaniel.clothconfig2.api.ConfigCategory; -import me.shedaniel.clothconfig2.api.ConfigEntryBuilder; -import me.shedaniel.clothconfig2.gui.entries.DoubleListEntry; - -import static markil3.immersive_hud.Main.TICKS_PER_SECOND; - -public class ModMenu -{ - - static void startTimeField(ConfigEntryBuilder entryBuilder, - ConfigCategory cat, - ConfigManager.TimeValues value) - { - final float SHOW_TIME = 6; - final float FADE_IN = 0.25F; - final float FADE_OUT = 0.5F; - - DoubleListEntry maxTime = - entryBuilder.startDoubleField(new TranslationTextComponent( - "option.immersive_hud." + value.getName() + - "MaxTime"), - (float) value.getMaxTime() / TICKS_PER_SECOND) - .setDefaultValue(SHOW_TIME) - .setMin(0) - .setMax(10 * 60 * TICKS_PER_SECOND) // 10 Minutes - .setTooltip(new TranslationTextComponent( - "tooltip.immersive_hud." + value.getName() + - "MaxTime")) - .setSaveConsumer(val -> value.setMaxTime((int) (val * TICKS_PER_SECOND))) - .build(); - - DoubleListEntry fadeIn = - entryBuilder.startDoubleField(new TranslationTextComponent( - "option.immersive_hud." + value.getName() + - "FadeIn"), - (float) value.getFadeInTime() / TICKS_PER_SECOND) - .setDefaultValue(FADE_IN).setMin(0).setMax(10 * 60 * TICKS_PER_SECOND) - .setTooltip(new TranslationTextComponent( - "tooltip.immersive_hud." + value.getName() + - "FadeIn")) - .setSaveConsumer(val -> value.setFadeInTime((int) (val * TICKS_PER_SECOND))) - .build(); - - DoubleListEntry fadeOut = - entryBuilder.startDoubleField(new TranslationTextComponent( - "option.immersive_hud." + value.getName() + - "FadeOut"), - (float) value.getFadeOutTime() / TICKS_PER_SECOND) - .setDefaultValue(FADE_OUT) - .setMin(0) - .setMax(10 * 60 * TICKS_PER_SECOND) - .setTooltip(new TranslationTextComponent( - "tooltip.immersive_hud." + value.getName() + - "FadeOut")) - .setSaveConsumer(val -> value.setFadeOutTime((int) (val * TICKS_PER_SECOND))) - .build(); - - cat.addEntry(maxTime); - cat.addEntry(fadeIn); - cat.addEntry(fadeOut); - } - - static void setupScreen() - { - ModLoadingContext.get() - .registerExtensionPoint(ExtensionPoint.CONFIGGUIFACTORY, - () -> (mc, screen) -> { - ConfigCategory general; - ConfigEntryBuilder entryBuilder; - final ConfigBuilder builder = ConfigBuilder.create() - .setParentScreen(screen) - .setTitle(new TranslationTextComponent( - "immersive_hud.configGui.title")) - .setSavingRunnable(() -> { - ConfigManager.getInstance().save(); - }); - general = - builder.getOrCreateCategory(new TranslationTextComponent( - "category.immersive_hud.general")); - entryBuilder = builder.entryBuilder(); - - startTimeField(entryBuilder, - general, - ConfigManager.getInstance() - .getHotbarTime()); - startTimeField(entryBuilder, - general, - ConfigManager.getInstance() - .getExperenceTime()); - startTimeField(entryBuilder, - general, - ConfigManager.getInstance().getJumpTime()); - startTimeField(entryBuilder, - general, - ConfigManager.getInstance() - .getHealthTime()); - startTimeField(entryBuilder, - general, - ConfigManager.getInstance() - .getHungerTime()); - startTimeField(entryBuilder, - general, - ConfigManager.getInstance() - .getPotionTime()); - - general.addEntry(entryBuilder.startDoubleField(new TranslationTextComponent( - "option.immersive_hud" + - ".crosshairTime"), - (float) ConfigManager.getInstance() - .getCrosshairTime() / TICKS_PER_SECOND) - .setDefaultValue(6) - .setTooltip(new TranslationTextComponent( - "tooltip.immersive_hud" + - ".crosshairTime")) - .setSaveConsumer(val -> ConfigManager.getInstance() - .setCrosshairTime((int) (val * TICKS_PER_SECOND))) - .build()); - - general.addEntry(entryBuilder.startDoubleField(new TranslationTextComponent( - "option.immersive_hud.handTime"), - (float) ConfigManager.getInstance() - .getHandTime() / TICKS_PER_SECOND) - .setDefaultValue(30) - .setTooltip(new TranslationTextComponent( - "tooltip.immersive_hud.handTime")) - .setSaveConsumer(val -> ConfigManager.getInstance() - .setHandTime((int) (val * TICKS_PER_SECOND))) - .build()); - - general.addEntry(entryBuilder.startDoubleField(new TranslationTextComponent( - "option.immersive_hud.minHealth"), - ConfigManager.getInstance() - .getMinHealth()) - .setDefaultValue(0.5) - .setTooltip(new TranslationTextComponent( - "tooltip.immersive_hud.minHealth")) - .setSaveConsumer(val -> ConfigManager.getInstance() - .setMinHealth( - val)) - .build()); - - general.addEntry(entryBuilder.startIntField(new TranslationTextComponent( - "option.immersive_hud.minHunger"), - ConfigManager.getInstance() - .getMinHunger()) - .setDefaultValue(17) - .setTooltip(new TranslationTextComponent( - "tooltip.immersive_hud.minHunger")) - .setSaveConsumer(val -> ConfigManager.getInstance() - .setMinHunger( - val)) - .build()); - - general.addEntry(entryBuilder.startBooleanToggle(new TranslationTextComponent( - "option.immersive_hud.showArmor"), - ConfigManager.getInstance() - .shouldShowArmor()) - .setDefaultValue(true) - .setTooltip(new TranslationTextComponent( - "tooltip.immersive_hud.showArmor")) - .setSaveConsumer(val -> ConfigManager.getInstance() - .shouldShowArmor( - val)) - .build()); - - return builder.build(); - }); - } -} diff --git a/src/main/java/markil3/immersive_hud/RenderUtils.java b/src/main/java/markil3/immersive_hud/RenderUtils.java index 66ec060..45bdfb6 100644 --- a/src/main/java/markil3/immersive_hud/RenderUtils.java +++ b/src/main/java/markil3/immersive_hud/RenderUtils.java @@ -17,6 +17,7 @@ package markil3.immersive_hud; import com.google.common.collect.Lists; import com.google.common.collect.Ordering; import com.mojang.blaze3d.matrix.MatrixStack; +import com.mojang.blaze3d.platform.GlStateManager; import com.mojang.blaze3d.systems.RenderSystem; import net.minecraft.client.Minecraft; @@ -38,7 +39,9 @@ import net.minecraft.crash.CrashReportCategory; import net.minecraft.crash.ReportedException; import net.minecraft.entity.LivingEntity; import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; import net.minecraft.potion.Effect; import net.minecraft.potion.EffectInstance; import net.minecraft.util.HandSide; @@ -62,10 +65,10 @@ public class RenderUtils { public static void renderPotionIcons(Minecraft mc, IngameGui gui, - MatrixStack matrixStack, float ticks) + float ticks) { - int scaledWidth = mc.getMainWindow().getScaledWidth(); - int scaledHeight = mc.getMainWindow().getScaledHeight(); + int scaledWidth = mc.func_228018_at_().getScaledWidth(); + int scaledHeight = mc.func_228018_at_().getScaledHeight(); Collection collection = mc.player.getActivePotionEffects(); @@ -86,7 +89,9 @@ public class RenderUtils .sortedCopy(collection)) { Effect effect = effectinstance.getPotion(); - float effectAlpha = TimerUtils.getPotionAlpha(mc.player, effectinstance, ticks); + float effectAlpha = TimerUtils.getPotionAlpha(mc.player, + effectinstance, + ticks); if (!effectinstance.shouldRenderHUD() || effectAlpha < 0.01F) { continue; @@ -118,11 +123,11 @@ public class RenderUtils RenderSystem.color4f(1.0F, 1.0F, 1.0F, effectAlpha); if (effectinstance.isAmbient()) { - gui.blit(matrixStack, k, l, 165, 166, 24, 24); + gui.blit(k, l, 165, 166, 24, 24); } else { - gui.blit(matrixStack, k, l, 141, 166, 24, 24); + gui.blit(k, l, 141, 166, 24, 24); } TextureAtlasSprite textureatlassprite = @@ -132,11 +137,10 @@ public class RenderUtils float f1 = effectAlpha; list.add(() -> { mc.getTextureManager() - .bindTexture(textureatlassprite.getAtlasTexture() - .getTextureLocation()); + .bindTexture(textureatlassprite.func_229241_m_() + .func_229223_g_()); RenderSystem.color4f(1.0F, 1.0F, 1.0F, f1); - gui.blit(matrixStack, - j1 + 3, + gui.blit(j1 + 3, k1 + 3, gui.getBlitOffset(), 18, @@ -144,7 +148,6 @@ public class RenderUtils textureatlassprite); }); effectinstance.renderHUDEffect(gui, - matrixStack, k, l, gui.getBlitOffset(), @@ -161,7 +164,6 @@ public class RenderUtils * * @param mc - A Minecraft instance. * @param gui - The GUI. - * @param matrixStack - The rendering transformation matrix stack. * @param ticks * @param renderTime - How much time before this element becomes fully * transparent. @@ -170,18 +172,21 @@ public class RenderUtils */ public static void renderHorseJumpBar(Minecraft mc, IngameGui gui, - MatrixStack matrixStack, float ticks, double renderTime) { - ConfigManager.TimeValues jump = ConfigManager.getInstance().getJumpTime(); + ConfigManager.TimeValues jump = + ConfigManager.getInstance().getJumpTime(); if (renderTime <= 0) { return; } - float alpha = Main.getAlpha(renderTime, jump.getMaxTime(), jump.getFadeInTime(), jump.getFadeOutTime()); - int scaledWidth = mc.getMainWindow().getScaledWidth(); - int scaledHeight = mc.getMainWindow().getScaledHeight(); + float alpha = Main.getAlpha(renderTime, + jump.getMaxTime(), + jump.getFadeInTime(), + jump.getFadeOutTime()); + int scaledWidth = mc.func_228018_at_().getScaledWidth(); + int scaledHeight = mc.func_228018_at_().getScaledHeight(); int xPosition = scaledWidth / 2 - 91; mc.getProfiler().startSection("jumpBar"); @@ -192,10 +197,10 @@ public class RenderUtils int i = 182; int j = (int) (f * 183.0F); int k = scaledHeight - TimerUtils.getJumpTranslation(); - gui.blit(matrixStack, xPosition, k, 0, 84, 182, 5); + gui.blit(xPosition, k, 0, 84, 182, 5); if (j > 0) { - gui.blit(matrixStack, xPosition, k, 0, 89, j, 5); + gui.blit(xPosition, k, 0, 89, j, 5); } RenderSystem.color4f(1.0F, 1.0F, 1.0F, 1.0F); @@ -208,7 +213,6 @@ public class RenderUtils * * @param mc - A Minecraft instance. * @param gui - The GUI. - * @param matrixStack - The rendering transformation matrix stack. * @param ticks * @param renderTime - How much time before this element becomes fully * transparent. @@ -217,23 +221,27 @@ public class RenderUtils */ public static void renderExperience(Minecraft mc, IngameGui gui, - MatrixStack matrixStack, float ticks, double renderTime) { - ConfigManager.TimeValues experience = ConfigManager.getInstance().getHealthTime(); - ConfigManager.TimeValues hotbar = ConfigManager.getInstance().getHotbarTime(); + ConfigManager.TimeValues experience = + ConfigManager.getInstance().getHealthTime(); + ConfigManager.TimeValues hotbar = + ConfigManager.getInstance().getHotbarTime(); if (renderTime <= 0) { return; } - float alpha = Main.getAlpha(renderTime, experience.getMaxTime(), experience.getFadeInTime(), experience.getFadeOutTime()); + float alpha = Main.getAlpha(renderTime, + experience.getMaxTime(), + experience.getFadeInTime(), + experience.getFadeOutTime()); RenderSystem.color4f(1.0F, 1.0F, 1.0F, alpha); if (mc.playerController.gameIsSurvivalOrAdventure()) { - int scaledWidth = mc.getMainWindow().getScaledWidth(); - int scaledHeight = mc.getMainWindow().getScaledHeight(); + int scaledWidth = mc.func_228018_at_().getScaledWidth(); + int scaledHeight = mc.func_228018_at_().getScaledHeight(); int x = scaledWidth / 2 - 91; mc.getProfiler().startSection("expBar"); @@ -245,10 +253,10 @@ public class RenderUtils int j = 182; int k = (int) (mc.player.experience * 183.0F); int l = scaledHeight - TimerUtils.getExperienceTranslation(); - gui.blit(matrixStack, x, l, 0, 64, 182, 5); + gui.blit(x, l, 0, 64, 182, 5); if (k > 0) { - gui.blit(matrixStack, x, l, 0, 69, k, 5); + gui.blit(x, l, 0, 69, k, 5); } } @@ -261,34 +269,33 @@ public class RenderUtils String s = "" + mc.player.experienceLevel; int i1 = (scaledWidth - gui.getFontRenderer() .getStringWidth(s)) / 2; - int j1 = scaledHeight - (int) ((22F * Main.getAlpha(TimerUtils.hotbarTime, hotbar.getMaxTime(), hotbar.getFadeInTime(), hotbar.getFadeOutTime()) + 9F) * alpha) - (int) (4F * alpha); + int j1 = + scaledHeight - (int) ((22F * Main.getAlpha(TimerUtils.hotbarTime, + hotbar.getMaxTime(), + hotbar.getFadeInTime(), + hotbar.getFadeOutTime()) + 9F) * alpha) - (int) (4F * alpha); gui.getFontRenderer() - .drawString(matrixStack, - s, + .drawString(s, (float) (i1 + 1), (float) j1, 0); gui.getFontRenderer() - .drawString(matrixStack, - s, + .drawString(s, (float) (i1 - 1), (float) j1, 0); gui.getFontRenderer() - .drawString(matrixStack, - s, + .drawString(s, (float) i1, (float) (j1 + 1), 0); gui.getFontRenderer() - .drawString(matrixStack, - s, + .drawString(s, (float) i1, (float) (j1 - 1), 0); gui.getFontRenderer() - .drawString(matrixStack, - s, + .drawString(s, (float) i1, (float) j1, 8453920); @@ -305,20 +312,19 @@ public class RenderUtils * * @param mc - A Minecraft instance. * @param gui - The GUI. - * @param matrixStack - The rendering transformation matrix stack. * @param partialTicks * @param renderTime - How much time before this element becomes fully * transparent. * - * @see IngameGui#renderHotbar(float, MatrixStack) + * @see IngameGui#renderHotbar(float) */ public static void renderHotbar(Minecraft mc, IngameGui gui, - MatrixStack matrixStack, float partialTicks, double renderTime) { - ConfigManager.TimeValues hotbar = ConfigManager.getInstance().getHotbarTime(); + ConfigManager.TimeValues hotbar = + ConfigManager.getInstance().getHotbarTime(); final ResourceLocation WIDGETS_TEX_PATH = new ResourceLocation("textures/gui/widgets.png"); PlayerEntity playerentity = mc.player; @@ -328,10 +334,13 @@ public class RenderUtils return; } - float alpha = Main.getAlpha(renderTime, hotbar.getMaxTime(), hotbar.getFadeInTime(), hotbar.getFadeOutTime()); + float alpha = Main.getAlpha(renderTime, + hotbar.getMaxTime(), + hotbar.getFadeInTime(), + hotbar.getFadeOutTime()); - int scaledWidth = mc.getMainWindow().getScaledWidth(); - int scaledHeight = mc.getMainWindow().getScaledHeight(); + int scaledWidth = mc.func_228018_at_().getScaledWidth(); + int scaledHeight = mc.func_228018_at_().getScaledHeight(); if (playerentity != null) { RenderSystem.color4f(1.0F, 1.0F, 1.0F, alpha); @@ -343,9 +352,13 @@ public class RenderUtils int k = 182; int l = 91; gui.setBlitOffset(-90); - gui.blit(matrixStack, i - 91, scaledHeight - TimerUtils.getHotbarTranslation(), 0, 0, 182, 22); - gui.blit(matrixStack, - i - 91 - 1 + playerentity.inventory.currentItem * 20, + gui.blit(i - 91, + scaledHeight - TimerUtils.getHotbarTranslation(), + 0, + 0, + 182, + 22); + gui.blit(i - 91 - 1 + playerentity.inventory.currentItem * 20, scaledHeight - (int) (22F * alpha) - 1, 0, 22, @@ -355,8 +368,7 @@ public class RenderUtils { if (handside == HandSide.LEFT) { - gui.blit(matrixStack, - i - 91 - 29, + gui.blit(i - 91 - 29, scaledHeight - (int) (23F * alpha), 24, 22, @@ -365,8 +377,7 @@ public class RenderUtils } else { - gui.blit(matrixStack, - i + 91, + gui.blit(i + 91, scaledHeight - (int) (23F * alpha), 53, 22, @@ -428,9 +439,8 @@ public class RenderUtils .bindTexture(AbstractGui.GUI_ICONS_LOCATION); int l1 = (int) (f * 19.0F); RenderSystem.color4f(1.0F, 1.0F, 1.0F, alpha); - gui.blit(matrixStack, k2, j2, 0, 94, 18, 18); - gui.blit(matrixStack, - k2, + gui.blit(k2, j2, 0, 94, 18, 18); + gui.blit(k2, j2 + 18 - l1, 18, 112 - l1, @@ -463,132 +473,79 @@ public class RenderUtils PlayerEntity player, ItemStack stack) { - if (!stack.isEmpty()) - { - float f = (float) stack.getAnimationsToGo() - partialTicks; - RenderSystem.pushMatrix(); + if (!stack.isEmpty()) { RenderSystem.color4f(1.0F, 1.0F, 1.0F, alpha); - if (f > 0.0F) - { + float f = (float)stack.getAnimationsToGo() - partialTicks; + if (f > 0.0F) { RenderSystem.pushMatrix(); float f1 = 1.0F + f / 5.0F; - RenderSystem.translatef((float) (x + 8), - (float) (y + 12), - 0.0F); + RenderSystem.translatef((float)(x + 8), (float)(y + 12), 0.0F); RenderSystem.scalef(1.0F / f1, (f1 + 1.0F) / 2.0F, 1.0F); - RenderSystem.translatef((float) (-(x + 8)), - (float) (-(y + 12)), - 0.0F); + RenderSystem.translatef((float)(-(x + 8)), (float)(-(y + 12)), 0.0F); } - renderItemAndEffectIntoGUI(mc, alpha, player, stack, x, y); - if (f > 0.0F) - { + renderItemAndEffectIntoGUI(mc, player, stack, x, y, alpha); + if (f > 0.0F) { RenderSystem.popMatrix(); } - RenderSystem.popMatrix(); - mc.getItemRenderer() - .renderItemOverlays(mc.fontRenderer, stack, x, y); + mc.getItemRenderer().renderItemOverlays(mc.fontRenderer, stack, x, y); } } - /** - * Renders a single item on the HUD. - * - * @param mc - A Minecraft instance. - * @param alpha - How transparent the item should be, on a scale from 0 to - * 1. - * @param ent - The player that the item is from. - * @param stack - The item to render. - * @param x - The x position of the item on the screen. - * @param y - The y position of the item on the screen - * - * @see net.minecraft.client.renderer.ItemRenderer#renderItemIntoGUI(LivingEntity, - * ItemStack, int, int) - */ - static void renderItemAndEffectIntoGUI(Minecraft mc, - float alpha, - PlayerEntity ent, - ItemStack stack, - int x, - int y) + private static void renderItemAndEffectIntoGUI(Minecraft mc, LivingEntity entityIn, ItemStack itemIn, int x, int y, float alpha) { - TextureManager textureManager = mc.textureManager; - IBakedModel bakedmodel = mc.getItemRenderer() - .getItemModelWithOverrides(stack, - (World) null, - (LivingEntity) null); - if (!stack.isEmpty()) - { - try - { + if (!itemIn.isEmpty()) { + float zLevel = 50.0F; + + try { + IBakedModel bakedmodel = mc.getItemRenderer().getItemModelWithOverrides(itemIn, (World)null, entityIn); RenderSystem.pushMatrix(); - textureManager.bindTexture(AtlasTexture.LOCATION_BLOCKS_TEXTURE); - textureManager.getTexture(AtlasTexture.LOCATION_BLOCKS_TEXTURE) - .setBlurMipmapDirect(false, false); + mc.getTextureManager().bindTexture(AtlasTexture.LOCATION_BLOCKS_TEXTURE); + mc.getTextureManager().func_229267_b_(AtlasTexture.LOCATION_BLOCKS_TEXTURE).setBlurMipmapDirect(false, false); RenderSystem.enableRescaleNormal(); -// RenderSystem.enableAlphaTest(); -// RenderSystem.defaultAlphaFunc(); -// RenderSystem.enableBlend(); -// RenderSystem.blendFunc(GlStateManager.SourceFactor -// .SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA); - RenderSystem.color4f(1.0F, 1.0F, 1.0F, alpha); - RenderSystem.translatef((float) x, (float) y, 100.0F + 50F); + RenderSystem.enableAlphaTest(); + RenderSystem.defaultAlphaFunc(); + RenderSystem.enableBlend(); + RenderSystem.blendFunc(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA); + RenderSystem.color4f(1.0F, 1.0F, 1.0F, 1.0F); + RenderSystem.translatef((float)x, (float)y, 100.0F + zLevel); RenderSystem.translatef(8.0F, 8.0F, 0.0F); RenderSystem.scalef(1.0F, -1.0F, 1.0F); RenderSystem.scalef(16.0F, 16.0F, 16.0F); MatrixStack matrixstack = new MatrixStack(); - IRenderTypeBuffer.Impl irendertypebuffer$impl = - Minecraft.getInstance() - .getRenderTypeBuffers() - .getBufferSource(); - boolean flag = !bakedmodel.isSideLit(); - if (flag) - { - RenderHelper.setupGuiFlatDiffuseLighting(); + IRenderTypeBuffer.Impl irendertypebuffer$impl = Minecraft.getInstance().func_228019_au_().func_228487_b_(); + Item item = itemIn.getItem(); + boolean flag = !bakedmodel.isGui3d() || item == Items.SHIELD || item == Items.TRIDENT; + if (flag) { + RenderHelper.func_227783_c_(); } - mc.getItemRenderer() - .renderItem(stack, - ItemCameraTransforms.TransformType.GUI, - false, - matrixstack, - irendertypebuffer$impl, - 15728880, - OverlayTexture.NO_OVERLAY, - bakedmodel); - irendertypebuffer$impl.finish(); + mc.getItemRenderer().func_229111_a_(itemIn, ItemCameraTransforms.TransformType.GUI, false, matrixstack, irendertypebuffer$impl, 15728880, OverlayTexture.field_229196_a_, bakedmodel); + irendertypebuffer$impl.func_228461_a_(); RenderSystem.enableDepthTest(); - if (flag) - { - RenderHelper.setupGui3DDiffuseLighting(); + if (flag) { + RenderHelper.func_227784_d_(); } -// RenderSystem.disableAlphaTest(); + RenderSystem.disableAlphaTest(); RenderSystem.disableRescaleNormal(); RenderSystem.popMatrix(); - } - catch (Throwable throwable) - { - CrashReport crashreport = CrashReport.makeCrashReport(throwable, - "Rendering item"); - CrashReportCategory crashreportcategory = - crashreport.makeCategory("Item being rendered"); + } catch (Throwable throwable) { + CrashReport crashreport = CrashReport.makeCrashReport(throwable, "Rendering item"); + CrashReportCategory crashreportcategory = crashreport.makeCategory("Item being rendered"); crashreportcategory.addDetail("Item Type", () -> { - return String.valueOf((Object) stack.getItem()); + return String.valueOf((Object)itemIn.getItem()); }); - crashreportcategory.addDetail("Registry Name", - () -> String.valueOf(stack.getItem() - .getRegistryName())); + crashreportcategory.addDetail("Registry Name", () -> String.valueOf(itemIn.getItem().getRegistryName())); crashreportcategory.addDetail("Item Damage", () -> { - return String.valueOf(stack.getDamage()); + return String.valueOf(itemIn.getDamage()); }); crashreportcategory.addDetail("Item NBT", () -> { - return String.valueOf((Object) stack.getTag()); + return String.valueOf((Object)itemIn.getTag()); }); crashreportcategory.addDetail("Item Foil", () -> { - return String.valueOf(stack.hasEffect()); + return String.valueOf(itemIn.hasEffect()); }); throw new ReportedException(crashreport); } diff --git a/src/main/java/markil3/immersive_hud/TimerUtils.java b/src/main/java/markil3/immersive_hud/TimerUtils.java index b246eee..5f737ec 100644 --- a/src/main/java/markil3/immersive_hud/TimerUtils.java +++ b/src/main/java/markil3/immersive_hud/TimerUtils.java @@ -305,9 +305,8 @@ public class TimerUtils /* * Undo the transformation of the previous hand */ - matrixStack - .translate(0, - 1.0F * (HAND_UP_TIME - mainHandTime) / HAND_UP_TIME, + matrixStack.func_227862_a_(0, + (float) (1.0F * (HAND_UP_TIME - mainHandTime) / HAND_UP_TIME), 0); } if (offHandTime == 0 && !offHandLock) @@ -323,8 +322,8 @@ public class TimerUtils if (offHandTime < HAND_UP_TIME) { matrixStack - .translate(0, - -1.0F * (HAND_UP_TIME - offHandTime) / HAND_UP_TIME, + .func_227862_a_(0, + (float) (-1.0F * (HAND_UP_TIME - offHandTime) / HAND_UP_TIME), 0); } } @@ -343,8 +342,8 @@ public class TimerUtils if (mainHandTime < HAND_UP_TIME) { matrixStack - .translate(0, - -1.0F * (HAND_UP_TIME - mainHandTime) / HAND_UP_TIME, + .func_227862_a_(0, + (float) (-1.0F * (HAND_UP_TIME - mainHandTime) / HAND_UP_TIME), 0); } } @@ -717,7 +716,7 @@ public class TimerUtils * * @since 0.2-1.16.4-forge */ - public static boolean drawHealth(MatrixStack stack, float ticks) + public static boolean drawHealth(float ticks) { /* * When the health percentage falls to this level or below, the @@ -762,8 +761,8 @@ public class TimerUtils { if (healthTime > 0) { - stack.push(); - stack.translate(0F, + RenderSystem.pushMatrix(); + RenderSystem.translatef(0F, getHealthTranslation(), 0F); setAlpha(Main.getAlpha(healthTime, @@ -774,8 +773,8 @@ public class TimerUtils } return true; } - stack.push(); - stack.translate(0F, + RenderSystem.pushMatrix(); + RenderSystem.translatef(0F, getHealthTranslation(), 0F); return false; @@ -789,7 +788,7 @@ public class TimerUtils * * @since 0.2-1.16.4-forge */ - public static boolean drawHunger(MatrixStack stack, float ticks) + public static boolean drawHunger(float ticks) { /* * When hunger falls to this level or below, the hunger bar won't @@ -836,16 +835,16 @@ public class TimerUtils hungerTimes.getMaxTime(), hungerTimes.getFadeInTime(), hungerTimes.getFadeOutTime())); - stack.push(); - stack.translate(0F, + RenderSystem.pushMatrix(); + RenderSystem.translatef(0F, getHealthTranslation(), 0F); return false; } return true; } - stack.push(); - stack.translate(0F, + RenderSystem.pushMatrix(); + RenderSystem.translatef(0F, getHealthTranslation(), 0F); return false; @@ -855,14 +854,13 @@ public class TimerUtils * Determines whether or not to draw the armor bar, adjusting the alpha as * needed. * - * @param stack * @param ticks * * @return If true, then cancel drawing the armor bar. * * @since 0.2-1.16.4-forge */ - public static boolean drawArmor(MatrixStack stack, float ticks) + public static boolean drawArmor(float ticks) { ConfigManager.TimeValues healthTimes; /* @@ -875,8 +873,8 @@ public class TimerUtils healthTimes.getMaxTime(), healthTimes.getFadeInTime(), healthTimes.getFadeOutTime())); - stack.push(); - stack.translate(0F, + RenderSystem.pushMatrix(); + RenderSystem.translatef(0F, getHealthTranslation(), 0F); return false; @@ -887,17 +885,16 @@ public class TimerUtils /** * Repositions the oxygen bar. * - * @param stack * @param ticks * * @return If true, then cancel drawing the oxygen bar. * * @since 0.2-1.16.4-forge */ - public static boolean drawAir(MatrixStack stack, float ticks) + public static boolean drawAir(float ticks) { - stack.push(); - stack.translate(0F, + RenderSystem.pushMatrix(); + RenderSystem.translatef(0F, getHealthTranslation(), 0F); return false; @@ -907,14 +904,13 @@ public class TimerUtils * Determines whether or not to draw the mount's health, adjusting the alpha * as needed. * - * @param stack * @param ticks * * @return If true, then cancel drawing the mount health bar. * * @since 0.2-1.16.4-forge */ - public static boolean drawMountHealth(MatrixStack stack, float ticks) + public static boolean drawMountHealth(float ticks) { /* * When the health percentage falls to this level or below, the @@ -969,8 +965,8 @@ public class TimerUtils { if (mountTime > 0) { - stack.push(); - stack.translate(0F, + RenderSystem.pushMatrix(); + RenderSystem.translatef(0F, getHealthTranslation(), 0F); setAlpha(Main.getAlpha(mountTime, @@ -981,8 +977,8 @@ public class TimerUtils } return true; } - stack.push(); - stack.translate(0F, + RenderSystem.pushMatrix(); + RenderSystem.translatef(0F, getHealthTranslation(), 0F); return false; diff --git a/src/main/resources/META-INF/mods.toml b/src/main/resources/META-INF/mods.toml index 7776780..b018a9d 100644 --- a/src/main/resources/META-INF/mods.toml +++ b/src/main/resources/META-INF/mods.toml @@ -6,7 +6,7 @@ # The name of the mod loader type to load - for regular FML @Mod mods it should be javafml modLoader="javafml" #mandatory # A version range to match for said mod loader - for regular FML @Mod it will be the forge version -loaderVersion="[35,)" #mandatory This is typically bumped every Minecraft version by Forge. See our download page for lists of versions. +loaderVersion="[28,)" #mandatory This is typically bumped every Minecraft version by Forge. See our download page for lists of versions. # The license for you mod. This is mandatory metadata and allows for easier comprehension of your redistributive properties. # Review your options at https://choosealicense.com/. All rights reserved is the default copyright stance, and is thus the default here. license="GPL-3.0-only" @@ -57,7 +57,7 @@ The following elements will only show up under certain conditions: # Does this dependency have to exist - if not, ordering below must be specified mandatory=true #mandatory # The version range of the dependency - versionRange="[35,)" #mandatory + versionRange="[28,)" #mandatory # An ordering relationship for the dependency - BEFORE or AFTER required if the relationship is not mandatory ordering="NONE" # Side this dependency is applied on - BOTH, CLIENT or SERVER @@ -79,6 +79,6 @@ The following elements will only show up under certain conditions: modId="minecraft" mandatory=true # This version range declares a minimum of the current minecraft version up to but not including the next major version - versionRange="[1.16.4,1.17)" + versionRange="[1.15,1.16)" ordering="NONE" side="CLIENT" diff --git a/src/main/resources/pack.mcmeta b/src/main/resources/pack.mcmeta index a193f0b..d156003 100644 --- a/src/main/resources/pack.mcmeta +++ b/src/main/resources/pack.mcmeta @@ -1,7 +1,7 @@ { "pack": { "description": "immersive_hud resources", - "pack_format": 6, - "_comment": "A pack_format of 6 requires json lang files and some texture changes from 1.16.2. Note: we require v6 pack meta for all mods." + "pack_format": 4, + "_comment": "A pack_format of 4 requires json lang files and some texture changes from 1.16.2. Note: we require v6 pack meta for all mods." } }