2014-01-19 64 views
1

我的名字是克里斯,首先,我想感谢您抽出时间看看这个问题。2D Perlin噪声地形发生器错误(Java)

是的,我是一个初学者。 目前,我正在尝试通过Notch创建与Minicraft(Yes,Mini,Not Mine)相同的游戏(并且具有相同的地形世代)。 (链接这里:https://s3.amazonaws.com/ld48/ld22/index.html

无论如何,我试图让我自己使用YouTube教程,当然,YouTuber的工作完美,我的错误不止一个。

的错误如下:

java.lang.ExceptionInInitializerError 
at code.BlockImages.getBlockImages(BlockImages.java:8) 
at code.Terrain.setid(Terrain.java:17) 
at code.WorldGen.genWorld(WorldGen.java:8) 
at code.GenLoader.create(GenLoader.java:12) 
at code.Skeleton.init(Skeleton.java:14) 
at sun.applet.AppletPanel.run(Unknown Source) 
at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.NullPointerException 
at javax.swing.ImageIcon.<init>(Unknown Source) 
at code.BlockDirt.<clinit>(BlockDirt.java:8) 
... 7 more 

我把源代码(如它的许多文件,这一职位将很长)在Github上,在这里: https://github.com/KultidGames/Brandish/tree/master/Game_01/src/code

谢谢你,再见

+1

嗨克里斯。除了上面的错误之外,在Loop.run()中还有一个错误,你在这里执行几个rle = ImageIO.read(new File(“Main Char Left Run.png”));这些文件在哪里? (Main Char Left Run.png“)等 - 我没有看到他们在项目中... – Melquiades

+0

他们在Images文件夹中,我更新了代码,但得到了错误: javax.imageio.IIOException:Can “T读取输入文件! \t在javax.imageio.ImageIO.read(来源不明) \t在code.Loop.run(Loop.java:29) \t在java.lang.Thread.run(来源不明) –

回答

0

看来你的问题发生在类的初始化上。这可能是因为它没有找到图像的资源之一。

从我发现的here中,它可能是资源名称中的空格。尝试使用该修补程序,或重命名文件以删除该空间。