我要加入

夢想家公會

會長:chenjinsheng / 此間半開一盞茶開設日:2015-05-17 23:58:58

  • EXP

  • 資金13569  
  • 關連作品我的世界、我的世界 Classic、我的世界... 看更多
  • 招募制度:自由加入制
  • 成員:23 人
  • 昨日人氣:0

Tab指令

推上精選編輯

近期編輯:chenjinsheng ...看更多

目錄

Tab指令


Tab指令原本是可以直接執行指令內容,應該是方法的使用有誤才無法執行,目前暫時用替代方案使用。

作用在於可以用『/指令+空一格』按Tab鍵,進行參數的切換。

public class GroomCommand implements CommandExecutor, TabCompleter {

    @Override
    public boolean onCommand(CommandSender cs, Command c, String s, String[] ss) {
        if (cs instanceof Player) {
            Player p = (Player) cs;
            if (ss.length == 0) {
                p.sendRawMessage("0");
            }
            if (ss.length == 1) {
                switch (ss[0]) {
                    case "1":
                        p.sendRawMessage("1");
                        break;
                    case "2":
                        p.sendRawMessage("2");
                        break;
                    case "3":
                        p.sendRawMessage("3");
                        break;
                    case "4":
                        p.sendRawMessage("4");
                        break;
                    case "5":
                        p.sendRawMessage("5");
                        break;
                    default:
                        break;
                }
            }
        }
        return false;
    }

    @Override
    public List<String> onTabComplete(CommandSender cs, Command c, String s, String[] ss) {
        List<String> l = new ArrayList<>();
        l.add("1");
        l.add("2");
        l.add("3");
        l.add("4");
        l.add("5");
        return l;
    }
}

  • List<String>:參數Llist,切換順序與List排列有關。

getCommand("sp").setExecutor(new GroomCommand());
getCommand("sp").setTabCompleter(new GroomCommand());

註冊雙指令。

公會首頁

主選單
關聯資料

目前沒有資料連到「Tab指令」。