Class ItemRegistration
java.lang.Object
ke.ric.api.registration.ItemRegistration
API for registering custom items programmatically.
Usage:
api.items().register(ItemRegistration.builder()
.id("RED_WINE")
.name("Red Wine")
.texture("http://textures.minecraft.net/...")
.edible(true)
.foodValue(4)
.saturation(0.5f)
.consumeSeconds(2.0f)
.animation("DRINK")
.canAlwaysEat(true)
.addEffect(PotionEffectType.LUCK, 600, 0, 1.0f));
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classBuilder for creating custom item definitions. -
Method Summary
Modifier and TypeMethodDescriptionbuilder()Create a new item definition builder.booleanhasIngredientQualifier(String qualifierId) booleanhasIngredientRecognizer(String customItemId) booleanisRegistered(String id) Check if an item ID is already registered.booleanregister(ItemRegistration.ItemDefinitionBuilder definition) Register a custom item definition.voidregisterAll(ItemRegistration.ItemDefinitionBuilder... definitions) Register multiple items at once.registeredIds(String addonId) Return custom item IDs owned by an addon, in registration order.intregisterFromFile(File itemFile, String defaultAddonId) Register addon item definitions from an editable JSON file.voidregisterIngredientQualifier(String addonId, String qualifierId, String canonicalCustomItemId, Predicate<org.bukkit.inventory.ItemStack> matches, Supplier<org.bukkit.inventory.ItemStack> preview) Restrict an existing addon-owned ingredient without creating another item identity.voidregisterIngredientRecognizer(String addonId, String customItemId, Predicate<org.bukkit.inventory.ItemStack> predicate) intunregisterAddon(String addonId) Unregister all item definitions owned by an addon.intunregisterProgrammaticAddon(String addonId) Unregister an addon's API-registered items and their ingredient recognizers before replacing those registrations.voidwithAddonContext(String addonId, Runnable registrations) Run registrations with a default owner for builders that omit addonId.
-
Method Details
-
register
Register a custom item definition.- Parameters:
definition- The item definition to register- Returns:
- true if registered successfully, false if ID already exists
-
registerAll
Register multiple items at once. -
registerFromFile
-
unregisterAddon
Unregister all item definitions owned by an addon. -
unregisterProgrammaticAddon
Unregister an addon's API-registered items and their ingredient recognizers before replacing those registrations. Core-file definitions with the same addon owner and existing physical items remain unchanged. Include this operation in a reload rollback scope when replacing registrations.- Returns:
- the number of programmatic definitions removed
-
registerIngredientRecognizer
-
registerIngredientQualifier
-
hasIngredientQualifier
-
hasIngredientRecognizer
-
isRegistered
Check if an item ID is already registered. -
registeredIds
-
withAddonContext
-
builder
Create a new item definition builder.
-