Search in sources :

Example 16 with MinigamePlayer

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

the class SwapBlockAction method displayMenu.

@Override
public boolean displayMenu(MinigamePlayer player, Menu previous) {
    Menu m = new Menu(3, "Swap Block", player);
    m.addItem(new MenuItemPage("Back", Material.REDSTONE_TORCH_ON, previous), m.getSize() - 9);
    final MinigamePlayer fply = player;
    m.addItem(new MenuItemString("Match Block", Material.COBBLESTONE, new Callback<String>() {

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

        @Override
        public String getValue() {
            return matchType.getFlag();
        }
    }));
    m.addItem(matchData.getMenuItem("Match Block Use Data?", Material.ENDER_PEARL));
    m.addItem(matchDataValue.getMenuItem("Match Block Data Value", Material.EYE_OF_ENDER, 0, 15));
    m.addItem(new MenuItemNewLine());
    m.addItem(new MenuItemString("To Block", Material.STONE, new Callback<String>() {

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

        @Override
        public String getValue() {
            return toType.getFlag();
        }
    }));
    m.addItem(toData.getMenuItem("To Block Use Data?", Material.ENDER_PEARL));
    m.addItem(toDataValue.getMenuItem("To Block Data Value", Material.EYE_OF_ENDER, 0, 15));
    m.addItem(keepAttachment.getMenuItem("Keep Attachment", Material.PISTON_BASE, MinigameUtils.stringToList("When on, and To Block Use Data is off;If the source and target block;types are both blocks that;attach to surfaces, this;attachment will be preserved")));
    m.displayMenu(player);
    return true;
}
Also used : MinigamePlayer(au.com.mineauz.minigames.MinigamePlayer) Callback(au.com.mineauz.minigames.menu.Callback) 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 17 with MinigamePlayer

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

the class SetBlockAction method displayMenu.

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

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

        @Override
        public String getValue() {
            return type.getFlag();
        }
    }));
    m.addItem(usedur.getMenuItem("Use Durability Value", Material.ENDER_PEARL));
    m.addItem(dur.getMenuItem("Durability Value", Material.STONE, 0, 15));
    m.displayMenu(player);
    return true;
}
Also used : MinigamePlayer(au.com.mineauz.minigames.MinigamePlayer) Callback(au.com.mineauz.minigames.menu.Callback) MenuItemPage(au.com.mineauz.minigames.menu.MenuItemPage) Menu(au.com.mineauz.minigames.menu.Menu) MenuItemString(au.com.mineauz.minigames.menu.MenuItemString) MenuItemString(au.com.mineauz.minigames.menu.MenuItemString)

Example 18 with MinigamePlayer

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

the class SetTeamScoreAction method checkScore.

private void checkScore(MinigamePlayer player) {
    if (player.getTeam().getScore() >= player.getMinigame().getMaxScore()) {
        if (player.getMinigame().isTeamGame()) {
            List<MinigamePlayer> w;
            List<MinigamePlayer> l;
            w = new ArrayList<>(player.getTeam().getPlayers());
            l = new ArrayList<>(player.getMinigame().getPlayers().size() - player.getTeam().getPlayers().size());
            for (Team t : TeamsModule.getMinigameModule(player.getMinigame()).getTeams()) {
                if (t != player.getTeam())
                    l.addAll(t.getPlayers());
            }
            Minigames.plugin.pdata.endMinigame(player.getMinigame(), w, l);
        }
    }
}
Also used : MinigamePlayer(au.com.mineauz.minigames.MinigamePlayer) Team(au.com.mineauz.minigames.minigame.Team)

Example 19 with MinigamePlayer

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

the class SetNodeCommand method onCommand.

@Override
public boolean onCommand(CommandSender sender, Minigame minigame, String label, String[] args) {
    if (args != null) {
        MinigamePlayer ply = Minigames.plugin.pdata.getMinigamePlayer((Player) sender);
        RegionModule rmod = RegionModule.getMinigameModule(minigame);
        if (args[0].equalsIgnoreCase("create") && args.length >= 2) {
            if (!rmod.hasNode(args[1])) {
                rmod.addNode(args[1], new Node(args[1], ply.getLocation()));
                sender.sendMessage(ChatColor.GRAY + "Added new node called " + args[1] + " to " + minigame);
            } else
                sender.sendMessage(ChatColor.RED + "A node by the name " + args[1] + " already exists in " + minigame);
            return true;
        } else if (args[0].equalsIgnoreCase("modify")) {
            rmod.displayMenu(ply, null);
            return true;
        } else if (args[0].equalsIgnoreCase("delete") && args.length >= 2) {
            if (rmod.hasNode(args[1])) {
                rmod.removeNode(args[1]);
                sender.sendMessage(ChatColor.GRAY + "Removed a node called " + args[1] + " from " + minigame);
            } else
                sender.sendMessage(ChatColor.RED + "A node by the name " + args[1] + " doesn't exists in " + minigame);
            return true;
        }
    }
    return false;
}
Also used : RegionModule(au.com.mineauz.minigamesregions.RegionModule) MinigamePlayer(au.com.mineauz.minigames.MinigamePlayer) Node(au.com.mineauz.minigamesregions.Node)

Example 20 with MinigamePlayer

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

the class SetRegionCommand method onCommand.

@Override
public boolean onCommand(CommandSender sender, Minigame minigame, String label, String[] args) {
    if (args != null) {
        MinigamePlayer ply = Minigames.plugin.pdata.getMinigamePlayer((Player) sender);
        RegionModule rmod = RegionModule.getMinigameModule(minigame);
        if (args.length == 2) {
            if (args[0].equalsIgnoreCase("select")) {
                Location ploc = ply.getLocation();
                ploc.setY(ploc.getY() - 1);
                if (args[1].equals("1")) {
                    Location p2 = ply.getSelectionPoints()[1];
                    ply.clearSelection();
                    ply.setSelection(ploc, p2);
                    ply.sendMessage(ChatColor.GRAY + "Point 1 selected");
                } else {
                    Location p2 = ply.getSelectionPoints()[0];
                    ply.clearSelection();
                    ply.setSelection(p2, ploc);
                    ply.sendMessage(ChatColor.GRAY + "Point 2 selected");
                }
                return true;
            } else if (args[0].equalsIgnoreCase("create")) {
                if (ply.hasSelection()) {
                    String name = args[1];
                    rmod.addRegion(name, new Region(name, ply.getSelectionPoints()[0], ply.getSelectionPoints()[1]));
                    ply.clearSelection();
                    ply.sendMessage(ChatColor.GRAY + "Created new region for " + minigame.getName(false) + " named " + name);
                } else {
                    ply.sendMessage(ChatColor.RED + "You have not made a selection!");
                }
                return true;
            } else if (args[0].equalsIgnoreCase("delete")) {
                if (rmod.hasRegion(args[1])) {
                    rmod.removeRegion(args[1]);
                    ply.sendMessage(ChatColor.GRAY + "Removed the region named " + args[1] + " from " + minigame.getName(false));
                } else {
                    ply.sendMessage(ChatColor.GRAY + "No region by the name " + args[1] + " was found in " + minigame.getName(false));
                }
                return true;
            }
        } else if (args.length == 1) {
            if (args[0].equalsIgnoreCase("modify")) {
                rmod.displayMenu(ply, null);
                return true;
            }
        }
    }
    return false;
}
Also used : RegionModule(au.com.mineauz.minigamesregions.RegionModule) MinigamePlayer(au.com.mineauz.minigames.MinigamePlayer) Region(au.com.mineauz.minigamesregions.Region) Location(org.bukkit.Location)

Aggregations

MinigamePlayer (au.com.mineauz.minigames.MinigamePlayer)96 Minigame (au.com.mineauz.minigames.minigame.Minigame)32 EventHandler (org.bukkit.event.EventHandler)30 Team (au.com.mineauz.minigames.minigame.Team)22 ArrayList (java.util.ArrayList)22 Menu (au.com.mineauz.minigames.menu.Menu)11 Player (org.bukkit.entity.Player)11 Location (org.bukkit.Location)9 MenuItemPage (au.com.mineauz.minigames.menu.MenuItemPage)7 InteractionInterface (au.com.mineauz.minigames.menu.InteractionInterface)6 MenuItemCustom (au.com.mineauz.minigames.menu.MenuItemCustom)6 MenuItemString (au.com.mineauz.minigames.menu.MenuItemString)6 List (java.util.List)6 Callback (au.com.mineauz.minigames.menu.Callback)5 MenuItemNewLine (au.com.mineauz.minigames.menu.MenuItemNewLine)5 TeamColor (au.com.mineauz.minigames.minigame.TeamColor)5 MinigameTool (au.com.mineauz.minigames.tool.MinigameTool)4 MenuItemBoolean (au.com.mineauz.minigames.menu.MenuItemBoolean)3 MenuItemInteger (au.com.mineauz.minigames.menu.MenuItemInteger)3 CTFFlag (au.com.mineauz.minigames.CTFFlag)2