首先,我真的只是在嘗試學習Java。我現在想要做的就是在屏幕上顯示一個字符串;創建一個Gui實例(使用ModLoader修改我的Minecraft)
所以我有我的mod_Bite類和我的BiteGui類。 (撕咬只是一個隨機的名字,我在吃的時候)
//mod_Bite.java
package net.minecraft.src;
import net.minecraft.client.Minecraft;
public class mod_Bite extends BaseMod {
@Override
public String getVersion() {
return "1.0";
}
@Override
public void load() {
ModLoader.setInGameHook(this, true, true);
}
public mod_Bite() {
}
@Override
public boolean onTickInGame(float tick, Minecraft mc)
{
return true;
}
}
和
//BiteGui.java
package net.minecraft.src;
import net.minecraft.client.Minecraft;
public class BiteGui extends Gui {
private Minecraft mc;
public BiteGui(){
drawBiteGui();
}
public void drawBiteGui() {
FontRenderer fr = this.mc.fontRenderer;
drawString(fr, "Testing!", 5, 5, 0xffffff);
}
}
我不明白的是如何創建它。我試圖在onTickInGame方法創建BiteGui的對象(雖然我不認爲它應該創建它的每一個刻度)
public boolean onTickInGame(float tick, Minecraft mc)
{
BiteGui biteObj = new BiteGui();
return true;
}
但它說,有一個空指針異常,這給我的知識是指我」試圖使用未分配任何值的東西,或者它沒有指向任何東西。 我顯然沒有在這裏做點什麼。
編輯:我改變了代碼,它的工作原理除了文本閃爍而不是停留在屏幕上。很明顯,因爲我在onTickInGame方法中創建了對象,但我不知道如何從其他位置初始化Minecraft。
package net.minecraft.src;
import net.minecraft.client.Minecraft;
public class mod_Bite extends BaseMod {
@Override
public String getVersion() {
return "1.0";
}
@Override
public void load() {
ModLoader.setInGameHook(this, true, true);
}
public mod_Bite() {
}
@Override
public boolean onTickInGame(float tick, Minecraft mc)
{
BiteGui biteObj = new BiteGui(mc);
return true;
}
}
和
package net.minecraft.src;
import net.minecraft.client.Minecraft;
public class BiteGui extends Gui {
private Minecraft mc;
public BiteGui(Minecraft minecraft) {
this.mc = minecraft;
drawBiteGui();
}
public void drawBiteGui() {
FontRenderer fr = this.mc.fontRenderer;
drawString(fr, "Testing!", 5, 5, 0xffffff);
}
}
哪裏是例外?無論如何,首先要使用Java API(Swing),而不是嘗試在邏輯中添加更多混亂,請稍後再說。 – SJuan76 2013-03-17 22:07:12
我很好奇你爲什麼使用ModLoader而不是Forge。 – 2013-03-17 22:14:46
感謝您告訴我們您得到了什麼樣的錯誤;你不會相信有多少人會說「它沒有工作,修復它」。儘管如此,當您遇到錯誤時,請告訴我們您獲得的完整堆棧跟蹤。這告訴我們行號和其他細節,我們可以用它來更好地診斷您的問題。謝謝! – MathSquared 2013-07-17 15:56:25