EpicEnchants/src/main/java/com/songoda/epicenchants/commands/CommandList.java

54 lines
1.6 KiB
Java
Raw Normal View History

package com.songoda.epicenchants.commands;
2019-08-05 04:24:48 +02:00
import com.songoda.core.commands.AbstractCommand;
2019-08-05 04:24:48 +02:00
import com.songoda.epicenchants.EpicEnchants;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
2019-08-07 04:38:45 +02:00
import java.util.Comparator;
2019-08-05 04:24:48 +02:00
import java.util.List;
2019-08-07 04:38:45 +02:00
import java.util.stream.Collectors;
2019-08-05 04:24:48 +02:00
2019-08-06 02:06:08 +02:00
public class CommandList extends AbstractCommand {
private final EpicEnchants plugin;
2019-08-05 04:24:48 +02:00
public CommandList(EpicEnchants plugin) {
super(true, "list");
this.plugin = plugin;
2019-08-05 04:24:48 +02:00
}
@Override
protected ReturnType runCommand(CommandSender sender, String... args) {
2019-08-07 04:38:45 +02:00
if (args.length > 1 && args[1].equalsIgnoreCase("chat")) {
plugin.getLocale().newMessage(plugin.getEnchantManager().getValues().stream()
2021-07-10 23:41:20 +02:00
.sorted(Comparator.comparing(enchant -> enchant.getGroup().getOrder()))
.map(enchant -> enchant.getColoredIdentifier(true)).collect(Collectors.joining("&7, ")))
2019-08-07 04:38:45 +02:00
.sendPrefixedMessage(sender);
return ReturnType.SUCCESS;
}
2021-07-10 23:41:20 +02:00
plugin.getInfoManager().getMainInfoMenu().open((Player) sender);
2019-08-05 04:24:48 +02:00
return ReturnType.SUCCESS;
}
@Override
protected List<String> onTab(CommandSender sender, String... args) {
2019-08-05 04:24:48 +02:00
return null;
}
@Override
public String getPermissionNode() {
2019-08-06 02:06:08 +02:00
return "epicenchants.list";
2019-08-05 04:24:48 +02:00
}
@Override
public String getSyntax() {
return "list [chat]";
2019-08-05 04:24:48 +02:00
}
@Override
public String getDescription() {
return "List all enchants with their description.";
}
}