Skip to content

API de anulación para complementos ​

Resumen ​

Stack Size Adjuster proporciona un mecanismo de extensión mediante StackSizeManager.registerOverride. Los mods y complementos de terceros (como Potion Stacker Addon o Stew Stacker Addon) pueden registrar funciones de anulación para objetos específicos.


🛠️ Firma de registro de la API ​

java
package net.instantgratification.stacksizeadjuster.util;

import net.minecraft.world.item.Item;
import java.util.function.BiFunction;

public class StackSizeManager {
    public static void registerOverride(BiFunction<Item, Integer, Integer> override);
}

Parámetros de función ​

  • Item: La instancia de Item que se está evaluando.
  • Integer: El tamaño de apilamiento natural vanilla del objeto.
  • Integer (Valor devuelto): El límite modificado (o el valor original si no se altera).

💻 Ejemplo de implementación en un addon ​

java
import net.instantgratification.stacksizeadjuster.util.StackSizeManager;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.PotionItem;

public class CustomAddonInitializer implements ModInitializer {
    @Override
    public void onInitialize() {
        StackSizeManager.registerOverride((item, originalSize) -> {
            // Permitir que las pociones se apilen hasta 16
            if (item instanceof PotionItem) {
                return 16;
            }
            // Permitir que las perlas de Ender se apilen hasta 64
            if (item == Items.ENDER_PEARL) {
                return 64;
            }
            // Devolver tamaño original para seguir la regla global
            return originalSize;
        });
    }
}

🔄 Orden de ejecución de anulaciones ​

  1. Si una función de anulación devuelve un valor diferente de originalSize, ese valor se aplica de inmediato.
  2. Si ninguna anulación modifica el objeto, StackSizeManager recurre a las GameRules activas (items_64_limit, items_16_limit o items_1_limit).

Official documentation & web portal for Dasik Igaijinn mods.