Menu with animate title

To open the menu, you can provide player and also location if several players shall have access to same menu or tied to specific location the menu.

To open the menu below
new MenuAnimateTitle().menuOpen(final Player player);
new MenuAnimateTitle().menuOpen(final Player player,final Location location);
public class MenuAnimateTitle extends MenuHolder {

    private final MenuButton examplebutton;
    private final MenuButton examplebutton1;
    private final MenuButton examplebutton2;
    private int timer;
    public MenuAnimateTitle() {
        setTitle("timer");
        setMenuSize(45);
        setAnimateTitle(1, () -> {
            boolean b = timer <= 50;
            String titel = "timer: " + timer;
            timer++;
            if (!b) cancelAnimateTitle();
            return titel;
        });
        examplebutton = new MenuButton() {
            @Override
            public void onClickInsideMenu(Player player, Inventory menu, ClickType click, ItemStack clickedItem) {
                //stuff you want to execute here, when clicking on item.
            }
            @Override
            public ItemStack getItem() {
                //Item you want this button return.
                return null;
            }
        };
        examplebutton1 = new MenuButton() {
            @Override
            public void onClickInsideMenu(Player player, Inventory menu, ClickType click, ItemStack clickedItem) {
                //stuff you want to execute here when clicking on item.
            }
            @Override
            public ItemStack getItem() {
                //Item you want this button return.
                return null;
            }
        };
        examplebutton2 = new MenuButton() {
            @Override
            public void onClickInsideMenu(Player player, Inventory menu, ClickType click, ItemStack clickedItem) {
                //stuff you want to execute here, when clicking on item.
            }
            @Override
            public ItemStack getItem() {
                //Item you want this button return.
                return null;
            }
        };
    }
    
    @Override
    public MenuButton getButtonAt(int slot) {
        if (slot == 1) return examplebutton;
        if (slot == 5) return examplebutton1;
        if (slot == 7) return examplebutton2;
        return null;
    }
}

Last updated