https://linen.dev logo
Playerがインベントリを開いているか判別する方法
# forum
p
Eキーを押すと出てくるインベントリ画面を、プレイヤーが開かれているか判別するやつがあったら教えて欲しいです
k
Copy code
js
importPackage(Packages.jp.ngt.ngtlib.util)
importPackage(Packages.net.minecraft.client.gui.inventory)
var isGuiInventoryOpened = NGTUtilClient.getMinecraft().field_71462_r instanceof GuiInventory;
恐らくコレで可能です
p
ありがとうございます!
これもしかして他にも応用効く感じですかね() チャット画面→instanceof GuiChat RTM運転画面→instanceof GuiVehicleControlPanel
k
パッケージが違ったりするので若干の改変が必要ですか、応用効かせることができます
p
あー判定する種類ごとにパッケージimportさせないと行けない感じか...
k
GuiChatはPackages.net.minecraft.client.guiなので地味に違ったり
いろいろな場面で判別させる必要があるならクラス名の方が楽かもしれないです
p
この方法でgui画面を一括して判定できればなと ActionPartsの判定がgui画面を開いてる時でも行われてしまう問題を解決できそう
今気づいたけど単純にif(NGTUtilClient.getMinecraft().field_71462_r == null)でgui開いてるかどうか確認できますね
教えて下さりありがとうございました。