/** * Announce to players that a rival is in their base * * @param field * @param rivalName */ public void bypassAnnounce(Field field, String rivalName) { if (!hasSimpleClans()) { return; } ClanPlayer cp = simpleClans.getClanManager().getClanPlayer(field.getOwner()); ClanPlayer rivalCp = simpleClans.getClanManager().getClanPlayer(rivalName); if (cp != null && rivalCp != null) { cp.getClan() .audioAnnounce( "PreciousStones", Helper.capitalize(rivalName) + " of rival clan " + Helper.stripColors(rivalCp.getClan().getColorTag()) + " has entered one of " + Helper.posessive(Helper.stripColors(cp.getClan().getColorTag())) + " bases [" + field.getX() + " " + field.getY() + " " + field.getZ() + " " + field.getWorld() + "]"); } }
public RivalriesCommand(SimpleClans plugin) { super("Rivalries"); this.plugin = plugin; setArgumentRange(0, 0); setUsages( MessageFormat.format( plugin.getLang("usage.rivalries"), plugin.getSettingsManager().getCommandClan())); setIdentifiers(plugin.getLang("rivalries.command")); }
public KickCommand(SimpleClans plugin) { super("Kick"); this.plugin = plugin; setArgumentRange(1, 1); setUsages( MessageFormat.format( plugin.getLang("usage.kick"), plugin.getSettingsManager().getCommandClan())); setIdentifiers(plugin.getLang("kick.command")); }
@Override public String getMenu(ClanPlayer cp, CommandSender sender) { if (plugin.getPermissionsManager().has(sender, "simpleclans.anyone.rivalries")) { return MessageFormat.format( plugin.getLang("0.rivalries.1.view.all.clan.rivalries"), plugin.getSettingsManager().getCommandClan(), ChatColor.WHITE); } return null; }
@Override public void execute(Player player, String label, String[] args) { if (plugin.getPermissionsManager().has(player, "simpleclans.leader.kick")) { ClanPlayer cp = plugin.getClanManager().getClanPlayer(player); if (cp != null) { Clan clan = cp.getClan(); if (clan.isLeader(player)) { String kicked = args[0]; if (kicked != null) { if (!kicked.equals(player.getName())) { if (clan.isMember(kicked)) { if (!clan.isLeader(kicked)) { clan.addBb( player.getName(), ChatColor.AQUA + MessageFormat.format( plugin.getLang("has.been.kicked.by"), Helper.capitalize(kicked), player.getName())); clan.removePlayerFromClan(kicked); } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin.getLang("you.cannot.kick.another.leader")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin.getLang("the.player.is.not.a.member.of.your.clan")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin.getLang("you.cannot.kick.yourself")); } } else { ChatBlock.sendMessage(player, ChatColor.RED + plugin.getLang("no.player.matched")); } } else { ChatBlock.sendMessage(player, ChatColor.RED + plugin.getLang("no.leader.permissions")); } } else { ChatBlock.sendMessage(player, ChatColor.RED + plugin.getLang("not.a.member.of.any.clan")); } } else { ChatBlock.sendMessage(player, ChatColor.RED + plugin.getLang("insufficient.permissions")); } }
@Override public String getMenu(ClanPlayer cp, CommandSender sender) { if (cp != null) { if (cp.isLeader()) { if (plugin.getPermissionsManager().has(sender, "simpleclans.leader.kick")) { return MessageFormat.format( plugin.getLang("0.kick.player.1.kick.a.player.from.the.clan"), plugin.getSettingsManager().getCommandClan(), ChatColor.WHITE); } } } return null; }
/** * Execute the command * * @param player * @param arg */ public void execute(Player player, String[] arg) { SimpleClans plugin = SimpleClans.getInstance(); if (plugin.getPermissionsManager().has(player, "simpleclans.member.resign")) { ClanPlayer cp = plugin.getClanManager().getClanPlayer(player); if (cp != null) { Clan clan = cp.getClan(); if (!clan.isLeader(player) || clan.getLeaders().size() > 1) { clan.addBb( player.getName(), ChatColor.AQUA + MessageFormat.format( plugin.getLang().getString("0.has.resigned"), Helper.capitalize(player.getName()))); clan.removePlayerFromClan(player.getName()); } else if (clan.isLeader(player) && clan.getLeaders().size() == 1) { plugin .getClanManager() .serverAnnounce( ChatColor.AQUA + MessageFormat.format( plugin.getLang().getString("clan.has.been.disbanded"), clan.getName())); clan.disband(); } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin .getLang() .getString( "last.leader.cannot.resign.you.must.appoint.another.leader.or.disband.the.clan")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin.getLang().getString("not.a.member.of.any.clan")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin.getLang().getString("insufficient.permissions")); } }
/** * Announce to players clan * * @param playerName * @param message */ public void clanAnnounce(String playerName, String message) { if (!hasSimpleClans()) { return; } ClanPlayer cp = simpleClans.getClanManager().getClanPlayer(playerName); if (cp != null) { cp.getClan().clanAnnounce("PreciousStones", message); } }
/** * Adds a message to the player's clan's BB * * @param player * @param message */ public void addBB(Player player, String message) { if (!hasSimpleClans()) { return; } ClanPlayer cp = simpleClans.getClanManager().getClanPlayer(player); if (cp != null) { cp.getClan().addBb("[PreciousStones]", message); } }
/** * Check if * * @param field * @param offenderName * @return */ public boolean inWar(Field field, String offenderName) { if (!hasSimpleClans()) { return false; } ClanPlayer cp = simpleClans.getClanManager().getClanPlayer(offenderName); ClanPlayer cpOwner = simpleClans.getClanManager().getClanPlayer(field.getOwner()); if (cp != null && cpOwner != null) { List<Clan> warringClans = cp.getClan().getWarringClans(); String ownerClan = cpOwner.getTag(); for (Clan warring : warringClans) { if (ownerClan.equals(warring.getTag())) { return true; } } } return false; }
/** * @param playerName * @return */ public String getClan(String playerName) { if (!hasSimpleClans()) { return null; } ClanPlayer cp = simpleClans.getClanManager().getClanPlayer(playerName); if (cp != null) { return cp.getTag(); } return null; }
/** * Check whether any of a player's clan members are online * * @param playerName * @return */ public boolean isAnyOnline(String playerName) { if (!hasSimpleClans()) { return false; } ClanPlayer cp = simpleClans.getClanManager().getClanPlayer(playerName); if (cp != null) { if (cp.getClan().isAnyOnline()) { return true; } } return false; }
/** * Check if a player is in a clan * * @param playerName * @param clanName * @return */ public boolean isInClan(String playerName, String clanName) { if (!hasSimpleClans()) { return false; } ClanPlayer cp = simpleClans.getClanManager().getClanPlayer(playerName); if (cp != null) { if (cp.getTag().equals(clanName)) { return true; } } return false; }
/** * Check if two players are clanmates * * @param playerOne * @param playerTwo * @return */ public boolean isClanMate(String playerOne, String playerTwo) { if (!hasSimpleClans()) { return false; } ClanPlayer cp1 = simpleClans.getClanManager().getClanPlayer(playerOne); ClanPlayer cp2 = simpleClans.getClanManager().getClanPlayer(playerTwo); if (cp1 != null && cp2 != null) { if (cp1.getClan().equals(cp2.getClan())) { return true; } } return false; }
/** * @param owner * @param playerName * @return */ public boolean isAllyOwner(String owner, String playerName) { if (!hasSimpleClans()) { return false; } Player player = plugin.getServer().getPlayerExact(playerName); if (player != null) { ClanPlayer cpOwner = simpleClans.getClanManager().getClanPlayer(owner); if (cpOwner != null) { return cpOwner.isAlly(player); } } return false; }
/** * Execute the command * * @param player * @param arg */ public void execute(Player player, String[] arg) { SimpleClans plugin = SimpleClans.getInstance(); if (plugin.getPermissionsManager().has(player, "simpleclans.leader.invite")) { ClanPlayer cp = plugin.getClanManager().getClanPlayer(player); if (cp != null) { Clan clan = cp.getClan(); if (clan.isLeader(player)) { if (arg.length == 1) { Player invited = Helper.matchOnePlayer(arg[0]); if (invited != null) { if (plugin.getPermissionsManager().has(invited, "simpleclans.member.can-join")) { if (!invited.getName().equals(player.getName())) { if (!plugin.getSettingsManager().isBanned(player.getName())) { ClanPlayer cpInv = plugin.getClanManager().getClanPlayer(invited); if (cpInv == null) { plugin.getRequestManager().addInviteRequest(cp, invited.getName(), clan); ChatBlock.sendMessage( player, ChatColor.AQUA + MessageFormat.format( plugin.getLang().getString("has.been.asked.to.join"), Helper.capitalize(invited.getName()), clan.getName())); } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin .getLang() .getString("the.player.is.already.member.of.another.clan")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin .getLang() .getString("this.player.is.banned.from.using.clan.commands")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin.getLang().getString("you.cannot.invite.yourself")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin .getLang() .getString( "the.player.doesn.t.not.have.the.permissions.to.join.clans")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin.getLang().getString("no.player.matched")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + MessageFormat.format( plugin.getLang().getString("usage.0.invite.player"), plugin.getSettingsManager().getCommandClan())); } } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin.getLang().getString("no.leader.permissions")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin.getLang().getString("not.a.member.of.any.clan")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin.getLang().getString("insufficient.permissions")); } }
public SimpleClansListener(Main main) { SimpleClans sc = (SimpleClans) Bukkit.getPluginManager().getPlugin("SimpleClans"); clanManager = sc.getClanManager(); instance = main; }
@Override public void execute(CommandSender sender, String label, String[] args) { String headColor = plugin.getSettingsManager().getPageHeadingsColor(); String subColor = plugin.getSettingsManager().getPageSubTitleColor(); if (plugin.getPermissionsManager().has(sender, "simpleclans.anyone.rivalries")) { List<Clan> clans = plugin.getClanManager().getClans(); plugin.getClanManager().sortClansByKDR(clans); ChatBlock chatBlock = new ChatBlock(); ChatBlock.sendBlank(sender); ChatBlock.saySingle( sender, plugin.getSettingsManager().getServerName() + subColor + " " + plugin.getLang("rivalries") + " " + headColor + Helper.generatePageSeparator(plugin.getSettingsManager().getPageSep())); ChatBlock.sendBlank(sender); ChatBlock.sendMessage( sender, headColor + plugin.getLang("legend") + ChatColor.DARK_RED + " [" + plugin.getLang("war") + "]"); ChatBlock.sendBlank(sender); chatBlock.setAlignment("l", "l"); chatBlock.addRow(plugin.getLang("clan"), plugin.getLang("rivals")); for (Clan clan : clans) { if (!clan.isVerified()) { continue; } chatBlock.addRow( " " + ChatColor.AQUA + clan.getName(), clan.getRivalString(ChatColor.DARK_GRAY + ", ")); } boolean more = chatBlock.sendBlock(sender, plugin.getSettingsManager().getPageSize()); if (more) { plugin.getStorageManager().addChatBlock(sender, chatBlock); ChatBlock.sendBlank(sender); ChatBlock.sendMessage( sender, headColor + MessageFormat.format( plugin.getLang("view.next.page"), plugin.getSettingsManager().getCommandMore())); } ChatBlock.sendBlank(sender); } else { ChatBlock.sendMessage(sender, ChatColor.RED + plugin.getLang("insufficient.permissions")); } }
/** * Execute the command * * @param player * @param arg */ public void execute(Player player, String[] arg) { SimpleClans plugin = SimpleClans.getInstance(); if (plugin.getPermissionsManager().has(player, "simpleclans.mod.ban")) { if (arg.length == 1) { String banned = arg[0]; if (plugin.getSettingsManager().isBanned(banned)) { Player pl = Helper.matchOnePlayer(banned); if (pl != null) { ChatBlock.sendMessage( pl, ChatColor.AQUA + plugin.getLang("you.have.been.unbanned.from.clan.commands")); } plugin.getSettingsManager().removeBanned(banned); ChatBlock.sendMessage( player, ChatColor.AQUA + plugin.getLang("player.removed.from.the.banned.list")); } else { ChatBlock.sendMessage( player, ChatColor.RED + plugin.getLang("this.player.is.not.banned")); } } else { ChatBlock.sendMessage( player, ChatColor.RED + MessageFormat.format( plugin.getLang("usage.ban.unban"), plugin.getSettingsManager().getCommandClan())); } } else { ChatBlock.sendMessage(player, ChatColor.RED + plugin.getLang("insufficient.permissions")); } }