Spigot Plugin

StaffBookPlugin

i want a minecraft 1.21.4 paper plugin that adds a command for ops that lets them open a prewriten book the coomand should be /staff and there should be another /staff gui command for ops that lets you edit that book ingame

src/main/java/eu/codexe/staffbook/StaffBookPlugin.java
package eu.codexe.staffbook;

import eu.codexe.staffbook.commands.StaffCommand;
import eu.codexe.staffbook.listeners.BookEditListener;
import eu.codexe.staffbook.listeners.InventoryCloseListener;
import eu.codexe.staffbook.managers.BookManager;
import eu.codexe.staffbook.managers.MessageManager;
import org.bukkit.command.PluginCommand;
import org.bukkit.plugin.java.JavaPlugin;

import java.util.Objects;

public final class StaffBookPlugin extends JavaPlugin {

    private MessageManager messageManager;
    private BookManager bookManager;

    @Override
    public void onEnable() {
        saveDefaultConfig();

        this.messageManager = new MessageManager(this);
        this.bookManager = new BookManager(this, messageManager);
        this.bookManager.load();

        StaffCommand staffCommand = new StaffCommand(this, bookManager, messageManager);

        PluginCommand command = Objects.requireNonNull(getCommand("staff"), "Command 'staff' missing in plugin.yml");
        command.setExecutor(staffCommand);
        command.setTabCompleter(staffCommand);

        getServer().getPluginManager().registerEvents(new BookEditListener(this, bookManager, messageManager), this);
        getServer().getPluginManager().registerEvents(new InventoryCloseListener(this, bookManager, messageManager), this);
    }

    @Override
    public void onDisable() {
        if (bookManager != null) {
            bookManager.save();
        }
    }
}