首先,我真的只是在尝试学习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