优化主炮HUD

This commit is contained in:
Atsuihsio 2024-09-12 07:52:07 +08:00
parent 271917eb92
commit 3e0bb525fa
3 changed files with 17 additions and 15 deletions

View file

@ -52,8 +52,13 @@ public class CannonHudOverlay {
int j = Mth.floor(f * f1);
int k = (w - i) / 2;
int l = (h - j) / 2;
if (GLFW.glfwGetMouseButton(Minecraft.getInstance().getWindow().getWindow(), GLFW.GLFW_MOUSE_BUTTON_RIGHT) == GLFW.GLFW_PRESS) {
preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, "textures/screens/cannon/cannon_crosshair.png"), k, l, 0, 0.0F, i, j, i, j);
preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, "textures/screens/cannon/indicator.png"), k + 15.6f * diffY * fovAdjust, l + 20.4f * diffX * fovAdjust, 0, 0.0F, i, j, i, j);
preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, "textures/screens/cannon/indicator.png"), k + 32.2f * diffY * fovAdjust, l + 39.1f * diffX * fovAdjust, 0, 0.0F, i, j, i, j);
} else {
preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, "textures/screens/cannon/cannon_crosshair_notzoom.png"), k, l, 0, 0.0F, i, j, i, j);
preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, "textures/screens/cannon/indicator.png"), k + (float) Math.tan(Mth.clamp(Mth.DEG_TO_RAD * diffY, -1.5, 1.5)) * 230 * fovAdjust, l + (float) Math.tan(Mth.clamp(Mth.DEG_TO_RAD * diffX, -1.5, 1.5)) * 230, 0, 0.0F, i, j, i, j);
}
}
RenderSystem.depthMask(true);
RenderSystem.defaultBlendFunc();
@ -66,7 +71,6 @@ public class CannonHudOverlay {
if (player == null) return false;
return !player.isSpectator()
&& !(player.getMainHandItem().getItem() instanceof GunItem)
&& (player.getVehicle() != null && (player.getVehicle() instanceof ICannonEntity))
&& GLFW.glfwGetMouseButton(Minecraft.getInstance().getWindow().getWindow(), GLFW.GLFW_MOUSE_BUTTON_RIGHT) == GLFW.GLFW_PRESS;
&& (player.getVehicle() != null && (player.getVehicle() instanceof ICannonEntity));
}
}

View file

@ -5,7 +5,6 @@ import com.mojang.blaze3d.systems.RenderSystem;
import net.mcreator.superbwarfare.ModUtils;
import net.mcreator.superbwarfare.entity.ICannonEntity;
import net.mcreator.superbwarfare.init.ModItems;
import net.mcreator.superbwarfare.item.gun.GunItem;
import net.minecraft.client.CameraType;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.GameRenderer;
@ -32,7 +31,7 @@ public class M79UIOverlay {
RenderSystem.setShader(GameRenderer::getPositionTexShader);
RenderSystem.blendFuncSeparate(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO);
RenderSystem.setShaderColor(1, 1, 1, 1);
if (shouldRenderCrossHair(player) || shouldRenderCrossHair2(player)) {
if (shouldRenderCrossHair(player)) {
event.getGuiGraphics().blit(new ResourceLocation(ModUtils.MODID, "textures/screens/rex.png"), w / 2 - 16, h / 2 - 16, 0, 0, 32, 32, 32, 32);
}
RenderSystem.depthMask(true);
@ -49,13 +48,12 @@ public class M79UIOverlay {
&& (Minecraft.getInstance().options.getCameraType() == CameraType.FIRST_PERSON || (player.isPassenger() && player.getVehicle() instanceof ICannonEntity))
&& GLFW.glfwGetMouseButton(Minecraft.getInstance().getWindow().getWindow(), GLFW.GLFW_MOUSE_BUTTON_RIGHT) != GLFW.GLFW_PRESS;
}
private static boolean shouldRenderCrossHair2(Player player) {
if (player == null) return false;
return !player.isSpectator()
&& GLFW.glfwGetMouseButton(Minecraft.getInstance().getWindow().getWindow(), GLFW.GLFW_MOUSE_BUTTON_RIGHT) != GLFW.GLFW_PRESS
&& player.isPassenger()
&& player.getVehicle() instanceof ICannonEntity
&& !(player.getMainHandItem().getItem() instanceof GunItem);
}
// private static boolean shouldRenderCrossHair2(Player player) {
// if (player == null) return false;
// return !player.isSpectator()
// && GLFW.glfwGetMouseButton(Minecraft.getInstance().getWindow().getWindow(), GLFW.GLFW_MOUSE_BUTTON_RIGHT) != GLFW.GLFW_PRESS
// && player.isPassenger()
// && player.getVehicle() instanceof ICannonEntity
// && !(player.getMainHandItem().getItem() instanceof GunItem);
// }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB