提供: Minecraft Modding Wiki
Takanasayo (トーク | 投稿記録) (新規) |
Takanasayo (トーク | 投稿記録) 細 (汎用化) |
||
1行目: | 1行目: | ||
− | {{前提MOD|reqmod=" | + | {{前提MOD|reqmod="ModLoader"}} |
==解説== | ==解説== | ||
20行目: | 20行目: | ||
;必要ファイルのインポート | ;必要ファイルのインポート | ||
<source lang="java">import net.minecraft.client.Minecraft; | <source lang="java">import net.minecraft.client.Minecraft; | ||
− | |||
</source> | </source> | ||
− | :クラス宣言の上部に上記の文を追加し、Minecraft | + | :クラス宣言の上部に上記の文を追加し、Minecraft.class をインポートします。 |
;インスタンスの取得 | ;インスタンスの取得 | ||
− | <source lang="java">Minecraft minecraft = | + | <source lang="java">Minecraft minecraft = ModLoader.getMinecraftInstance(); |
</source> | </source> | ||
− | :メッセージを表示したいメソッドで、Minecraft型のメンバ minecraft | + | :メッセージを表示したいメソッドで、Minecraft型のメンバ minecraft を宣言し、インスタンス取得します。 |
45行目: | 44行目: | ||
import net.minecraft.client.Minecraft; | import net.minecraft.client.Minecraft; | ||
− | |||
public class DebugLibrary | public class DebugLibrary | ||
53行目: | 51行目: | ||
public DebugLibrary() | public DebugLibrary() | ||
{ | { | ||
− | minecraft = | + | minecraft = ModLoader.getMinecraftInstance(); |
} | } | ||
2012年12月5日 (水) 02:32時点における最新版
この記事は"ModLoader"を前提MODとしています。 |
目次
解説[編集]
このチュートリアルは、各種デバッグ用のテキストを、チャット欄に表示する方法を解説します。
Minecraft型の引数をもつメソッドの場合[編集]
- 例)BaseMod.onTickInGame メソッド
public boolean onTickInGame(float f, Minecraft minecraft) { }
例の onTickInGame のように引数にMinecraft型が含まれているメソッドの場合は、Minecraft型の引数を参照してテキストを表示できます。
minecraft.ingameGUI.addChatMessage("表示したいテキスト");
Minecraft型の引数を持たないメソッドの場合[編集]
Minecraft型の引数を持たないメソッド内でテキストを表示するには、先にMinecraft型のインスタンスを取得する必要があります。
- 必要ファイルのインポート
import net.minecraft.client.Minecraft;
- クラス宣言の上部に上記の文を追加し、Minecraft.class をインポートします。
- インスタンスの取得
Minecraft minecraft = ModLoader.getMinecraftInstance();
- メッセージを表示したいメソッドで、Minecraft型のメンバ minecraft を宣言し、インスタンス取得します。
- テキストの表示
minecraft.ingameGUI.addChatMessage("表示したいテキスト");
- あとは引数を持つメソッドと同じように、minecraft のメソッドからテキストを表示できます。
デバッグ用ライブラリ[編集]
デバッグ作業を楽にするライブラリを置いておきます。
ソース全文[編集]
- DebugLibrary.java
package net.minecraft.src; import net.minecraft.client.Minecraft; public class DebugLibrary { private static Minecraft minecraft; public DebugLibrary() { minecraft = ModLoader.getMinecraftInstance(); } public static Minecraft getMinecraft() { return minecraft; } public static void addChatMessage(String text) { minecraft.ingameGUI.addChatMessage(text); } }
使い方[編集]
開発中のMODと同じフォルダに置き、
DebugLibrary lib = new DebugLibrary();
- で、クラスを生成します。
lib.addChatMessage("表示したいテキスト");
- で、テキストを表示できます。
lib.getMinecraft();
- で、Minecraftを取得できます。
- メソッドの引数としてワールドなどが存在しない場合に、アクセスするために使えます。
デバッグ用の文を書く際のTips[編集]
通常、プログラムを組む際は、構造ごとに適切にインデントしていると思います。
しかし、デバッグ用の文までインデントしてしまうと、デバッグ終了時に見落としやすくなります。
そのため、デバッグ用の文だけは、あえてインデントせずに行頭から書くようにすると、見落としが少なくなります。