RainbowQuartz is an easy to use plugin for creating custom items.
- Creating custom items
- Editing basic properties of those items (name, lore, item type)
- Creating and editing recipes for those items
- Registering event handlers for custom items with API
- Live updates of pre-existing items on modification
- Registering event handlers in GUI
- Custom enchantments
- API support for registering custom recipe types
RainbowQuartz enables two ways of creating items: by using the API in another plugin or with the in-game GUI.
Kotlin example
val builder = ItemBuilder(NamespacedKey(this, "emerald_pickaxe"))
.setName(Component.text("Emerald pickaxe")
.color(NamedTextColor.GREEN))
.addLore("Lorem ipsum")
.addRecipe(
ShapedRecipe("RRR", " S ", " S ")
.setIngredient('R', Material.EMERALD)
.setIngredient('S', Material.STICK))
RainbowQuartz.itemManager.registerDefault(builder.build())
Java example
ItemBuilder builder = new ItemBuilder(new NamespacedKey(this, "emerald_pickaxe"), Material.DIAMOND_PICKAXE, new ArrayList<>())
.setName(Component.text("Emerald pickaxe")
.color(NamedTextColor.GREEN))
.addLore("Lorem ipsum")
.addRecipe(
new ShapedRecipe("RRR", " S ", " S ")
.setIngredient('R', new Ingredient(Material.EMERALD, null))
.setIngredient('S', new Ingredient(Material.STICK, null)));
RainbowQuartz.Companion.getItemManager().registerDefault(builder.build());
For more examples using the API have a look at the RainbowQuartzExample plugin.
The GUI is the selling feature of RainbowQuartz, allowing for the creation and modfication of custom items all without restarting the server.