Class ModEventHandlerClient

java.lang.Object
com.hbm_m.powerarmor.ModEventHandlerClient

public class ModEventHandlerClient extends Object
Клиентский обработчик событий для HBM's Nuclear Tech Modernized Портировано с 1.7.10 на 1.20.1 Реализует различные клиентские функции: - HUD элементы и оверлеи - Визуальные эффекты - Обработка ввода - Система подсказок - Звуковые эффекты - Рендеринг специальных эффектов
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static boolean
     
    static final int
     
    static long
     
    static final net.minecraftforge.client.gui.overlay.IGuiOverlay
    Оверлей для ядерной вспышки Рисуется поверх прицела для максимальной видимости Оптимизировано - проверка видимости перед рендерингом
    static net.minecraft.client.renderer.texture.TextureAtlasSprite
     
    static net.minecraft.client.renderer.texture.TextureAtlasSprite
     
    static net.minecraft.client.renderer.texture.TextureAtlasSprite
     
    static net.minecraft.client.renderer.texture.TextureAtlasSprite
     
    static final int
     
    static long
     
    static final net.minecraftforge.client.gui.overlay.IGuiOverlay
    Оверлей тепловизора для силовой брони
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    Тепловизор - методы управления
    static void
    VATS система - методы управления
    static void
     
    static void
     
    static boolean
     
    static boolean
     
    static void
    onClientTick(net.minecraftforge.event.TickEvent.ClientTickEvent event)
    Обработка клиентского тика Оптимизировано для производительности - тяжелые проверки выполняются периодически
    static void
    onItemTooltip(net.minecraftforge.event.entity.player.ItemTooltipEvent event)
    Обработка подсказок предметов Дополняет HazardTooltipHandler дополнительными функциями
    static void
    onRegisterGuiOverlays(net.minecraftforge.client.event.RegisterGuiOverlaysEvent event)
    Регистрация GUI оверлеев
    static void
    onRenderGuiNuclearFlash(net.minecraftforge.client.event.RenderGuiEvent.Post event)
    Рисует белую вспышку на весь экран через GUI.
    static void
    onRenderGuiPre(net.minecraftforge.client.event.RenderGuiEvent.Pre event)
    HUD-shake при ядерном взрыве (NukeTorex устанавливает shakeTimestamp).
    static void
    onRenderGuiPreBlockLookOverlays(net.minecraftforge.client.event.RenderGuiEvent.Pre event)
    Прицельный HUD для блоков ILookOverlay
    static void
    onRenderItemInFrame(net.minecraftforge.client.event.RenderItemInFrameEvent event)
    Обработка рендеринга предметов в рамке
    static void
    onRenderThermalOverlay(net.minecraftforge.client.gui.overlay.ForgeGui gui, net.minecraft.client.gui.GuiGraphics guiGraphics, float partialTick, int screenWidth, int screenHeight)
    Рендерит оверлей тепловизора
    static void
    onRenderWorldThermalFallback(net.minecraftforge.client.event.RenderLevelStageEvent event)
    Дополнительный рендер‑хук для ORIGINAL_FALLBACK: рисуем простые белые боксы вокруг живых сущностей, видимые только для игрока с включённым тепловизором и не сквозь блоки (используем depth‑buffer основного рендера).
    static void
    onScreenInit(net.minecraftforge.client.event.ScreenEvent.Init.Post event)
     
    static void
    onTitleRenderPre(net.minecraftforge.client.event.ScreenEvent.Render.Pre event)
     
    static void
    renderThermalOverlayHud(net.minecraft.client.gui.GuiGraphics guiGraphics, float partialTick, int screenWidth, int screenHeight)
    Loader-agnostic HUD hook для тепловизора.
    static void
    Активирует ядерную вспышку Вызывается при ядерном взрыве или подобных событиях

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • FLASH_DURATION

      public static final int FLASH_DURATION
      See Also:
    • flashTimestamp

      public static long flashTimestamp
    • SHAKE_DURATION

      public static final int SHAKE_DURATION
      See Also:
    • shakeTimestamp

      public static long shakeTimestamp
    • ducked

      public static boolean ducked
    • particleBase

      public static net.minecraft.client.renderer.texture.TextureAtlasSprite particleBase
    • particleLeaf

      public static net.minecraft.client.renderer.texture.TextureAtlasSprite particleLeaf
    • particleSplash

      public static net.minecraft.client.renderer.texture.TextureAtlasSprite particleSplash
    • particleAshes

      public static net.minecraft.client.renderer.texture.TextureAtlasSprite particleAshes
    • NUCLEAR_FLASH_OVERLAY

      public static final net.minecraftforge.client.gui.overlay.IGuiOverlay NUCLEAR_FLASH_OVERLAY
      Оверлей для ядерной вспышки Рисуется поверх прицела для максимальной видимости Оптимизировано - проверка видимости перед рендерингом
    • THERMAL_OVERLAY

      public static final net.minecraftforge.client.gui.overlay.IGuiOverlay THERMAL_OVERLAY
      Оверлей тепловизора для силовой брони
  • Constructor Details

    • ModEventHandlerClient

      public ModEventHandlerClient()
  • Method Details

    • onRegisterGuiOverlays

      public static void onRegisterGuiOverlays(net.minecraftforge.client.event.RegisterGuiOverlaysEvent event)
      Регистрация GUI оверлеев
    • onRenderGuiPre

      public static void onRenderGuiPre(net.minecraftforge.client.event.RenderGuiEvent.Pre event)
      HUD-shake при ядерном взрыве (NukeTorex устанавливает shakeTimestamp). В течение SHAKE_DURATION применяет смещение GUI по синусу.
    • onClientTick

      public static void onClientTick(net.minecraftforge.event.TickEvent.ClientTickEvent event)
      Обработка клиентского тика Оптимизировано для производительности - тяжелые проверки выполняются периодически
    • onItemTooltip

      public static void onItemTooltip(net.minecraftforge.event.entity.player.ItemTooltipEvent event)
      Обработка подсказок предметов Дополняет HazardTooltipHandler дополнительными функциями
    • onScreenInit

      public static void onScreenInit(net.minecraftforge.client.event.ScreenEvent.Init.Post event)
    • onTitleRenderPre

      public static void onTitleRenderPre(net.minecraftforge.client.event.ScreenEvent.Render.Pre event)
    • onRenderItemInFrame

      public static void onRenderItemInFrame(net.minecraftforge.client.event.RenderItemInFrameEvent event)
      Обработка рендеринга предметов в рамке
    • onRenderWorldThermalFallback

      public static void onRenderWorldThermalFallback(net.minecraftforge.client.event.RenderLevelStageEvent event)
      Дополнительный рендер‑хук для ORIGINAL_FALLBACK: рисуем простые белые боксы вокруг живых сущностей, видимые только для игрока с включённым тепловизором и не сквозь блоки (используем depth‑buffer основного рендера). Используем тот же паттерн, что и большинство примеров Forge: Stage.AFTER_ENTITIES + translate(-camPos) поверх poseStack, в которой уже учтён поворот камеры.
    • triggerNuclearFlash

      public static void triggerNuclearFlash()
      Активирует ядерную вспышку Вызывается при ядерном взрыве или подобных событиях
    • onRenderGuiNuclearFlash

      public static void onRenderGuiNuclearFlash(net.minecraftforge.client.event.RenderGuiEvent.Post event)
      Рисует белую вспышку на весь экран через GUI.
    • activateVATS

      public static void activateVATS()
      VATS система - методы управления
    • deactivateVATS

      public static void deactivateVATS()
    • isVATSActive

      public static boolean isVATSActive()
    • activateThermal

      public static void activateThermal()
      Тепловизор - методы управления
    • deactivateThermal

      public static void deactivateThermal()
    • isThermalActive

      public static boolean isThermalActive()
    • onRenderThermalOverlay

      public static void onRenderThermalOverlay(net.minecraftforge.client.gui.overlay.ForgeGui gui, net.minecraft.client.gui.GuiGraphics guiGraphics, float partialTick, int screenWidth, int screenHeight)
      Рендерит оверлей тепловизора
    • renderThermalOverlayHud

      public static void renderThermalOverlayHud(net.minecraft.client.gui.GuiGraphics guiGraphics, float partialTick, int screenWidth, int screenHeight)
      Loader-agnostic HUD hook для тепловизора. Forge: вызывается из onRenderThermalOverlay(ForgeGui, GuiGraphics, float, int, int). Fabric: вызывается из ClientSetup.initClient() через HudRenderCallback.
    • onRenderGuiPreBlockLookOverlays

      public static void onRenderGuiPreBlockLookOverlays(net.minecraftforge.client.event.RenderGuiEvent.Pre event)
      Прицельный HUD для блоков ILookOverlay