Как внедрить javaFX в существующий игровой цикл - PullRequest
0 голосов
/ 08 ноября 2019

У меня очень простая текстовая игра, в которой игрок перемещается по карте комнатных объектов. I / O - это терминал.

Я хочу добавить пользовательский интерфейс в свой проект через JavaFX, но я не уверен, как мне следует инициализировать пользовательский интерфейс и игровой цикл вместе, чтобы мои элементы пользовательского интерфейса могли наблюдать объекты внутри моегоигру и обновление соответственно

Мой текущий код, я пропустил все, кроме необходимого кода для запуска основного игрового цикла


public static void main(String[] args) {

        Game game = GameLauncher.getGameLauncher().launchGameWithThemes();
        game.run();
}


Для создания нового игрового объекта используется средство запуска игры. Вызывается метод run (), который входит в цикл, обрабатывается ввод игрока, а затем соответствующим образом манипулируются игровыми объектами. Пример: ( переместить комнату, забрать предмет .. тект ) Затем терминал напечатает (* Вы переместитесь в .., вы подняли * ..)

public void run() {

        printStartUpMessage();

        while(true) {

            inputProcessor.processNextCommand(player);

         }


Если япопробуйте объединить этот метод Game Main с пользовательским интерфейсом, окно JavaFX перестает отвечать на запросы

@Override
    public void start(Stage primaryStage) throws Exception{


        GridPane gridPane = new GridPane();
        primaryStage.setTitle("Hello World");
        primaryStage.setScene(new Scene(gridPane, 300, 275));
        primaryStage.show();
        Game game = GameLauncher.getGameLauncher().launchGameWithThemes();
        game.run();

    }


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...