У меня очень простая текстовая игра, в которой игрок перемещается по карте комнатных объектов. 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();
}