在 minecraft 插件中设置命令参数类型 (Java)
set command arguments type in minecraft plugin (Java)
我想像这样向玩家发送参数反馈:
Minecraft Feedback Image
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
public class ctrl implements CommandExecutor {
public void ctrl(){
}
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
return false;
}
}
我必须做些什么才能向玩家发送反馈?
我相信 TabCompleter 界面就是您要找的。
https://hub.spigotmc.org/javadocs/spigot/org/bukkit/command/TabCompleter.html
要使用它,您需要在您的 classes 之一中实现它。如果需要,您可以在 ctrl
class 中实现它。 onTabComplete
方法将 return 中的建议列表 List<String>
。
@Override
public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
List<String> completions = new ArrayList<>();
// Use "args" to know exactly what the player has already typed so far
// Put the suggestions that you want to show the player into "completions".
return completions;
}
在主 class 的 onEnable
方法中,您需要注册 ctrl
class(如果需要,也可以注册不同的 class)作为与您想要的命令关联的制表符完成器。
@Override
public void onEnable() {
this.getCommand("example").setTabCompleter(new ctrl());
}
This post 显示了一种按字母顺序确定潜在自动完成的方法。
我想像这样向玩家发送参数反馈: Minecraft Feedback Image
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
public class ctrl implements CommandExecutor {
public void ctrl(){
}
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
return false;
}
}
我必须做些什么才能向玩家发送反馈?
我相信 TabCompleter 界面就是您要找的。 https://hub.spigotmc.org/javadocs/spigot/org/bukkit/command/TabCompleter.html
要使用它,您需要在您的 classes 之一中实现它。如果需要,您可以在 ctrl
class 中实现它。 onTabComplete
方法将 return 中的建议列表 List<String>
。
@Override
public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
List<String> completions = new ArrayList<>();
// Use "args" to know exactly what the player has already typed so far
// Put the suggestions that you want to show the player into "completions".
return completions;
}
在主 class 的 onEnable
方法中,您需要注册 ctrl
class(如果需要,也可以注册不同的 class)作为与您想要的命令关联的制表符完成器。
@Override
public void onEnable() {
this.getCommand("example").setTabCompleter(new ctrl());
}
This post 显示了一种按字母顺序确定潜在自动完成的方法。