命令什么都不做
Command not doing anything
我正在尝试创建一个向发件人发送消息的命令,但它不起作用。
这是主要内容 class:
public void onEnabled() {
getLogger().info("Enabled!");
}
public boolean onCommand(Command cmd, CommandSender sender, String label, String[] args) {
if (cmd.getName().equalsIgnoreCase("hi")) {
sender.sendMessage("Hey there " + sender);
}
return false;
}
我不知道你的 plugin.yml 但如果它是正确的,那么如果你从以下位置更改它应该可以工作:
onCommand(Command cmd, CommandSender sender, String label, String[] args)
收件人:
onCommand(CommandSender sender, Command cmd, String label, String[] args)
顺序很重要,否则 Bukkit 会错误地调用您的 onCommand。
此外,要显示发件人姓名,您需要更改为:
sender.sendMessage("Hey there " + sender);
收件人:
sender.sendMessage("Hey there " + sender.getName());
onCommand()
方法应该 return 一个 boolean
。您只需要 return true
或 false
。 true
表示该命令已执行某些操作,因此您应该 return 将其作为 if
语句的一部分。否则只是 return false
。
以下应该有效:
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
if (cmd.getName().equalsIgnoreCase("hi")) {
sender.sendMessage("Hey there " + sender.getName());
return true;
}
return false;
}
如果这不起作用,请尝试发布您的 plugin.yml 和您遇到的错误,因为这可能会告诉我们更多信息。
我正在尝试创建一个向发件人发送消息的命令,但它不起作用。
这是主要内容 class:
public void onEnabled() {
getLogger().info("Enabled!");
}
public boolean onCommand(Command cmd, CommandSender sender, String label, String[] args) {
if (cmd.getName().equalsIgnoreCase("hi")) {
sender.sendMessage("Hey there " + sender);
}
return false;
}
我不知道你的 plugin.yml 但如果它是正确的,那么如果你从以下位置更改它应该可以工作:
onCommand(Command cmd, CommandSender sender, String label, String[] args)
收件人:
onCommand(CommandSender sender, Command cmd, String label, String[] args)
顺序很重要,否则 Bukkit 会错误地调用您的 onCommand。
此外,要显示发件人姓名,您需要更改为:
sender.sendMessage("Hey there " + sender);
收件人:
sender.sendMessage("Hey there " + sender.getName());
onCommand()
方法应该 return 一个 boolean
。您只需要 return true
或 false
。 true
表示该命令已执行某些操作,因此您应该 return 将其作为 if
语句的一部分。否则只是 return false
。
以下应该有效:
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
if (cmd.getName().equalsIgnoreCase("hi")) {
sender.sendMessage("Hey there " + sender.getName());
return true;
}
return false;
}
如果这不起作用,请尝试发布您的 plugin.yml 和您遇到的错误,因为这可能会告诉我们更多信息。