diff --git a/src/main/java/net/mcreator/superbwarfare/client/screens/CrossHairOverlay.java b/src/main/java/net/mcreator/superbwarfare/client/screens/CrossHairOverlay.java index 48f2dfe26..0e22eb3e9 100644 --- a/src/main/java/net/mcreator/superbwarfare/client/screens/CrossHairOverlay.java +++ b/src/main/java/net/mcreator/superbwarfare/client/screens/CrossHairOverlay.java @@ -20,7 +20,6 @@ import net.minecraftforge.event.TickEvent; import net.minecraftforge.eventbus.api.EventPriority; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; -import org.lwjgl.glfw.GLFW; import static net.mcreator.superbwarfare.tools.RenderTool.preciseBlit; @@ -53,7 +52,7 @@ public class CrossHairOverlay { if (shouldRenderCrossHair(player) || stack.is(ModItems.MINIGUN.get()) || (stack.is(ModItems.BOCEK.get()) && stack.getOrCreateTag().getBoolean("HoloHidden"))) { preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, "textures/screens/point.png"), w / 2f - 7.5f + moveX, h / 2f - 7.5f + moveY, 0, 0, 16, 16, 16, 16); - if (!player.isSprinting()) { + if (!player.isSprinting() || player.getPersistentData().getDouble("noRun") > 0) { preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, "textures/screens/rexheng.png"), (float) (w / 2f - 13.5f - 2.8f * spread) + moveX, h / 2f - 7.5f + moveY, 0, 0, 16, 16, 16, 16); preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, "textures/screens/rexheng.png"), (float) (w / 2f - 2.5f + 2.8f * spread) + moveX, h / 2f - 7.5f + moveY, 0, 0, 16, 16, 16, 16); preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, "textures/screens/rexshu.png"), w / 2f - 7.5f + moveX, (float) (h / 2f - 2.5f + 2.8f * spread) + moveY, 0, 0, 16, 16, 16, 16); @@ -101,7 +100,7 @@ public class CrossHairOverlay { if (player == null) return false; if (player.isSpectator()) return false; - if (!player.getMainHandItem().is(ModTags.Items.GUN) || GLFW.glfwGetMouseButton(Minecraft.getInstance().getWindow().getWindow(), GLFW.GLFW_MOUSE_BUTTON_RIGHT) == GLFW.GLFW_PRESS) + if (!player.getMainHandItem().is(ModTags.Items.GUN) || ClientEventHandler.zoomTime > 0.8) return false; return !(player.getMainHandItem().getItem() == ModItems.M_79.get() || player.getMainHandItem().getItem() == ModItems.BOCEK.get()) diff --git a/src/main/java/net/mcreator/superbwarfare/client/screens/JavelinHudOverlay.java b/src/main/java/net/mcreator/superbwarfare/client/screens/JavelinHudOverlay.java index 7369aadae..8f239adab 100644 --- a/src/main/java/net/mcreator/superbwarfare/client/screens/JavelinHudOverlay.java +++ b/src/main/java/net/mcreator/superbwarfare/client/screens/JavelinHudOverlay.java @@ -3,6 +3,7 @@ package net.mcreator.superbwarfare.client.screens; import com.mojang.blaze3d.platform.GlStateManager; import com.mojang.blaze3d.systems.RenderSystem; import net.mcreator.superbwarfare.ModUtils; +import net.mcreator.superbwarfare.event.ClientEventHandler; import net.mcreator.superbwarfare.init.ModItems; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.GameRenderer; @@ -18,6 +19,8 @@ import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; import org.lwjgl.glfw.GLFW; +import static net.mcreator.superbwarfare.tools.RenderTool.preciseBlit; + @Mod.EventBusSubscriber(value = Dist.CLIENT) public class JavelinHudOverlay { @@ -39,23 +42,25 @@ public class JavelinHudOverlay { RenderSystem.blendFuncSeparate(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO); RenderSystem.setShaderColor(1, 1, 1, 1); float deltaFrame = Minecraft.getInstance().getDeltaFrameTime(); - scopeScale = Mth.lerp(0.5F * deltaFrame, scopeScale, 1.35F); + float moveX = (float) (-32 * ClientEventHandler.turnRot[1] - (player.isSprinting() ? 100 : 67) * ClientEventHandler.movePosX + 3 * ClientEventHandler.cameraRot[2]); + float moveY = (float) (-32 * ClientEventHandler.turnRot[0] + 100 * (float)ClientEventHandler.velocityY - (player.isSprinting() ? 100 : 67) * ClientEventHandler.movePosY - 12 * ClientEventHandler.firePos + 3 * ClientEventHandler.cameraRot[1]); + scopeScale = (float) Mth.lerp(0.5F * deltaFrame, scopeScale, 1.35F + (0.2f * ClientEventHandler.firePos)); float f = (float)Math.min(w, h); float f1 = Math.min((float)w / f, (float)h / f) * scopeScale; - int i = Mth.floor(f * f1); - int j = Mth.floor(f * f1); - int k = (w - i) / 2; - int l = (h - j) / 2; - int i1 = k + i; - int j1 = l + j; - event.getGuiGraphics().blit(new ResourceLocation(ModUtils.MODID, "textures/screens/javelin/javelin_hud.png"), k, l, -90, 0.0F, 0.0F, i, j, i, j); - event.getGuiGraphics().blit(new ResourceLocation(ModUtils.MODID, stack.getOrCreateTag().getBoolean("TopMode") ? "textures/screens/javelin/top.png" : "textures/screens/javelin/dir.png"), k, l, -90, 0.0F, 0.0F, i, j, i, j); - event.getGuiGraphics().blit(new ResourceLocation(ModUtils.MODID, stack.getOrCreateTag().getInt("ammo") > 0 ? "textures/screens/javelin/missile_green.png" : "textures/screens/javelin/missile_red.png"), k, l, -90, 0.0F, 0.0F, i, j, i, j); + float i = Mth.floor(f * f1); + float j = Mth.floor(f * f1); + float k = ((w - i) / 2) + moveX; + float l = ((h - j) / 2) + moveY; + float i1 = k + i; + float j1 = l + j; + preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, "textures/screens/javelin/javelin_hud.png"), k, l, 0, 0.0F, i, j, i, j); + preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, stack.getOrCreateTag().getBoolean("TopMode") ? "textures/screens/javelin/top.png" : "textures/screens/javelin/dir.png"), k, l, 0, 0.0F, i, j, i, j); + preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, stack.getOrCreateTag().getInt("ammo") > 0 ? "textures/screens/javelin/missile_green.png" : "textures/screens/javelin/missile_red.png"), k, l, 0, 0.0F, i, j, i, j); if (stack.getOrCreateTag().getInt("SeekTime") > 1 && stack.getOrCreateTag().getInt("SeekTime") < 20) { - event.getGuiGraphics().blit(new ResourceLocation(ModUtils.MODID, "textures/screens/javelin/seek.png"), k, l, -90, 0.0F, 0.0F, i, j, i, j); + preciseBlit(event.getGuiGraphics(), new ResourceLocation(ModUtils.MODID, "textures/screens/javelin/seek.png"), k, l, 0, 0.0F, i, j, i, j); } - event.getGuiGraphics().fill(RenderType.guiOverlay(), 0, l, k, j1, -90, -16777216); - event.getGuiGraphics().fill(RenderType.guiOverlay(), i1, l, w, j1, -90, -16777216); + event.getGuiGraphics().fill(RenderType.guiOverlay(), 0, (int) l, (int) k + 3, (int) j1, -90, -16777216); + event.getGuiGraphics().fill(RenderType.guiOverlay(), (int) i1, (int) l, w, (int) j1, -90, -16777216); RenderSystem.depthMask(true); RenderSystem.defaultBlendFunc(); RenderSystem.enableDepthTest(); diff --git a/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java b/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java index 39c6beb82..fddc2f2f7 100644 --- a/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java +++ b/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java @@ -154,7 +154,6 @@ public class ShootMessage { playGunSounds(player); stack.getOrCreateTag().putBoolean("shoot", true); - } } }