我一直在这个过去的一小时,我只是无法弄清楚。检测单独类中的矩形之间的碰撞
主要类:主类
public class Main extends BasicGame{
int px = 100, py = 100;
Entity eo;
Rectangle player = new Rectangle(px, py, 16, 16);
更新功能:
public void update(GameContainer gc, int arg) throws SlickException {
if(player.intersects(eo.r)){
System.out.println("Collision");
}
实体类:
public class Entity extends BasicGame{
int x, y;
Rectangle r = new Rectangle(x, y, 16, 16);
public Entity(String n, int h, int posx, int posy){
x = posx;
y = posy;
注:这是不是代码的真正格式,我已经剥去了无关紧要的东西。
该错误消息我得到:
java.lang.NullPointerException
at src.Main.update(Main.java:49)
at org.newdawn.slick.GameContainer.updateAndRender(GameContainer.java:657)
at org.newdawn.slick.AppGameContainer.gameLoop(AppGameContainer.java:408)
at org.newdawn.slick.AppGameContainer.start(AppGameContainer.java:318)
at src.Main.main(Main.java:23)
Mon Dec 19 20:35:23 CST 2011 ERROR:Game.update() failure - check the game code.
org.newdawn.slick.SlickException: Game.update() failure - check the game code.
at org.newdawn.slick.GameContainer.updateAndRender(GameContainer.java:663)
at org.newdawn.slick.AppGameContainer.gameLoop(AppGameContainer.java:408)
at org.newdawn.slick.AppGameContainer.start(AppGameContainer.java:318)
at src.Main.main(Main.java:23)
我在做什么错?
哪一行是'Main'类的'49行'? 'NullPointerException'意味着你引用了一个你不认为是'null'的对象。这不应该与碰撞检测本身有关。 – jefflunt 2011-12-20 02:50:15
为了尽快提供更好的帮助,请发布[SSCCE](http://sscce.org/)。 – 2011-12-20 03:59:55