Skip to content

Nuclear-Control ​

14 merged pull requests.

New Features ​

  • #35 Added localization keys for GUI titles across all info panel GUIs and thermo displays. Uses i18n lookups instead of hardcoded strings. - @Ranzuu
    • Added: GUI title localization, Optional color code localization for resource packs
  • #34 Modified ClientTickHandler to warn and skip duplicate alarm sound entries, allowing third-party sound contributions to coexist. - @2ndDerivative
    • Added: Support for third-party alarm sounds

Changes ​

  • #44 Halved resolution of all info panel block textures (on/off states) to 16x16 while maintaining visual appearance. - @tiffit
  • #38 Updated gradle configuration, dependencies, and ItemCardAppeng to accommodate Applied Energistics 2 API changes. - @Kogepan229
    • Added: Gradle daemon JVM configuration
    • Fixed: AE2 compilation errors

Bug Fixes ​

  • #49 Modified TileEntityInfoPanelRenderer rendering logic and adjusted TileEntityInfoPanel culling settings to resolve depth fighting and backface culling issues. - @boubou19
    • Fixed: Z-fighting visual artifacts on screen displays, Incorrect culling of panel faces at certain angles
  • #42 Fixed GuiScrollableList.setScissor() to use ScaledResolution.getScaleFactor() instead of gameSettings.guiScale (which is 0 for Auto scale), preventing zero-size scissor rectangles that clipped all toggle buttons. - @dipo33
    • Fixed: Invisible line configuration buttons with Auto GUI scale
    • Closes GTNH#23767
  • #37 Corrected typo in ItemCard55Reactor.java. - @Blubstr
    • Fixed: Typo in ItemCard55Reactor
  • #36 Fixed overflow bug in DisplaySettingHelper.java. - @MeiTianyou
    • Fixed: Integer overflow in DisplaySettingHelper
  • #33 Replaced the string-based panel settings with a BitSet. Removed IPanelAdvDataSource, merging it into IPanelDataSource. GuiScrollableList.initGui() clears functionButtons before rebuilding them, GUI_HEIGHT went from 233 to 236, and the native cards and the display setting helper were updated. - @guid118
    • Added: Javadoc on many methods
    • Removed: IPanelAdvDataSource interface
    • Fixed: Button duplication on window minimize, Settings compatibility
    • Closes GTNH#21154
  • #32 Added side check (@SideOnly) to client-only initialization code in TileEntityAdvancedInfoPanel to prevent execution on server. - @wlhlm
    • Fixed: Server log spam on Advanced Info Panel placement
    • Closes GTNH#20882
  • #30 Corrected click detection bounds in GuiPanelSlope and fixed angle calculation in ModelInfoPanel. - @guid118
    • Fixed: Slope GUI click detection, Slope maximum angle calculation
  • #29 Added facing/rotation data transmission on TileEntity initialization for AverageCounter, EnergyCounter, HowlerAlarm, InfoPanel, InfoPanelExtender, RangeTrigger, and Thermo. - @guid118
    • Fixed: Block desync in multiplayer
    • Closes GTNH#20757

Performance ​

  • #48 Added AngelicaFontBatcher caching, optimized network packet allocations (PacketDataSorterSync, PacketDispSettingsUpdate, PacketSensor, PacketSensorTitle), reduced allocations in TileEntityAdvancedInfoPanel, TileEntityInfoPanel, TileEntityInfoPanelExtender, DataSorter, and Screen rendering paths. Added @Nullable annotation to IPanelDataSource and ItemTimeCard APIs. - @boubou19
    • Added: AngelicaFontBatcher for font rendering cache, dependency on Angelica
  • #47 Removed per-frame object allocations in MainBlockRenderer, TileEntityInfoPanelRenderer, and DataSorter. Optimized CardWrapperImpl and model rendering. Fixed visibility check for unattached advanced panel extenders. - @boubou19
    • Fixed: Invisible advanced panel extenders when unattached, Memory allocations in panel rendering

Contributors ​

Everyone who authored, reviewed or co-authored a change on this page, with how many of them:

@boubou19 (6), @wlhlm (4), @Algent (3), @guid118 (3), @UltraProdigy (3), @Dream-Master (2), @2ndDerivative (1), @Blubstr (1), @chrombread (1), @dipo33 (1), @Glease (1), @Kogepan229 (1), @MeiTianyou (1), @Ranzuu (1), @Ruling-0 (1), @tiffit (1)