Java Minecraft插件命令不起作用

时间:2015-06-21 20:49:37

标签: java minecraft

我刚开始使用Minecraft插件开发,并希望得到一些帮助,说明为什么我的插件不能100%正常工作。我的意思是" /帮助MyFirstPluginYay"正在工作,但实际命令" /你好"不是因为我相信它可能是我的代码。 (它可能是我的插件之一,但对此表示怀疑)插件或其他任何错误都可以正常加载,并在启动时向控制台发送消息。

我正在使用Craftbukkit 1.8快照 其他人可以测试我的代码,或指出任何明显的错误。

这是我的插件的源代码

package me.MorrisKid.myfirstplugin;

import java.util.logging.Logger;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.java.JavaPlugin;

public class main extends JavaPlugin {
    public Logger logger = Logger.getLogger("Minecraft");
    public void onEnable(){
        PluginDescriptionFile pdffile = this.getDescription();
        this.logger.info(pdffile.getName() + " Has been enabled");
    }
    public void onDisable(){
        PluginDescriptionFile pdffile = this.getDescription();
        this.logger.info(pdffile + " Has been disabled");
    }
    public boolean onCommand(Command cmd, CommandSender sender, String label, String[] args){
        if(label.equalsIgnoreCase("hello")){
            Player p = (Player) sender;
            p.sendMessage("Hello!");
        }   
        return true;
    }
}

如果需要,您可以获得插件文件的副本和/或插件的已编译Jar

here下载已编译的jar 从here

下载完整目录

1 个答案:

答案 0 :(得分:1)

你必须有一个plugin.yml文件 - 所以bukkit会知道该命令的插件是什么。如果你没有,那显然不行。它可能看起来像这样:

name: MorrisKid's plugin
main: me.MorrisKid.myfirstplugin.main
version: 1.0.0
load: startup
description: this is my first plugin
commands:
  hello:
    description: greeting the player!
    usage: /<command>

*我没有测试这个yml,所以检查它是否正确并且没有语法错误。检查这个youtuber的视频: https://www.youtube.com/watch?v=_EUPVpqwvZw 他解释了plugin.yml文件。