From 89b712d77ba70d53d7bf35fdb1fef7e5305ecdd1 Mon Sep 17 00:00:00 2001 From: Atsuihsio <842960157@qq.com> Date: Mon, 30 Dec 2024 16:18:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=94=B9=E7=BD=91=E6=A0=BC=E7=BA=BF?= =?UTF-8?q?=E7=9A=84=E6=B8=B2=E6=9F=93=E6=A8=A1=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../client/screens/FuMO25Screen.java | 29 ++++++++++++++----- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/atsuishio/superbwarfare/client/screens/FuMO25Screen.java b/src/main/java/com/atsuishio/superbwarfare/client/screens/FuMO25Screen.java index 546f8f2dd..c792811a2 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/screens/FuMO25Screen.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/screens/FuMO25Screen.java @@ -49,7 +49,13 @@ public class FuMO25Screen extends AbstractContainerScreen { renderScan(pGuiGraphics); // 网格线 - pGuiGraphics.blit(TEXTURE, i + 8, j + 11, 0, 167, 147, 147, 358, 328); + renderXLine(pGuiGraphics, pPartialTick, i, j); + + RenderSystem.disableDepthTest(); + RenderSystem.depthMask(false); + RenderSystem.enableBlend(); + RenderSystem.setShader(GameRenderer::getPositionTexShader); + RenderSystem.blendFuncSeparate(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO); // FE long energy = FuMO25Screen.this.menu.getEnergy(); @@ -57,6 +63,21 @@ public class FuMO25Screen extends AbstractContainerScreen { pGuiGraphics.blit(TEXTURE, i + 278, j + 39, 178, 167, (int) (54 * energyRate), 16, 358, 328); } + private void renderXLine(GuiGraphics guiGraphics, float partialTick, int i, int j) { + var poseStack = guiGraphics.pose(); + poseStack.pushPose(); + + RenderSystem.disableDepthTest(); + RenderSystem.depthMask(false); + RenderSystem.enableBlend(); + RenderSystem.setShader(GameRenderer::getPositionTexShader); + RenderSystem.blendFunc(GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ONE); + + guiGraphics.blit(TEXTURE, i + 8, j + 11, 0, 167, 147, 147, 358, 328); + + poseStack.popPose(); + } + private void renderTargets(GuiGraphics guiGraphics) { var entities = FuMO25ScreenHelper.entities; if (entities == null || entities.isEmpty()) return; @@ -92,12 +113,6 @@ public class FuMO25Screen extends AbstractContainerScreen { var poseStack = guiGraphics.pose(); poseStack.pushPose(); - RenderSystem.disableDepthTest(); - RenderSystem.depthMask(false); - RenderSystem.enableBlend(); - RenderSystem.setShader(GameRenderer::getPositionTexShader); - RenderSystem.blendFuncSeparate(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO); - int i = (this.width - this.imageWidth) / 2; int j = (this.height - this.imageHeight) / 2;