彦祖
本帖最后由 灼照 于 2020-12-6 19:13 编辑

如何获取玩家输入指令后的内容

例如:
/<command> <内容>

代码如下:
public class Command extends JavaPlugin {

    private String str;

    @Override
    public void onEnable() {

        getLogger().info("插件已开启");
    }

    @Override
    public boolean onCommand(CommandSender sender, org.bukkit.command.Command command, String label, String[] args) {
        if (command.getName().equalsIgnoreCase("notet")) {

            initCmd(sender);
            return true;
        }
        if (command.getName().equalsIgnoreCase("note")) {
            sender.sendMessage(str);
        }
        return false;
    }

    private void initCmd(CommandSender sender) {
        str = "";
    }

    @Override
    public void onDisable() {
        getLogger().info("插件已卸载");
    }
}

2021.12 数据,可能有更多内容

如何获取玩家输入指令后的内容

例如:/&lt;command&gt; &lt;内容&gt;
代码如下:public class Command extends JavaPlugin {


    private String str;


    @Override
    public void onEnable() {


  getLogger().info(&quot;插件已开启&quot;);
    }


    @Override
    public boolean onCommand(CommandSender sender, org.bukkit.command.Command command, String label, String[] args) {
  if (command.getName().equalsIgnoreCase(&quot;notet&quot;)) {


   initCmd(sender);
   return true;
  }
  if (command.getName().equalsIgnoreCase(&quot;note&quot;)) {
   sender.sendMessage(str);
  }
  return false;
    }


    private void initCmd(CommandSender sender) {
  str = &quot;&quot;;
    }


    @Override
    public void onDisable() {
  getLogger().info(&quot;插件已卸载&quot;);
    }
}

renyunzhong
一个比较偷懒的方法:
        StringBuilder b = new StringBuilder(cmd.toString() + ' ');
        for (String s : args) {
            b.append(s + ' ');
        }
        String result = b.toString();
        return true;

如果要直接获取玩家发送的完整信息可以去PlayerCommandEvent,CraftBukkit和收包方面看看

第一页 上一页 下一页 最后一页