Search in sources :

Example 66 with Menu

use of au.com.mineauz.minigames.menu.Menu in project Minigames by AddstarMC.

the class TriggerRegionAction method displayMenu.

@Override
public boolean displayMenu(MinigamePlayer player, Menu previous) {
    Menu m = new Menu(3, "Trigger Node", player);
    m.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, previous), m.getSize() - 9);
    m.addItem(region.getMenuItem("Region Name", Material.EYE_OF_ENDER));
    m.displayMenu(player);
    return true;
}
Also used : MenuItemPage(au.com.mineauz.minigames.menu.MenuItemPage) Menu(au.com.mineauz.minigames.menu.Menu)

Example 67 with Menu

use of au.com.mineauz.minigames.menu.Menu in project Minigames by AddstarMC.

the class MinigameStats method createStatSelectMenu.

/**
	 * Creates a menu that allows you to select a statistic
	 * @param parent The parent menu
	 * @param statCallback The callback to be invoked when the statistic is chosen. Note: only the setValue() method will be called.
	 * @return The menu to display
	 */
public static Menu createStatSelectMenu(final Menu parent, final Callback<MinigameStat> statCallback) {
    final Menu submenu = new Menu(6, "Select Statistic", parent.getViewer());
    for (final MinigameStat stat : getAllStats().values()) {
        MenuItemCustom item = new MenuItemCustom(WordUtils.capitalizeFully(stat.getDisplayName()), Material.BOOK_AND_QUILL);
        item.setClick(new InteractionInterface() {

            @Override
            public Object interact(Object object) {
                statCallback.setValue(stat);
                parent.displayMenu(submenu.getViewer());
                return null;
            }
        });
        submenu.addItem(item);
    }
    submenu.addItem(new MenuItemBack(parent), submenu.getSize() - 9);
    return submenu;
}
Also used : InteractionInterface(au.com.mineauz.minigames.menu.InteractionInterface) MenuItemBack(au.com.mineauz.minigames.menu.MenuItemBack) Menu(au.com.mineauz.minigames.menu.Menu) MenuItemCustom(au.com.mineauz.minigames.menu.MenuItemCustom)

Example 68 with Menu

use of au.com.mineauz.minigames.menu.Menu in project Minigames by AddstarMC.

the class RegionModule method addEditMenuOptions.

@Override
public void addEditMenuOptions(Menu menu) {
    final MenuItemCustom c = new MenuItemCustom("Regions and Nodes", Material.DIAMOND_BLOCK);
    final Menu fmenu = menu;
    c.setClick(new InteractionInterface() {

        @Override
        public Object interact(Object object) {
            displayMenu(c.getContainer().getViewer(), fmenu);
            return null;
        }
    });
    menu.addItem(c);
}
Also used : InteractionInterface(au.com.mineauz.minigames.menu.InteractionInterface) Menu(au.com.mineauz.minigames.menu.Menu) MenuItemCustom(au.com.mineauz.minigames.menu.MenuItemCustom)

Example 69 with Menu

use of au.com.mineauz.minigames.menu.Menu in project Minigames by AddstarMC.

the class SpawnEntityAction method displayMenu.

@Override
public boolean displayMenu(MinigamePlayer player, Menu previous) {
    Menu m = new Menu(3, "Spawn Entity", player);
    m.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, previous), m.getSize() - 9);
    List<String> options = new ArrayList<>();
    for (EntityType type : EntityType.values()) {
        if (type != EntityType.ITEM_FRAME && type != EntityType.LEASH_HITCH && type != EntityType.PLAYER && type != EntityType.COMPLEX_PART && type != EntityType.WEATHER && type != EntityType.LIGHTNING && type != EntityType.PAINTING && type != EntityType.UNKNOWN && type != EntityType.DROPPED_ITEM)
            options.add(MinigameUtils.capitalize(type.toString().replace("_", " ")));
    }
    m.addItem(new MenuItemList("Entity Type", Material.SKULL_ITEM, new Callback<String>() {

        @Override
        public void setValue(String value) {
            type.setFlag(value.toUpperCase().replace(" ", "_"));
            settings.clear();
            addBaseSettings();
        }

        @Override
        public String getValue() {
            return MinigameUtils.capitalize(type.getFlag().replace("_", " "));
        }
    }, options));
    m.addItem(new MenuItemDecimal("X Velocity", Material.ARROW, new Callback<Double>() {

        @Override
        public void setValue(Double value) {
            settings.put("velocityx", value.toString());
        }

        @Override
        public Double getValue() {
            return Double.valueOf(settings.get("velocityx"));
        }
    }, 0.5, 1, null, null));
    m.addItem(new MenuItemDecimal("Y Velocity", Material.ARROW, new Callback<Double>() {

        @Override
        public void setValue(Double value) {
            settings.put("velocityy", value.toString());
        }

        @Override
        public Double getValue() {
            return Double.valueOf(settings.get("velocityy"));
        }
    }, 0.5, 1, null, null));
    m.addItem(new MenuItemDecimal("Z Velocity", Material.ARROW, new Callback<Double>() {

        @Override
        public void setValue(Double value) {
            settings.put("velocityz", value.toString());
        }

        @Override
        public Double getValue() {
            return Double.valueOf(settings.get("velocityz"));
        }
    }, 0.5, 1, null, null));
    m.addItem(new MenuItemNewLine());
    final Menu eSet = new Menu(3, "Settings", player);
    final MenuItemPage backButton = new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, m);
    final MenuItemCustom cus = new MenuItemCustom("Entity Settings", Material.CHEST);
    final MinigamePlayer fply = player;
    cus.setClick(new InteractionInterface() {

        @Override
        public Object interact(Object object) {
            if (type.getFlag().equals("ZOMBIE")) {
                eSet.clearMenu();
                eSet.addItem(backButton, eSet.getSize() - 9);
                livingEntitySettings(eSet);
                eSet.displayMenu(fply);
                return null;
            }
            return cus.getItem();
        }
    });
    m.addItem(cus);
    m.displayMenu(player);
    return true;
}
Also used : MinigamePlayer(au.com.mineauz.minigames.MinigamePlayer) MenuItemPage(au.com.mineauz.minigames.menu.MenuItemPage) ArrayList(java.util.ArrayList) MenuItemNewLine(au.com.mineauz.minigames.menu.MenuItemNewLine) MenuItemString(au.com.mineauz.minigames.menu.MenuItemString) MenuItemCustom(au.com.mineauz.minigames.menu.MenuItemCustom) EntityType(org.bukkit.entity.EntityType) Callback(au.com.mineauz.minigames.menu.Callback) MenuItemList(au.com.mineauz.minigames.menu.MenuItemList) InteractionInterface(au.com.mineauz.minigames.menu.InteractionInterface) Menu(au.com.mineauz.minigames.menu.Menu) MenuItemDecimal(au.com.mineauz.minigames.menu.MenuItemDecimal)

Example 70 with Menu

use of au.com.mineauz.minigames.menu.Menu in project Minigames by AddstarMC.

the class AddScoreAction method displayMenu.

@Override
public boolean displayMenu(MinigamePlayer player, Menu previous) {
    Menu m = new Menu(3, "Add Score", player);
    m.addItem(new MenuItemInteger("Add Score Amount", Material.ENDER_PEARL, new Callback<Integer>() {

        @Override
        public void setValue(Integer value) {
            amount.setFlag(value);
        }

        @Override
        public Integer getValue() {
            return amount.getFlag();
        }
    }, null, null));
    m.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, previous), m.getSize() - 9);
    m.displayMenu(player);
    return true;
}
Also used : MenuItemInteger(au.com.mineauz.minigames.menu.MenuItemInteger) Callback(au.com.mineauz.minigames.menu.Callback) MenuItemInteger(au.com.mineauz.minigames.menu.MenuItemInteger) MenuItemPage(au.com.mineauz.minigames.menu.MenuItemPage) Menu(au.com.mineauz.minigames.menu.Menu)

Aggregations

Menu (au.com.mineauz.minigames.menu.Menu)80 MenuItemPage (au.com.mineauz.minigames.menu.MenuItemPage)55 ArrayList (java.util.ArrayList)26 Callback (au.com.mineauz.minigames.menu.Callback)22 InteractionInterface (au.com.mineauz.minigames.menu.InteractionInterface)17 MenuItemCustom (au.com.mineauz.minigames.menu.MenuItemCustom)17 MenuItemBack (au.com.mineauz.minigames.menu.MenuItemBack)13 MenuItemString (au.com.mineauz.minigames.menu.MenuItemString)13 MenuItem (au.com.mineauz.minigames.menu.MenuItem)12 MenuItemList (au.com.mineauz.minigames.menu.MenuItemList)12 MinigamePlayer (au.com.mineauz.minigames.MinigamePlayer)11 MenuItemNewLine (au.com.mineauz.minigames.menu.MenuItemNewLine)9 MenuItemInteger (au.com.mineauz.minigames.menu.MenuItemInteger)8 TeamColor (au.com.mineauz.minigames.minigame.TeamColor)6 MenuItemBoolean (au.com.mineauz.minigames.menu.MenuItemBoolean)5 MenuItemTime (au.com.mineauz.minigames.menu.MenuItemTime)4 MenuItemDisplayLoadout (au.com.mineauz.minigames.menu.MenuItemDisplayLoadout)3 MenuItemLoadoutAdd (au.com.mineauz.minigames.menu.MenuItemLoadoutAdd)3 MenuItemSaveMinigame (au.com.mineauz.minigames.menu.MenuItemSaveMinigame)3 MenuItemNode (au.com.mineauz.minigamesregions.menuitems.MenuItemNode)3