我正在制作一个你击落鸟类的游戏。我做了一个扮演十字准线的演员,跟着鼠标。
这是生成错误的代码(setLocation是第18行):
MouseInfo mouse = Greenfoot.getMouseInfo();
setLocation(mouse.getX(), mouse.getY());
错误代码:
java.lang.NullPointerException
at Crosshair.act(Crosshair.java:18)
at greenfoot.core.Simulation.actActor(Simulation.java:565)
at greenfoot.core.Simulation.runOneLoop(Simulation.java:523)
at greenfoot.core.Simulation.runContent(Simulation.java:213)
at greenfoot.core.Simulation.run(Simulation.java:203)
答案 0 :(得分:1)
如果您在编写的代码中有空指针异常,则表示您的mouseinfo对象为null。
getMouseInfo
public static MouseInfo getMouseInfo()返回一个鼠标信息对象 有关鼠标状态的信息。
返回:有关鼠标当前状态的信息,如果是,则返回null 鼠标光标位于世界边界之外(除非被拖动)。
基本上,这意味着当调用该方法时,如果超出边界,则使用鼠标。
为了帮助您更多,请描述您希望实现的目标。