public class Main extends JavaPlugin
{
// Logger variable
Logger myPluginLogger = Bukkit.getLogger();
// Does when plugin is disabled - console logging
@Override
public void onDisable()
{
myPluginLogger.info("Disabling Political Parties...");
}
// Plugin chat help function
public void sendPlayerHelp(String permissions, Player player)
{
// If player does not belong to a party, show them these commands
if (permissions == "nonpartisan")
{
player.sendMessage(ChatColor.YELLOW + "Political Parties by TerraCraft - version 1.0");
player.sendMessage(ChatColor.RED + "/party create <party name> " + ChatColor.YELLOW + "Start a political party");
player.sendMessage(ChatColor.RED + "/party list " + ChatColor.YELLOW + "Shows a list of all of the current political parties");
player.sendMessage(ChatColor.RED + "/party info <party> " + ChatColor.YELLOW + "Shows info about a specific party");
}
// If a player does belong to a party, show them these commands
else if (permissions == "inparty")
{
player.sendMessage(ChatColor.YELLOW + "Political Parties by TerraCraft - version 1.0");
player.sendMessage(ChatColor.RED + "/party leave " + ChatColor.YELLOW + "Leave your current political party");
player.sendMessage(ChatColor.RED + "/party list " + ChatColor.YELLOW + "Shows a list of all of the current political parties");
player.sendMessage(ChatColor.RED + "/party info <party> " + ChatColor.YELLOW + "Shows info about a specific party");
player.sendMessage(ChatColor.RED + "/party deposit <amount> " + ChatColor.YELLOW + "Deposit a specific sum into the party bank account");
player.sendMessage(ChatColor.RED + "/party chat <message> " + ChatColor.YELLOW + "Say specified message in party chat");
}
// If a player is the leader of a party, show them these commands
else if (permissions == "partyleader")
{
player.sendMessage(ChatColor.YELLOW + "Political Parties by TerraCraft - version 1.0");
player.sendMessage(ChatColor.RED + "/party delete " + ChatColor.YELLOW + "Deletes your current political party");
player.sendMessage(ChatColor.RED + "/party list " + ChatColor.YELLOW + "Shows a list of all of the current political parties");
player.sendMessage(ChatColor.RED + "/party info <party> " + ChatColor.YELLOW + "Shows info about a specific party");
player.sendMessage(ChatColor.RED + "/party deposit <amount> " + ChatColor.YELLOW + "Deposit a specific sum into the party bank account");
player.sendMessage(ChatColor.RED + "/party withdraw <amount> " + ChatColor.YELLOW + "Withdraw a specific sum from the party bank account");
player.sendMessage(ChatColor.RED + "/party policy <add|remove> [index] [message] " + ChatColor.YELLOW + "Add or remove a specific policy to/from your political party");
player.sendMessage(ChatColor.RED + "/party invite <player> " + ChatColor.YELLOW + "Invite a player to your political party");
player.sendMessage(ChatColor.RED + "/party kick <player> " + ChatColor.YELLOW + "Kick a player from your political party");
player.sendMessage(ChatColor.RED + "/party giveleader <player> " + ChatColor.YELLOW + "Resign yourself as party leader and give it to another player");
player.sendMessage(ChatColor.RED + "/party chat <message> " + ChatColor.YELLOW + "Say specified message in party chat");
}
}
// Command function
public boolean onCommand(CommandSender theSender, Command cmd, String[] args, String commandLabel)
{
// Party command
if (cmd.getName().equalsIgnoreCase("party"))
{
Player player = (Player) theSender;
// If no arguments are specified, or if the first argument is equal to help, or ?, show them help
if (args.length == 0 || args[0].equalsIgnoreCase("help") || args[0].equalsIgnoreCase("?"))
{
sendPlayerHelp("nonpartisan", player);
}
else
{
}
return true;
}
else
{
}
return false;
}
}
Здравствуйте, я ранее создавал базовые плагины сервера Bukkit и работал правильно. Я создаю новый, но по какой-то причине он не будет запускать команду. Просто чтобы уточнить, плагин YAML правильно выполнен (и, соответственно, импорт, я просто не ощущал необходимости включать их), и компиляции ошибок нет. У меня есть команда в файле YAML команды, и когда я загружаю плагин, он появляется в моем списке плагинов и когда я делаю/помогаю. Когда я запустил команду, он просто возвращает использование: «/ party», но не будет делать другие вещи (отправьте игроку справочное сообщение). Я не совсем уверен, почему он не работает. Я что-то забыл по ошибке? Кроме того, это мой первый вопрос, поэтому приношу свои извинения, если он не соответствует стандартам.Команда не работает
Почему он просит имя игрока? – RTarson
Я предлагаю удалить пустые блоки 'else' и изменить способ сравнения строк с' == 'на' .equals() 'Это не устраняет проблему, просто некоторые советы – Jonah
Единственный способ выполнения первой команды если имя игрока является стороной – RTarson