У меня возникла проблема с многих дней, не найдя anwser.как приостановить игру для обработки пользовательского ввода
В коде я не буду размещать весь свой код, потому что это просто усложнит вопрос.
У меня есть класс игры, который визуализирует каждый кадр.
public class MyGame implements ApplicationListener {
@Override
public void render() {
//handling event
handleEvent();
//update player position
updatePlayerPosition();
//rendering the player using a batch
renderPlayer();
}
public void handleEvent(){
//when the player prees on C i'm calling a method in another class
// when i do some processing
if (Gdx.input.isKeyPressed(Keys.C)) {
OtherClassForProcessing() ocp = new OtherClassForProcessing();
ocp.process();
}
}
//in this method i have to ask the user to choose an option
//i have to think to stop running this method until the
// user choose an option
//this method has to return a value
public static int displayChoice(List<Integer> ListOfInteger){
return 0;
}
}
public Class OtherClassForProcessing(){
public void process(){
int value= MyGame.displayChoice() ;
}
}
Вопрос в том, как я могу попросить пользователя выбрать опцию в методе displayChoice.
Какой виджет будет выполнять эту работу.
Я попытался использовать для этого другой экран, но метод не останавливается.
Как я могу попросить программу остановиться, пока пользователь не выберет вариант.
Спасибо
, что я пытался это:
@Override
public static int displayChoice(List<Integer> ListOfInteger){
//i change the screen when i ask the user to choose from many options
setScreen(new PauseScreen());
a wile loop hwo run until the user choose an option from the other screen
while(PauseScreen.notYetChoosen){
Gdx.app.log("display message ", "the user not yet choose an ption");
}
return PauseScreenValue;
}
Когда я поставил время цикла:
- экран не изменяются от игры к PauseScreen.
- вводного петля без останавливая
- блок
экрана Но когда я удалить время цикла изменения экрана к PauseScreen но завершающий метод, не дожидаясь пользователя, чтобы выбрать опцию.
EDIT я пытался избежать использования другого экрана unfortunantly даже когда я использовал окно, блок
Вы можете добавить еще меньше кода, чтобы упростить вопрос, если вы использовали 'ApplicationAdapter' и удалили пустые переопределенные методы. Некоторые из нас смотрят на вопросы на наших телефонах - код прокрутки ужасен! –
ok и я удалил пустой метод. спасибо – user3521250