2017-08-17 5 views
0

私のサーバー(バージョン1.8 R3)でMinecraftのTabCompleteアクションを修正しようとしています。 私はプールからタブオートコンプリートプールを編集したいのですが、私はそれをprotocollibを使って行いました。 問題は、プールは、チャットに入力された文の最後のテイクに合わせる必要があります。それ以外の場合は、TabCompleteではなく、あなたが求めるオプションにプールを調整するのではなく、すべてのオプションを表示するだけです。TabComplete BukkitのPlayInパケット1.8 R3

たとえば、 と入力してください。/test t[TAB]と入力してください。プールはtest, urf, halo tinkerのようなものです。 何起こるべきことは、これらのオプションが表示されているということです。実際に表示さ

test, tinker 

何がある:

test, urf, halo, tinker 

私だけtabcompletepacketでプールを置き換えることができますので。私のプールを調整する必要が実際にt[tab]を取得しません。 これらの情報をサーバに送信するパケットはどれですか?

// EDIT このまま返信することはできません。私の問題は、実際にあなたに必要なStringを与えるPlayInTabComplete-Functionを見たことがなかったことです。 これらの2つのパケットを変数を介して接続することで、私が望むようにプールを編集するのは非常に簡単です。

答えて

0

たとえば、/ testを使用している場合は、コマンドをテストしますか?そうであれば、コマンドにtabcomple関数を簡単に追加することができます。そこには、与えられたすべての引数をチェックして、リストで答えることもできます。

+0

実際には、PlayInTabCompleteとPLayOutTabComplete-Packetが存在します.PlayItemは、文字列を提供します。 – Scorix

0

は、なぜあなたは「plugin.getCommand(」名前「)でイベントを登録するのではなく、PlayerComandPreprocessEventを使用してください。setExecutor(...」あなたはクラスがcommandexecutorを実装して使用する場合は 、あなたがメソッドを実装することができonTabComplete

+0

ええと、私はそれを知っています、CommandExectuerはその特別なコマンドのためのものでしかありません。そのため、tabcompleteを他のコマンドから変更しなければならない場合rプラグイン、それは動作しません。 (それで私がCommandPreProcessEventについて話した理由)。 あなたの答えは質問で何かをする必要はありません – Scorix