2016-07-11 2 views
1

特定のResourcePackをサーバー上のプレーヤーに送信する方法を知っています。 私は複数の小さなミニゲームサーバと連携し、ミニゲームの一つは、私はこの機能をResourcePackを送信するので、ResourcePackを必要とします:プレイヤーがロビーサーバに送り返された場合Bukkit Player removeResourcePack?

p.setResourcePack("URL"); 

しかし、今、ResourcePackはしません自動的に削除されます。プレイヤーが別のゲームをプレイすると、すべての特殊なテクスチャで混乱する可能性があるので、私は本当にResourcePackを削除したいと思います。私はすでに "ヌル" ResourcePackを送信しようとしました

p.setResourcePack(null); 

しかしこれは例外をスローします。

http://hastebin.com/gojuqesafa.profile

だから、誰もが、その後彼にデフォルト-ResourcePackを送信し、別の解決策を知っているのですか?

+0

リソースパックをデフォルトに設定しようとしましたか? – ItzBenteThePig

+0

さて、どうすればいいか教えてください... "p.setDefaultResourcePack"という関数を見つけることができません。 –

答えて

1

(彼はデフォルトのバージョンではないでしょうカスタム1を、持っている可能性が)私は最善の方法は、おそらくだと思いますプレイヤーのリソースパックをデフォルトに設定するには、次のようにします:

まず、defaultという名前の新しいフォルダを作成します。

次に、あなたのプラグインがサポートしているバージョンのminecraftのフォルダを開き、winrarのようなプログラムでjarファイルを開き、作成したデフォルトのテクスチャパックフォルダにassetsフォルダをコピーします。そして、これらの内容でpack.mcmetaというファイルを作成します。

{ 
    "pack": { 
    "pack_format": 1, 
    "description": "Default texture pack" 
    } 
} 

をその後、新しいイメージを作成する(サイズができれ64×64または128×128でなければなりません)と、ちょうどそれが黒にする、それは本当に問題ではないとして、その後アップロードそれをmediafireや他のサイトにアップロードし、ファイルリンクを取得します(mediafireの場合は、あなたが提供するリンクに行き、緑色のボタンを右クリックし、copy link locationを押してください)。その一度

はあなたのコードでは、実行される操作を行います。

p.setResourcePack("URL TO DEFAULT TEXTURE PACK"); 

これは、彼らが前に持っていたものに選手のテクスチャパックを設定していないだろうが、それはデフォルトのMinecraftのテクスチャパックに戻ってそれを設定します

+0

まあ...私は別の方法でやりました...私が変更したリソースだけをコピーしました。このようにファイルはそれほど大きくはありません。 –

+0

まあ、少なくとも同じ結果を得ました。 – ItzBenteThePig

0

javadocsで述べたように、それがデフォルトにプレイヤーのリソースパックを設定することはできません。

Minecraftの中にデフォルトに戻ってリソースパックをリセットするという概念はありませんが、選手たちはそうする再度ログインする必要がありますので、 。

あなたができることは、デフォルトのようなリソースパックのURLを持っていて、プレーヤーにダウンロードを依頼しますが、デフォルトではありません。

もそれはプレイヤーがデフォルトとして使用されたパックだかどうかを知る方法はありません

関連する問題