Examples of FlagPermissions


Examples of com.bekvon.bukkit.residence.protection.FlagPermissions

    protected int maxRentables;
    protected boolean selectCommandAccess;
    protected boolean itemListAccess;

    public PermissionGroup(String name) {
        flagPerms = new FlagPermissions();
        creatorDefaultFlags = new HashMap<String, Boolean>();
        residenceDefaultFlags = new HashMap<String, Boolean>();
        groupDefaultFlags = new HashMap<String, Map<String, Boolean>>();
        groupname = name;
    }
View Full Code Here

Examples of com.bekvon.bukkit.residence.protection.FlagPermissions

    public PermissionManager(FileConfiguration config) {
        try {
            groups = Collections.synchronizedMap(new HashMap<String, PermissionGroup>());
            playersGroup = Collections.synchronizedMap(new HashMap<String, String>());
            globalFlagPerms = new FlagPermissions();
            this.readConfig(config);
            boolean enable = config.getBoolean("Global.EnablePermissions", true);
            if (enable) {
                this.checkPermissions();
            }
View Full Code Here

Examples of com.bekvon.bukkit.residence.protection.FlagPermissions

            int typeId = player.getItemInHand().getTypeId();
            if (typeId != Residence.getConfigManager().getSelectionTooldID() && typeId != Residence.getConfigManager().getInfoToolID() && typeId != 351) {
                return;
            }
        }
        FlagPermissions perms = Residence.getPermsByLocForPlayer(block.getLocation(), player);
        String world = player.getWorld().getName();
        String permgroup = Residence.getPermissionManager().getGroupNameByPlayer(player);
        boolean resadmin = Residence.isResAdminOn(player);
        if (event.getAction() == Action.PHYSICAL) {
            if (!resadmin) {
                boolean hasuse = perms.playerHas(player.getName(), world, "use", true);
                boolean haspressure = perms.playerHas(player.getName(), world, "pressure", hasuse);
                if ((!hasuse && !haspressure || !haspressure) && (mat == Material.STONE_PLATE || mat == Material.WOOD_PLATE)) {
                    event.setCancelled(true);
                    return;
                }
            }
            if (!perms.playerHas(player.getName(), world, "trample", perms.playerHas(player.getName(), world, "build", true)) && (mat == Material.SOIL || mat == Material.SOUL_SAND)) {
                event.setCancelled(true);
                return;
            }
            return;
        }
        if (!resadmin && !Residence.getItemManager().isAllowed(heldItem, permgroup, world)) {
            player.sendMessage(ChatColor.RED + Residence.getLanguage().getPhrase("ItemBlacklisted"));
            event.setCancelled(true);
            return;
        }
        if (event.getAction() == Action.LEFT_CLICK_BLOCK || event.getAction() == Action.RIGHT_CLICK_BLOCK) {
            if (player.getItemInHand().getTypeId() == Residence.getConfigManager().getSelectionTooldID()) {
                Plugin wep = Bukkit.getPluginManager().getPlugin("WorldEdit");
                if (wep != null) {
                    if (((WorldEditPlugin) wep).getConfig().getInt("wand-item") == Residence.getConfigManager().getSelectionTooldID()) {
                        return;
                    }
                }
                PermissionGroup group = Residence.getPermissionManager().getGroup(player);
                if (player.hasPermission("residence.select") || player.hasPermission("residence.create") && !player.isPermissionSet("residence.select") || group.canCreateResidences() && !player.isPermissionSet("residence.create") && !player.isPermissionSet("residence.select") || resadmin) {
                    if (event.getAction() == Action.LEFT_CLICK_BLOCK) {
                        Location loc = block.getLocation();
                        Residence.getSelectionManager().placeLoc1(player, loc);
                        player.sendMessage(ChatColor.GREEN + Residence.getLanguage().getPhrase("SelectPoint", Residence.getLanguage().getPhrase("Primary")) + ChatColor.RED + "(" + loc.getBlockX() + "," + loc.getBlockY() + "," + loc.getBlockZ() + ")" + ChatColor.GREEN + "!");
                    } else if (event.getAction() == Action.RIGHT_CLICK_BLOCK) {
                        Location loc = block.getLocation();
                        Residence.getSelectionManager().placeLoc2(player, loc);
                        player.sendMessage(ChatColor.GREEN + Residence.getLanguage().getPhrase("SelectPoint", Residence.getLanguage().getPhrase("Secondary")) + ChatColor.RED + "(" + loc.getBlockX() + "," + loc.getBlockY() + "," + loc.getBlockZ() + ")" + ChatColor.GREEN + "!");
                    }
                }
            }
            if (player.getItemInHand().getTypeId() == Residence.getConfigManager().getInfoToolID()) {
                if (event.getAction() == Action.LEFT_CLICK_BLOCK) {
                    Location loc = block.getLocation();
                    String res = Residence.getResidenceManager().getNameByLoc(loc);
                    if (res != null) {
                        Residence.getResidenceManager().printAreaInfo(res, player);
                        event.setCancelled(true);
                    }
                    if (res == null) {
                        event.setCancelled(true);
                        player.sendMessage(Residence.getLanguage().getPhrase("NoResHere"));
                    }
                }
            }
            if (!resadmin) {
                if (player.getItemInHand() != null) {
                    if (event.getAction() == Action.RIGHT_CLICK_BLOCK) {
                        if (player.getItemInHand().getTypeId() == 351) {
                            if (player.getItemInHand().getData().getData() == 15 && block.getType() == Material.GRASS || player.getItemInHand().getData().getData() == 3 && block.getTypeId() == 17 && (block.getData() == 3 || block.getData() == 7 || block.getData() == 11 || block.getData() == 15)) {
                                perms = Residence.getPermsByLocForPlayer(block.getRelative(event.getBlockFace()).getLocation(), player);
                                if (!perms.playerHas(player.getName(), world, "build", true)) {
                                    event.setCancelled(true);
                                    return;
                                }
                                return;
                            }
                        }
                    }
                }
                if (isContainer(mat, block) || isCanUseEntity(mat, block)) {
                    boolean hasuse = perms.playerHas(player.getName(), world, "use", true);
                    for (Entry<Material, String> checkMat : FlagPermissions.getMaterialUseFlagList().entrySet()) {
                        if (mat == checkMat.getKey()) {
                            if (!perms.playerHas(player.getName(), world, checkMat.getValue(), hasuse)) {
                                if (hasuse || checkMat.getValue().equals("container")) {
                                    event.setCancelled(true);
                                    player.sendMessage(ChatColor.RED + Residence.getLanguage().getPhrase("FlagDeny", checkMat.getValue()));
                                    return;
                                } else {
                                    event.setCancelled(true);
                                    player.sendMessage(ChatColor.RED + Residence.getLanguage().getPhrase("FlagDeny", "use"));
                                    return;
                                }
                            }
                        }
                    }
                    if (Residence.getConfigManager().getCustomContainers().contains(Integer.valueOf(block.getTypeId()))) {
                        if (!perms.playerHas(player.getName(), world, "container", hasuse)) {
                            event.setCancelled(true);
                            player.sendMessage(ChatColor.RED + Residence.getLanguage().getPhrase("FlagDeny", "container"));
                            return;
                        }
                    }
View Full Code Here

Examples of com.bekvon.bukkit.residence.protection.FlagPermissions

        }
        Hanging hanging = (Hanging) ent;
        if (hanging.getType() != EntityType.ITEM_FRAME) {
            return;
        }
        FlagPermissions perms = Residence.getPermsByLocForPlayer(ent.getLocation(), player);
        String world = player.getWorld().getName();
        String permgroup = Residence.getPermissionManager().getGroupNameByPlayer(player);
        if (!Residence.getItemManager().isAllowed(heldItem, permgroup, world)) {
            player.sendMessage(ChatColor.RED + Residence.getLanguage().getPhrase("ItemBlacklisted"));
            event.setCancelled(true);
            return;
        }
        if (!perms.playerHas(player.getName(), world, "container", perms.playerHas(player.getName(), world, "use", true))) {
            event.setCancelled(true);
            player.sendMessage(ChatColor.RED + Residence.getLanguage().getPhrase("FlagDeny", "container"));
        }
    }
View Full Code Here

Examples of com.bekvon.bukkit.residence.protection.FlagPermissions

                    event.setCancelled(true);
                    return;
                }
            }
        }
        FlagPermissions perms = Residence.getPermsByLocForPlayer(event.getBlockClicked().getLocation(), player);
        if (!perms.playerHas(pname, player.getWorld().getName(), "bucket", perms.playerHas(pname, player.getWorld().getName(), "build", true))) {
            player.sendMessage(ChatColor.RED + Residence.getLanguage().getPhrase("FlagDeny", "bucket"));
            event.setCancelled(true);
        }
    }
View Full Code Here

Examples of com.bekvon.bukkit.residence.protection.FlagPermissions

                    event.setCancelled(true);
                    return;
                }
            }
        }
        FlagPermissions perms = Residence.getPermsByLocForPlayer(event.getBlockClicked().getLocation(), player);
        boolean hasbucket = perms.playerHas(pname, player.getWorld().getName(), "bucket", perms.playerHas(pname, player.getWorld().getName(), "build", true));
        if (!hasbucket) {
            player.sendMessage(ChatColor.RED + Residence.getLanguage().getPhrase("FlagDeny", "bucket"));
            event.setCancelled(true);
        }
    }
View Full Code Here

Examples of com.bekvon.bukkit.residence.protection.FlagPermissions

    @EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
    public void onEndermanChangeBlock(EntityChangeBlockEvent event) {
        if (event.getEntityType() != EntityType.ENDERMAN && event.getEntityType() != EntityType.WITHER) {
            return;
        }
        FlagPermissions perms = Residence.getPermsByLoc(event.getBlock().getLocation());
        FlagPermissions world = Residence.getWorldFlags().getPerms(event.getBlock().getWorld().getName());
        if (event.getEntityType() == EntityType.WITHER) {
            if (!perms.has("wither", perms.has("explode", world.has("wither", world.has("explode", true))))) {
                event.setCancelled(true);
            }
        } else if (!perms.has("build", true)) {
            event.setCancelled(true);
        }
View Full Code Here

Examples of com.bekvon.bukkit.residence.protection.FlagPermissions

    @EventHandler(priority = EventPriority.LOWEST)
    public void onEntityInteract(EntityInteractEvent event){
      Block block = event.getBlock();
      Material mat = block.getType();
      Entity entity = event.getEntity();     
      FlagPermissions perms = Residence.getPermsByLoc(block.getLocation());
      boolean hastrample = perms.has("trample", perms.has("hasbuild", true));          
      if(!hastrample && !(entity.getType() == EntityType.FALLING_BLOCK) && (mat == Material.SOIL || mat == Material.SOUL_SAND)){
        event.setCancelled(true);
      }
    }
View Full Code Here

Examples of com.bekvon.bukkit.residence.protection.FlagPermissions

      }
    }

    @EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
    public void onCreatureSpawn(CreatureSpawnEvent event) {
        FlagPermissions perms = Residence.getPermsByLoc(event.getLocation());
        Entity ent = event.getEntity();
        if(ent instanceof Horse || ent instanceof Bat || ent instanceof Snowman || ent instanceof IronGolem || ent instanceof Ocelot || ent instanceof Pig || ent instanceof Sheep || ent instanceof Chicken || ent instanceof Wolf || ent instanceof Cow || ent instanceof Squid || ent instanceof Villager){
          if(!perms.has("animals", true)){
            event.setCancelled(true);
          }
        } else {
          if (!perms.has("monsters", true)) {
            event.setCancelled(true);
          }
        }
    }
View Full Code Here

Examples of com.bekvon.bukkit.residence.protection.FlagPermissions

    public void onHangingPlace(HangingPlaceEvent event) {
        Player player = event.getPlayer();
        if (Residence.isResAdminOn(player)) {
            return;
        }
        FlagPermissions perms = Residence.getPermsByLocForPlayer(event.getEntity().getLocation(), player);
        String pname = player.getName();
        String world = player.getWorld().getName();
        if (!perms.playerHas(pname, world, "place", perms.playerHas(pname, world, "build", true))) {
            event.setCancelled(true);
            player.sendMessage(ChatColor.RED + Residence.getLanguage().getPhrase("NoPermission"));
        }
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.