微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

协助开发迷你游戏

如何解决协助开发迷你游戏

我是Java新手,需要帮助,我正在运行一个简单的代码,但是我收到此错误消息,并且由于我未使用fxml,以前类似问题的答案与我的问题无关。感谢您的协助。

java.lang.reflect.InvocationTargetException在 java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(本机 方法) java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 java.base / jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.base / java.lang.reflect.Method.invoke(Method.java:567)在 javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:464) 在 javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:363) 在 java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(本机 方法) java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 java.base / jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.base / java.lang.reflect.Method.invoke(Method.java:567)在 java.base / sun.launcher.LauncherHelper $ FXHelper.main(LauncherHelper.java:1051) 由以下原因引起:java.lang.RuntimeException:应用程序启动中的异常 方法 javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:900) 在 javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195) 在java.base / java.lang.Thread.run(Thread.java:830)造成原因: java.lang.NullPointerException在 Controller.start(Controller.java:11)​​位于 javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:846) 在 javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:455) 在 javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428) 在 java.base / java.security.AccessController.doPrivileged(AccessController.java:391) 在 javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427) 在 javafx.graphics/com.sun.glass.ui.invokelaterdispatcher$Future.run(invokelaterdispatcher.java:96) 在 javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(本机 方法) javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174) ... 1个其他正在运行应用程序控制器的异常

退出代码1完成的过程

我的代码如下:

public class Controller extends Application {

    AsteroidsApp asteroidsApp;
    @Override
    public void start(Stage stage) {
        stage.setScene(new Scene(asteroidsApp.createContent()));
        stage.getScene().setonKeypressed(e -> {
            if (e.getCode() == KeyCode.LEFT) {
                asteroidsApp.player.rotateLeft();
            } else if (e.getCode() == KeyCode.RIGHT) {
                asteroidsApp.player.rotateRight();
            } else if (e.getCode() == KeyCode.SPACE) {
                asteroidsApp.bulletSetVeLocity();
                asteroidsApp.addBullet(asteroidsApp.bullet,asteroidsApp.player.getView().getTranslateX(),asteroidsApp.player.getView().getTranslateY());
            }
        });
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

public Parent createContent() {
    root = new Pane();
    root.setPrefSize(600,600);

    player = new Player();
    player.setVeLocity(new Point2D(1,0));
    addGameObject(player,300,300);

    AnimationTimer timer = new AnimationTimer() {
        @Override
        public void handle(long Now) {
            onUpdate();
        }
    };
    timer.start();

    return root;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。