Baubles-Expanded
14 merged pull requests.
New Features
- #32 Added stack limit config to BaublesConfig and BaubleItemHelper. Modified ContainerPlayerExpanded and SlotBauble to enforce configurable per-slot limits. - @Ranzuu
- Added: per-slot stack limit config
- #28 Removed slotLimit restriction in BaubleExpandedSlots and InventoryBaubles. Made column config accept any positive integer. Updated layout logic to handle arbitrary slot counts. - @koolkrafter5
- Added: infinite bauble slot support, unrestricted column config
- Removed: slotLimit constant, newSlotsRemaining field
- #27 Added empty slot texture rendering in GuiPlayerExpanded and SlotBauble. Updated config documentation. - @Ranzuu
- Added: empty slot texture, layout documentation
- #26 Rewrote GuiPlayerExpanded and ContainerPlayerExpanded multi-column rendering logic. Added maxColumns config to BaublesConfig with dynamic column generation. - @FourIsTheNumber
- Added: multi-column bauble layout, maxColumns config
- #22 Modified GuiPlayerExpanded to render slot type tooltips on hover and check item compatibility. Added slot tooltip toggle to BaublesConfig. - @Kynake
- Added: slot type tooltips, item compatibility display, slot tooltip toggle config
- #18 Added debug item hiding logic in
Baubles.javawith conditional visibility based on debug flag. Updated dependencies and settings. - @Ethryan- Added: debug item visibility toggle
Changes
- #43 Adds default IBaubleExpanded.onSlotContentsChanged, called from a new SlotBauble.onSlotChanged override. InventoryBaubles.decrStackSize now nulls the slot before calling onUnequipped. Required by TinkersConstruct PR 335. - @Luca-Guettinger
- Added: onSlotContentsChanged callback for expanded baubles
- Fixed: Bauble counting itself as worn during its unequip callback
Bug Fixes
- #36 PacketSyncAllBauble now writes and reads playerId with a plain 4-byte writeInt/readInt instead of a 4-byte VarInt, which overflowed for large 32-bit IDs. - @Lainiel
- Fixed: client crash when opening baubles with a large player ID
- Closes GTNH#25752
- #33 Added cleanup logic in EventHandlerEntity to remove player references from PlayerHandler on logout. Modified event handlers to prevent holding stale player references. - @Alexdoru
- Added: player cleanup event handler
- Fixed: memory leak from unreleased player references
- #31 GuiPlayerExpanded.isClickInUI now first checks each visible bauble slot's 16x16 area and returns false when the mouse is over one, so the click guard no longer swallows slot clicks. - @Ranzuu
- Fixed: Baubles slot click area misaligned with the slots
- Closes GTNH#23880
- #21 Replaced the per-slot login sync with a single PacketSyncAllBauble sent on login, dimension change and StartTracking. Slot updates now go to tracking players only via PacketHandler.sendToTracking, and EventHandlerCleanup prunes stale player data every 200 ticks on both sides. The network protocol changed, so client and server must run the same Baubles Expanded version. - @Glease
- Added: Single full-sync packet for baubles
- Fixed: Baubles disappearing when another player joins or leaves, New players not receiving existing players' baubles, Terminal bauble keybind stopping working, Wireless Crafting Terminal bug
- Closes GTNH#21682, GTNH#21957, GTNH#24370
- #19 In ContainerPlayerExpanded.transferStackInSlot, the ItemArmor check is now an else-if of the preceding branch, so mergeItemStack is not called twice for the same stack. - @Worive
- Fixed: Double item merge when shift-clicking in the baubles inventory
- #15 In PacketSyncBauble.onMessage, after clearClientPlayerBaubles on slot 0 of the initial sync, the handler re-fetches the inventory with PlayerHandler.getPlayerBaubles so it fills the new inventory instead of the discarded one. - @DarkShadow44
- Fixed: Baubles not working after joining a game
- Closes GTNH#21671
Chores
- #40 NotEnoughItems dependency changed from implementation to devOnlyNonPublishable in dependencies.gradle, so it is not published transitively. - @Nikolay-Sitnikov
- Removed: transitive NEI dependency
Contributors
Everyone who authored, reviewed or co-authored a change on this page, with how many of them:
@Nikolay-Sitnikov (4), @Luca-Guettinger (3), @Ranzuu (3), @DarkShadow44 (2), @Dream-Master (2), @Ethryan (2), @koolkrafter5 (2), @Alexdoru (1), @Algent (1), @boubou19 (1), @Caedis (1), @FourIsTheNumber (1), @Glease (1), @Kynake (1), @Lainiel (1), @sisyphussy (1), @slprime (1), @UltraProdigy (1), @Worive (1)