Intégration API & Addons (MC 26.2)
Ce document détaille les points d'intégration de mods tiers, interactions avec l'API DasikLibrary et requêtes d'amas programmatiques pour Item Clumps sur Minecraft 26.2.
📊 Fiche Technique d'Intégration
| Propriété | Valeur |
|---|---|
| Architecture API | APIs natives Vanilla ItemEntity et ItemStack |
| Protocole de Stockage | Directement ItemStack.getCount() (VarInt / Entier 32-bit) |
| API GameRule | DynamicGameRuleManager (API DasikLibrary) |
| Interfaces de Duck-Typing | Compatible avec interfaces de mods d'aimants et entités d'items |
🔌 Requêtes Programmatiques d'Amas pour Développeurs d'Addons
Parce qu'Item Clumps stocke les quantités directement dans l'ItemStack standard de Minecraft, les développeurs d'addons n'ont pas besoin de façades d'API spécifiques pour lire ou modifier les tailles d'amas :
1. Lecture de la Quantité d'Amas
java
// Standard ItemEntity instance
ItemEntity entity = ...;
// Native vanilla getter returns true mega-count (e.g. 5000)
int trueCount = entity.getItem().getCount();2. Vérification de la Fusionnabilité
java
// Queries Item Clumps customIsMergable logic
boolean canMerge = entity.isMergable();3. Modification Sécurisée des Quantités
java
// When mutating item entity counts, always update the stack object:
ItemStack stack = entity.getItem().copyWithCount(newCount);
entity.setItem(stack); // Triggers custom name tag update automatically!🧲 Hook de Duck-Typing pour Aimants & Vol
Si vous développez un mod d'aimant d'items, télékinésie ou aspiration, vous pouvez empêcher Item Clumps de fusionner prématurément les items en vol en ajoutant l'une des méthodes en typage canard (duck-typing) à votre mixin d'ItemEntity :
java
public boolean ig_magnet$isMagnetized() {
return this.isFlyingTowardsPlayer;
}
// Or legacy alternative:
public boolean ig$isMagnetized() {
return this.isFlyingTowardsPlayer;
}Item Clumps invoque automatiquement cette méthode par réflexion lors des ticks de vérification de fusion.
