Velc さんが書きました:defeatedcrow さんが書きました:GUI、Containerは自作不要のはずですがなぜ自作を?
(BlockWorkbenchの右クリック処理を流用すれば良いだけのような)
止めはしませんが、GUI自作はちゃちゃっと回答できるものでもないので回答は控えます
お返事ありがとうございます。BlockWorkbenchの処理の流用というのはバニラのソースを流用ということですか?
やり方がよくわからなかったので、その発想には至りませんでした。
調べたところMCPでバニラのソースをデコンパイルすればいいようですが、あっているでしょうか。
試してみたいと思います。
どちらも全然違います
試さなくていいです
とりあえず後者から
>調べたところMCPでバニラのソースをデコンパイルすればいいようですが、あっているでしょうか。
あってないです。
どこを調べたのかわかりませんが、こういうこと書いてあるサイト今時あるんでしょうかね…これForge環境だと1.6以前くらいのめっちゃ古い時期ならぼくもMCP叩いてましたが、今はもう不要な方法です。(ForgeなしのハードコアModdingには未だ必要だとは思いますが)
バニラのソースを見たければ、EclipseなどのIDE+Forgeで作った開発環境であれば立ち上げ時点で閲覧できる状態になっています。
ぼくはEclipse以外使わないんで他のIDEはわかりませんが(IDEA使いであれば、このフォーラムにも使用者が結構居るはずなので、確認方法を質問してみたら誰か教えてくれるんじゃないかな。他のソフトも使用者は居そう。)、Eclipseであれば、
パッケージエクスプローラーの参照ライブラリータブにforgeSrcが入っているはずなので、そこにforgeのソースと一緒にMC本体のソースも確認可能な状態で入っているはずです。
バニラのソースやForgeのソースを確認できることは、初歩の初歩なので、こちらとしては出来る前提で話を進めます。
>BlockWorkbenchの処理の流用というのはバニラのソースを流用ということですか?
あなたが「流用」の意味をどう理解しているかわかりませんが、多分違うやつです。
BlockWorkbenchクラスの参照利用だけで事足りるので。
BlockWorkbenchクラスには、InterfaceCraftingTable.classというpublic static な内部クラスを持っています。
簡単に言えば、外部から作業台のGUIを開ける機能がバニラ作業台に搭載されているわけです。ですので、これを使えば必要なコンテナクラスやGUIクラス、GUIの名前表示などを整えてくれます。
使い方は、BlockWorkbenchクラスの右クリック処理部分を見ればわかると思います。