MiniBookMiniBook

MiniBook API

##Introducción

La MiniBookAPI proporciona métodos estáticos para interactuar programáticamente con MiniBook. Puedes crear, gestionar y eliminar libros, abrir libros para jugadores y personalizar títulos, autores, permisos y páginas directamente desde tu código sin necesidad de instanciar la API.


##Instalación

Añade el repositorio y la dependencia de MiniBook.

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>

<dependency>
    <groupId>com.github.xDrygo</groupId>
    <artifactId>MiniBook</artifactId>
    <version>1.0.0</version>
    <scope>provided</scope>
</dependency>

Después de añadir la dependencia, agrega MiniBook como dependencia en tu plugin.

name: MyPlugin
main: com.example.MyPlugin.MyPlugin
version: 1.0
depend: # depend si la API es requerida, soft-depend si es opcional
  - MiniBook

##Métodos de MiniBookAPI

Haz clic para expandir
  • ####boolean openBook(String bookId, Player player)

    Abre un libro para un jugador.
boolean opened = MiniBookAPI.openBook("tutorial", player);
if (opened) {
    player.sendMessage("Book opened successfully!");
}
  • ####boolean createBook(String bookId, String title, String author, Boolean premium, String permission, String... pages)

    Crea un nuevo libro y lo guarda en los archivos de configuración.
boolean created = MiniBookAPI.createBook(
    "welcome",
    "Welcome Guide",
    "Server Admin",
    false,
    "minibook.welcome",
    "<gradient:#ff0000:#00ff00>Welcome to our server!</gradient>",
    "<bold>Rules:</bold>\n<gray>1. Be respectful\n2. No griefing</gray>"
);
  • ####boolean deleteBook(String bookId)

    Elimina un libro existente.
boolean deleted = MiniBookAPI.deleteBook("oldGuide");
if (deleted) {
    System.out.println("Book deleted successfully!");
}
  • ####List<BookData> getBooks()

    Obtiene todos los libros cargados como objetos completos (BookData).
List<BookData> allBooks = MiniBookAPI.getBooks();
for (BookData book : allBooks) {
    System.out.println("Book: " + book.getTitle());
}
  • ####List<String> getBookIds()

    Obtiene los IDs de todos los libros cargados.
List<String> ids = MiniBookAPI.getBookIds();
ids.forEach(id -> System.out.println("ID: " + id));
  • ####BookData getBook(String bookId)

    Obtiene los datos de un libro específico.
BookData book = MiniBookAPI.getBook("tutorial");
if (book != null) {
    System.out.println("Title: " + book.getTitle());
    System.out.println("Author: " + book.getAuthor());
}
  • ####ItemStack getBookItem(String bookId)

    Obtiene el ItemStack de un libro específico.
ItemStack bookItem = MiniBookAPI.getBookItem("welcome");
if (bookItem != null) {
    player.getInventory().addItem(bookItem);
}
  • ####boolean bookExists(String bookId)

    Comprueba si un libro existe.
if (MiniBookAPI.bookExists("tutorial")) {
    System.out.println("The tutorial book exists!");
}

##Notas

  • Todos los métodos de la API son estáticos, por lo que no necesitas instanciar MiniBookAPI.
  • La gestión de libros incluye creación, eliminación y obtención de libros.
  • Los libros soportan formato MiniMessage para texto enriquecido y colores.
  • El parámetro premium puede ser null (por defecto es false).
  • El parámetro permission puede ser null (se genera automáticamente un permiso).

##Referencias