cobblemon-cards-fabric-1.0.3.jar
Curse Maven Snippet
What's new
# 📝 Changelog: v1.0.3
> 🚨 **IMPORTANT UPDATE NOTICE: MIGRATION TO ACCESSORIES API** 🚨
> We have officially transitioned from **Trinkets** to the **Accessories** API!
> ⚠️ **BEFORE UPDATING:** It is highly recommended to **unequip your binders** from your current Trinket slots and **make a backup of your world/server** to prevent any potential data loss.
## ✨ New Features & Content
* **Workshop Support:** Added **Gigantamax (G-Max)** and **Regional forms** to the Workshop.
## 🐛 Bug Fixes
* **Mining Speed Bonus Fix:** Fixed an issue where the card mining speed bonus was not working. The attribute operation was changed from `ADD_MULTIPLIED_BASE` (which resulted in `0 * modifier = 0`) to `ADD_VALUE` so the bonus properly applies over the vanilla base value (0) of the `MINING_EFFICIENCY` attribute.
* **"B" Hotkey Crash Resolution (`IndexOutOfBoundsException`):** Fixed a critical client-side crash when opening the binder via the hotkey. Added a unified fallback method `BinderMenu.findActiveBinder(Player)` to ensure that the client and server always open the same active binder following a strict priority order (`Accessories` ➔ `Main Hand` ➔ `Off-hand` ➔ `Inventory`). This resolves the slot count desynchronization (e.g., 48 vs 120) that caused the client to crash.
* **Card Reading & Vanilla Limits:** Fixed the system that reads cards inside binders (used for calculating drop chances and spawn modifiers).
* Cards are now stored and read via the custom `BINDER_CONTENTS` component, successfully **bypassing the vanilla 256-item limit**.
* *Backwards Compatibility:* Implemented a fallback to the old `CONTAINER` component to ensure existing saves continue to work seamlessly.
* Added explicit verbose logging to the server console during card drop chance calculations to facilitate testing phases.
## 🔄 Technical & API Changes
* **Fabric Migration to Accessories API:**
* Completely removed deprecated dependencies on *Trinkets* (`dev.emi:trinkets`) and *Cardinal Components* in favor of the unified **accessories-fabric** dependency via the Wisp Forest Maven.
* The equipment management code (`FabricPlatformHelper.java`) has been entirely rewritten to interact with `AccessoriesCapability` instead of `TrinketsApi`, making the Fabric implementation identical to the NeoForge logic.
* Replaced binder and master album registration with `AccessoriesAPI.registerAccessory` instead of `TrinketsApi.registerTrinket` in `FabricCobblemonCards.java`.
* Replaced the `Trinket` interface with `Accessory` in `FabricBinderItem.java` and `FabricMasterAlbumItem.java`. Updated calculation logic to use `getDynamicModifiers` with `AccessoryAttributeBuilder`.
* **"Belt" Equipment Slot on Fabric:**
* Created the accessory tag file in the common module (`common/…/data/accessories/tags/item/belt.json`) so Fabric knows binders belong in the `belt` slot.
* Removed this file from the NeoForge module (as it is now inherited from the common module) to prevent duplicate file Gradle errors during the build.
This mod has no additional files

