Search in sources :

Example 51 with Menu

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

the class RewardsModule method createSubMenu.

private Menu createSubMenu(final Menu parent) {
    final Menu submenu = new Menu(6, "Reward Settings", parent.getViewer());
    scheme.addMenuItems(submenu);
    submenu.addItem(RewardSchemes.newMenuItem("Reward Scheme", Material.PAPER, new Callback<Class<? extends RewardScheme>>() {

        @Override
        public void setValue(Class<? extends RewardScheme> value) {
            scheme = RewardSchemes.createScheme(value);
            // Update the menu
            Menu menu = createSubMenu(parent);
            menu.displayMenu(submenu.getViewer());
        }

        @Override
        public Class<? extends RewardScheme> getValue() {
            return scheme.getClass();
        }
    }), submenu.getSize() - 1);
    submenu.addItem(new MenuItemBack(parent), submenu.getSize() - 9);
    return submenu;
}
Also used : Callback(au.com.mineauz.minigames.menu.Callback) MenuItemBack(au.com.mineauz.minigames.menu.MenuItemBack) RewardScheme(au.com.mineauz.minigames.minigame.reward.scheme.RewardScheme) StandardRewardScheme(au.com.mineauz.minigames.minigame.reward.scheme.StandardRewardScheme) Menu(au.com.mineauz.minigames.menu.Menu)

Example 52 with Menu

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

the class PlayerFoodRangeCondition method displayMenu.

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

Example 53 with Menu

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

the class PlayerHasItemCondition method displayMenu.

@Override
public boolean displayMenu(MinigamePlayer player, Menu prev) {
    Menu m = new Menu(3, "Player Has Item", player);
    m.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, prev), m.getSize() - 9);
    final MinigamePlayer fply = player;
    m.addItem(new MenuItemString("Item", Material.STONE, new Callback<String>() {

        @Override
        public void setValue(String value) {
            if (Material.getMaterial(value.toUpperCase()) != null)
                type.setFlag(value.toUpperCase());
            else
                fply.sendMessage("Invalid Item!", "error");
        }

        @Override
        public String getValue() {
            return type.getFlag();
        }
    }));
    m.addItem(useData.getMenuItem("Match Item Data", Material.ENDER_PEARL));
    m.addItem(data.getMenuItem("Data Value", Material.EYE_OF_ENDER, 0, null));
    m.addItem(new MenuItemList("Search Where", Material.COMPASS, new Callback<String>() {

        @Override
        public void setValue(String value) {
            where.setFlag(value.toUpperCase());
        }

        @Override
        public String getValue() {
            return WordUtils.capitalizeFully(where.getFlag());
        }
    }, Arrays.asList("Anywhere", "Hotbar", "Main", "Armor", "Slot")));
    m.addItem(slot.getMenuItem("Slot", Material.DIAMOND, 0, 35));
    m.addItem(new MenuItemNewLine());
    m.addItem(matchName.getMenuItem("Match Display Name", Material.NAME_TAG));
    MenuItemString menuItem = (MenuItemString) name.getMenuItem("Display Name", Material.NAME_TAG, MinigameUtils.stringToList("The name to match.;Use % to do a wildcard match"));
    menuItem.setAllowNull(true);
    m.addItem(menuItem);
    m.addItem(matchLore.getMenuItem("Match Lore", Material.BOOK));
    menuItem = (MenuItemString) lore.getMenuItem("Lore", Material.BOOK, MinigameUtils.stringToList("The lore to match. Separate;with semi-colons;for new lines.;Use % to do a wildcard match"));
    menuItem.setAllowNull(true);
    m.addItem(menuItem);
    addInvertMenuItem(m);
    m.displayMenu(player);
    return true;
}
Also used : MinigamePlayer(au.com.mineauz.minigames.MinigamePlayer) Callback(au.com.mineauz.minigames.menu.Callback) MenuItemList(au.com.mineauz.minigames.menu.MenuItemList) MenuItemPage(au.com.mineauz.minigames.menu.MenuItemPage) MenuItemNewLine(au.com.mineauz.minigames.menu.MenuItemNewLine) Menu(au.com.mineauz.minigames.menu.Menu) MenuItemString(au.com.mineauz.minigames.menu.MenuItemString) MenuItemString(au.com.mineauz.minigames.menu.MenuItemString)

Example 54 with Menu

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

the class MatchBlockCondition method displayMenu.

@Override
public boolean displayMenu(MinigamePlayer player, Menu prev) {
    Menu m = new Menu(3, "Match Block", player);
    m.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, prev), m.getSize() - 9);
    final MenuItemCustom c = new MenuItemCustom("Auto Set Block", MinigameUtils.stringToList("Click here with a;block you wish to;match to."), Material.ITEM_FRAME);
    m.addItem(c, m.getSize() - 1);
    final MinigamePlayer ply = m.getViewer();
    final MenuItemString btype = new MenuItemString("Block Type", Material.STONE, new Callback<String>() {

        @Override
        public void setValue(String value) {
            if (Material.matchMaterial(value.toUpperCase()) != null)
                type.setFlag(value.toUpperCase());
            else
                ply.sendMessage("No block found by that name!", "error");
        }

        @Override
        public String getValue() {
            return type.getFlag();
        }
    });
    m.addItem(btype);
    final MenuItemBoolean busedur = (MenuItemBoolean) useDur.getMenuItem("Use Data Values", Material.ENDER_PEARL);
    m.addItem(busedur);
    final MenuItemInteger bdur = (MenuItemInteger) dur.getMenuItem("Data Value", Material.PAPER, 0, 16);
    m.addItem(bdur);
    c.setClickItem(new InteractionInterface() {

        @Override
        public Object interact(Object object) {
            ItemStack i = (ItemStack) object;
            type.setFlag(i.getType().toString());
            useDur.setFlag(true);
            dur.setFlag(((Short) i.getDurability()).intValue());
            bdur.updateDescription();
            busedur.updateDescription();
            btype.updateDescription();
            return c.getItem();
        }
    });
    addInvertMenuItem(m);
    m.displayMenu(player);
    return true;
}
Also used : MinigamePlayer(au.com.mineauz.minigames.MinigamePlayer) MenuItemInteger(au.com.mineauz.minigames.menu.MenuItemInteger) MenuItemPage(au.com.mineauz.minigames.menu.MenuItemPage) MenuItemString(au.com.mineauz.minigames.menu.MenuItemString) MenuItemCustom(au.com.mineauz.minigames.menu.MenuItemCustom) MenuItemString(au.com.mineauz.minigames.menu.MenuItemString) InteractionInterface(au.com.mineauz.minigames.menu.InteractionInterface) MenuItemBoolean(au.com.mineauz.minigames.menu.MenuItemBoolean) Menu(au.com.mineauz.minigames.menu.Menu) ItemStack(org.bukkit.inventory.ItemStack)

Example 55 with Menu

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

the class MatchTeamCondition method displayMenu.

@Override
public boolean displayMenu(MinigamePlayer player, Menu prev) {
    Menu m = new Menu(3, "Match Team", player);
    m.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, prev), m.getSize() - 9);
    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));
    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)

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