我想做一个Minecraft插件,做/daytime
。插件被/pl
识别,但如果我执行命令,它不工作。
我试着修改和移动plugin.xml
认为Bukkit不知道主类在哪里。
package domenicoplugin.domenicopluginbello;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.plugin.java.JavaPlugin;
public final class Domenicopluginbello extends JavaPlugin {
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
if (command.getName().equalsIgnoreCase("daytime")) {
getServer().getWorlds().get(0).setTime(1000); // set time to morning (1000 ticks)
sender.sendMessage("The time has been set to morning.");
return true;
}
return false;
}
}
}
您应该按照wiki创建命令。
- 使用
extends JavaPlugin
类作为注册命令和其他多个命令的主类。该类应该包含一个onEnable()
方法来注册命令。 - 注册
getCommand("daytime").setExecutor(new DayTimeCommand());
命令 在
plugin.yml
文件中添加如下:commands:
daytime:
- 创建
DayTimeCommand
类,如下所示:
public class DayTimeCommand implements CommandExecutor {
// This method is called, when somebody uses our command
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
getServer().getWorlds().get(0).setTime(1000); // set time to morning (1000 ticks)
sender.sendMessage("The time has been set to morning.");
return false;
}
}
PS:我建议您更改包/类的名称,使用domenico.bello
作为包名,Bello
或Main
作为类名。
用plugin.yml
代替plugin.xml