Package com.hbm_m.powerarmor
Class ModEventHandlerClient
java.lang.Object
com.hbm_m.powerarmor.ModEventHandlerClient
Клиентский обработчик событий для HBM's Nuclear Tech Modernized
Портировано с 1.7.10 на 1.20.1
Реализует различные клиентские функции:
- HUD элементы и оверлеи
- Визуальные эффекты
- Обработка ввода
- Система подсказок
- Звуковые эффекты
- Рендеринг специальных эффектов
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic booleanstatic final intstatic longstatic final net.minecraftforge.client.gui.overlay.IGuiOverlayОверлей для ядерной вспышки Рисуется поверх прицела для максимальной видимости Оптимизировано - проверка видимости перед рендерингомstatic net.minecraft.client.renderer.texture.TextureAtlasSpritestatic net.minecraft.client.renderer.texture.TextureAtlasSpritestatic net.minecraft.client.renderer.texture.TextureAtlasSpritestatic net.minecraft.client.renderer.texture.TextureAtlasSpritestatic final intstatic longstatic final net.minecraftforge.client.gui.overlay.IGuiOverlayОверлей тепловизора для силовой брони -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidТепловизор - методы управленияstatic voidVATS система - методы управленияstatic voidstatic voidstatic booleanstatic booleanstatic voidonClientTick(net.minecraftforge.event.TickEvent.ClientTickEvent event) Обработка клиентского тика Оптимизировано для производительности - тяжелые проверки выполняются периодическиstatic voidonItemTooltip(net.minecraftforge.event.entity.player.ItemTooltipEvent event) Обработка подсказок предметов Дополняет HazardTooltipHandler дополнительными функциямиstatic voidonRegisterGuiOverlays(net.minecraftforge.client.event.RegisterGuiOverlaysEvent event) Регистрация GUI оверлеевstatic voidonRenderGuiNuclearFlash(net.minecraftforge.client.event.RenderGuiEvent.Post event) Рисует белую вспышку на весь экран через GUI.static voidonRenderGuiPre(net.minecraftforge.client.event.RenderGuiEvent.Pre event) HUD-shake при ядерном взрыве (NukeTorex устанавливает shakeTimestamp).static voidonRenderGuiPreBlockLookOverlays(net.minecraftforge.client.event.RenderGuiEvent.Pre event) Прицельный HUD для блоковILookOverlaystatic voidonRenderItemInFrame(net.minecraftforge.client.event.RenderItemInFrameEvent event) Обработка рендеринга предметов в рамкеstatic voidonRenderThermalOverlay(net.minecraftforge.client.gui.overlay.ForgeGui gui, net.minecraft.client.gui.GuiGraphics guiGraphics, float partialTick, int screenWidth, int screenHeight) Рендерит оверлей тепловизораstatic voidonRenderWorldThermalFallback(net.minecraftforge.client.event.RenderLevelStageEvent event) Дополнительный рендер‑хук для ORIGINAL_FALLBACK: рисуем простые белые боксы вокруг живых сущностей, видимые только для игрока с включённым тепловизором и не сквозь блоки (используем depth‑buffer основного рендера).static voidonScreenInit(net.minecraftforge.client.event.ScreenEvent.Init.Post event) static voidonTitleRenderPre(net.minecraftforge.client.event.ScreenEvent.Render.Pre event) static voidrenderThermalOverlayHud(net.minecraft.client.gui.GuiGraphics guiGraphics, float partialTick, int screenWidth, int screenHeight) Loader-agnostic HUD hook для тепловизора.static voidАктивирует ядерную вспышку Вызывается при ядерном взрыве или подобных событиях
-
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
-