Search in sources :

Example 1 with Rank

use of me.totalfreedom.totalfreedommod.rank.Rank in project TotalFreedomMod by TotalFreedom.

the class FreedomCommandExecutor method hasPermission.

@Override
public boolean hasPermission(CommandSender sender, boolean sendMsg) {
    final FreedomCommand command = getCommand();
    if (command == null) {
        return true;
    }
    final CommandPermissions perms = command.getPerms();
    if (perms == null) {
        return true;
    }
    // Block host console
    if (FUtil.isFromHostConsole(sender.getName()) && perms.blockHostConsole()) {
        if (sendMsg) {
            sender.sendMessage(handler.getPermissionMessage());
        }
        return false;
    }
    final Player player = sender instanceof Player ? (Player) sender : null;
    // Only console
    if (perms.source() == SourceType.ONLY_CONSOLE && player != null) {
        if (sendMsg) {
            sender.sendMessage(handler.getOnlyConsoleMessage());
        }
        return false;
    }
    // Only in game
    if (perms.source() == SourceType.ONLY_IN_GAME && player == null) {
        if (sendMsg) {
            sender.sendMessage(handler.getOnlyPlayerMessage());
        }
        return false;
    }
    // Player permissions
    if (player != null) {
        Rank rank = plugin.rm.getRank(player);
        boolean result = rank.isAtLeast(perms.level());
        if (!result && sendMsg) {
            sender.sendMessage(handler.getPermissionMessage());
        }
        return result;
    }
    // Console permissions
    Rank rank = plugin.rm.getRank(sender);
    boolean result = rank.isAtLeast(perms.level());
    if (!result && sendMsg) {
        sender.sendMessage(handler.getPermissionMessage());
    }
    return result;
}
Also used : Player(org.bukkit.entity.Player) Rank(me.totalfreedom.totalfreedommod.rank.Rank)

Example 2 with Rank

use of me.totalfreedom.totalfreedommod.rank.Rank in project TotalFreedomMod by TotalFreedom.

the class Command_rank method message.

public String message(Player player) {
    Displayable display = plugin.rm.getDisplay(player);
    Rank rank = plugin.rm.getRank(player);
    StringBuilder sb = new StringBuilder();
    sb.append(ChatColor.AQUA).append(player.getName()).append(" is ").append(display.getColoredLoginMessage());
    if (rank != display) {
        sb.append(ChatColor.AQUA).append(" (").append(rank.getColoredName()).append(ChatColor.AQUA).append(')');
    }
    return sb.toString();
}
Also used : Displayable(me.totalfreedom.totalfreedommod.rank.Displayable) Rank(me.totalfreedom.totalfreedommod.rank.Rank)

Example 3 with Rank

use of me.totalfreedom.totalfreedommod.rank.Rank in project TotalFreedomMod by TotalFreedom.

the class ConfigConverter method convertSuperadmins.

private void convertSuperadmins(File oldFile) {
    if (!oldFile.exists() || !oldFile.isFile()) {
        logger.warning("No old superadmin list found!");
        return;
    }
    // Convert old admin list
    YamlConfig oldYaml = new YamlConfig(plugin, oldFile, false);
    oldYaml.load();
    ConfigurationSection admins = oldYaml.getConfigurationSection("admins");
    if (admins == null) {
        logger.warning("No admin section in superadmin list!");
        return;
    }
    List<Admin> conversions = Lists.newArrayList();
    for (String uuid : admins.getKeys(false)) {
        ConfigurationSection asec = admins.getConfigurationSection(uuid);
        if (asec == null) {
            logger.warning("Invalid superadmin format for admin: " + uuid);
            continue;
        }
        String username = asec.getString("last_login_name");
        Rank rank;
        if (asec.getBoolean("is_senior_admin")) {
            rank = Rank.SENIOR_ADMIN;
        } else if (asec.getBoolean("is_telnet_admin")) {
            rank = Rank.TELNET_ADMIN;
        } else {
            rank = Rank.SUPER_ADMIN;
        }
        List<String> ips = asec.getStringList("ips");
        String loginMessage = asec.getString("custom_login_message");
        boolean active = asec.getBoolean("is_activated");
        Admin admin = new Admin(username);
        admin.setName(username);
        admin.setRank(rank);
        admin.addIps(ips);
        admin.setLoginMessage(loginMessage);
        admin.setActive(active);
        admin.setLastLogin(new Date());
        conversions.add(admin);
    }
    YamlConfig newYaml = new YamlConfig(plugin, AdminList.CONFIG_FILENAME);
    for (Admin admin : conversions) {
        admin.saveTo(newYaml.createSection(admin.getName().toLowerCase()));
    }
    newYaml.save();
    logger.info("Converted " + conversions.size() + " admins");
}
Also used : YamlConfig(net.pravian.aero.config.YamlConfig) Rank(me.totalfreedom.totalfreedommod.rank.Rank) Admin(me.totalfreedom.totalfreedommod.admin.Admin) Date(java.util.Date) ConfigurationSection(org.bukkit.configuration.ConfigurationSection)

Aggregations

Rank (me.totalfreedom.totalfreedommod.rank.Rank)3 Date (java.util.Date)1 Admin (me.totalfreedom.totalfreedommod.admin.Admin)1 Displayable (me.totalfreedom.totalfreedommod.rank.Displayable)1 YamlConfig (net.pravian.aero.config.YamlConfig)1 ConfigurationSection (org.bukkit.configuration.ConfigurationSection)1 Player (org.bukkit.entity.Player)1