|
23 | 23 | import org.bukkit.command.Command; |
24 | 24 | import org.bukkit.command.CommandExecutor; |
25 | 25 | import org.bukkit.command.CommandSender; |
| 26 | +import org.bukkit.command.TabExecutor; |
26 | 27 | import org.bukkit.entity.Player; |
27 | 28 | import org.bukkit.inventory.ItemStack; |
28 | 29 | import org.bukkit.inventory.meta.ItemMeta; |
29 | 30 | import org.bukkit.persistence.PersistentDataContainer; |
30 | 31 | import org.bukkit.persistence.PersistentDataType; |
31 | 32 | import org.jetbrains.annotations.NotNull; |
| 33 | +import org.jetbrains.annotations.Nullable; |
32 | 34 |
|
33 | 35 | import java.text.SimpleDateFormat; |
34 | 36 | import java.util.*; |
35 | 37 |
|
36 | | -public class CommandToolStats implements CommandExecutor { |
| 38 | +public class CommandToolStats implements TabExecutor { |
37 | 39 |
|
38 | 40 | private final ToolStats toolStats; |
39 | 41 |
|
@@ -222,4 +224,22 @@ private ItemStack fixItemLore(ItemStack original, Player player) { |
222 | 224 | finalItem.setItemMeta(finalMeta); |
223 | 225 | return finalItem; |
224 | 226 | } |
| 227 | + |
| 228 | + @Nullable |
| 229 | + @Override |
| 230 | + public List<String> onTabComplete(@NotNull CommandSender sender, @NotNull Command command, @NotNull String alias, @NotNull String[] args) { |
| 231 | + if (args.length == 1) { |
| 232 | + if (sender.hasPermission("toolstats.reload")) { |
| 233 | + return Arrays.asList("reset", "reload"); |
| 234 | + } else { |
| 235 | + return Collections.singletonList("reset"); |
| 236 | + } |
| 237 | + } |
| 238 | + if (args.length == 2) { |
| 239 | + if (args[0].equalsIgnoreCase("reset")) { |
| 240 | + return Collections.singletonList("confirm"); |
| 241 | + } |
| 242 | + } |
| 243 | + return null; |
| 244 | + } |
225 | 245 | } |
0 commit comments