2020-07-13 00:40:11 +00:00
|
|
|
package me.totalfreedom.tfguilds.command;
|
|
|
|
|
|
|
|
import me.totalfreedom.tfguilds.Common;
|
|
|
|
import me.totalfreedom.tfguilds.guild.Guild;
|
|
|
|
import me.totalfreedom.tfguilds.util.GUtil;
|
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
|
import org.bukkit.ChatColor;
|
|
|
|
import org.bukkit.command.Command;
|
|
|
|
import org.bukkit.command.CommandExecutor;
|
|
|
|
import org.bukkit.command.CommandSender;
|
|
|
|
import org.bukkit.command.ConsoleCommandSender;
|
|
|
|
import org.bukkit.entity.Player;
|
|
|
|
|
|
|
|
public class TagSubcommand extends Common implements CommandExecutor
|
|
|
|
{
|
|
|
|
@Override
|
|
|
|
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
|
|
|
|
{
|
|
|
|
if (sender instanceof ConsoleCommandSender)
|
|
|
|
{
|
|
|
|
sender.sendMessage(NO_PERMS);
|
|
|
|
return true;
|
|
|
|
}
|
2020-07-16 22:46:57 +00:00
|
|
|
|
2020-07-15 00:20:25 +00:00
|
|
|
if (args.length < 2)
|
|
|
|
return false;
|
2020-07-16 22:46:57 +00:00
|
|
|
|
2020-07-13 00:40:11 +00:00
|
|
|
Player player = (Player) sender;
|
|
|
|
Guild guild = Guild.getGuild(player);
|
|
|
|
if (guild == null)
|
|
|
|
{
|
|
|
|
sender.sendMessage(ChatColor.RED + "You aren't in a guild!");
|
|
|
|
return true;
|
|
|
|
}
|
2020-07-16 22:46:57 +00:00
|
|
|
|
2020-07-13 00:40:11 +00:00
|
|
|
if (!guild.getOwner().equals(player.getName()))
|
|
|
|
{
|
|
|
|
sender.sendMessage(ChatColor.RED + "You can't modify your guild's tag!");
|
|
|
|
return true;
|
|
|
|
}
|
2020-07-16 22:46:57 +00:00
|
|
|
|
2020-07-13 00:40:11 +00:00
|
|
|
if (args.length >= 3)
|
|
|
|
{
|
|
|
|
if (args[1].toLowerCase().equals("set"))
|
|
|
|
{
|
|
|
|
String tag = StringUtils.join(args, " ", 2, args.length);
|
2020-07-14 23:22:37 +00:00
|
|
|
|
|
|
|
tag = tag.replace("%tag%", guild.getName());
|
|
|
|
|
2020-07-23 18:33:03 +00:00
|
|
|
if (tag.length() > 75)
|
|
|
|
{
|
|
|
|
player.sendMessage(ChatColor.RED + "Your guild tag must not be over 75 characters.");
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
2020-07-16 22:46:57 +00:00
|
|
|
for (String blacklisted : GUtil.BLACKLISTED_NAMES_AND_TAGS)
|
|
|
|
{
|
|
|
|
if (tag.equalsIgnoreCase(blacklisted))
|
|
|
|
{
|
|
|
|
if (!plugin.bridge.isAdmin(player))
|
|
|
|
{
|
|
|
|
player.sendMessage(ChatColor.RED + "You may not use that name.");
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-07-13 00:40:11 +00:00
|
|
|
guild.setTag(tag);
|
|
|
|
guild.save();
|
|
|
|
sender.sendMessage(tl("%p%Your guild tag has been changed to be \"" + GUtil.colorize(tag) + "%p%\"."));
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
return false;
|
|
|
|
}
|
2020-07-16 22:46:57 +00:00
|
|
|
|
2020-07-13 00:40:11 +00:00
|
|
|
if (args[1].toLowerCase().equals("clear"))
|
|
|
|
{
|
|
|
|
guild.setTag(null);
|
|
|
|
guild.save();
|
|
|
|
sender.sendMessage(tl("%p%Your guild tag has been cleared."));
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
}
|