diff --git a/src/main/java/org/violetmoon/quark/base/network/QuarkNetwork.java b/src/main/java/org/violetmoon/quark/base/network/QuarkNetwork.java index 20a47e4a9..dab4f9be4 100644 --- a/src/main/java/org/violetmoon/quark/base/network/QuarkNetwork.java +++ b/src/main/java/org/violetmoon/quark/base/network/QuarkNetwork.java @@ -30,7 +30,8 @@ public final class QuarkNetwork { - public static final int PROTOCOL_VERSION = 3; + // bump when you change messages + public static final int PROTOCOL_VERSION = 4; public static void init() { ZetaNetworkHandler network = Quark.ZETA.createNetworkHandler(PROTOCOL_VERSION); diff --git a/src/main/java/org/violetmoon/quark/content/experimental/module/VariantSelectorModule.java b/src/main/java/org/violetmoon/quark/content/experimental/module/VariantSelectorModule.java index 2626df918..07aaeaf7a 100644 --- a/src/main/java/org/violetmoon/quark/content/experimental/module/VariantSelectorModule.java +++ b/src/main/java/org/violetmoon/quark/content/experimental/module/VariantSelectorModule.java @@ -3,6 +3,8 @@ import java.util.List; import java.util.Objects; +import com.mojang.blaze3d.platform.GlStateManager; +import net.minecraft.client.gui.Gui; import org.jetbrains.annotations.NotNull; import org.lwjgl.glfw.GLFW; import org.lwjgl.opengl.GL11; @@ -97,6 +99,9 @@ public class VariantSelectorModule extends ZetaModule { @Config public static int hudOffsetY = 0; + @Config(description = "When true, selector arrow will render in same style as crosshair") + public static boolean renderLikeCrossHair = true; + @Config public static VariantsConfig variants = new VariantsConfig(); @@ -351,15 +356,19 @@ public void onRender(ZRenderGuiOverlay.Crosshair.Pre event) { int posX = x - offset - width + hudOffsetX; int posY = y + hudOffsetY; - if(!showSimpleHud) { + if( !showSimpleHud) { guiGraphics.renderFakeItem(displayLeft, posX, posY); RenderSystem.enableBlend(); - RenderSystem.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); - RenderSystem.setShader(GameRenderer::getPositionTexShader); - RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 0.75F); - + if(renderLikeCrossHair) { + RenderSystem.blendFuncSeparate(GlStateManager.SourceFactor.ONE_MINUS_DST_COLOR, GlStateManager.DestFactor.ONE_MINUS_SRC_COLOR, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO); + RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1); + }else{ + RenderSystem.defaultBlendFunc(); + RenderSystem.setShaderColor(0.8f, 0.8f, 0.8f, 0.7f); + } guiGraphics.blit(ClientUtil.GENERAL_ICONS, posX + 8, posY, 0, 141, 22, 15, 256, 256); + RenderSystem.defaultBlendFunc(); posX += width * 2; } else { @@ -368,7 +377,6 @@ public void onRender(ZRenderGuiOverlay.Crosshair.Pre event) { if(alignHudToHotbar) { RenderSystem.enableBlend(); RenderSystem.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); - RenderSystem.setShader(GameRenderer::getPositionTexShader); if(enableGreenTint) RenderSystem.setShaderColor(0.5F, 1.0F, 0.5F, 1.0F); else diff --git a/src/main/java/org/violetmoon/quark/content/tweaks/module/LockRotationModule.java b/src/main/java/org/violetmoon/quark/content/tweaks/module/LockRotationModule.java index a51f9f660..33359b31b 100644 --- a/src/main/java/org/violetmoon/quark/content/tweaks/module/LockRotationModule.java +++ b/src/main/java/org/violetmoon/quark/content/tweaks/module/LockRotationModule.java @@ -5,6 +5,7 @@ import java.util.Objects; import java.util.UUID; +import com.mojang.blaze3d.platform.GlStateManager; import org.lwjgl.opengl.GL11; import org.violetmoon.quark.api.IRotationLockable; import org.violetmoon.quark.base.Quark; @@ -16,6 +17,7 @@ import org.violetmoon.zeta.client.event.load.ZKeyMapping; import org.violetmoon.zeta.client.event.play.ZInput; import org.violetmoon.zeta.client.event.play.ZRenderGuiOverlay; +import org.violetmoon.zeta.config.Config; import org.violetmoon.zeta.event.bus.LoadEvent; import org.violetmoon.zeta.event.bus.PlayEvent; import org.violetmoon.zeta.event.load.ZConfigChanged; @@ -59,6 +61,9 @@ public class LockRotationModule extends ZetaModule { private static final HashMap lockProfiles = new HashMap<>(); + @Config(description = "When true, selector arrow will render in same style as crosshair") + public static boolean renderLikeCrossHair = true; + @LoadEvent public final void configChanged(ZConfigChanged event) { lockProfiles.clear(); @@ -254,9 +259,13 @@ public void onHUDRender(ZRenderGuiOverlay.Crosshair.Post event) { GuiGraphics guiGraphics = event.getGuiGraphics(); RenderSystem.enableBlend(); - RenderSystem.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); - RenderSystem.setShader(GameRenderer::getPositionTexShader); - RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 0.5F); + if(renderLikeCrossHair) { + RenderSystem.blendFuncSeparate(GlStateManager.SourceFactor.ONE_MINUS_DST_COLOR, GlStateManager.DestFactor.ONE_MINUS_SRC_COLOR, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO); + RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1); + }else{ + RenderSystem.defaultBlendFunc(); + RenderSystem.setShaderColor(1, 1, 1, 0.5f); + } Window window = event.getWindow(); int x = window.getGuiScaledWidth() / 2 + 20; @@ -266,8 +275,6 @@ public void onHUDRender(ZRenderGuiOverlay.Crosshair.Post event) { if(clientProfile.half > -1) guiGraphics.blit(ClientUtil.GENERAL_ICONS, x + 16, y, clientProfile.half * 16, 79, 16, 16, 256, 256); - RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F); - } } } diff --git a/src/main/resources/assets/quark/textures/gui/general_icons.png b/src/main/resources/assets/quark/textures/gui/general_icons.png index 05687a2c7..65cee3d33 100644 Binary files a/src/main/resources/assets/quark/textures/gui/general_icons.png and b/src/main/resources/assets/quark/textures/gui/general_icons.png differ