Search in sources :

Example 31 with Menu

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

the class HierarchyRewardScheme method showRewardsMenu.

private void showRewardsMenu(TreeMap<T, Rewards> rewards, MinigamePlayer player, Menu parent) {
    Menu submenu = new Menu(6, "Rewards", player);
    for (T key : rewards.keySet()) {
        submenu.addItem(new MenuItemRewardPair(rewards, key, Material.CHEST));
    }
    submenu.addItem(new MenuItemAddReward(rewards, "Add Reward Set", Material.ITEM_FRAME), submenu.getSize() - 2);
    submenu.addItem(new MenuItemBack(parent), submenu.getSize() - 1);
    submenu.setPreviousPage(parent);
    submenu.displayMenu(player);
}
Also used : MenuItemBack(au.com.mineauz.minigames.menu.MenuItemBack) Menu(au.com.mineauz.minigames.menu.Menu)

Example 32 with Menu

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

the class CTFModule method displayMechanicSettings.

@Override
public boolean displayMechanicSettings(Menu previous) {
    Menu m = new Menu(6, "CTF Settings", previous.getViewer());
    m.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, previous), m.getSize() - 9);
    m.addItem(useFlagAsCapturePoint.getMenuItem("CTF Flag is Capture Point", Material.BANNER, MinigameUtils.stringToList("Use a teams Flag as a capture point")));
    m.displayMenu(previous.getViewer());
    return true;
}
Also used : MenuItemPage(au.com.mineauz.minigames.menu.MenuItemPage) Menu(au.com.mineauz.minigames.menu.Menu)

Example 33 with Menu

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

the class TeamPlayerCountCondition method displayMenu.

@Override
public boolean displayMenu(MinigamePlayer player, Menu prev) {
    Menu m = new Menu(3, "Player Count", player);
    m.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, prev), m.getSize() - 9);
    m.addItem(min.getMenuItem("Min Player Count", Material.STEP, 1, null));
    m.addItem(max.getMenuItem("Max Player Count", Material.STONE, 1, null));
    addInvertMenuItem(m);
    m.displayMenu(player);
    return true;
}
Also used : MenuItemPage(au.com.mineauz.minigames.menu.MenuItemPage) Menu(au.com.mineauz.minigames.menu.Menu)

Example 34 with Menu

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

the class TeamScoreRangeCondition method displayMenu.

@Override
public boolean displayMenu(MinigamePlayer player, Menu prev) {
    Menu m = new Menu(3, "Team Score Range", player);
    m.addItem(min.getMenuItem("Minimum Score", Material.STEP, 0, null));
    m.addItem(max.getMenuItem("Maximum Score", Material.STONE, 0, null));
    List<String> teams = new ArrayList<String>();
    for (TeamColor t : TeamColor.values()) teams.add(MinigameUtils.capitalize(t.toString().replace("_", " ")));
    m.addItem(new MenuItemList("Team Color", Material.WOOL, new Callback<String>() {

        @Override
        public void setValue(String value) {
            team.setFlag(value.toUpperCase().replace(" ", "_"));
        }

        @Override
        public String getValue() {
            return MinigameUtils.capitalize(team.getFlag().replace("_", " "));
        }
    }, teams));
    m.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, prev), m.getSize() - 9);
    addInvertMenuItem(m);
    m.displayMenu(player);
    return true;
}
Also used : Callback(au.com.mineauz.minigames.menu.Callback) MenuItemList(au.com.mineauz.minigames.menu.MenuItemList) MenuItemPage(au.com.mineauz.minigames.menu.MenuItemPage) ArrayList(java.util.ArrayList) TeamColor(au.com.mineauz.minigames.minigame.TeamColor) Menu(au.com.mineauz.minigames.menu.Menu)

Example 35 with Menu

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

the class MenuItemActionAdd method onClick.

@Override
public ItemStack onClick() {
    Menu m = new Menu(6, "Actions", getContainer().getViewer());
    m.setPreviousPage(getContainer());
    Map<String, Menu> cats = new HashMap<>();
    List<String> acts = new ArrayList<>(Actions.getAllActionNames());
    Collections.sort(acts);
    for (String act : acts) {
        if ((Actions.getActionByName(act).useInNodes() && exec != null) || (Actions.getActionByName(act).useInRegions() && exec != null)) {
            String catname = Actions.getActionByName(act).getCategory();
            if (catname == null)
                catname = "misc actions";
            catname = catname.toLowerCase();
            Menu cat;
            if (!cats.containsKey(catname)) {
                cat = new Menu(6, MinigameUtils.capitalize(catname), getContainer().getViewer());
                cats.put(catname, cat);
                m.addItem(new MenuItemPage(MinigameUtils.capitalize(catname), Material.CHEST, cat));
                cat.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, m), cat.getSize() - 9);
            } else
                cat = cats.get(catname);
            MenuItemCustom c = new MenuItemCustom(MinigameUtils.capitalize(act), Material.PAPER);
            final String fact = act;
            c.setClick(new InteractionInterface() {

                @Override
                public Object interact(Object object) {
                    ActionInterface action = Actions.getActionByName(fact);
                    if (exec == null) {
                        exec.addAction(action);
                        getContainer().addItem(new MenuItemAction(MinigameUtils.capitalize(fact), Material.PAPER, exec, action));
                        getContainer().displayMenu(getContainer().getViewer());
                    } else {
                        exec.addAction(action);
                        getContainer().addItem(new MenuItemAction(MinigameUtils.capitalize(fact), Material.PAPER, exec, action));
                        getContainer().displayMenu(getContainer().getViewer());
                    }
                    return null;
                }
            });
            cat.addItem(c);
        }
    }
    m.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, getContainer()), m.getSize() - 9);
    m.displayMenu(getContainer().getViewer());
    return null;
}
Also used : HashMap(java.util.HashMap) MenuItemPage(au.com.mineauz.minigames.menu.MenuItemPage) ArrayList(java.util.ArrayList) MenuItemCustom(au.com.mineauz.minigames.menu.MenuItemCustom) InteractionInterface(au.com.mineauz.minigames.menu.InteractionInterface) ActionInterface(au.com.mineauz.minigamesregions.actions.ActionInterface) 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