BetterP2P
9 merged pull requests.
Changes
- #38 Adds lang keys item.advanced_memory_card.name.gui and gui.advanced_memory_card.p2p_status.type (Type: %s - %s). GuiAdvancedMemoryCard and InfoWrapper use I18n.format instead of a hardcoded string. - @Ranzuu
- Added: lang keys for memory card GUI title and type label
Bug Fixes
- #47 Registered PartP2PSound as a tunnel in CommonProxy and ClientProxy (with icon) in Proxy.kt, which fixes the NullPointerException on selection. - @GreatBrandon
- Fixed: client crash when selecting a sound P2P with an advanced memory card
- Closes GTNH#27004
- #46 ServerRenameP2PTunnel in C2SRenameP2P.kt now checks that partTunnel.input is not null before using it on an output tunnel, and otherwise falls back to the tunnel itself. - @Angry3vilbot
- Fixed: NullPointerException when renaming an output P2P without an input
- Closes GTNH#26494
- #45 Added ScheduledThreadPoolExecutor restoration in BetterP2P on server startup and fixed ModNetwork shutdown logic to allow re-initialization. - @mllfjn
- Added: executor restoration on server start
- Fixed: crash when changing lists in Advanced Memory Card (issue #25307), missing thread pool restoration after server stop
- Closes GTNH#25307
- #44 ClientCache gains overlayDimension, set in GuiAdvancedMemoryCard.refreshOverlay. RenderHandler only renders the selected and linked outlines when overlayDimension matches the player's dimension. The selected position is also cleared when its dimension differs. - @Kogepan229
- Fixed: advanced memory card rendering P2P outlines across dimensions
- Closes GTNH#25385
- #43 Updated BetterP2P to use ColorUtils instead of GuiColors following AE2 Unofficial refactor; updated dependencies and build configuration. - @MassAnarchyy
- Removed: GuiColors dependency, addon.gradle customizations
- Fixed: NoClassDefFoundError with GuiColors (issue #1382)
- #41 GridServerCache replaces the superclass.superclass == PartP2PTunnel and superclass == PartP2PTunnelStatic comparisons with isAssignableFrom checks. - @hiroscho
- Fixed: P2P tunnel subclasses not detected by class hierarchy depth
- #40 GridServerCache.kt checks for PartP2PTunnelStatic with isAssignableFrom instead of a direct superclass comparison. It handles the inventory consume and give-back for both conversion directions, and drops excess items at the player's position instead of the unavailable serverPos. - @hiroscho
- Fixed: converting to static P2P did not return the replaced P2P, converting to normal P2P did not consume a P2P, P2P drops only given when inventory full, drops placed at unavailable server position
- #39 GridServerCache.kt drops its own frequency generation, unbinding and interface-copy code (about 114 lines) and links through memory card data. dependencies.gradle bumps AE2-Unofficial to rv3-beta-716-GTNH and AE2FluidCraft-Rework to 1.5.6-gtnh, and settings.gradle bumps the settings convention to 1.0.44. - @hiroscho
- Removed: duplicate P2P linking code
- Fixed: P2P binding issues
Contributors
Everyone who authored, reviewed or co-authored a change on this page, with how many of them:
@Dream-Master (3), @hiroscho (3), @lc-1337 (3), @Angry3vilbot (2), @Kogepan229 (2), @Ranzuu (2), @Algent (1), @Azusfin (1), @GreatBrandon (1), @MassAnarchyy (1), @Miklebe (1), @mllfjn (1), @Nikolay-Sitnikov (1), @wlhlm (1), @Worive (1)